示例#1
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            reader.ReadInt(); // version

            Charm = reader.ReadItem() as DreamSerpentCharm;
        }
示例#2
0
        public override void OnAccept()
        {
            base.OnAccept();

            Charm = new DreamSerpentCharm();
            Owner.AddToBackpack(Charm);
        }
示例#3
0
        public override void RemoveQuest(bool removeChain)
        {
            base.RemoveQuest(removeChain);

            if (Charm != null && !Charm.Deleted)
            {
                Charm.Delete();
                Charm = null;
            }
        }
示例#4
0
        public override int Damage(int amount, Mobile from, bool informMount, bool checkDisrupt)
        {
            if (from is PlayerMobile)
            {
                var quest = QuestHelper.GetQuest <CatchMeIfYouCanQuest>((PlayerMobile)from);

                if (quest != null)
                {
                    quest.Objectives[0].Update(this);

                    if (quest.Completed)
                    {
                        DreamSerpentCharm.CompleteQuest(from);
                    }
                }
            }

            return(0);
        }