public void ReactToAttackResult(AttackMessage atckMsg) { ICell cell = cellField[atckMsg.X, atckMsg.Y]; cell.Explored = true; switch (atckMsg.Result) { case AttackResult.Hit: cell.State = true; break; case AttackResult.Miss: cell.State = false; break; case AttackResult.Destroy: cell.State = true; UnsettedShipsByLength[atckMsg.Ship.Length - 1].Value--; ShipDestroyed(atckMsg.Ship); break; default: break; } }
private async Task AttackResultOnlineMessageRecived(string message) { AttackMessage atckMsg = (AttackMessage)MessageFormat.GetInfo(MessageType.AttackResult, message); if (atckMsg.Result == AttackResult.Miss) { await Game.opponent.GiveTurn(); } Game.session.enemyField.ReactToAttackResult(atckMsg); }
public override async void SendAttackResult(AttackMessage message) { await Game.ConnectionManager.SendMessage(MessageType.AttackResult, message); }
private async Task SendAttackResultOnlineMessage(AttackMessage msg) { var msg_send = MessageFormat.Concat(MessageType.AttackResult, msg); await SendAsyncOnline(msg_send); }
private async Task SendAttackResultMessage(AttackMessage msg) { await SendAsync(MessageFormat.Concat(MessageType.AttackResult, msg)); }
public virtual void SendAttackResult(AttackMessage msg) { }