blaster/Source/Blaster/Weapon/ProjectileRocket.h

53 lines
1.1 KiB
C
Raw Normal View History

2022-05-18 12:44:39 +00:00
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "Projectile.h"
#include "ProjectileRocket.generated.h"
/**
*
*/
UCLASS()
class BLASTER_API AProjectileRocket : public AProjectile
{
GENERATED_BODY()
public:
AProjectileRocket();
2022-05-18 17:20:18 +00:00
virtual void Destroyed() override;
2022-05-18 12:44:39 +00:00
protected:
virtual void OnHit(UPrimitiveComponent* HitComp, AActor* OtherActor, UPrimitiveComponent* OtherComp, FVector NormalImpulse, const FHitResult& Hit) override;
2022-05-18 17:20:18 +00:00
virtual void BeginPlay() override;
void DestroyTimerFinished();
UPROPERTY(EditAnywhere)
class UNiagaraSystem* TrailSystem;
UPROPERTY()
class UNiagaraComponent* TrailSystemComponent;
UPROPERTY(EditAnywhere)
USoundCue* ProjectileLoop;
2022-05-18 12:44:39 +00:00
2022-05-18 17:20:18 +00:00
UPROPERTY()
UAudioComponent* ProjectileLoopComponent;
UPROPERTY(EditAnywhere)
USoundAttenuation* LoopingSoundAttenuation;
2022-05-19 09:10:41 +00:00
UPROPERTY(VisibleAnywhere)
class URocketMovementComponent* RocketMovementComponent;
2022-05-18 12:44:39 +00:00
private:
UPROPERTY(VisibleAnywhere)
UStaticMeshComponent* RocketMesh;
2022-05-18 17:20:18 +00:00
FTimerHandle DestroyTimer;
UPROPERTY(EditAnywhere)
float DestroyTime = 3.f;
2022-05-18 12:44:39 +00:00
};