void SetCurrentWeapon(Weapon newWeapon, Weapon lastWeapon) { Weapon LocalLastWeapon = null; if (lastWeapon != null) { LocalLastWeapon = lastWeapon; } else if (newWeapon != currentWeapon) { LocalLastWeapon = currentWeapon; } if (LocalLastWeapon) { LocalLastWeapon.OnUnEquip(); } currentWeapon = newWeapon; if (newWeapon) { newWeapon.OnEquip(); } }
void SetCurrentWeapon(Weapon newWeapon, Weapon lastWeapon, WeaponType type) { Weapon LocalLastWeapon = null; if (type == WeaponType.Shoot) { if (lastWeapon != null) { LocalLastWeapon = lastWeapon; } else if (newWeapon != equippedShootWeapon) { LocalLastWeapon = equippedShootWeapon; } if (LocalLastWeapon) { LocalLastWeapon.OnUnEquip(); } equippedShootWeapon = newWeapon as ShootWeapon; if (newWeapon) { newWeapon.OnEquip(); } } else if (type == WeaponType.Melee) { if (lastWeapon != null) { LocalLastWeapon = lastWeapon; } else if (newWeapon != equippedMeleeWeapon) { LocalLastWeapon = equippedMeleeWeapon; } if (LocalLastWeapon) { LocalLastWeapon.OnUnEquip(); } equippedMeleeWeapon = newWeapon as MeleeWeapon; if (newWeapon) { newWeapon.OnEquip(); } } }