-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathLyraEquipmentDefinition.h
More file actions
66 lines (49 loc) · 1.58 KB
/
LyraEquipmentDefinition.h
File metadata and controls
66 lines (49 loc) · 1.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Templates/SubclassOf.h"
#include "LyraEquipmentDefinition.generated.h"
class AActor;
class ULyraAbilitySet;
class ULyraEquipmentInstance;
USTRUCT()
struct FLyraEquipmentActorToSpawn
{
GENERATED_BODY()
FLyraEquipmentActorToSpawn()
{}
UPROPERTY(EditAnywhere, Category=Equipment)
TSubclassOf<AActor> ActorToSpawn;
UPROPERTY(EditAnywhere, Category=Equipment)
FName AttachSocket;
// @TangoAlphaDev
UPROPERTY(EditAnywhere, Category=Equipment)
FName LeftAttachSocket;
// @TangoAlphaDev
UPROPERTY(EditAnywhere, Category=Equipment)
FTransform AttachTransform;
// @TangoAlphaDev
UPROPERTY(EditAnywhere, Category=Equipment)
FTransform LeftAttachTransform;
// @TangoAlphaDev
};
/**
* ULyraEquipmentDefinition
*
* Definition of a piece of equipment that can be applied to a pawn
*/
UCLASS(Blueprintable, Const, Abstract, BlueprintType)
class ULyraEquipmentDefinition : public UObject
{
GENERATED_BODY()
public:
ULyraEquipmentDefinition(const FObjectInitializer& ObjectInitializer = FObjectInitializer::Get());
// Class to spawn
UPROPERTY(EditDefaultsOnly, Category=Equipment)
TSubclassOf<ULyraEquipmentInstance> InstanceType;
// Gameplay ability sets to grant when this is equipped
UPROPERTY(EditDefaultsOnly, Category=Equipment)
TArray<TObjectPtr<const ULyraAbilitySet>> AbilitySetsToGrant;
// Actors to spawn on the pawn when this is equipped
UPROPERTY(EditDefaultsOnly, Category=Equipment)
TArray<FLyraEquipmentActorToSpawn> ActorsToSpawn;
};