LEAP Documentation 40220
Documentation for the LEAP project
DeployableTurret.h
Go to the documentation of this file.
1// Copyright Blue Isle Studios Inc 2018. All Rights Reserved.
2#pragma once
3#include "CoreMinimal.h"
4#include "Deployable.h"
6#include "DeployableTurret.generated.h"
7
9class USkeletalMeshComponent;
10class UCapsuleComponent;
11
12UENUM(BlueprintType)
13enum class ETurretState : uint8
14{
15 Offline = 0,
16 Waiting = 1,
17 WarmingUp = 2,
18 Firing = 3,
19 Dead = 4,
20};
21
22DECLARE_DYNAMIC_MULTICAST_DELEGATE(FTargetAcquiredSignature);
23
24UCLASS()
25class PROJECTX_API ADeployableTurret : public ADeployable
26{
27 GENERATED_UCLASS_BODY()
28
29protected:
30 /* What is the offset from the the turret location that it shoots? Useful for othere things that wish to target it. Particularly if the actor location is at its feet. */
31 UPROPERTY(VisibleDefaultsOnly, BlueprintReadWrite, Category = Actor)
32 float TurretViewHeight = 200.0f;
33
34 UPROPERTY(VisibleDefaultsOnly, BlueprintReadWrite, Category = Mesh)
35 USkeletalMeshComponent* Mesh = NULL;
36
37 UPROPERTY(VisibleDefaultsOnly, BlueprintReadWrite, Category = Mesh)
38 UCapsuleComponent* Collider = NULL;
39
40 UPROPERTY(VisibleDefaultsOnly, BlueprintReadWrite, Category = Actor)
41 UTurretComponent* Turret = NULL;
42
43 virtual void DeactivateDeployable() override;
44 virtual void ActivateDeployable() override;
45 virtual void GetActorEyesViewPoint( FVector& OutLocation, FRotator& OutRotation) const override;
46};
ETurretState
Definition: DeployableTurret.h:14
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FTargetAcquiredSignature)
Definition: Deployable.h:47
Definition: DeployableTurret.h:26
Definition: TurretComponent.h:21