コード例 #1
0
    // Returns (1) item from the list provided
    public WeaponState.Weapon GetItemInList(List <WeaponState.Weapon> list)
    {
        int i = Random.Range(0, list.Count - 1);

        WeaponState.Weapon weapon = list[i];
        list.RemoveAt(i);
        return(weapon);
    }
コード例 #2
0
 // Resets Weapon stats for melee
 private void ResetMelee(WeaponState.Weapon new_weapon)
 {
     Melee          = new_weapon;
     melee_cooldown = 0;
     melee_hp       = new_weapon.hp;
     melee_obj.GetComponent <MeleeBase>().force  = Melee.knockback;
     melee_obj.GetComponent <MeleeBase>().damage = Melee.damage;
 }
コード例 #3
0
 // Resets Weapon stats for ranged
 private void ResetRanged(WeaponState.Weapon new_weapon)
 {
     Ranged          = new_weapon;
     ranged_cooldown = 0;
     ranged_hp       = new_weapon.hp;
     ranged_obj.GetComponent <RangedBase>().force  = Ranged.knockback;
     ranged_obj.GetComponent <RangedBase>().damage = Ranged.damage;
 }
コード例 #4
0
    // Get (3) weapons for shop to sell
    public void GetShopItems()
    {
        // Get local copies of all weapons
        List <WeaponState.Weapon> Ranged_copy = WeaponState.data.Ranged_Weapons;
        List <WeaponState.Weapon> Melee_copy  = WeaponState.data.Melee_Weapons;

        // Select weapons
        Ranged_selling = GetItemInList(Ranged_copy);
        Melee_selling  = GetItemInList(Melee_copy);
        Random_selling = GetRandomWeapon(Ranged_copy, Melee_copy);
    }
コード例 #5
0
 // Resets Weapon stats
 public void ResetWeapon(WeaponState.Weapon new_weapon)
 {
     if (new_weapon.is_ranged)
     {
         ResetRanged(new_weapon);
     }
     else
     {
         ResetMelee(new_weapon);
     }
 }
コード例 #6
0
 // Reduce health on purchase
 private void OnPurchase(WeaponState.Weapon weapon)
 {
     PlayerState.data.HP -= weapon.cost;
 }