-
Notifications
You must be signed in to change notification settings - Fork 5
/
BuildingEnums.h
94 lines (80 loc) · 1.51 KB
/
BuildingEnums.h
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#pragma once
#include "CoreMinimal.h"
#include "BuildingEnums.generated.h"
UENUM(BlueprintType)
enum class EBuildingBooleanShapes : uint8
{
Rectangle
};
UENUM(BlueprintType)
enum class EBuildingRowCol : uint8
{
Row,
Column
};
UENUM(BlueprintType)
enum class EBuildingHAlignmentChoices : uint8
{
Left,
Right,
Center,
Random
};
UENUM(BlueprintType)
enum class EBuildingVAlignmentChoices : uint8
{
Middle, // x-
Top, // x+
Bottom, // x center
Random // randomly choose one of the above
};
UENUM(BlueprintType)
enum class EDynamicBuildingSideChoices : uint8
{
None,
OneSide,
TwoSides,
ThreeSides,
AllSides,
ChooseSides
};
UENUM(BlueprintType)
enum class EDynamicBuildingRotationChoices : uint8
{
None,
Rot90,
Alternate,
Random
};
// TODO the idea here is you pick what kind of configuration mode you want.
// general is just the current settings, general settings that configure everything
// or you can pick a explicit sequential list of boxes
// or you can pick at random out of a list of boxes
// or you can specify ranges of floors, or percentages of the building, and generate different styles of boxes that way
UENUM(BlueprintType)
enum class EDynamicBuildingSettingsModeChoices : uint8
{
General,
Sequential,
RandomChoice,
RangeCriteria
};
UENUM(BlueprintType)
enum class EBuildingUVScaleMode : uint8
{
MinExtent,
MaxExtent,
MidExtent,
AvgExtent,
XExtent,
YExtent,
ZExtent,
Fixed
};
UENUM(BlueprintType)
enum class EBuildingUVOriginMode : uint8
{
MinCoordinate,
MaxCoordinate,
Random
};