private void OnBattleFound(ConnectedClient combatant, NewBattleData data) { if (this.BattleFoundEvent != null) { this.BattleFoundEvent(combatant, new BattleCreatedEventData(combatant, data)); } }
private void HandleBattleFound(ServerResponse response) { this.BattleStatus = BattleStatus.Battle; var opHandler = new OperationDataHandler(); NewBattleData battleData = opHandler.TranslateObject <NewBattleData>(response.ResponseData); this.BattleId = battleData.BattleId; this.OnBatteStatusChanged(new BattleStatusData() { BattleStatus = BattleStatus.Battle, NewBattleData = battleData }); }
public void FindBattle(ConnectedClient client) { if (!this.BattleQueue.Any()) { this.BattleQueue.Enqueue(client); Console.WriteLine(string.Format("{0} added to the battle queue", client.ClientName)); return; } // // If someone already looks for battle then match them in queue order. // var enemy = this.BattleQueue.Dequeue(); var firstPlayer = new CombatantInfo(client); var secondPlayer = new CombatantInfo(enemy); Guid battleId = Guid.NewGuid(); var battle = new Battle(firstPlayer, secondPlayer, battleId); this.ActiveBattles.Add(battle); NewBattleData data = new NewBattleData() { OponentName = enemy.ClientName, BattleId = battleId }; this.OnBattleFound(client, data); data = new NewBattleData() { BattleId = battleId, OponentName = client.ClientName }; this.OnBattleFound(enemy, data); }
public BattleCreatedEventData(ConnectedClient combatant, NewBattleData battleData) { this.BattleData = battleData; }