From: Côme Chilliet Date: Fri, 18 Aug 2017 23:37:56 +0000 (+0200) Subject: Moved max run speed to PersonType X-Git-Url: https://git.jsancho.org/?p=lugaru.git;a=commitdiff_plain;h=a4fa4c9e3d7087b3789ff16238089547e78b818f;hp=bb302fb1d9936b1ab630a800698ab7b867472a7d Moved max run speed to PersonType --- diff --git a/Source/Objects/Person.cpp b/Source/Objects/Person.cpp index 01b9f90..0ca911a 100644 --- a/Source/Objects/Person.cpp +++ b/Source/Objects/Person.cpp @@ -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)); diff --git a/Source/Objects/PersonType.cpp b/Source/Objects/PersonType.cpp index 521a02c..c1a3aec 100644 --- a/Source/Objects/PersonType.cpp +++ b/Source/Objects/PersonType.cpp @@ -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; } diff --git a/Source/Objects/PersonType.hpp b/Source/Objects/PersonType.hpp index 512b8a8..b60fc19 100644 --- a/Source/Objects/PersonType.hpp +++ b/Source/Objects/PersonType.hpp @@ -62,6 +62,7 @@ public: float defaultScale; bool hasClaws; bool clothes; + unsigned int maxRunSpeed; GLubyte bloodText[512 * 512 * 3] = { 0 };