LEAP Documentation 40220
Documentation for the LEAP project
DropsComponent.h
Go to the documentation of this file.
1// Copyright Blue Isle Studios Inc 2021. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Components/ActorComponent.h"
7#include "DropsComponent.generated.h"
8
9class APickup;
10
11USTRUCT(Blueprintable)
13{
14 GENERATED_USTRUCT_BODY()
15
16 /* The item to drop */
17 UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = Resistance)
18 TSubclassOf<APickup> Drop = nullptr;
19 /* The chance that the drop occurs */
20 UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = Resistance, meta = (ClampMin = 0.0, ClampMax = 1.0))
21 float DropChance = 1.0f;
22};
23
24UCLASS( ClassGroup=(Custom), meta=(BlueprintSpawnableComponent) )
25class PROJECTX_API UDropsComponent : public UActorComponent
26{
27 GENERATED_BODY()
28
29public:
30 UDropsComponent();
31
32protected:
33 virtual void BeginPlay() override;
34
35 UFUNCTION()
36 void SpawnDrops(class AActor* Victim, const float Damage, struct FDamageEvent const& DamageEvent, const class AController* EventInstigator, const class AActor* DamageCauser, const class APlayerState* InstigatorPlayerState);
37
38protected:
39 UPROPERTY(EditDefaultsOnly, Category = "Drops")
40 float XLocationDeviation = 150.0f;
41 UPROPERTY(EditDefaultsOnly, Category = "Drops")
42 float YLocationDeviation = 150.0f;
43 UPROPERTY(EditDefaultsOnly, Category = "Drops")
44 float DepenetrationAmount = 50.0f;
45 UPROPERTY(EditDefaultsOnly, Category = "Drops")
46 float RayDistance = -400000.0f;
47
48 UPROPERTY(EditDefaultsOnly, Category = "Drops")
49 TArray<FDropData> ListOfDrop;
50};
Definition: Pickup.h:15
virtual void BeginPlay() override
Definition: Pickup.cpp:118
Definition: DropsComponent.h:13