コード例 #1
0
        public void OnPlayerBlockPlacement(ref PacketReader _pReader, PacketType pt, ref ClientManager _client)
        {
            PlayerBlockPlacementPacket p = new PlayerBlockPlacementPacket(PacketType.PlayerBlockPlacement);
            p.X = _pReader.ReadInt();
            p.Y = _pReader.ReadByte();
            p.Z = _pReader.ReadInt();
            p.Direction = _pReader.ReadByte();
            p.BlockID = _pReader.ReadSlot();
            //if (p.BlockID.s_short <= -1)
            //{
                p.Amount = _pReader.ReadByte();
                p.Damage = _pReader.ReadShort();
            //}
            GridServer.player_list[_client.id].WaitToRead = false;
            p.BuildPacket();

            PacketReader pr = new PacketReader(new System.IO.MemoryStream(p.GetBytes()));
            int i = 0;
            for (; i < base.ModuleAddons.Count; i++)
            {
                base.ModuleAddons.ElementAt(i).Value(pt, ModuleAddons.ElementAt(i).Key, ref pr, (PacketHandler)p, ref _client);
            }
        }
コード例 #2
0
 public void OnCreativeInventory(ref PacketReader _pReader, PacketType pt, ref ClientManager _client)
 {
     CreateInventoryPacket cip = new CreateInventoryPacket(PacketType.CreativeInventory);
     cip.Slot = _pReader.ReadSlot();
     _client.WaitToRead = false;
 }