Beispiel #1
0
    public void EquipWeapon(Weapon_lsy weapon, Transform weaponPosition)
    {
        if (CurrentWeapon != null)
        {
            CurrentWeapon.WeaponAmmo.SaveAmmo();

            Destroy(GameObject.Find("Pool"));
            Destroy(CurrentWeapon.gameObject);
        }

        CurrentWeapon = Instantiate(weapon, weaponPosition.position, weaponPosition.rotation);
        CurrentWeapon.transform.parent = weaponPosition;
        CurrentWeapon.SetOwner(character);

        if (character.CharacterType == Character_lsy.CharacterTypes.Player)
        {
            UIManager_lsy.Instance.UpdateAmmo(CurrentWeapon.CurrentAmmo, CurrentWeapon.MagazineSize);
            UIManager_lsy.Instance.UpdateWeaponSprite(CurrentWeapon.gameObject.transform.GetChild(0).GetComponent <SpriteRenderer>().sprite);
        }
    }
Beispiel #2
0
 private void Awake()  // Because we need to retrieve the update ammo value first
 {
     weapon = GetComponent <Weapon_lsy>();
     // RefillAmmo();
     LoadWeaponMagazineSize();
 }