Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
ForestGeneratorLevels.c
Go to the documentation of this file.
1[BaseContainerProps(namingConvention: NamingConvention.NC_MUST_HAVE_NAME)]
3{
4 [Attribute(uiwidget: UIWidgets.Object, desc: "Tree groups to spawn in this forest generator level")]
5 ref array<ref TreeGroupClass> m_aTreeGroups;
6
7 [Attribute(defvalue: "1", desc: "Generate this tree level or not")]
8 bool m_bGenerate;
9
10 [Attribute(defvalue: "1", desc: "How many trees per hectare should be generated", params: "0 inf", uiwidget: UIWidgets.SpinBox)]
11 float m_fDensity;
12
13 [Attribute(defvalue: "", category: "Forest", desc: "Curve defining level's outline scaling; from inside (left, forest core) to outside (right, forest outline)", uiwidget: UIWidgets.CurveDialog, params: "100 " + (SCALE_CURVE_MAX_VALUE - SCALE_CURVE_MIN_VALUE) + " 0 " + SCALE_CURVE_MIN_VALUE)]
14 ref Curve m_aOutlineScaleCurve;
15
16 [Attribute(defvalue: "0", category: "Forest", desc: "Distance from shape over which the scaling occurs [m]", uiwidget: UIWidgets.Slider, params: "0 100 0.1")]
17 float m_fOutlineScaleCurveDistance;
18
19 SCR_EForestGeneratorLevelType m_eType;
20 ref array<float> m_aGroupProbas = {};
21
22 static const float SCALE_CURVE_MAX_VALUE = 1;
23 static const float SCALE_CURVE_MIN_VALUE = 0;
24}
25
26[BaseContainerProps(namingConvention: NamingConvention.NC_MUST_HAVE_NAME)]
27class ForestGeneratorOutline : ForestGeneratorLevel
28{
29 [Attribute(defvalue: "1", uiwidget: UIWidgets.SpinBox, desc: "How separated are the tree groups")]
30 float m_fClusterStrength;
31
32 [Attribute(defvalue: "15", uiwidget: UIWidgets.SpinBox, desc: "In what radius should trees around be taken into account for clusters [m]", params: "0 inf")]
33 float m_fClusterRadius;
34
35 [Attribute("0", UIWidgets.ComboBox, enumType: SCR_EForestGeneratorOutlineType, desc: "Outline type")]
36 SCR_EForestGeneratorOutlineType m_eOutlineType;
37
38 [Attribute(defvalue: "1", uiwidget: UIWidgets.SpinBox, desc: "Minimal distance from spline [m]", params: "0 inf")]
39 float m_fMinDistance;
40
41 [Attribute(defvalue: "1", uiwidget: UIWidgets.SpinBox, desc: "Maximal distance from spline [m]", params: "0 inf")]
42 float m_fMaxDistance;
43
44 //------------------------------------------------------------------------------------------------
45 // constructor
46 void ForestGeneratorOutline()
47 {
48 m_eType = SCR_EForestGeneratorLevelType.OUTLINE;
49 }
50}
51
53[BaseContainerProps(namingConvention: NamingConvention.NC_MUST_HAVE_NAME)]
54class SCR_ForestGeneratorTreeLevel : ForestGeneratorLevel
55{
56 [Attribute(defvalue: "0", desc: "Allow this forest level to overlap and be generated in the outline area; can be positive or negative")]
57 float m_fOutlineOverlap;
58}
59
60[BaseContainerProps(namingConvention: NamingConvention.NC_MUST_HAVE_NAME)]
61class ForestGeneratorTopLevel : SCR_ForestGeneratorTreeLevel
62{
63 [Attribute(defvalue: "1", uiwidget: UIWidgets.SpinBox, desc: "How separated are the tree groups?")]
64 float m_fClusterStrength;
65
66 [Attribute(defvalue: "15", uiwidget: UIWidgets.SpinBox, desc: "In what radius should trees around be taken into account for clusters? [m]", params: "0 inf")]
67 float m_fClusterRadius;
68
69 //------------------------------------------------------------------------------------------------
70 // constructor
71 void ForestGeneratorTopLevel()
72 {
73 m_eType = SCR_EForestGeneratorLevelType.TOP;
74 }
75}
76
77[BaseContainerProps(namingConvention: NamingConvention.NC_MUST_HAVE_NAME)]
78class ForestGeneratorBottomLevel : SCR_ForestGeneratorTreeLevel
79{
80 //------------------------------------------------------------------------------------------------
81 // constructor
82 void ForestGeneratorBottomLevel()
83 {
84 m_eType = SCR_EForestGeneratorLevelType.BOTTOM;
85 }
86}
87
88enum SCR_EForestGeneratorLevelType
89{
90 TOP,
91 BOTTOM,
92 OUTLINE,
93}
94
95enum SCR_EForestGeneratorOutlineType
96{
97 SMALL,
98 MIDDLE,
99}
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
SCR_ECampaignBaseType m_eType
@ OUTLINE
UI Textures DeployMenu Briefing conflict_HintBanner_1_UI desc
enum SCR_ESecondaryExplosionType SMALL
Definition Math.c:22
SCR_FieldOfViewSettings Attribute
@ MIDDLE
Definition MouseState.c:16
class WidgetType BOTTOM
class WidgetType TOP