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_PlaceEntityContextAction.c
Go to the documentation of this file.
1
[
BaseContainerProps
(),
SCR_BaseContainerCustomTitleUIInfo
(
"m_Info"
)]
2
class
SCR_PlaceEntityContextAction
:
SCR_DoubleClickAction
3
{
4
[
Attribute
(uiwidget:
UIWidgets
.ComboBox,
desc
:
"Placing flags enabled upon creating an entity."
, enums: ParamEnumArray.FromEnum(
EEditorPlacingFlags
))]
5
protected
EEditorPlacingFlags
m_PlacingFlag
;
6
7
[
Attribute
(
desc
:
"Active labels and white listed labels and label groups"
)]
8
protected
ref
SCR_EditorContentBrowserDisplayConfig
m_ContentBrowserConfig
;
9
10
override
bool
CanBeShown
(
SCR_EditableEntityComponent
hoveredEntity, notnull set<SCR_EditableEntityComponent> selectedEntities,
vector
cursorWorldPosition,
int
flags
)
11
{
12
if
(hoveredEntity || cursorWorldPosition ==
vector
.Zero)
13
return
false
;
14
15
if
(!
SCR_Global
.
IsPositionWithinTerrainBounds
(cursorWorldPosition))
16
return
false
;
17
18
//--- Player unit is dead or does not exist
19
if
(
m_PlacingFlag
==
EEditorPlacingFlags
.CHARACTER_PLAYER)
20
{
21
IEntity
controlledEntity =
SCR_PlayerController
.
GetLocalControlledEntity
();
22
if
(!controlledEntity)
23
return
true
;
24
25
DamageManagerComponent
damageManager =
DamageManagerComponent
.Cast(controlledEntity.
FindComponent
(
DamageManagerComponent
));
26
if
(!damageManager)
27
return
false
;
28
29
return
damageManager.GetState() ==
EDamageState
.DESTROYED;
30
}
31
return
true
;
32
}
33
34
override
bool
CanBePerformed
(
SCR_EditableEntityComponent
hoveredEntity, notnull set<SCR_EditableEntityComponent> selectedEntities,
vector
cursorWorldPosition,
int
flags
)
35
{
36
return
CanBeShown
(hoveredEntity, selectedEntities, cursorWorldPosition,
flags
);
37
}
38
39
override
void
Perform
(
SCR_EditableEntityComponent
hoveredEntity, notnull set<SCR_EditableEntityComponent> selectedEntities,
vector
cursorWorldPosition,
int
flags
,
int
param = -1)
40
{
41
if
(
DidCursorMoveDuringDoubleClick
())
42
return
;
43
44
SCR_PlacingEditorComponent
placingManager =
SCR_PlacingEditorComponent
.Cast(
SCR_PlacingEditorComponent
.GetInstance(
SCR_PlacingEditorComponent
,
true
,
true
));
45
if
(!placingManager || placingManager.
IsPlacing
() ||
GetGame
().GetMenuManager().IsAnyDialogOpen())
46
return
;
47
48
vector
transform[4];
49
transform[3] = cursorWorldPosition;
50
51
SCR_ManualCamera
camera =
SCR_CameraEditorComponent
.
GetCameraInstance
();
52
if
(camera)
53
Math3D
.AnglesToMatrix(
Vector
(camera.GetAngles()[0], 0, 0), transform);
54
else
55
Math3D
.MatrixIdentity3(transform);
56
57
placingManager.
SetPlacingFlag
(
m_PlacingFlag
,
true
);
58
59
if
(
SCR_ContentBrowserEditorComponent
.
OpenBrowserLabelConfigInstance
(
m_ContentBrowserConfig
))
60
{
61
placingManager.
SetInstantPlacing
(
SCR_EditorPreviewParams
.
CreateParams
(transform));
62
}
63
else
64
{
65
placingManager.
SetPlacingFlag
(
m_PlacingFlag
,
false
);
66
}
67
}
68
override
bool
IsServer
()
69
{
70
return
false
;
71
}
72
};
flags
SCR_EAIThreatSectorFlags flags
Definition
AIControlComponentSerializer.c:16
EEditorPlacingFlags
EEditorPlacingFlags
Definition
EEditorPlacingFlags.c:3
GetGame
ArmaReforgerScripted GetGame()
Definition
game.c:1398
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
DamageManagerComponent
Definition
DamageManagerComponent.c:13
IEntity
Definition
IEntity.c:13
IEntity::FindComponent
proto external Managed FindComponent(typename typeName)
Math3D
Definition
Math3D.c:13
SCR_CameraEditorComponent
Definition
SCR_CameraEditorComponent.c:14
SCR_CameraEditorComponent::GetCameraInstance
static SCR_ManualCamera GetCameraInstance()
Definition
SCR_CameraEditorComponent.c:65
SCR_ContentBrowserEditorComponent
Definition
SCR_ContentBrowserEditorComponent.c:17
SCR_ContentBrowserEditorComponent::OpenBrowserLabelConfigInstance
static bool OpenBrowserLabelConfigInstance(SCR_EditorContentBrowserDisplayConfig contentBrowserConfig=null)
Definition
SCR_ContentBrowserEditorComponent.c:974
SCR_DoubleClickAction
Definition
SCR_DoubleClickAction.c:2
SCR_DoubleClickAction::DidCursorMoveDuringDoubleClick
bool DidCursorMoveDuringDoubleClick()
Definition
SCR_DoubleClickAction.c:25
SCR_EditableEntityComponent
Definition
SCR_EditableEntityComponent.c:14
SCR_EditorContentBrowserDisplayConfig
Definition
SCR_EditorContentBrowserDisplayConfig.c:6
SCR_EditorPreviewParams
Network packet of variables for entity placing and transformation.
Definition
SCR_EditorPreviewParams.c:5
SCR_EditorPreviewParams::CreateParams
static SCR_EditorPreviewParams CreateParams(vector transform[4], RplId parentID=Replication.INVALID_ID, EEditorTransformVertical verticalMode=EEditorTransformVertical.SEA, bool isUnderwater=false, SCR_EditableEntityComponent target=null, EEditableEntityInteraction targetInteraction=EEditableEntityInteraction.NONE)
Definition
SCR_EditorPreviewParams.c:220
SCR_Global
Definition
Functions.c:7
SCR_Global::IsPositionWithinTerrainBounds
static bool IsPositionWithinTerrainBounds(vector pos)
Definition
Functions.c:1981
SCR_ManualCamera
Definition
SCR_ManualCamera.c:17
SCR_PlaceEntityContextAction
Definition
SCR_PlaceEntityContextAction.c:3
SCR_PlaceEntityContextAction::IsServer
override bool IsServer()
Definition
SCR_PlaceEntityContextAction.c:68
SCR_PlaceEntityContextAction::CanBePerformed
override bool CanBePerformed(SCR_EditableEntityComponent hoveredEntity, notnull set< SCR_EditableEntityComponent > selectedEntities, vector cursorWorldPosition, int flags)
Definition
SCR_PlaceEntityContextAction.c:34
SCR_PlaceEntityContextAction::m_PlacingFlag
EEditorPlacingFlags m_PlacingFlag
Definition
SCR_PlaceEntityContextAction.c:5
SCR_PlaceEntityContextAction::m_ContentBrowserConfig
ref SCR_EditorContentBrowserDisplayConfig m_ContentBrowserConfig
Definition
SCR_PlaceEntityContextAction.c:8
SCR_PlaceEntityContextAction::Perform
override void Perform(SCR_EditableEntityComponent hoveredEntity, notnull set< SCR_EditableEntityComponent > selectedEntities, vector cursorWorldPosition, int flags, int param=-1)
Definition
SCR_PlaceEntityContextAction.c:39
SCR_PlaceEntityContextAction::CanBeShown
override bool CanBeShown(SCR_EditableEntityComponent hoveredEntity, notnull set< SCR_EditableEntityComponent > selectedEntities, vector cursorWorldPosition, int flags)
Definition
SCR_PlaceEntityContextAction.c:10
SCR_PlacingEditorComponent
Definition
SCR_PlacingEditorComponent.c:119
SCR_PlacingEditorComponent::SetPlacingFlag
void SetPlacingFlag(EEditorPlacingFlags flag, bool toAdd)
Definition
SCR_PlacingEditorComponent.c:1321
SCR_PlacingEditorComponent::SetInstantPlacing
void SetInstantPlacing(SCR_EditorPreviewParams param)
Definition
SCR_PlacingEditorComponent.c:1174
SCR_PlacingEditorComponent::IsPlacing
bool IsPlacing()
Definition
SCR_PlacingEditorComponent.c:1296
SCR_PlayerController
Definition
SCR_PlayerController.c:31
SCR_PlayerController::GetLocalControlledEntity
static IEntity GetLocalControlledEntity()
Definition
SCR_PlayerController.c:495
UIWidgets
Definition
attributes.c:40
vector
Definition
vector.c:13
Attribute
SCR_FieldOfViewSettings Attribute
Definition
SendGoalMessage.c:170
EDamageState
EDamageState
Definition
EDamageState.c:13
Vector
proto native vector Vector(float x, float y, float z)
scripts
Game
Editor
Containers
Actions
ContextActions
SCR_PlaceEntityContextAction.c
Generated by
1.17.0