package wow.doge.mygame.subsystems.events sealed trait PlayerEvent sealed trait PlayerMovementEvent extends PlayerEvent object PlayerMovementEvent { final case class PlayerMovedLeft(pressed: Boolean) extends PlayerMovementEvent final case class PlayerMovedRight(pressed: Boolean) extends PlayerMovementEvent final case class PlayerMovedForward(pressed: Boolean) extends PlayerMovementEvent final case class PlayerMovedBackward(pressed: Boolean) extends PlayerMovementEvent case object PlayerJumped extends PlayerMovementEvent // case object PlayerTurnedRight extends PlayerMovementEvent // case object PlayerTurnedLeft extends PlayerMovementEvent } sealed trait PlayerCameraEvent extends PlayerEvent object PlayerCameraEvent { case object CameraLeft extends PlayerCameraEvent case object CameraRight extends PlayerCameraEvent case object CameraMovedUp extends PlayerCameraEvent case object CameraMovedDown extends PlayerCameraEvent }