delayed Double Agent card ability at the start of the phase and choose agent logic
chemeshuggah opened this issue · comments
-
add field to current_game data - is_available_abilityno we have list of available abilities for players - it is a fieldabilities
-
if True for bot - set bots agent choice, then reveal this choice to player in current_game data, then set ability to False -
if True for player - player set agent, then bot set agent and nothing else - is revealed in any case - ability priority is determine in last phase
- update schema, model and game processor
- determine the agent
-
check is not dead -
check is not in vacation - add hidden representation of agent
- reveal agent
- raise error if player next phase without choosing agent
- remove double ability when next from briefing
- hide agents after move to hand
- vacation -> hand move
- second cheaf play -> hande instead vacation
-
add endpoint
needs changes to schema, because information about agents is particle hidden from player, we need representation of data about opponent agents looks like:
agents ->
- dead: list[str] - ids of dead agents
- in_play: Optional[str] - the id of agent in play or None or spetial word, that signalize - agent in play is hidden
- in_vacation: list[str] - the ids of vacated agents
- in_hand: list[str] - ids of agents or spetial wors if hidden
as spetial word we can use "_hidden"