コード例 #1
0
 public static void Load()
 {
     if (m_Instance == null && BaseHalloweenGiftGiver.IsHalloween())
     {
         new TrickorTreatPersistence();
     }
 }
コード例 #2
0
 public static void Save(WorldSaveEventArgs e)
 {
     if (BaseHalloweenGiftGiver.IsHalloween())
     {
         if (m_Instance == null)
         {
             new TrickorTreatPersistence();
         }
     }
     else if (m_Instance != null)
     {
         Timer.DelayCall(TimeSpan.FromSeconds(1.0), new TimerCallback(m_Instance.DeleteInternal));
     }
 }
コード例 #3
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            if (reader.ReadBool())
            {
                int count = reader.ReadInt();                 //Dictionary count
                for (int i = 0; i < count; i++)
                {
                    m_Treats.Add(reader.ReadMobile(), reader.ReadStrongMobileList());
                }
            }

            if (!BaseHalloweenGiftGiver.IsHalloween())
            {
                Timer.DelayCall(TimeSpan.FromSeconds(1.0), new TimerCallback(DeleteInternal));
            }
        }
コード例 #4
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            writer.Write((int)0);                // version

            if (BaseHalloweenGiftGiver.IsHalloween(DateTime.UtcNow))
            {
                writer.Write(true);
                writer.Write(m_Treats.Count);
                foreach (KeyValuePair <Mobile, List <Mobile> > kvp in m_Treats)
                {
                    writer.Write(kvp.Key);
                    writer.Write(kvp.Value, true);
                }
            }
            else
            {
                writer.Write(false);
                Timer.DelayCall(TimeSpan.FromSeconds(1.0), new TimerCallback(DeleteInternal));
            }
        }