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_EditableEntityInteraction.c
Go to the documentation of this file.
1
[
BaseContainerProps
()]
2
class
SCR_EditableEntityInteraction
3
{
4
protected
bool
m_bCanRefParent
;
//++ This can be set in inherited classes' constructor
5
6
static
const
int
ROOT
= -1;
7
14
sealed
bool
CanSetParent
(
SCR_EditableEntityComponent
parentEntity,
EEditableEntityInteractionFlag
interactionFlags =
int
.
MAX
)
15
{
16
if
(parentEntity)
17
{
18
if
(
m_bCanRefParent
)
19
return
CanSetParent
(parentEntity, parentEntity.
GetEntityType
(), parentEntity.
GetEntityFlags
(), interactionFlags);
20
21
return
CanSetParent
(parentEntity.
GetEntityType
(), parentEntity.
GetEntityFlags
(), interactionFlags);
22
}
23
else
24
{
25
if
(
m_bCanRefParent
)
26
return
CanSetParent
(null,
ROOT
, 0, interactionFlags);
27
28
return
CanSetParent
(
ROOT
, 0, interactionFlags);
29
}
30
}
31
38
bool
CanSetParent
(
EEditableEntityType
parentType,
EEditableEntityFlag
parentFlags,
EEditableEntityInteractionFlag
interactionFlags =
int
.
MAX
)
39
{
40
if
(!
SCR_Enum
.HasFlag(interactionFlags,
EEditableEntityInteractionFlag
.DELEGATE) || !
SCR_Enum
.HasFlag(interactionFlags,
EEditableEntityInteractionFlag
.LAYER_EDITING))
41
return
false
;
42
43
if
(parentType ==
ROOT
)
44
return
true
;
45
46
if
(!
SCR_Enum
.HasFlag(interactionFlags,
EEditableEntityInteractionFlag
.DELEGATE))
47
return
false
;
48
49
if
((parentFlags &
EEditableEntityFlag
.LAYER) !=
EEditableEntityFlag
.LAYER)
50
return
false
;
51
52
return
parentType ==
EEditableEntityType
.GENERIC;
53
}
54
62
bool
CanSetParent
(
SCR_EditableEntityComponent
parentEntity,
EEditableEntityType
parentType,
EEditableEntityFlag
parentFlags,
EEditableEntityInteractionFlag
interactionFlags =
int
.
MAX
)
63
{
64
//++ Do something with parent
65
return
CanSetParent
(parentType, parentFlags, interactionFlags);
66
}
67
76
bool
CanCreateParentFor
(
EEditableEntityType
newLayerType,
EEditableEntityFlag
newLayerFlags,
SCR_EditableEntityComponent
parentEntity,
bool
CheckParentEntity =
true
)
77
{
78
if
(CheckParentEntity && parentEntity)
79
{
80
SCR_EditableEntityCore
core =
SCR_EditableEntityCore
.Cast(
SCR_EditableEntityCore
.GetInstance(
SCR_EditableEntityCore
));
81
82
if
(core)
83
{
84
SCR_EditableEntityInteraction
interaction = core.
GetEntityInteraction
(
EEditableEntityType
.GENERIC);
85
if
(!interaction.
CanSetParent
(parentEntity))
86
return
false
;
87
}
88
}
89
90
return
CanSetParent
(newLayerType, newLayerFlags);
91
}
92
};
BaseContainerProps
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
Definition
SCR_AIAnimationWaypoint.c:14
SCR_EditableEntityComponent
Definition
SCR_EditableEntityComponent.c:14
SCR_EditableEntityComponent::GetEntityType
EEditableEntityType GetEntityType(IEntity owner=null)
Definition
SCR_EditableEntityComponent.c:127
SCR_EditableEntityComponent::GetEntityFlags
EEditableEntityFlag GetEntityFlags()
Definition
SCR_EditableEntityComponent.c:1671
SCR_EditableEntityCore
Definition
SCR_EditableEntityCore.c:20
SCR_EditableEntityCore::GetEntityInteraction
SCR_EditableEntityInteraction GetEntityInteraction(EEditableEntityType type)
Definition
SCR_EditableEntityCore.c:384
SCR_EditableEntityInteraction
Definition
SCR_EditableEntityInteraction.c:3
SCR_EditableEntityInteraction::m_bCanRefParent
bool m_bCanRefParent
Definition
SCR_EditableEntityInteraction.c:4
SCR_EditableEntityInteraction::ROOT
static const int ROOT
Definition
SCR_EditableEntityInteraction.c:6
SCR_EditableEntityInteraction::CanCreateParentFor
bool CanCreateParentFor(EEditableEntityType newLayerType, EEditableEntityFlag newLayerFlags, SCR_EditableEntityComponent parentEntity, bool CheckParentEntity=true)
Definition
SCR_EditableEntityInteraction.c:76
SCR_EditableEntityInteraction::CanSetParent
sealed bool CanSetParent(SCR_EditableEntityComponent parentEntity, EEditableEntityInteractionFlag interactionFlags=int.MAX)
Definition
SCR_EditableEntityInteraction.c:14
SCR_EditableEntityInteraction::CanSetParent
bool CanSetParent(EEditableEntityType parentType, EEditableEntityFlag parentFlags, EEditableEntityInteractionFlag interactionFlags=int.MAX)
Definition
SCR_EditableEntityInteraction.c:38
SCR_EditableEntityInteraction::CanSetParent
bool CanSetParent(SCR_EditableEntityComponent parentEntity, EEditableEntityType parentType, EEditableEntityFlag parentFlags, EEditableEntityInteractionFlag interactionFlags=int.MAX)
Definition
SCR_EditableEntityInteraction.c:62
SCR_Enum
Definition
SCR_Enum.c:2
EEditableEntityType
EEditableEntityType
Defines type of SCR_EditableEntityComponent. Assigned automatically based on IEntity inheritance.
Definition
EEditableEntityType.c:6
EEditableEntityFlag
EEditableEntityFlag
Unique flags of the entity.
Definition
EEditableEntityFlag.c:6
EEditableEntityInteractionFlag
EEditableEntityInteractionFlag
Details of entity interaction.
Definition
EEditableEntityInteractionFlag.c:6
MAX
@ MAX
Definition
ETurretContextID.c:19
scripts
Game
Editor
Containers
Interactions
SCR_EditableEntityInteraction.c
Generated by
1.17.0