Esempio n. 1
0
 protected Weapon(int _minDamage, int _maxDamage, WEAPON_RARITY rarity, string name, int slots)
 {
     this.Rarity            = rarity;
     this.originalMinDamage = _minDamage;
     this.originalMaxDamage = _maxDamage;
     this.Name = name;
     this.gems = new IGem[slots];
 }
Esempio n. 2
0
        public static void CreateWeapon(string[] inputTokens)
        {
            string[] weaponStringArr    = inputTokens[1].Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            var      weaponRarityString = weaponStringArr[0];
            var      weaponTypeString   = weaponStringArr[1];

            WEAPON_RARITY weaponRarity = (WEAPON_RARITY)Enum.Parse(typeof(WEAPON_RARITY), weaponRarityString);

            Type weaponType = Type.GetType("InfernoInfinity.Models.Weapons." + weaponTypeString);

            if (weaponType == null)
            {
                throw new ArgumentException("Invalid Weapon Type!");
            }

            if (!typeof(IWeapon).IsAssignableFrom(weaponType))
            {
                throw new ArgumentException("Invalid Weapon!");
            }

            IWeapon weapon = (IWeapon)Activator.CreateInstance(weaponType, new object[] { weaponRarity, inputTokens[2] });

            weapons.Add(weapon);
        }
Esempio n. 3
0
 public Sword(WEAPON_RARITY _rarity, string _name)
     : base(MIN_DAMAGE, MAX_DAMAGE, _rarity, _name, SLOTS)
 {
 }