data IncomingMessage = InternalMessage InternalMessage
| DayMessage DayMessage
| NightMessage NightMessage
+ deriving (Show, Eq)
-- Events that we want to send to the user code and that
-- can be reacted upon
data DayMessage = DayStarts
+ deriving (Show, Eq)
-- Events that we want to send to the user code and that
-- can NOT be reacted upon
data NightMessage = Initialize
| NightStarts
+ deriving (Show, Eq)
-- Pure bookkeeping events
data InternalMessage = MyPlayerId Player
| Welcome
| GameStarting
| MyIdIs Player
| PlayerEnter Player Place
+ deriving (Show, Eq)
{- Einzusortieren: