Add Garlic specific weapon upgrades

This commit is contained in:
baz 2025-02-15 00:26:40 +00:00
parent 9f7d2bf4c7
commit bd510f297c
3 changed files with 44 additions and 9 deletions

Binary file not shown.

View File

@ -91,13 +91,48 @@ void AGarlicWeapon::GarlicFireWeaponAction(FOverlappedEnemy EnemyCharacter)
}
}
bool AGarlicWeapon::UpgradeWeapon()
bool AGarlicWeapon::UpgradeWeapon_Implementation()
{
if (Super::UpgradeWeapon())
if (!Super::UpgradeWeapon_Implementation()) return false;
switch (CurrentLevel)
{
Range *= Upgrades[CurrentLevel - 1].WeaponRangeMultiplier;
case 1:
Range *= 1.4f;
SphereComponent->SetSphereRadius(Range);
return true;
}
Damage += 2.0f;
break;
case 2:
WeaponCooldown -= 0.1f;
Damage += 1;
break;
case 3:
Range *= 1.2f;
SphereComponent->SetSphereRadius(Range);
Damage += 1.0f;
break;
case 4:
WeaponCooldown -= 0.1f;
Damage += 2;
break;
case 5:
Range *= 1.2f;
SphereComponent->SetSphereRadius(Range);
Damage += 1.0f;
break;
case 6:
WeaponCooldown -= 0.1f;
Damage += 1;
break;
case 7:
Range *= 1.2f;
SphereComponent->SetSphereRadius(Range);
Damage += 1.0f;
break;
default:
return false;
}
ResetWeaponTimer();
return true;
}

View File

@ -46,7 +46,7 @@ public:
UFUNCTION()
void GarlicFireWeaponAction(FOverlappedEnemy EnemyCharacter);
virtual bool UpgradeWeapon() override;
virtual bool UpgradeWeapon_Implementation() override;
protected:
UFUNCTION()