View Source Perudex.NotifierServer behaviour (Perudex v0.1.0)
This module is a GenServer to handle communication going to the players by defining an interface a module need to implements.
Link to this section Summary
Functions
Returns a specification to start this module under a supervisor.
Link to this section Callbacks
@callback illegal_move(GameServer.callback_arg(), Game.player_id()) :: any()
@callback invalid_bid(GameServer.callback_arg(), Game.player_id()) :: any()
@callback loser(GameServer.callback_arg(), Game.player_id(), Game.player_id()) :: any()
@callback move(GameServer.callback_arg(), Game.player_id()) :: any()
@callback new_bid(GameServer.callback_arg(), Game.player_id(), Game.bid()) :: any()
@callback new_hand(GameServer.callback_arg(), Game.player_id(), Hand.t()) :: any()
@callback reveal_players_hands(GameServer.callback_arg(), Game.player_id(), [ {Game.player_id(), Perudex.Hand.t()} ]) :: any()
@callback start_game(GameServer.callback_arg(), Game.player_id(), [Game.player_id()]) :: any()
@callback successful_calza(GameServer.callback_arg(), Game.player_id()) :: any()
@callback successful_dudo(GameServer.callback_arg(), Game.player_id()) :: any()
@callback unauthorized_move(GameServer.callback_arg(), Game.player_id()) :: any()
@callback unsuccessful_calza(GameServer.callback_arg(), Game.player_id()) :: any()
@callback unsuccessful_dudo(GameServer.callback_arg(), Game.player_id()) :: any()
@callback winner(GameServer.callback_arg(), Game.player_id(), Game.player_id()) :: any()