//move hands based on player input protected virtual void MoveHandsViaInput(global::Event e) { Debug.Assert(e.GetType() == typeof(KeyDirectionEvent), "Non-KeyDirectionEvent in MoveHands."); KeyDirectionEvent dirEvent = e as KeyDirectionEvent; //move hands InputManager.Directions dir = dirEvent.direction; switch (dir) { case InputManager.Directions.Up: rb.AddForce(ApplyMovement(Vector3.up), ForceMode.VelocityChange); break; case InputManager.Directions.Down: rb.AddForce(ApplyMovement(Vector3.down), ForceMode.VelocityChange); break; case InputManager.Directions.Left: rb.AddForce(ApplyMovement(Vector3.left), ForceMode.VelocityChange); break; case InputManager.Directions.Right: rb.AddForce(ApplyMovement(Vector3.right), ForceMode.VelocityChange); break; case InputManager.Directions.Diag_Up_Left: rb.AddForce(ApplyMovement(Vector3.up), ForceMode.VelocityChange); rb.AddForce(ApplyMovement(Vector3.left), ForceMode.VelocityChange); break; case InputManager.Directions.Diag_Up_Right: rb.AddForce(ApplyMovement(Vector3.up), ForceMode.VelocityChange); rb.AddForce(ApplyMovement(Vector3.right), ForceMode.VelocityChange); break; case InputManager.Directions.Diag_Down_Left: rb.AddForce(ApplyMovement(Vector3.down), ForceMode.VelocityChange); rb.AddForce(ApplyMovement(Vector3.left), ForceMode.VelocityChange); break; case InputManager.Directions.Diag_Down_Right: rb.AddForce(ApplyMovement(Vector3.down), ForceMode.VelocityChange); rb.AddForce(ApplyMovement(Vector3.right), ForceMode.VelocityChange); break; } }
public KeyDirectionEvent(InputManager.Directions dir) { direction = dir; }