コード例 #1
0
        public static void Humility(Mobile from, object targ)
        {
            if (!(targ is Mobile))
            {
                return;
            }

            BaseCreature bc = targ as BaseCreature;

            VirtueLevel vl = VirtueHelper.GetLevel(from, VirtueName.Humility);

            if (bc != null && bc.ControlMaster == @from && vl >= VirtueLevel.Seeker)
            {
                int usedPoints;
                if (from.Virtues.Humility < 4399)
                {
                    usedPoints = 400;
                }
                else if (from.Virtues.Humility < 10599)
                {
                    usedPoints = 600;
                }
                else
                {
                    usedPoints = 1000;
                }

                VirtueHelper.Atrophy(from, VirtueName.Humility, usedPoints);

                switch (vl)
                {
                case VirtueLevel.Seeker:
                    bc.HumilityBuff = 1;
                    break;

                case VirtueLevel.Follower:
                    bc.HumilityBuff = 2;
                    break;

                case VirtueLevel.Knight:
                    bc.HumilityBuff = 3;
                    break;
                }

                Timer mTimer = new HumilityTimer(bc);
                mTimer.Start();
                from.SendLocalizedMessage(1155819);
            }
            else
            {
                from.SendMessage("You can only embrace your Humility on a pet.");//get cliloc
            }
        }
コード例 #2
0
ファイル: Humility.cs プロジェクト: Crome696/ServUO
        public static void Humility(Mobile from, object targ)
        {
            if (!(targ is Mobile)) return;

            BaseCreature bc = targ as BaseCreature;

            VirtueLevel vl = VirtueHelper.GetLevel(from, VirtueName.Humility);
            if (bc != null && bc.ControlMaster == @from && vl >= VirtueLevel.Seeker)
            {
                int usedPoints;
                if (from.Virtues.Humility < 4399)
                    usedPoints = 400;
                else if (from.Virtues.Humility < 10599)
                    usedPoints = 600;
                else
                    usedPoints = 1000;

                VirtueHelper.Atrophy(from, VirtueName.Humility, usedPoints);

                switch (vl)
                {
                    case VirtueLevel.Seeker:
                        bc.HumilityBuff = 1;
                        break;
                    case VirtueLevel.Follower:
                        bc.HumilityBuff = 2;
                        break;
                    case VirtueLevel.Knight:
                        bc.HumilityBuff = 3;
                        break;
                }

                Timer mTimer = new HumilityTimer(bc);
                mTimer.Start();
                from.SendLocalizedMessage(1155819);
            }
            else
                from.SendMessage("You can only embrace your Humility on a pet.");//get cliloc
        }