customizable movement speed
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Sun, 6 Mar 2022 02:22:57 +0000 (20:22 -0600)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Sun, 6 Mar 2022 02:22:57 +0000 (20:22 -0600)
src/entity/components/movement.onyx
src/entity/components/patron.onyx

index 264ee516436cd0c06dedeabfbe263cc7a17ca1f8..4928bbc8acb358aaffc054d052704c1798064fb6 100644 (file)
@@ -25,6 +25,7 @@ MovementComponent :: struct {
     controls : Player_Controls;
     facing   := Facing.Up;
     velocity: Vector2;
+    speed := 800.0f;
 
     update :: (movement: ^MovementComponent, use this: ^Entity, dt: f32) {
         acc: Vector2;
@@ -33,8 +34,7 @@ MovementComponent :: struct {
         if is_key_down(movement.controls.up)    { acc.y -= 1; movement.facing = .Up;    }
         if is_key_down(movement.controls.down)  { acc.y += 1; movement.facing = .Down;  }
 
-        speed :: 800.0f;
-        movement.velocity += acc * speed * dt;
+        movement.velocity += acc * movement.speed * dt;
         delta := movement.velocity * dt + acc * 0.5 * dt * dt;
         movement.velocity *= 0.9;
 
index 396a4fc203721353dcecffecc2f4de23d18b3c6a..7bffc8ed3f508a9a436fbd3041724a11e9541d17 100644 (file)
@@ -67,6 +67,7 @@ PatronComponent :: struct {
                 found_seat := this->find_available_seat();
                 if !found_seat {
                     state = .Leaving;
+                    this->find_exit();
                     return;
                 }
             }