public override Item Construct(Mobile from, int luckChance, bool spawning)
        {
            if (m_AtSpawnTime != spawning)
            {
                return(null);
            }

            int totalChance = 0;

            for (int i = 0; i < m_Items.Length; ++i)
            {
                totalChance += m_Items[i].Chance;
            }

            int rnd = Utility.Random(totalChance);

            for (int i = 0; i < m_Items.Length; ++i)
            {
                LootPackItem item = m_Items[i];

                if (rnd < item.Chance)
                {
                    return(Mutate(from, luckChance, item.Construct(false, false)));
                }

                rnd -= item.Chance;
            }

            return(null);
        }
        public NewLootPackEntry(LootPackItem[] items, double dropChance, WeapMod weaponModifiers, ArMod armorModifiers)
        {
            m_Items = items;
            m_Chance = dropChance * 100;

            m_WeaponModifiers = weaponModifiers;
            m_ArmorModifiers = armorModifiers;
        }
 public NewLootPackEntry(LootPackItem[] items, double dropChance, ArMod armorModifiers)
     : this(items, dropChance, null, armorModifiers)
 {
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="items"></param>
 /// <param name="dropChance"></param>
 /// <param name="weaponModifiers"></param>
 public NewLootPackEntry(LootPackItem[] items, double dropChance, WeapMod weaponModifiers) 
     : this(items, dropChance, weaponModifiers, null)
 {
 }