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.4 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. package wow.doge.mygame.subsystems.events
  2. import wow.doge.mygame.game.subsystems.movement.CanMove
  3. sealed trait EntityMovementEvent
  4. object EntityMovementEvent {
  5. final case class MovedLeft[T: CanMove](pressed: Boolean, movable: T)
  6. extends EntityMovementEvent
  7. final case class MovedUp[T: CanMove](pressed: Boolean, movable: T)
  8. extends EntityMovementEvent
  9. final case class MovedRight[T: CanMove](pressed: Boolean, movable: T)
  10. extends EntityMovementEvent
  11. final case class MovedDown[T: CanMove](pressed: Boolean, movable: T)
  12. extends EntityMovementEvent
  13. sealed trait PlayerMovementEvent extends EntityMovementEvent
  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. }