5#include "CoreMinimal.h"
7#include "DeployableControlledDrone.generated.h"
9class UStaticMeshComponent;
14 GENERATED_UCLASS_BODY()
17 virtual void DeployComplete()
override;
18 virtual void Died(
float Damage, FDamageEvent
const& DamageEvent, AController* EventInstigator, AActor* DamageCauser, APlayerState* InstigatorPlayerState)
override;
19 virtual void OnOwnerDied()
override;
20 virtual void MoveDeployableForward(
float Value)
override;
21 virtual void MoveDeployableRight(
float Value)
override;
22 virtual void MoveDeployableUp(
float Value)
override;
26 virtual void UpdateDeployableTransform(
float DeltaTime)
override;
28 UFUNCTION(BlueprintImplementableEvent, Category =
"Drone|Explosion")
29 void K2_PlayExplosionEffects(const FVector& ExplosionLocation);
30 UFUNCTION(BlueprintImplementableEvent, Category = "Drone")
31 void K2_OnPitchRotation(const
float PitchValue);
32 UFUNCTION(BlueprintImplementableEvent, Category = "Drone")
33 void K2_OnYawRotation(const
float YawValue);
34 UFUNCTION(BlueprintPure, Category = "Drone")
35 FORCEINLINE FVector GetAcceleration()
const {
return Acceleration; }
39 UPROPERTY(EditDefaultsOnly, Category =
"Drone|Movement")
40 FVector LaunchVelocity = FVector(100, 0, 0);
42 UPROPERTY(EditDefaultsOnly, Category = "Drone|
Movement|Rotation")
43 float YawBreakingRate = 1.f;
45 UPROPERTY(EditDefaultsOnly, Category = "Drone|
Movement|Rotation")
46 float PitchAccelerationRate = 1.f;
48 UPROPERTY(EditDefaultsOnly, Category = "Drone|
Movement|Rotation")
49 FVector2D MinMaxYawRotationAcceleration = FVector2D(-2.f, 2.f);
51 UPROPERTY(EditDefaultsOnly, Category = "Drone|
Movement")
52 float LocationInterpolationSpeed = 2.f;
54 UPROPERTY(EditDefaultsOnly, Category = "Drone|
Movement")
55 float RotationInterpolationSpeed = 2.f;
57 UPROPERTY(EditDefaultsOnly, Category = "Drone|
Movement")
58 float DroneAcceleration = 100.f;
60 UFUNCTION(NetMulticast, Unreliable)
61 virtual
void Multicast_Explosion_PlayExplosionEffects_Unreliable(const FVector& ExplosionLocation);
65 FVector PreviousDroneLocation = FVector::ZeroVector;
66 FRotator PreviousDroneRotation = FRotator::ZeroRotator;
67 FVector2D RotationAcceleration = FVector2D::ZeroVector;
68 FVector Acceleration = FVector::ZeroVector;
EDeployableMovementDirection
Definition: DeployableControllable.h:17
Definition: DeployableControllable.h:30
Definition: DeployableControlledDrone.h:13
virtual bool CanOwningWeaponInstanceFire() const
Definition: DeployableControlledDrone.h:23