public override EWeaponUseResult Use() { EWeaponUseResult useResult = base.Use(); if (useResult != EWeaponUseResult.CantUse) { Owner.WeaponController.ShootProjectile(ProjectileInfo); } return(useResult); }
private void HandleUseResult(EWeaponUseResult pUseResult) { switch (pUseResult) { case EWeaponUseResult.Reload: StopUseWeapon(); StartReloadWeapon(ActiveWeapon); break; case EWeaponUseResult.Remove: StopUseWeapon(); RemoveWeapon(ActiveWeapon); break; } }
public override EWeaponUseResult Use() { EWeaponUseResult useResult = base.Use(); if (useResult != EWeaponUseResult.CantUse) { if (prefab.InstanceOnEveryUse) { InstantiatePrefab(); } prefabInstance.Use(); //OnUse(); //specialController.Use(); } return(useResult); }
public void UseWeapon() { if (IsLogEnabled()) { Debug.Log("UseWeapon"); } EWeaponUseResult useResult = ActiveWeapon.Use(); if (useResult == EWeaponUseResult.CantUse) { //Debug.Log($"{activeWeapon} cant be used"); //TODO: play CANT_USE sound StopUseWeapon(); return; } //Debug.Log($"{activeWeapon} USE"); InvokeWeaponChange(ActiveWeapon); HandleUseResult(useResult); }