Пример #1
0
        public Item Construct(bool inTokuno)
        {
            try
            {
                Item item;

                if (m_Type == typeof(BaseRanged))
                {
                    item = Loot.RandomRangedWeapon(inTokuno);
                }
                else if (m_Type == typeof(BaseWeapon))
                {
                    item = Loot.RandomWeapon(inTokuno);
                }
                else if (m_Type == typeof(BaseArmor))
                {
                    item = Loot.RandomArmorOrHat(inTokuno);
                }
                else if (m_Type == typeof(BaseShield))
                {
                    item = Loot.RandomShield();
                }
                //else if ( m_Type == typeof( BaseJewel ) )
                //	item = Core.AOS ? Loot.RandomJewelry() : Loot.RandomArmorOrShieldOrWeapon();
                else if (m_Type == typeof(BaseClothing))
                {
                    item = Loot.RandomClothing();
                }
                else if (m_Type == typeof(Food))
                {
                    item = Loot.RandomFood();
                }
                else if (m_Type == typeof(BaseBeverage))
                {
                    item = Loot.RandomDrink();
                }
                else if (m_Type == typeof(BaseInstrument))
                {
                    item = Loot.RandomInstrument();
                }
                else if (m_Type == typeof(Amber)) // gem
                {
                    item = Loot.RandomGem();
                }
                else if (m_Type == typeof(ClumsyScroll)) // low scroll
                {
                    item = RandomScroll(0, 1, 3);
                }
                else if (m_Type == typeof(ArchCureScroll)) // med scroll
                {
                    item = RandomScroll(1, 4, 7);
                }
                else if (m_Type == typeof(SummonAirElementalScroll)) // high scroll
                {
                    item = RandomScroll(2, 8, 8);
                }
                else
                {
                    item = Activator.CreateInstance(m_Type) as Item;
                }

                return(item);
            }
            catch
            {
            }

            return(null);
        }
Пример #2
0
        public Item Construct(bool inTokuno, bool isMondain, Expansion e)
        {
            try
            {
                Item item;

                if (m_Type == typeof(BaseRanged))
                {
                    item = Loot.RandomRangedWeapon();
                }
                else if (m_Type == typeof(BaseWeapon))
                {
                    item = Loot.RandomWeapon();
                }
                else if (m_Type == typeof(BaseArmor))
                {
                    item = Loot.RandomArmorOrHat();
                }
                else if (m_Type == typeof(BaseShield))
                {
                    item = Loot.RandomShield();
                }
                else if (m_Type == typeof(BaseJewel))
                {
                    item = e >= Expansion.AOS ? Loot.RandomJewelry() : Loot.RandomArmorOrShieldOrWeapon();
                }
                else if (m_Type == typeof(BaseInstrument))
                {
                    item = Loot.RandomInstrument(e >= Expansion.SE);
                }
                else if (m_Type == typeof(BaseWand))
                {
                    item = Loot.RandomWand();
                }
                else if (m_Type == typeof(Amber))                 // gem
                {
                    item = Loot.RandomGem();
                }
                else if (m_Type == typeof(ClumsyScroll))                 // low scroll
                {
                    item = RandomScroll(0, 1, 3);
                }
                else if (m_Type == typeof(ArchCureScroll))                 // med scroll
                {
                    item = RandomScroll(1, 4, 7);
                }
                else if (m_Type == typeof(SummonAirElementalScroll))                 // high scroll
                {
                    item = RandomScroll(2, 8, 8);
                }
                else if (m_Type == typeof(Ribs))                 //meats
                {
                    item = Loot.Construct(BaseCreature.FoodTypeFromPreference(FoodType.Meat));
                }
                else if (m_Type == typeof(Apple))                 //fruits/vegies
                {
                    item = Loot.Construct(BaseCreature.FoodTypeFromPreference(FoodType.FruitsAndVeggies));
                }
                else if (m_Type == typeof(SheafOfHay))                 //Hay
                {
                    item = Loot.Construct(BaseCreature.FoodTypeFromPreference(FoodType.GrainsAndHay));
                }
                else if (m_Type == typeof(RawFishSteak))                 //Fish
                {
                    item = Loot.Construct(BaseCreature.FoodTypeFromPreference(FoodType.Fish));
                }
                else if (m_Type == typeof(Eggs))                 //Eggs
                {
                    item = Loot.Construct(BaseCreature.FoodTypeFromPreference(FoodType.Eggs));
                }
                else if (m_Type == typeof(Food))                 //Food items
                {
                    item = Loot.RandomFood();
                }
                else if (m_Type == typeof(Candle))                 //Provisions
                {
                    item = Loot.RandomProvision();
                }
                else
                {
                    item = m_Type.CreateInstance <Item>();
                }

                return(item);
            }
            catch
            { }

            return(null);
        }
Пример #3
0
        public Item Construct()
        {
            try
            {
                Item item;

                if (m_Type == null)
                {
                    item = null;
                }
                else if (m_Type == typeof(BaseWeapon))
                {
                    item = Loot.RandomWeapon();
                }
                else if (m_Type == typeof(BaseArmor))
                {
                    item = Loot.RandomArmor();
                }
                else if (m_Type == typeof(BaseShield))
                {
                    item = Loot.RandomShield();
                }
                else if (m_Type == typeof(BaseInstrument))
                {
                    item = Loot.RandomInstrument();
                }
                else if (m_Type == typeof(Amber))                     // gem
                {
                    item = Loot.RandomGem();
                }

                else if (m_Type == typeof(ClumsyScroll))                     // low scroll
                {
                    item = RandomScroll(1, 4);
                }
                else if (m_Type == typeof(ArchCureScroll))                     // med scroll
                {
                    item = RandomScroll(5, 6);
                }
                else if (m_Type == typeof(SummonAirElementalScroll))                     // high scroll
                {
                    item = RandomScroll(7, 8);
                }

                else if (m_Type == typeof(BaseBeverage))
                {
                    item = Loot.RandomDrink();
                }
                else if (m_Type == typeof(Food))
                {
                    item = Loot.RandomFood();
                }
                else
                {
                    item = Activator.CreateInstance(m_Type) as Item;
                }

                if (item != null && item is BaseClothing)
                {
                    item.Hue = Utility.RandomNondyedHue();
                }

                return(item);
            }
            catch
            {
            }

            return(null);
        }