private void OnSelectCard(CoreMessage msg) { GamePacketWriter packet = GamePacketFactory.Create(msg.Message); int player = msg.Reader.ReadByte(); packet.Write((byte)player); packet.Write(msg.Reader.ReadBytes(3)); int count = msg.Reader.ReadByte(); packet.Write((byte)count); for (int i = 0; i < count; i++) { int code = msg.Reader.ReadInt32(); int pl = msg.Reader.ReadByte(); int loc = msg.Reader.ReadByte(); int seq = msg.Reader.ReadByte(); int pos = msg.Reader.ReadByte(); packet.Write(pl == player ? code : 0); packet.Write((byte)pl); packet.Write((byte)loc); packet.Write((byte)seq); packet.Write((byte)pos); } Game.WaitForResponse(player); Game.CurPlayers[player].Send(packet); }
private void OnAnnounceCard(CoreMessage msg) { int player = msg.Reader.ReadByte(); Game.WaitForResponse(player); SendToPlayer(msg, player); }
private void OnSelectPlace(CoreMessage msg) { int player = msg.Reader.ReadByte(); msg.Reader.ReadBytes(5); Game.WaitForResponse(player); SendToPlayer(msg, player); }
private void OnAnnounceNumber(CoreMessage msg) { int player = msg.Reader.ReadByte(); int count = msg.Reader.ReadByte(); msg.Reader.ReadBytes(count * 4); Game.WaitForResponse(player); SendToPlayer(msg, player); }
private void OnSortCard(CoreMessage msg) { int player = msg.Reader.ReadByte(); int count = msg.Reader.ReadByte(); msg.Reader.ReadBytes(count * 7); Game.WaitForResponse(player); SendToPlayer(msg, player); }
private void OnRetry() { int player = Game.WaitForResponse(); Game.CurPlayers[player].Send(GamePacketFactory.Create(GameMessage.Retry)); Game.Replay.End(); //File.WriteAllBytes("error_" + DateTime.UtcNow.ToString("yyyy-MM-dd_HH-mm-ss") + ".yrp", Game.Replay.GetFile()); }
private void OnSelectCounter(CoreMessage msg) { int player = msg.Reader.ReadByte(); msg.Reader.ReadBytes(3); int count = msg.Reader.ReadByte(); msg.Reader.ReadBytes(count * 8); Game.WaitForResponse(player); SendToPlayer(msg, player); }
private void OnSelectBattleCmd(CoreMessage msg) { int player = msg.Reader.ReadByte(); int count = msg.Reader.ReadByte(); msg.Reader.ReadBytes(count * 11); count = msg.Reader.ReadByte(); msg.Reader.ReadBytes(count * 8 + 2); Game.RefreshAll(); Game.WaitForResponse(player); SendToPlayer(msg, player); }
private void OnSelectSum(CoreMessage msg) { msg.Reader.ReadByte(); int player = msg.Reader.ReadByte(); msg.Reader.ReadBytes(6); int count = msg.Reader.ReadByte(); msg.Reader.ReadBytes(count * 11); count = msg.Reader.ReadByte(); msg.Reader.ReadBytes(count * 11); Game.WaitForResponse(player); SendToPlayer(msg, player); }
private int OnSelectChain(CoreMessage msg) { int player = msg.Reader.ReadByte(); int count = msg.Reader.ReadByte(); msg.Reader.ReadBytes(10 + count * 12); if (count > 0) { Game.WaitForResponse(player); SendToPlayer(msg, player); return(1); } Game.SetResponse(-1); return(0); }