Пример #1
0
        /// <summary>
        /// Unserializes a BinaryStream into the Attributes of this Instance
        /// </summary>
        /// <param name="reader">The Stream that contains the FileData</param>
        protected override void Unserialize(System.IO.BinaryReader reader)
        {
            ArrayList list = new ArrayList();

            id      = reader.ReadBytes(id.Length);
            version = reader.ReadUInt32();
            if (version == (uint)NgbhVersion.Castaway)
            {
                header = new byte[12 + 32];
            }
            header = reader.ReadBytes(header.Length);

            int textlen = reader.ReadInt32();

            zonename = reader.ReadBytes(textlen);
            if (version >= (uint)NgbhVersion.Nightlife)
            {
                zero = reader.ReadBytes(0x14);
            }
            else
            {
                zero = reader.ReadBytes(0x18);
            }

            //read preitems
            for (int i = 0; i < preitems.Length; i++)
            {
                preitems[i].Unserialize(reader);
            }


            int blocklen = reader.ReadInt32();

            slota.Clear();
            for (int i = 0; i < blocklen; i++)
            {
                NgbhSlot item = slota.AddNew(0);
                item.Unserialize(reader);
            }

            blocklen = reader.ReadInt32();
            slotb.Clear();
            for (int i = 0; i < blocklen; i++)
            {
                NgbhSlot item = slotb.AddNew(0);
                item.Unserialize(reader);
            }

            blocklen = reader.ReadInt32();
            slotc.Clear();
            for (int i = 0; i < blocklen; i++)
            {
                NgbhSlot item = slotc.AddNew(0);
                item.Unserialize(reader);
            }

            Changed = false;
        }
Пример #2
0
        public Collections.NgbhItems GetItems(Data.NeighborhoodSlots id, uint inst)
        {
            Collections.NgbhSlots slots = Sims;
            if (id == Data.NeighborhoodSlots.Families || id == Data.NeighborhoodSlots.FamiliesIntern)
            {
                slots = Families;
            }

            if (id == Data.NeighborhoodSlots.Lots || id == Data.NeighborhoodSlots.LotsIntern)
            {
                slots = Lots;
            }

            NgbhSlot slot = slots.GetInstanceSlot(inst);

            if (slot != null)
            {
                return(slot.GetItems(id));
            }

            return(null);
        }
Пример #3
0
        protected NgbhItem GetSecondaryAspirationToken(SDesc sim, bool create)
        {
            if (ngbh == null)
            {
                return(null);
            }
            NgbhSlot slot = ngbh.Sims.GetInstanceSlot(sim.Instance, true);

            if (slot != null)
            {
                NgbhItem item = slot.FindItem(SEC_ASP_TOKEN_GUID);
                if (create && item == null)
                {
                    item = slot.ItemsB.AddNew(SimMemoryType.Token);

                    item.Guid  = SEC_ASP_TOKEN_GUID;
                    item.Value = 0;
                }
                return(item);
            }

            return(null);
        }
Пример #4
0
        private void miNuke_Activate(object sender, System.EventArgs e)
        {
            if (spc.SelectedSim != null)
            {
                Collections.NgbhSlots slots = this.Ngbh.GetSlots(Data.NeighborhoodSlots.Sims);
                if (slots != null)
                {
                    NgbhSlot slot = slots.GetInstanceSlot(spc.SelectedSim.Instance);
                    if (slot != null)
                    {
                        slot.RemoveMyMemories();
                        int deletedCount = slot.RemoveMemoriesAboutMe();

                        if (deletedCount > 0)
                        {
                            Message.Show(String.Format("Deleted {0} memories from the sim pool", deletedCount));
                        }

                        spc.Refresh();
                    }
                }
            }
        }
Пример #5
0
 void SetContent()
 {
     this.ui.Slot = slot;
 }