public override IPhase NextPhase() { var verdicts = new VerdictManager(Player); verdicts.End(); return(new ExecutionPhase(Match, verdicts) { Supersedes = Supersedes }); }
public Lynch( int day, IPlayer victim, DeathCause cause, [CanBeNull] VerdictManager verdicts = null) { Day = day; Victim = victim; VictimName = victim.Name; VictimRole = victim.Role.Name; Cause = cause; Killer = null; LastWill = victim.LastWill; DeathNote = null; Description = ""; Strength = AttackStrength.Lynch; Direct = false; Stoppable = false; For = verdicts?.Voters(Verdict.Guilty) ?? new List <IPlayer>(); Against = verdicts?.Voters(Verdict.Innocent) ?? new List <IPlayer>(); Abstained = verdicts?.Voters(Verdict.Abstain) ?? new List <IPlayer>(); }
public LastWordsPhase(IMatch match, VerdictManager verdicts, uint duration = 10) : base(match, "Last Words", duration) { Player = verdicts.Accused; Verdicts = verdicts; }
public ExecutionPhase(IMatch match, VerdictManager verdicts, uint duration = 10) : base(match, "Execution", duration) { Player = verdicts.Accused; Verdicts = verdicts; }