示例#1
0
        public override void OnRemoved(object parent)
        {
            if (parent is Mobile)
            {
                if (m_SummonedCreature != null && m_SummonedCreature.CheckAlive())
                {
                    Effects.SendLocationParticles(EffectItem.Create(m_SummonedCreature.Location, m_SummonedCreature.Map, EffectItem.DefaultDuration), 0x3728, 1, 13, 2100, 3, 5042, 0);
                    m_SummonedCreature.PlaySound(0x201);
                    m_SummonedCreature.Delete();
                }

                //-------- Charged Time Left -----------

                m_isequiped = false;
                InvalidateProperties();
                if (m_ChargeTimer != null)
                {
                    m_ChargeTimer.Stop();
                }

                //------ FIN Charged Time Left ---------

                Mobile from = (Mobile)parent;

                m_SkillBonuses.Remove();

                string modName = this.Serial.ToString();

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

                from.CheckStatTimers();
            }
        }
示例#2
0
        public void AddSkillBonus(string skillShortName, int modifier)
        {
            if (SkillBonuses.Count == 0)
            {
                SkillBonuses.Add(skillShortName, modifier);
            }
            else
            {
                foreach (var skill in SkillBonuses)
                {
                    if (skill.Key == skillShortName)
                    {
                        if (modifier == 0)
                        {
                            SkillBonuses.Remove(skillShortName);
                            return;
                        }
                        else
                        {
                            SkillBonuses[skillShortName] = modifier;
                            return;
                        }
                    }
                }

                SkillBonuses.Add(skillShortName, modifier);
            }
        }
示例#3
0
        public override void OnRemoved(object parent)
        {
            if (parent is Mobile)
            {
                Mobile from = (Mobile)parent;

                m_SkillBonuses.Remove();

                string modName = this.Serial.ToString();

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

                from.CheckStatTimers();
            }
        }
示例#4
0
        public override void OnRemoved(object parent)
        {
            Mobile mob = parent as Mobile;

            if (mob != null)
            {
                m_SkillBonuses.Remove();

                string modName = this.Serial.ToString();

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

                mob.CheckStatTimers();
            }

            base.OnRemoved(parent);
        }