]> git.leopard-lacewing.eu Git - cgue_weave.git/commitdiff
Boar ungefährlich nach draufspringen
authorPeter Schaefer <schaeferpm@gmail.com>
Tue, 28 Jun 2016 02:40:57 +0000 (04:40 +0200)
committerPeter Schaefer <schaeferpm@gmail.com>
Tue, 28 Jun 2016 02:40:57 +0000 (04:40 +0200)
+ sinkt etwas ab

Weave/Scene/Boar.cpp
Weave/Scene/SceneObject.cpp
Weave/Scene/SceneObject.h

index 79a091d3ac87e6d710a16cbd5aba146823a8f27e..275b2504189d92438d74afb396446638b9747fc1 100644 (file)
@@ -18,7 +18,36 @@ Boar::~Boar()
 
 void Boar::update(float _deltaT)
 {
-       SceneObject::update(_deltaT);
+//Fallen       
+       if (!yStatic)
+       {
+               if (yFloorDist>0)
+               {
+                       if (ySpeed*_deltaT < yFloorDist || ySpeed>0)
+                               move(vec3(0.f, ySpeed*_deltaT, 0.f));
+                       else
+                       {
+                               move(vec3(0.f, yFloorDist, 0.f));
+                               //                      ySpeed = 0;     //set to FloorSpeed?
+                       }
+                       if (_deltaT > 0)
+                       {
+                               ySpeed -= _deltaT*YFALL_SPEED;
+                       }
+               }
+
+       }
+
+       updateAnimation(_deltaT);
+
+       btTransform tmp;
+       
+       if(!alive)
+               tmp.setFromOpenGLMatrix(value_ptr(translate(vec3(0.f, .3f, 0.f))*modelMat));
+       else
+               tmp.setFromOpenGLMatrix(value_ptr(modelMat));
+       bt_collision_object->setWorldTransform(tmp);
+       yFloorDist = 100;
 
        if (activated)
        {
index 7347d7edcaa25bf7dc6c123aa572697c60203c7d..d2893f5c5ca0b95a5b9e948c9d01dce4244d2ef1 100644 (file)
@@ -20,8 +20,6 @@
 
 using std::string;
 
-#define YFALL_SPEED 9.8f
-
 static inline bool file_exist(const std::string& name) {
        struct stat buffer;
        return (stat(name.c_str(), &buffer) == 0);
index febf6dabec6c5168a38420ddb83876fc35156cc9..cfe327d0a276c45e4dbaea83fdb359b45a53c978 100644 (file)
@@ -5,6 +5,8 @@
 
 #include <btBulletDynamicsCommon.h>
 
+#define YFALL_SPEED 9.8f
+
 typedef unsigned int uint;
 
 using std::string;