コード例 #1
0
        public override void OnMovement(Mobile m, Point3D oldLocation)
        {
            if (m is PlayerMobile pm && m_Rec.Contains(m) && m.Backpack != null && Gareth.CheckQuestStatus(pm, HumilityQuestStatus.RewardRefused))
            {
                Item item = m.Backpack.FindItemByType(typeof(GreyCloak));

                if (item == null)
                {
                    item = m.FindItemOnLayer(Layer.Cloak);
                }

                if (item != null && item is GreyCloak cloak && cloak.Owner == m)
                {
                    m.SendLocalizedMessage(1075897); // As you near the shrine a strange energy envelops you. Suddenly, your cloak is transformed into the Cloak of Humility!

                    m.Backpack.DropItem(new HumilityCloak());
                    cloak.Delete();

                    m.PlaySound(0x244);
                    Effects.SendTargetParticles(m, 0x376A, 1, 32, 0x13A6, EffectLayer.Waist);

                    Gareth.AddQuestStatus(pm, HumilityQuestStatus.Finished);
                }
            }
        }
コード例 #2
0
        private static void OnLogin(LoginEventArgs e)
        {
            if (e.Mobile is PlayerMobile pm && Gareth.CheckQuestStatus(pm, HumilityQuestStatus.RewardPending))
            {
                var quest = new HumilityProofGump
                {
                    Owner   = pm,
                    Quester = null
                };

                pm.SendGump(new MondainQuestGump(quest));
            }
        }