コード例 #1
0
        public RewardBox()
            : base()
        {
            Hue = Reward.StrongboxHue();

            while (Items.Count < Amount)
            {
                switch (Utility.Random(4))
                {
                case 0:
                    DropItem(Reward.Armor());
                    break;

                case 1:
                    DropItem(Reward.RangedWeapon());
                    break;

                case 2:
                    DropItem(Reward.Weapon());
                    break;

                case 3:
                    DropItem(Reward.Jewlery());
                    break;
                }
            }

            if (0.25 > Utility.RandomDouble()) // check
            {
                DropItem(Loot.RandomTalisman());
            }
        }
コード例 #2
0
        public BaseCraftsmanSatchel()
            : base()
        {
            Hue = Reward.SatchelHue();

            int count = 1;

            if (0.015 > Utility.RandomDouble())
            {
                count = 2;
            }

            bool equipment = false;
            bool jewlery   = false;
            bool talisman  = false;

            while (Items.Count < count)
            {
                if (0.33 > Utility.RandomDouble() && !talisman)
                {
                    DropItem(Loot.RandomTalisman());
                    talisman = true;
                }
                else if (0.4 > Utility.RandomDouble() && !equipment)
                {
                    DropItem(RandomItem());
                    equipment = true;
                }
                else if (0.88 > Utility.RandomDouble() && !jewlery)
                {
                    DropItem(Reward.Jewlery());
                    jewlery = true;
                }
            }
        }
コード例 #3
0
ファイル: RewardBag.cs プロジェクト: zmazza/ServUO
        public BaseRewardBag()
            : base()
        {
            Hue = Reward.RewardBagHue();

            while (Items.Count < ItemAmount)
            {
                if (0.05 > Utility.RandomDouble()) // check
                {
                    DropItem(Loot.RandomTalisman());
                }
                else
                {
                    switch (Utility.Random(4))
                    {
                    case 0:
                        DropItem(Reward.Armor());
                        break;

                    case 1:
                        DropItem(Reward.RangedWeapon());
                        break;

                    case 2:
                        DropItem(Reward.Weapon());
                        break;

                    case 3:
                        DropItem(Reward.Jewlery());
                        break;
                    }
                }
            }
        }