forked from nova/jmonkey-test
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
33 lines
1.4 KiB
package wow.doge.mygame.subsystems.events
|
|
|
|
import wow.doge.mygame.game.subsystems.movement.CanMove
|
|
|
|
sealed trait EntityMovementEvent
|
|
object EntityMovementEvent {
|
|
final case class MovedLeft[T: CanMove](pressed: Boolean, movable: T)
|
|
extends EntityMovementEvent
|
|
final case class MovedUp[T: CanMove](pressed: Boolean, movable: T)
|
|
extends EntityMovementEvent
|
|
final case class MovedRight[T: CanMove](pressed: Boolean, movable: T)
|
|
extends EntityMovementEvent
|
|
final case class MovedDown[T: CanMove](pressed: Boolean, movable: T)
|
|
extends EntityMovementEvent
|
|
|
|
sealed trait PlayerMovementEvent extends EntityMovementEvent
|
|
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
|
|
final case object PlayerJumped extends PlayerMovementEvent
|
|
final case object PlayerRotatedRight extends PlayerMovementEvent
|
|
final case object PlayerRotatedLeft extends PlayerMovementEvent
|
|
final case object PlayerCameraUp extends PlayerMovementEvent
|
|
final case object PlayerCameraDown extends PlayerMovementEvent
|
|
|
|
}
|
|
}
|