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); }