136 - Strap Physics
This commit is contained in:
parent
4e35bbf8a4
commit
ea46373af5
Binary file not shown.
Binary file not shown.
|
@ -133,6 +133,12 @@ void AWeapon::SetWeaponState(EWeaponState State)
|
|||
WeaponMesh->SetSimulatePhysics(false);
|
||||
WeaponMesh->SetEnableGravity(false);
|
||||
WeaponMesh->SetCollisionEnabled(ECollisionEnabled::NoCollision);
|
||||
if (WeaponType == EWeaponType::EWT_SubmachineGun)
|
||||
{
|
||||
WeaponMesh->SetCollisionEnabled(ECollisionEnabled::QueryAndPhysics);
|
||||
WeaponMesh->SetEnableGravity(true);
|
||||
WeaponMesh->SetCollisionResponseToAllChannels(ECollisionResponse::ECR_Ignore);
|
||||
}
|
||||
break;
|
||||
case EWeaponState::EWS_Dropped:
|
||||
if (HasAuthority())
|
||||
|
@ -142,6 +148,9 @@ void AWeapon::SetWeaponState(EWeaponState State)
|
|||
WeaponMesh->SetSimulatePhysics(true);
|
||||
WeaponMesh->SetEnableGravity(true);
|
||||
WeaponMesh->SetCollisionEnabled(ECollisionEnabled::QueryAndPhysics);
|
||||
WeaponMesh->SetCollisionResponseToAllChannels(ECollisionResponse::ECR_Block);
|
||||
WeaponMesh->SetCollisionResponseToChannel(ECollisionChannel::ECC_Pawn, ECollisionResponse::ECR_Ignore);
|
||||
WeaponMesh->SetCollisionResponseToChannel(ECollisionChannel::ECC_Camera, ECollisionResponse::ECR_Ignore);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -160,11 +169,20 @@ void AWeapon::OnRep_WeaponState()
|
|||
WeaponMesh->SetSimulatePhysics(false);
|
||||
WeaponMesh->SetEnableGravity(false);
|
||||
WeaponMesh->SetCollisionEnabled(ECollisionEnabled::NoCollision);
|
||||
if (WeaponType == EWeaponType::EWT_SubmachineGun)
|
||||
{
|
||||
WeaponMesh->SetCollisionEnabled(ECollisionEnabled::QueryAndPhysics);
|
||||
WeaponMesh->SetEnableGravity(true);
|
||||
WeaponMesh->SetCollisionResponseToAllChannels(ECollisionResponse::ECR_Ignore);
|
||||
}
|
||||
break;
|
||||
case EWeaponState::EWS_Dropped:
|
||||
WeaponMesh->SetSimulatePhysics(true);
|
||||
WeaponMesh->SetEnableGravity(true);
|
||||
WeaponMesh->SetCollisionEnabled(ECollisionEnabled::QueryAndPhysics);
|
||||
WeaponMesh->SetCollisionResponseToAllChannels(ECollisionResponse::ECR_Block);
|
||||
WeaponMesh->SetCollisionResponseToChannel(ECollisionChannel::ECC_Pawn, ECollisionResponse::ECR_Ignore);
|
||||
WeaponMesh->SetCollisionResponseToChannel(ECollisionChannel::ECC_Camera, ECollisionResponse::ECR_Ignore);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue