aboutsummaryrefslogtreecommitdiff
path: root/src/entities/antifaShip.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/entities/antifaShip.c')
-rw-r--r--src/entities/antifaShip.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/entities/antifaShip.c b/src/entities/antifaShip.c
index 342f0f9..0f64d14 100644
--- a/src/entities/antifaShip.c
+++ b/src/entities/antifaShip.c
@@ -222,8 +222,18 @@ void controlAntifaShipKeyboardAndMouse(Game * game, Entity * entity) {
// Get mouse values.
Vector2 mouse = GetMousePosition();
float speed = GetMouseWheelMove();
+
+ // Speed mod.
+ float speedMod = 1.0;
+
+ if (IsKeyDown(KEY_LEFT_SHIFT))
+ speedMod = 1.0 / game->settings.speedMod;
+ else if (IsKeyDown(KEY_LEFT_CONTROL))
+ speedMod = game->settings.speedMod;
+
+ printf("%f\n", speedMod);
- data->forwardSpeed += (speed * game->settings.scrollBarSpeed);
+ data->forwardSpeed += (speed * game->settings.scrollBarSpeed * speedMod);
if (data->forwardSpeed < 0.)
data->forwardSpeed = 0.0;
@@ -237,6 +247,7 @@ void controlAntifaShipKeyboardAndMouse(Game * game, Entity * entity) {
// Using mouse as a joystick.
Vector3 mouseStick = (Vector3){v.y, -v.x, 0.0};
mouseStick = Vector3Scale(mouseStick, game->settings.mouseSensitivity);
+ mouseStick = Vector3Scale(mouseStick, speedMod);
// Swap axis for more movement with mouse.
if (IsMouseButtonDown(MOUSE_BUTTON_MIDDLE)) {