A Demo Project for the UnrealEngineSDK
Loading...
Searching...
No Matches
DialogueK2Node_SwitchDialogueCallback.h
Go to the documentation of this file.
1// Copyright Csaba Molnar, Daniel Butum. All Rights Reserved.
2#pragma once
3
4#include "K2Node_Switch.h"
5
6#include "DialogueK2Node_SwitchDialogueCallback.generated.h"
7
8
9UENUM()
10enum class EDlgDialogueCallback : uint8
11{
13 Event UMETA(DisplayName = "Dialogue Event"),
15 Condition UMETA(DisplayName = "Dialogue Condition"),
16
17 FloatValue UMETA(DisplayName = "Condition asking for a float value"),
18
19 IntValue UMETA(DisplayName = "Condition asking for an int value"),
20
21 BoolValue UMETA(DisplayName = "Condition asking for a bool value"),
22
23 NameValue UMETA(DisplayName = "Condition asking for a name value"),
24};
25
29UCLASS()
31{
32 GENERATED_BODY()
33
34public:
35 UDialogueK2Node_SwitchDialogueCallback(const FObjectInitializer& ObjectInitializer);
37 // UEdGraphNode interface
38 void AllocateDefaultPins() override;
39 FText GetNodeTitle(ENodeTitleType::Type TitleType) const override;
40 FText GetTooltipText() const override;
41 // End of UEdGraphNode interface
42
43 // UK2Node interface
44 void GetMenuActions(FBlueprintActionDatabaseRegistrar& ActionRegistrar) const override;
45 FText GetMenuCategory() const override;
46 bool ShouldShowNodeProperties() const override { return true; }
47 // End of UK2Node interface
48
49 // UK2Node_Switch Interface
50 void AddPinToSwitchNode() override;
51 FName GetUniquePinName() override;
52 FName GetPinNameGivenIndex(int32 Index) const override;
53 FEdGraphPinType GetPinType() const override;
54 void RemovePinFromSwitchNode(UEdGraphPin* TargetPin) override;
55 bool CanRemoveExecutionPin(UEdGraphPin* TargetPin) const override;
56 // End of UK2Node_Switch Interface
57
58protected:
59 // UK2Node_Switch Interface
60 void CreateCasePins() override;
61 void CreateSelectionPin() override;
62 void CreateFunctionPin() override;
63 void RemovePin(UEdGraphPin* TargetPin) override {}
64 // End of UK2Node_Switch Interface
65
66 // Begin own functions
67 // updates DialoguePinNames, return value is true if it is changed
68 bool RefreshPinNames();
69
70protected:
71 UPROPERTY()
72 TArray<FName> DialoguePinNames;
73
74 UPROPERTY()
75 EDlgDialogueCallback CallbackType;
76};
void GetMenuActions(FBlueprintActionDatabaseRegistrar &ActionRegistrar) const override
UDialogueK2Node_SwitchDialogueCallback(const FObjectInitializer &ObjectInitializer)
FText GetNodeTitle(ENodeTitleType::Type TitleType) const override
bool CanRemoveExecutionPin(UEdGraphPin *TargetPin) const override
void RemovePinFromSwitchNode(UEdGraphPin *TargetPin) override