Ejemplo n.º 1
0
/** unequip weapon from pawn */
void AWeapon::OnUnEquip()
{

	if (HasAuthority())
	{
		// UE_LOG(LogHeliWeapon, Log, TEXT("AWeapon::OnUnEquip() ---> Set owning pawn to NULL"));
		SetOwningPawn(NULL);
	}

	if (IsAttachedToPawn())
	{
		StopFire();
		DetachMeshFromPawn();
		bIsEquipped = false;


		if (bPendingReload)
		{
			bPendingReload = false;

			GetWorldTimerManager().ClearTimer(TimerHandle_ReloadWeapon);
		}

		DetermineWeaponState();
	}
}
Ejemplo n.º 2
0
void AAWeapon::OnLeaveInventory()
{
	// NET

	if (IsAttachedToPawn())
	{
		OnUnEquip();
	}

	DetachMeshFromPawn();
}
void AShooterWeapon::OnLeaveInventory()
{
	if (Role == ROLE_Authority)
	{
		SetOwningPawn(NULL);
	}

	if (IsAttachedToPawn())
	{
		OnUnEquip();
	}
}
Ejemplo n.º 4
0
void ASWeapon::OnLeaveInventory()
{
	if (Role == ROLE_Authority)
	{
		SetOwningPawn(nullptr);
	}

	if (IsAttachedToPawn())
	{
		OnUnEquip();
	}

	DetachMeshFromPawn();
}