Reanimar
![]()
Resumo
Marca um jogador morto para retorno durante a resolução da noite.
Como Funciona
Durante a noite, o jogador pode usar esta habilidade uma vez por partida. Ao usá-la, deve selecionar um jogador que esteja morto. Imediatamente ao usar, a conduta do jogador é revelada publicamente para todos. No início da resolução noturna, o jogador escolhido retorna à vida e volta a participar normalmente da partida.
Leitura de Design
Reintroduz informação, vínculos e suspeitas no tabuleiro; por isso funciona melhor como virada situacional do que como cura simples.
Parâmetros Atuais no Projeto
| Campo | Valor |
|---|---|
| ID técnico | Revive |
| Conduta | Conduta da Ordem |
| Categoria | Utilidade |
| Momento de uso | Noite |
| Momento do efeito | Início da resolução noturna |
| Alvo | Jogador morto |
| Tipo de uso | Selecionar |
| Usos | 1 por partida |
| Duração | Instantânea |
Implementação Técnica
- Cliente:
ReviveAbilityvalida fase (NightStart), verifica que o caster está vivo e habilidade não usada. Despacha viaPlayerActionManager.UseSystemAbility(Id, targetId). - Servidor (uso):
ReviveStrategyvalida que o alvo existe e está morto (!target.IsAlive). Gravacaster.ReviveTarget = targetId, revela a conduta do caster (caster.IsConductRevealed = true) e marcacaster.AbilityUsed = true. O revive não acontece imediatamente. - Servidor (resolução): Em
GameplayService.ResolveNight, oReviveResolverprocessa a intenção antes das mortes padrão da rodada. O alvo é devolvido ao jogo (target.IsAlive = true) e o campocaster.ReviveTargeté limpo. - A revelação de conduta é imediata ao usar a habilidade, não aguarda o fim da noite — é o custo público da ação.
Campos de PlayerData Modificados
| Campo | Efeito |
|---|---|
caster.ReviveTarget | ID do jogador morto a ser revivido; lido pelo ReviveResolver |
caster.IsConductRevealed | Definido como true — conduta exposta no momento do uso |
caster.AbilityUsed | Marcado como true |
target.IsAlive | Restaurado para true pelo ReviveResolver em ResolveNight |
Estado no Projeto Atual
- Implementada de ponta a ponta no cliente e servidor.
- Se a implementação final mudar no jogo, esta nota deve acompanhar o código e não o contrário.