Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_LayerContextAction.c
Go to the documentation of this file.
1
[
BaseContainerProps
(),
SCR_BaseContainerCustomTitleUIInfo
(
"m_Info"
)]
2
class
SCR_LayerContextAction
:
SCR_BaseEditorAction
3
{
4
[
Attribute
(
desc
:
"Enable to enter the layer, disable to leave the layer"
)]
5
protected
bool
m_bToEnter
;
6
7
[
Attribute
(
desc
:
"When enable, it will not move just one layer up, but all the way to root. And the same when moving down."
)]
8
protected
bool
m_bToExtreme
;
9
10
[
Attribute
()]
11
protected
bool
m_bIsHidden
;
12
13
protected
bool
CanExit
(
SCR_LayersEditorComponent
layersManager)
14
{
15
return
layersManager.
GetCurrentLayer
()
//--- Not in root
16
&& (!
m_bToExtreme
|| layersManager.
GetCurrentLayer
().GetParentEntity());
//--- When parent is already in the root, don't show the extreme version
17
}
18
19
override
bool
CanBeShown
(
SCR_EditableEntityComponent
hoveredEntity, notnull set<SCR_EditableEntityComponent> selectedEntities,
vector
cursorWorldPosition,
int
flags
)
20
{
21
if
(
m_bIsHidden
)
22
return
false
;
23
24
SCR_LayersEditorComponent
layersManager =
SCR_LayersEditorComponent
.Cast(
SCR_BaseEditorComponent
.
GetInstance
(
SCR_LayersEditorComponent
));
25
if
(!layersManager || !layersManager.
IsEditingLayersEnabled
())
26
return
false
;
27
28
if
(
m_bToEnter
&& !hoveredEntity)
29
return
false
;
30
31
if
(
m_bToEnter
)
32
return
hoveredEntity.
CanEnterLayer
(layersManager);
33
else
34
return
!hoveredEntity &&
CanExit
(layersManager);
//--- Context menu action to return is shown only when not hovering over any entity
35
}
36
override
bool
CanBePerformed
(
SCR_EditableEntityComponent
hoveredEntity, notnull set<SCR_EditableEntityComponent> selectedEntities,
vector
cursorWorldPosition,
int
flags
)
37
{
38
SCR_LayersEditorComponent
layersManager =
SCR_LayersEditorComponent
.Cast(
SCR_BaseEditorComponent
.
GetInstance
(
SCR_LayersEditorComponent
));
39
if
(!layersManager || !layersManager.
IsEditingLayersEnabled
())
40
return
false
;
41
42
if
(
m_bToEnter
&& !hoveredEntity)
43
return
false
;
44
45
if
(
m_bToEnter
)
46
return
hoveredEntity.
CanEnterLayer
(layersManager);
47
else
48
return
CanExit
(layersManager);
49
}
50
override
void
Perform
(
SCR_EditableEntityComponent
hoveredEntity, notnull set<SCR_EditableEntityComponent> selectedEntities,
vector
cursorWorldPosition,
int
flags
,
int
param = -1)
51
{
52
SCR_LayersEditorComponent
layersManager =
SCR_LayersEditorComponent
.Cast(
SCR_BaseEditorComponent
.
GetInstance
(
SCR_LayersEditorComponent
,
true
));
53
if
(!layersManager)
54
return
;
55
56
if
(
m_bToEnter
)
57
{
58
if
(
m_bToExtreme
)
59
//--- Make entity's parent current layer, so the entity icon is directly visible
60
layersManager.
SetCurrentLayer
(hoveredEntity.
GetParentEntity
());
61
else
62
//--- Go one layer down
63
layersManager.
ToggleCurrentLayer
(hoveredEntity);
64
}
65
else
66
{
67
if
(
m_bToExtreme
)
68
//--- Move to root
69
layersManager.
SetCurrentLayer
(null);
70
else
71
//--- Go one layer up
72
layersManager.
SetCurrentLayerToParent
();
73
}
74
}
75
override
bool
IsServer
()
76
{
77
return
false
;
78
}
79
};
flags
SCR_EAIThreatSectorFlags flags
Definition
AIControlComponentSerializer.c:16
BaseContainerProps
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
Definition
SCR_AIAnimationWaypoint.c:14
SCR_BaseContainerCustomTitleUIInfo
class SCR_ArsenalGameModeUIDataHolder SCR_BaseContainerCustomTitleUIInfo("m_UIInfo")
Definition
SCR_ArsenalManagerComponent.c:1752
desc
UI Textures DeployMenu Briefing conflict_HintBanner_1_UI desc
Definition
SCR_RespawnBriefingComponent.c:17
SCR_BaseEditorAction
Definition
SCR_BaseEditorAction.c:25
SCR_BaseEditorComponent
Definition
SCR_BaseEditorComponent.c:120
SCR_BaseEditorComponent::GetInstance
static Managed GetInstance(typename type, bool showError=false, bool modeFirst=false)
Definition
SCR_BaseEditorComponent.c:368
SCR_EditableEntityComponent
Definition
SCR_EditableEntityComponent.c:14
SCR_EditableEntityComponent::CanEnterLayer
bool CanEnterLayer(SCR_LayersEditorComponent layersManager=null, bool toExtreme=false)
Definition
SCR_EditableEntityComponent.c:1299
SCR_EditableEntityComponent::GetParentEntity
SCR_EditableEntityComponent GetParentEntity()
Definition
SCR_EditableEntityComponent.c:1154
SCR_LayerContextAction
Definition
SCR_LayerContextAction.c:3
SCR_LayerContextAction::IsServer
override bool IsServer()
Definition
SCR_LayerContextAction.c:75
SCR_LayerContextAction::m_bToExtreme
bool m_bToExtreme
Definition
SCR_LayerContextAction.c:8
SCR_LayerContextAction::m_bToEnter
bool m_bToEnter
Definition
SCR_LayerContextAction.c:5
SCR_LayerContextAction::CanBeShown
override bool CanBeShown(SCR_EditableEntityComponent hoveredEntity, notnull set< SCR_EditableEntityComponent > selectedEntities, vector cursorWorldPosition, int flags)
Definition
SCR_LayerContextAction.c:19
SCR_LayerContextAction::CanBePerformed
override bool CanBePerformed(SCR_EditableEntityComponent hoveredEntity, notnull set< SCR_EditableEntityComponent > selectedEntities, vector cursorWorldPosition, int flags)
Definition
SCR_LayerContextAction.c:36
SCR_LayerContextAction::m_bIsHidden
bool m_bIsHidden
Definition
SCR_LayerContextAction.c:11
SCR_LayerContextAction::CanExit
bool CanExit(SCR_LayersEditorComponent layersManager)
Definition
SCR_LayerContextAction.c:13
SCR_LayerContextAction::Perform
override void Perform(SCR_EditableEntityComponent hoveredEntity, notnull set< SCR_EditableEntityComponent > selectedEntities, vector cursorWorldPosition, int flags, int param=-1)
Definition
SCR_LayerContextAction.c:50
SCR_LayersEditorComponent
Definition
SCR_LayersEditorManager.c:12
SCR_LayersEditorComponent::GetCurrentLayer
SCR_EditableEntityComponent GetCurrentLayer()
Definition
SCR_LayersEditorManager.c:119
SCR_LayersEditorComponent::ToggleCurrentLayer
void ToggleCurrentLayer(SCR_EditableEntityComponent entity)
Definition
SCR_LayersEditorManager.c:99
SCR_LayersEditorComponent::IsEditingLayersEnabled
bool IsEditingLayersEnabled()
Definition
SCR_LayersEditorManager.c:30
SCR_LayersEditorComponent::SetCurrentLayer
void SetCurrentLayer(SCR_EditableEntityComponent entity)
Definition
SCR_LayersEditorManager.c:70
SCR_LayersEditorComponent::SetCurrentLayerToParent
void SetCurrentLayerToParent()
Definition
SCR_LayersEditorManager.c:87
vector
Definition
vector.c:13
Attribute
SCR_FieldOfViewSettings Attribute
Definition
SendGoalMessage.c:170
scripts
Game
Editor
Containers
Actions
ContextActions
SCR_LayerContextAction.c
Generated by
1.17.0