diff options
Diffstat (limited to 'src/game/base')
-rw-r--r-- | src/game/base/ship.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/game/base/ship.cc b/src/game/base/ship.cc index 22fb269..22725e0 100644 --- a/src/game/base/ship.cc +++ b/src/game/base/ship.cc @@ -485,7 +485,8 @@ void Ship::frame(const unsigned long elapsed) entity_thrust = 0; entity_speed = 0.0f; - + entity_controlflags = 0; + } else if (entity_state == core::Entity::JumpInitiate) { if (ship_jumpdrive_timer + 1.0f <= core::server()->time()) { @@ -533,6 +534,8 @@ void Ship::frame(const unsigned long elapsed) target_afterburner = 0.0f; target_thrust = 0.1f; + + entity_controlflags = 0; } else if (entity_state == core::Entity::Jump) { @@ -545,6 +548,8 @@ void Ship::frame(const unsigned long elapsed) target_afterburner = 0.0f; target_thrust = 0.0f; + + entity_controlflags = 0; // apply jump drive cooldown if (ship_jumpdrive_timer + 1.0f <= core::server()->time()) { @@ -623,6 +628,8 @@ void Ship::frame(const unsigned long elapsed) math::clamp(target_roll, -1.0f, 1.0f); math::clamp(target_direction, -1.0f, 1.0f); math::clamp(target_afterburner, -1.0f, 1.0f); + + entity_controlflags = target_controlflags; } else if (entity_state == core::Entity::Destroyed) { @@ -637,6 +644,7 @@ void Ship::frame(const unsigned long elapsed) target_thrust = 0; entity_thrust = 0; + entity_controlflags = 0; } /* -- SNAPPY ------------------------------------------ */ |