X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fai%2Fai.cpp;h=9ec9fecad2ab0542e72df3e82b199ab7bc7ce01a;hb=33b37e7242e4cbfa76e4a0d6e5bb54223b541162;hp=7ada5a34b3bc6d80912f0dfd876e8a721217fff6;hpb=d38be21d103052761505d58a6d13e30a896dde01;p=blank.git diff --git a/src/ai/ai.cpp b/src/ai/ai.cpp index 7ada5a3..9ec9fec 100644 --- a/src/ai/ai.cpp +++ b/src/ai/ai.cpp @@ -16,8 +16,8 @@ Chaser::Chaser(World &world, Entity &ctrl, Entity &tgt) noexcept : Controller(ctrl) , world(world) , tgt(tgt) -, chase_speed(0.002f) -, flee_speed(-0.005f) +, chase_speed(2.0f) +, flee_speed(-5.0f) , stop_dist(10) , flee_dist(5) { tgt.Ref(); @@ -75,8 +75,6 @@ RandomWalk::RandomWalk(Entity &e, std::uint64_t seed) noexcept , random(seed) , start_vel(e.Velocity()) , target_vel(start_vel) -, start_rot(e.AngularVelocity()) -, target_rot(start_rot) , switch_time(0) , lerp_max(1.0f) , lerp_time(0.0f) { @@ -98,26 +96,19 @@ void RandomWalk::Update(int dt) { } else if (lerp_time > 0) { float a = std::min(lerp_time / lerp_max, 1.0f); Controlled().TargetVelocity(mix(target_vel, start_vel, a)); - Controlled().AngularVelocity(mix(target_rot, start_rot, a)); } else { Controlled().TargetVelocity(target_vel); - Controlled().AngularVelocity(target_rot); } } void RandomWalk::Change() noexcept { start_vel = target_vel; - start_rot = target_rot; - constexpr float base = 0.000001f; + constexpr float base = 0.001f; target_vel.x = base * (random.Next() % 1024); target_vel.y = base * (random.Next() % 1024); target_vel.z = base * (random.Next() % 1024); - - target_rot.x = base * (random.Next() % 1024); - target_rot.y = base * (random.Next() % 1024); - target_rot.z = base * (random.Next() % 1024); } }