Server.Network.PacketHandlers.DropReq6017 C# (CSharp) Méthode

DropReq6017() public static méthode

public static DropReq6017 ( Server.Network.NetState state, PacketReader pvSrc ) : void
state Server.Network.NetState
pvSrc PacketReader
Résultat void
        public static void DropReq6017( NetState state, PacketReader pvSrc )
        {
            pvSrc.ReadInt32(); // serial, ignored
            int x = pvSrc.ReadInt16();
            int y = pvSrc.ReadInt16();
            int z = pvSrc.ReadSByte();
            pvSrc.ReadByte(); // Grid Location?
            Serial dest = pvSrc.ReadInt32();

            Point3D loc = new Point3D( x, y, z );

            Mobile from = state.Mobile;

            if ( dest.IsMobile )
            {
                from.Drop( World.FindMobile( dest ), loc );
            }
            else if ( dest.IsItem )
            {
                Item item = World.FindItem( dest );

                if ( item is BaseMulti && ((BaseMulti)item).AllowsRelativeDrop )
                {
                    loc.m_X += item.X;
                    loc.m_Y += item.Y;
                    from.Drop( loc );
                }
                else
                {
                    from.Drop( item, loc );
                }
            }
            else
            {
                from.Drop( loc );
            }
        }
PacketHandlers