Testing out JmonkeyEngine to make a game in Scala with Akka Actors within a pure FP layer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
1.3 KiB

  1. package wow.doge.mygame.subsystems.events
  2. import wow.doge.mygame.subsystems.movement.CanMove
  3. sealed trait MovementEvent
  4. object MovementEvent {
  5. final case class MovedLeft[T: CanMove](pressed: Boolean, movable: T)
  6. extends MovementEvent
  7. final case class MovedUp[T: CanMove](pressed: Boolean, movable: T)
  8. extends MovementEvent
  9. final case class MovedRight[T: CanMove](pressed: Boolean, movable: T)
  10. extends MovementEvent
  11. final case class MovedDown[T: CanMove](pressed: Boolean, movable: T)
  12. extends MovementEvent
  13. sealed trait PlayerMovementEvent extends MovementEvent
  14. object PlayerMovementEvent {
  15. final case class PlayerMovedLeft(pressed: Boolean)
  16. extends PlayerMovementEvent
  17. final case class PlayerMovedRight(pressed: Boolean)
  18. extends PlayerMovementEvent
  19. final case class PlayerMovedForward(pressed: Boolean)
  20. extends PlayerMovementEvent
  21. final case class PlayerMovedBackward(pressed: Boolean)
  22. extends PlayerMovementEvent
  23. final case object PlayerJumped extends PlayerMovementEvent
  24. final case object PlayerRotatedRight extends PlayerMovementEvent
  25. final case object PlayerRotatedLeft extends PlayerMovementEvent
  26. final case object PlayerCameraUp extends PlayerMovementEvent
  27. final case object PlayerCameraDown extends PlayerMovementEvent
  28. }
  29. }