From 982562fa19bb87a3dab352e562f386f61c171b7b Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Sun, 17 Feb 2008 18:59:52 +0000 Subject: major rewrite of Cvar, Func and Entity --- src/client/input.cc | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) (limited to 'src/client/input.cc') diff --git a/src/client/input.cc b/src/client/input.cc index ee16038..9053725 100644 --- a/src/client/input.cc +++ b/src/client/input.cc @@ -20,7 +20,9 @@ namespace input { // local offset to make turns -float turn_offset; +float local_turn_offset; +// local thrust setting +float local_thrust; void init() { @@ -63,23 +65,27 @@ void keypressed(const SDL_keysym &keysym) break; case SDLK_KP_PLUS: // TODO set core entity params - core::localplayer.control->target_thrust += 0.08f; + local_thrust += 0.08f; + if (local_thrust > 1.0f) + local_thrust = 1.0f; break; case SDLK_KP_MINUS: // TODO set core entity params - core::localplayer.control->target_thrust -= 0.1f; + local_thrust -= 0.1f; + if (local_thrust < 0.0f) + local_thrust = 0.0f; break; case SDLK_KP4: // TODO set core entity params - turn_offset += 5; - if (turn_offset > 90) - turn_offset = 90; + local_turn_offset += 5; + if (local_turn_offset > 90) + local_turn_offset = 90; break; case SDLK_KP6: // TODO set core entity params - turn_offset -= 5; - if (turn_offset < -90) - turn_offset = -90; + local_turn_offset -= 5; + if (local_turn_offset < -90) + local_turn_offset = -90; break; default: break; @@ -95,7 +101,7 @@ void frame(float seconds) switch (event.type) { case SDL_KEYUP: - if (!console::visible() && core::application()->connected() && core::localplayer.control) + if (!console::visible() && core::application()->connected() && core::Player::local.control) // send key events to the game world keyreleased(event.key.keysym); break; @@ -105,7 +111,7 @@ void frame(float seconds) } else if (console::visible()) { // send key events to the console console::keypressed(event.key.keysym); - } else if (core::application()->connected() && core::localplayer.control) { + } else if (core::application()->connected() && core::Player::local.control) { // send key events to the game world keypressed(event.key.keysym); } @@ -117,8 +123,9 @@ void frame(float seconds) } - if (!console::visible() && core::application()->connected() && core::localplayer.control) { - core::localplayer.control->target_direction = math::degrees360f(core::localplayer.control->direction+turn_offset); + if (!console::visible() && core::application()->connected() && core::Player::local.control) { + core::Player::local.control->set_thrust(local_thrust); + core::Player::local.control->set_direction(math::degrees360f(core::Player::local.control->direction() + local_turn_offset)); } } -- cgit v1.2.3