private void Attack() { _messagesFromActions.Add("Attack"); AttackActionResult result = _game.Attack(); if (result.IsDead) { _messagesFromActions.Add("You dead. Game Over."); _messagesFromActions.Add(string.Format("Your level: {0}", result.Level)); return; } if (result.IsWin) { _messagesFromActions.Add("You win!"); } else { _messagesFromActions.Add("You loose!"); } }
private Tuple <int, int> Calculate(GameState state) { AttackAction action = new AttackAction(); int win = 0; int death = 0; GameState copy; for (int i = 0; i < CalculateAttackCount; i++) { copy = state.DeepCopy(); AttackActionResult result = (AttackActionResult)action.Process(copy, Config); if (result.IsWin) { win++; } if (result.IsDead) { death++; } } return(new Tuple <int, int>(win / 10, death / 10)); }