]> git.jsancho.org Git - lugaru.git/commitdiff
Moved max run speed to PersonType
authorCôme Chilliet <come@chilliet.eu>
Fri, 18 Aug 2017 23:37:56 +0000 (01:37 +0200)
committerCôme Chilliet <come@chilliet.eu>
Fri, 18 Aug 2017 23:37:56 +0000 (01:37 +0200)
Source/Objects/Person.cpp
Source/Objects/PersonType.cpp
Source/Objects/PersonType.hpp

index 01b9f903e98631d2f568c20b96b98ce20003d47c..0ca911a0114ae16dc010426f0ca72150036966bd 100644 (file)
@@ -6009,19 +6009,10 @@ void Person::DoStuff()
         } else if (isRun()) {
             velocity += facing * multiplier * speed * 700 * scale;
             velspeed = findLength(&velocity);
-            if (creature == rabbittype) {
-                if (velspeed > speed * 55 * scale) {
-                    velocity /= velspeed;
-                    velspeed = speed * 55 * scale;
-                    velocity *= velspeed;
-                }
-            }
-            if (creature == wolftype) {
-                if (velspeed > speed * 75 * scale) {
-                    velocity /= velspeed;
-                    velspeed = speed * 75 * scale;
-                    velocity *= velspeed;
-                }
+            if (velspeed > speed * PersonType::types[creature].maxRunSpeed * scale) {
+                velocity /= velspeed;
+                velspeed = speed * PersonType::types[creature].maxRunSpeed * scale;
+                velocity *= velspeed;
             }
             velocity.y += gravity * multiplier * 20;
             ReflectVector(&velocity, terrain.getNormal(coords.x, coords.z));
index 521a02cf2bf956fc8f8e50713e2a71a87af69ad9..c1a3aec9a8cd52d7351b3a03dc4552ed4d5eef58 100644 (file)
@@ -80,6 +80,7 @@ void PersonType::Load()
     types[wolftype].defaultScale = .23;
     types[wolftype].hasClaws = true;
     types[wolftype].clothes = false;
+    types[wolftype].maxRunSpeed = 75;
 
     /* Rabbit */
     types[rabbittype].proportions[0] = 1.2;
@@ -135,4 +136,5 @@ void PersonType::Load()
     types[rabbittype].defaultScale = .2;
     types[rabbittype].hasClaws = false;
     types[rabbittype].clothes = true;
+    types[rabbittype].maxRunSpeed = 55;
 }
index 512b8a8be854e2388503e9ce4b150db700bc046b..b60fc195c2fd21ad89c33b93c520ea3470aa4c67 100644 (file)
@@ -62,6 +62,7 @@ public:
     float defaultScale;
     bool hasClaws;
     bool clothes;
+    unsigned int maxRunSpeed;
 
     GLubyte bloodText[512 * 512 * 3] = { 0 };