public NetworkClient(PBEBattleFormat battleFormat, PBETeamShell teamShell) : base(new PBEBattle(battleFormat, teamShell.Settings), ClientMode.Online) { _teamShell = teamShell; _client = new PBEClient { Battle = Battle }; _client.Disconnected += OnDisconnected; _client.Error += OnError; _client.PacketReceived += OnPacketReceived; }
public NetworkClient(PBEClient client, PBEBattlePacket bp, byte battleId, string name) : base(name) { var b = new PBEBattle(bp); Battle = b; if (battleId != byte.MaxValue) { Trainer = b.Trainers[battleId]; } BattleView = new BattleView(this); client.Battle = b; _client = client; client.Disconnected += OnDisconnected; client.Error += OnError; client.PacketReceived += OnPacketReceived; Send(new PBEResponsePacket()); }
private byte _battleId = byte.MaxValue; // Spectator by default public NetworkClientConnection(string host, ushort port, PBELegalPokemonCollection party, Action <object> action) { _party = party; _action = action; _client = new PBEClient(); _client.Disconnected += OnDisconnected; _client.Error += OnError; _client.PacketReceived += OnPacketReceived; if (_client.Connect(new IPEndPoint(IPAddress.Parse(host), port), 10 * 1000)) { OnConnected(); } else { _client.Dispose(); action.Invoke(null); } }