Пример #1
0
 public static void OnLogin(LoginEventArgs e)
 {
     if (e.Mobile is PlayerMobile pm)
     {
         Timer.DelayCall(() => Caddellite.UpdateBuff(pm));
     }
 }
Пример #2
0
        public static void OnLogin(LoginEventArgs e)
        {
            PlayerMobile pm = e.Mobile as PlayerMobile;

            if (pm != null)
            {
                Timer.DelayCall(() => Caddellite.UpdateBuff(pm));
            }
        }
Пример #3
0
        public static void RemoveInfluence(BaseCreature bc)
        {
            if (Table != null && Table.ContainsKey(bc))
            {
                Table.Remove(bc);

                if (bc.ControlMaster != null)
                {
                    bc.ControlMaster.SendLocalizedMessage(1158687); // Your pet is no longer Caddellite infused.

                    Caddellite.UpdateBuff(bc.ControlMaster);
                }

                if (Table.Count == 0)
                {
                    Table = null;
                }
            }
        }
Пример #4
0
        public override void OnAdded(object parent)
        {
            if (parent is Mobile)
            {
                Mobile from = (Mobile)parent;

                m_AosSkillBonuses.AddTo(from);

                int strBonus = m_AosAttributes.BonusStr;
                int dexBonus = m_AosAttributes.BonusDex;
                int intBonus = m_AosAttributes.BonusInt;

                if (strBonus != 0 || dexBonus != 0 || intBonus != 0)
                {
                    string modName = Serial.ToString();

                    if (strBonus != 0)
                    {
                        from.AddStatMod(new StatMod(StatType.Str, modName + "Str", strBonus, TimeSpan.Zero));
                    }

                    if (dexBonus != 0)
                    {
                        from.AddStatMod(new StatMod(StatType.Dex, modName + "Dex", dexBonus, TimeSpan.Zero));
                    }

                    if (intBonus != 0)
                    {
                        from.AddStatMod(new StatMod(StatType.Int, modName + "Int", intBonus, TimeSpan.Zero));
                    }
                }

                if (HasSocket <Caddellite>())
                {
                    Caddellite.UpdateBuff(from);
                }

                from.CheckStatTimers();
            }
        }
Пример #5
0
        public override void OnRemoved(object parent)
        {
            if (parent is Mobile)
            {
                Mobile from = (Mobile)parent;

                m_AosSkillBonuses.Remove();

                if (HasSocket <Caddellite>())
                {
                    Caddellite.UpdateBuff(from);
                }

                string modName = Serial.ToString();

                from.RemoveStatMod(modName + "Str");
                from.RemoveStatMod(modName + "Dex");
                from.RemoveStatMod(modName + "Int");

                from.CheckStatTimers();
            }
        }
Пример #6
0
        public bool DoEffects(Mobile owner, BaseCreature bc)
        {
            owner.SendLocalizedMessage(1158685); // Your pet is now Caddellite infused by this treat.

            bc.PlaySound(0x1EA);
            bc.FixedParticles(0x373A, 10, 15, 5018, EffectLayer.Waist);

            bc.Loyalty = BaseCreature.MaxLoyalty;

            if (Table == null)
            {
                Table = new Dictionary <BaseCreature, DateTime>();
            }

            Table.Add(bc, DateTime.UtcNow + TimeSpan.FromHours(1));
            Timer.DelayCall(TimeSpan.FromHours(Duration), RemoveInfluence, bc);

            Caddellite.UpdateBuff(owner);

            Consume();
            return(true);
        }