Modify current weapon checking in ThrowWeaponCallback

This commit is contained in:
baz 2023-10-05 22:04:28 +01:00
parent da1fcc15bd
commit dc0ed36573
1 changed files with 13 additions and 11 deletions

View File

@ -602,6 +602,8 @@ float APlayerCharacter::GetWeaponSpread()
void APlayerCharacter::ThrowWeaponCallback() void APlayerCharacter::ThrowWeaponCallback()
{ {
if (CurrentWeapon)
{
FVector Location; FVector Location;
FVector BoxExtent; FVector BoxExtent;
GetActorBounds(true, Location, BoxExtent, false); GetActorBounds(true, Location, BoxExtent, false);
@ -610,15 +612,15 @@ void APlayerCharacter::ThrowWeaponCallback()
SpawnLocation += Location; SpawnLocation += Location;
SpawnLocation.Z += BoxExtent.Z; SpawnLocation.Z += BoxExtent.Z;
if (TSubclassOf<AWeaponThrowable> WeaponThrowableTemplate = GetCurrentWeapon()->GetWeaponThrowableTemplate()) TSubclassOf<AWeaponThrowable> WeaponThrowableTemplate = CurrentWeapon->GetWeaponThrowableTemplate();
{
AWeaponThrowable* Throwable = GetWorld()->SpawnActor<AWeaponThrowable>( AWeaponThrowable* Throwable = GetWorld()->SpawnActor<AWeaponThrowable>(
WeaponThrowableTemplate, SpawnLocation, FRotator::ZeroRotator); WeaponThrowableTemplate, SpawnLocation, FRotator::ZeroRotator);
Throwable->SetWeaponSkeletalMesh(GetCurrentWeapon()->GetSkeletalMesh()); Throwable->SetWeaponSkeletalMesh(GetCurrentWeapon()->GetSkeletalMesh());
}
RemoveCurrentWeaponFromInventory(); RemoveCurrentWeaponFromInventory();
}
} }
void APlayerCharacter::ThrowExplosiveCallback() void APlayerCharacter::ThrowExplosiveCallback()