public void StartPlay(Pawn user) { this.user = user; this.inUse = true; curGameStageInd = 0; nextTurnTick = Find.TickManager.TicksGame + curBattleSetDef.battleSetTextures[curGameStageInd].ticksInterval.RandomInRange; winnerIsDetermined = false; winningBattleSet = null; battleMat = null; dirty = true; }
public void SelectWinner(Pawn winner, Pawn loser) { if (winner == user) { winningBattleSet = this.curBattleSetDef.winningTextures.FirstOrDefault(x => x.playerA == BattleCondition.Win); } else { winningBattleSet = this.curBattleSetDef.winningTextures.FirstOrDefault(x => x.playerB == BattleCondition.Win); } nextTurnTick = Find.TickManager.TicksGame + winningBattleSet.ticksInterval.RandomInRange; dirty = true; winnerIsDetermined = true; if (winningBattleSet.playerWonThought != null) { winner.needs?.mood?.thoughts?.memories?.TryGainMemory(winningBattleSet.playerWonThought); } if (winningBattleSet.playerLoseThought != null) { loser.needs?.mood?.thoughts?.memories?.TryGainMemory(winningBattleSet.playerWonThought); } }