Exemple #1
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 5:
            {
                m_MultiID  = reader.ReadInt();
                m_Offset   = reader.ReadPoint3D();
                m_ShipName = reader.ReadString();
                m_BoatItem = reader.ReadItem() as BaseBoat;
                break;
            }

            case 4:
            {
                switch (reader.ReadInt())
                {
                default:
                case 0: break;

                case 1: m_PilotEntry = new PilotEntry(reader);
                    break;
                }
                goto case 3;
            }

            case 3:
            {
                m_BaseHue = reader.ReadInt();

                if (version < 5)
                {
                    reader.ReadItem();
                }
                reader.ReadItem();
                m_Owner = reader.ReadMobile();
                goto case 2;
            }

            case 2:
            {
                switch (reader.ReadInt())
                {
                default:
                case 0: break;

                case 1: m_SecurityEntry = new SecurityEntry(null, reader);
                    break;
                }
                goto case 1;
            }

            case 1:
            case 0:
            {
                m_MultiID  = reader.ReadInt();
                m_Offset   = reader.ReadPoint3D();
                m_ShipName = reader.ReadString();

                if (version == 0)
                {
                    reader.ReadUInt();
                }

                break;
            }
            }

            if (LootType == LootType.Newbied)
            {
                LootType = LootType.Blessed;
            }

            if (Weight == 0.0)
            {
                Weight = 1.0;
            }
        }
Exemple #2
0
 protected internal abstract void SetPermission(SecurityEntry entry);