105 - Elim Bot
This commit is contained in:
parent
c837a3f86d
commit
f7c84eee2f
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -13,8 +13,10 @@
|
|||
#include "Components/WidgetComponent.h"
|
||||
#include "GameFramework/CharacterMovementComponent.h"
|
||||
#include "GameFramework/SpringArmComponent.h"
|
||||
#include "Kismet/GameplayStatics.h"
|
||||
#include "Kismet/KismetMathLibrary.h"
|
||||
#include "Net/UnrealNetwork.h"
|
||||
#include "Particles/ParticleSystemComponent.h"
|
||||
|
||||
|
||||
ABlasterCharacter::ABlasterCharacter()
|
||||
|
@ -80,6 +82,16 @@ void ABlasterCharacter::OnRep_ReplicatedMovement()
|
|||
TimeSinceLastMovementReplication = 0.f;
|
||||
}
|
||||
|
||||
void ABlasterCharacter::Destroyed()
|
||||
{
|
||||
Super::Destroyed();
|
||||
|
||||
if (EliminationBotComponent)
|
||||
{
|
||||
EliminationBotComponent->DestroyComponent();
|
||||
}
|
||||
}
|
||||
|
||||
void ABlasterCharacter::PostInitializeComponents()
|
||||
{
|
||||
Super::PostInitializeComponents();
|
||||
|
@ -148,6 +160,18 @@ void ABlasterCharacter::MulticastEliminated_Implementation()
|
|||
// Disable collision
|
||||
GetCapsuleComponent()->SetCollisionEnabled(ECollisionEnabled::NoCollision);
|
||||
GetMesh()->SetCollisionEnabled(ECollisionEnabled::NoCollision);
|
||||
|
||||
// Elimination bot
|
||||
if (EliminationBotEffect)
|
||||
{
|
||||
const FVector EliminationBotSpawnPoint(GetActorLocation().X, GetActorLocation().Y, GetActorLocation().Z + 200.f);
|
||||
EliminationBotComponent = UGameplayStatics::SpawnEmitterAtLocation(GetWorld(), EliminationBotEffect, EliminationBotSpawnPoint, GetActorRotation());
|
||||
|
||||
}
|
||||
if (EliminationBotSound)
|
||||
{
|
||||
UGameplayStatics::SpawnSoundAtLocation(this, EliminationBotSound, GetActorLocation());
|
||||
}
|
||||
}
|
||||
|
||||
void ABlasterCharacter::EliminationTimerFinished()
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
#include "Blaster/Types/TurningInPlace.h"
|
||||
#include "Components/TimelineComponent.h"
|
||||
#include "GameFramework/Character.h"
|
||||
#include "Sound/SoundCue.h"
|
||||
#include "BlasterCharacter.generated.h"
|
||||
|
||||
UCLASS()
|
||||
|
@ -21,6 +22,7 @@ public:
|
|||
virtual void GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const override;
|
||||
virtual void PostInitializeComponents() override;
|
||||
virtual void OnRep_ReplicatedMovement() override;
|
||||
virtual void Destroyed() override;
|
||||
void PlayFireMontage(bool bAiming);
|
||||
void PlayEliminatedMontage();
|
||||
|
||||
|
@ -120,7 +122,7 @@ private:
|
|||
bool bEliminated = false;
|
||||
|
||||
UPROPERTY(EditDefaultsOnly)
|
||||
float EliminationDelay = 3.f;
|
||||
float EliminationDelay = 2.f;
|
||||
FTimerHandle EliminationTimer;
|
||||
|
||||
void EliminationTimerFinished();
|
||||
|
@ -145,6 +147,15 @@ private:
|
|||
UPROPERTY(EditAnywhere, Category = Elimination)
|
||||
UMaterialInstance* DissolveMaterialInstance;
|
||||
|
||||
// Elimination bot
|
||||
UPROPERTY(EditAnywhere)
|
||||
UParticleSystem* EliminationBotEffect;
|
||||
|
||||
UPROPERTY(VisibleAnywhere)
|
||||
UParticleSystemComponent* EliminationBotComponent;
|
||||
|
||||
UPROPERTY(EditAnywhere)
|
||||
USoundCue* EliminationBotSound;
|
||||
public:
|
||||
void SetOverlappingWeapon(AWeapon* Weapon);
|
||||
bool IsWeaponEquipped();
|
||||
|
|
Loading…
Reference in New Issue