DayZ 1.24
Loading...
Searching...
No Matches
Entity editor attribute system
Collaboration diagram for Entity editor attribute system:

Classes

class  IEntity
 
class  ParamEnum
 
class  Attribute
 

Enumerations

enum  EntityEvent {
  TOUCH , VISIBLE , NOTVISIBLE , FRAME ,
  POSTFRAME , INIT , JOINTBREAK , SIMULATE ,
  POSTSIMULATE , PHYSICSMOVE , CONTACT , EXTRA ,
  ANIMEVENT , SOUNDEVENT , PHYSICSSTEADY , USER ,
  ENTER , LEAVE , ALL
}
 Entity events for event-mask, or throwing event from code. More...
 
enum  EntityFlags {
  VISIBLE , SOLID , TRIGGER , TOUCHTRIGGERS ,
  SYNCHRONIZATION_DIRTY , FEATURE , TRANSLUCENT , WATER ,
  ACTIVE , STATIC , USER1 , USER2 ,
  USER3 , USER4 , USER5 , USER6
}
 Entity flags. More...
 

Functions

proto native owned string BaseContainer::GetClassName ()
 
proto native owned string BaseContainer::GetName ()
 
proto native int BaseContainer::VarIndex (string varName)
 
proto native bool BaseContainer::IsVariableSet (int varIndex)
 
proto bool BaseContainer::IsType (int varIndex, typename type)
 
proto bool BaseContainer::Get (int varIndex, out void val)
 
proto native IEntitySource IEntitySource::GetChildren ()
 
proto native IEntitySource IEntitySource::GetSibling ()
 
proto native IEntitySource IEntitySource::GetParent ()
 
proto native WidgetSource WidgetSource::GetChildren ()
 
proto native WidgetSource WidgetSource::GetSibling ()
 
proto native WidgetSource WidgetSource::GetParent ()
 
void ParamEnum::ParamEnum (string key, string value, string desc="")
 
ParamEnum Managed FromEnum (typename e)
 
void ParamEnum (string key, string value, string desc="")
 
void Attribute::Attribute (string defvalue, string uiwidget, string desc="", string rangescale="", ParamEnumArray enums=NULL)
 
void EditorAttribute (string style, string category, string description, vector sizeMin, vector sizeMax, string color, string color2="0 0 0 0", bool visible=true, bool insertable=true, bool dynamicBox=false)
 

Variables

string ParamEnum::m_Key
 
string ParamEnum::m_Value
 
string ParamEnum::m_Desc
 
string m_Key
 
string m_Value
 
string m_Desc
 
string Attribute::m_DefValue
 
string Attribute::m_UiWidget
 can be "editbox", "combobox", "spinbox", "slider", "font", "fileeditbox", "colorPicker", "flags", "resourceNamePicker"
 
string Attribute::m_RangeScale
 defined as "MIN_VALUE MAX_VALUE STEP" eg. "1 100 0.5"
 
string Attribute::m_Desc
 
ref ParamEnumArray Attribute::m_Enums
 Only ints and floats are currently supported. Array can be defined this way: { ParamEnum("Choice 1", "1"), ParamEnum("Choicen 2", "2") }.
 
class Attribute m_Style
 can be "box", "sphere", "cylinder", "pyramid", "diamond" or custom style name
 
string m_Category
 folder structure eg. StaticEntities/Walls
 
string m_Description
 class purpose description
 
vector m_SizeMin
 min vector of a bounding box
 
vector m_SizeMax
 max vector of a bounding box
 
string m_Color
 
string m_Color2
 
bool m_Visible
 
bool m_Insertable
 
bool m_DynamicBox
 

Event methods

Event method stubs. Reimplement these in inherited entities to receive event calls

void IEntity::EOnTouch (IEntity other, int extra)
 EntityEvent.TOUCH.
 
void IEntity::EOnInit (IEntity other, int extra)
 EntityEvent.INIT.
 
void IEntity::EOnExtra (IEntity other, int extra)
 EntityEvent.EXTRA.
 
void IEntity::EOnNotVisible (IEntity other, int extra)
 EntityEvent.NOTVISIBLE.
 
void IEntity::EOnFrame (IEntity other, float timeSlice)
 EntityEvent.FRAME.
 
int IEntity::EOnVisible (IEntity other, int extra)
 EntityEvent.VISIBLE.
 
void IEntity::EOnPostFrame (IEntity other, int extra)
 EntityEvent.POSTFRAME.
 
void IEntity::EOnWorldProcess (IEntity other, int extra)
 EntityEvent.WORLDPROCESS.
 
void IEntity::EOnAnimEvent (IEntity other, AnimEvent extra)
 EntityEvent.ANIMEVENT.
 
void IEntity::EOnSoundEvent (IEntity other, SoundEvent extra)
 EntityEvent.SOUNDEVENT.
 
void IEntity::EOnSimulate (IEntity other, float dt)
 EntityEvent.SIMULATE.
 
void IEntity::EOnPostSimulate (IEntity other, float timeSlice)
 EntityEvent.POSTSIMULATE.
 
void IEntity::EOnJointBreak (IEntity other, int extra)
 EntityEvent.JOINTBREAK.
 
void IEntity::EOnPhysicsMove (IEntity other, int extra)
 EntityEvent.PHYSICSMOVE.
 
void IEntity::EOnContact (IEntity other, Contact extra)
 EntityEvent.CONTACT.
 
void IEntity::EOnUser0 (IEntity other, int extra)
 EntityEvent.EV_USER+0.
 
void IEntity::EOnUser1 (IEntity other, int extra)
 EntityEvent.EV_USER+1.
 
void IEntity::EOnEnter (IEntity other, int extra)
 EntityEvent.ENTER.
 
void IEntity::EOnLeave (IEntity other, int extra)
 EntityEvent.LEAVE.
 
void IEntity::EOnUser4 (IEntity other, int extra)
 EntityEvent.EV_USER+4.
 
void IEntity::EOnDummy020 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy021 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy022 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy023 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy024 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy025 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy026 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy027 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy028 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy029 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy030 (IEntity other, int extra)
 Placeholder.
 
void IEntity::EOnDummy031 (IEntity other, int extra)
 Placeholder.
 

Transformation methods

Setting and getting of entity transformation

proto external void IEntity::GetTransform (out vector mat[])
 Returns transformation of Entity. It returns only so much vectors as array is big.
 
proto external void IEntity::GetRenderTransform (out vector mat[])
 Returns render transformation of Entity. Must pass in vector array size of 4.
 
proto external void IEntity::GetLocalTransform (out vector mat[])
 Returns local transformation of Entity. It returns only so much vectors as array is big.
 
proto native external vector IEntity::GetTransformAxis (int axis)
 Returns one row of Entity transformation matrix.
 
proto native external void IEntity::SetTransform (vector mat[4])
 Sets entity transformation.
 
proto native external vector IEntity::GetOrigin ()
 Returns origin of Entity.
 
proto external vector IEntity::GetLocalPosition ()
 Returns local position of Entity.
 
proto native external vector IEntity::GetYawPitchRoll ()
 Returns orientation of Entity in world space (Yaw, Pitch, Roll)
 
proto native external vector IEntity::GetAngles ()
 Same as GetYawPitchRoll, but returns rotation vector around X, Y and Z axis.
 
proto native external vector IEntity::GetLocalYawPitchRoll ()
 Returns local orientation when it's in hierarchy (Yaw, Pitch, Roll)
 
proto native external vector IEntity::GetLocalAngles ()
 Same as GetLocalYawPitchRoll, but returns rotation vector around X, Y and Z axis.
 
proto native external void IEntity::SetYawPitchRoll (vector angles)
 Sets angles for entity (Yaw, Pitch, Roll)
 
proto native external void IEntity::SetAngles (vector angles)
 Same as SetYawPitchRoll, but sets rotation around X, Y and Z axis.
 
proto native external void IEntity::SetOrigin (vector orig)
 Sets origin for entity.
 
proto native external float IEntity::GetScale ()
 
proto native external void IEntity::SetScale (float scale)
 
proto native external vector IEntity::VectorToParent (vector vec)
 Transforms local vector to world space.
 
proto native external vector IEntity::CoordToParent (vector coord)
 Transforms local position to world space.
 
proto native external vector IEntity::VectorToLocal (vector vec)
 Transforms world space vector to local space.
 
proto native external vector IEntity::CoordToLocal (vector coord)
 Transforms world space position to local space.
 

Name/ID methods

proto native int IEntity::GetID ()
 Return unique entity ID.
 
proto native void IEntity::SetID (int id)
 Set unique entity ID.
 
proto native void IEntity::SetName (string name)
 
proto native external owned string IEntity::GetName ()
 

Hierarchy methods

Scene hierarchy management

proto native external bool IEntity::AddChild (notnull IEntity child, int pivot, bool positionOnly=false)
 Adds child entity to this entity.
 
proto native external bool IEntity::RemoveChild (notnull IEntity child, bool keepTransform=false)
 Removes child entity from hierarchy.
 
proto native bool IEntity::IsHierarchyPositionOnly ()
 Returns if the hierarchy component was created with positionOnly.
 
proto native int IEntity::GetHierarchyPivot ()
 Returns the hierarchy component pivot.
 
proto native IEntity IEntity::GetParent ()
 Returns pointer to parent Entity in hierarchy.
 
proto native IEntity IEntity::GetChildren ()
 Returns pointer to first child Entity in hierarchy.
 
proto native IEntity IEntity::GetSibling ()
 Returns pointer to next child Entity on the same hierarchy.
 
proto external void IEntity::GetBounds (out vector mins, out vector maxs)
 Returns local bounding box of model on Entity.
 
proto external void IEntity::GetWorldBounds (out vector mins, out vector maxs)
 Returns quantized world-bound-box of Entity.
 

Simulation/handling properties

Flags that affects simulation and entity handling behavior

proto native external EntityFlags IEntity::GetFlags ()
 Returns Entity flags.
 
proto native external bool IEntity::IsFlagSet (EntityFlags flags)
 Test if one or more of specified flags are set.
 
proto native external EntityFlags IEntity::SetFlags (EntityFlags flags, bool recursively)
 Sets Entity flags. It's OR operation, not rewrite. Returns previous flags.
 
proto native external EntityFlags IEntity::ClearFlags (EntityFlags flags, bool recursively)
 Clear Entity flags. Returns cleared flags.
 
proto native external EntityEvent IEntity::GetEventMask ()
 Returns current event mask.
 
proto native external EntityEvent IEntity::SetEventMask (EntityEvent e)
 Sets event mask.
 
proto native external EntityEvent IEntity::ClearEventMask (EntityEvent e)
 Clears event mask.
 
proto external volatile void IEntity::SendEvent (notnull IEntity actor, EntityEvent e, void extra)
 Dynamic event invokation. Parameters are the same as in IEntity::EOnXXXX() methods.
 

Visual component methods

Manipulation with visual component - model, particle effect etc

proto native external void IEntity::SetObject (vobject object, string options)
 
proto native vobject IEntity::GetVObject ()
 Returns visual object set to this Entity. No reference is added.
 
proto native external int IEntity::Animate (float speed, int loop)
 Updates animation (either xob, or particle, whatever)
 
proto native external int IEntity::AnimateEx (float speed, int loop, out vector lin, out vector ang)
 Updates animation (either xob, or particle, whatever)
 
proto native external int IEntity::SetCameraMask (int mask)
 Sets visibility mask for cameras, where Entity will be rendered.
 
proto native external void IEntity::FilterNextTrace ()
 When called, the Entity is excluded from consequent TraceMove/TraceLine.
 
proto native external int IEntity::Update ()
 

Detailed Description

Enumeration Type Documentation

◆ EntityEvent

Entity events for event-mask, or throwing event from code.

Enumerator
TOUCH 

entity was touched by other entity

VISIBLE 

entity is visible, so part of the rendering other WorldClass extra frame index result false should be rendered, true shoudn't be rendered

Entity is visible. Is rendered if there is some attached object and event EntityEvent.VISIBLE is invoked, when event mask is set.

NOTVISIBLE 

entity is not visible, will not be part of rendering other WorldClass extra frame index

FRAME 

new frame event, called each frame other WorldClass extra frame index

POSTFRAME 

event at the end of each frame or when entity is moved during the frame other WorldClass

INIT 

event called after the world is created, including all entities other WorldClass

JOINTBREAK 
SIMULATE 
POSTSIMULATE 
PHYSICSMOVE 
CONTACT 
EXTRA 
ANIMEVENT 
SOUNDEVENT 
PHYSICSSTEADY 
USER 
ENTER 

Object entered Trigger.

LEAVE 

Object left Trigger.

ALL 

Mask of all events.

Definition at line 43 of file EnEntity.c.

44{
46 TOUCH,
47
54 VISIBLE,
55
62
68 FRAME,
69
75
80 INIT,
81
82 //Only with MeshObject
83 //ANIMEND - End of AF_ONCE animation, extra = slot number 0...11
84 //ANIMBLEND - Animation blended from previous one, extra = slot number 0...11
85
86
87 //SOUNDEND - playing of SFL_ONCE sound has ended
88 // extra = pointer to a sound handle
89
90 //USER
91
96 CONTACT,
97 EXTRA,
101 USER,
102
104 ENTER,
106 LEAVE,
107
109 ALL
110};
@ PHYSICSMOVE
Definition EnEntity.c:95
@ INIT
Definition EnEntity.c:80
@ FRAME
Definition EnEntity.c:68
@ PHYSICSSTEADY
Definition EnEntity.c:100
@ POSTSIMULATE
Definition EnEntity.c:94
@ NOTVISIBLE
Definition EnEntity.c:61
@ TOUCH
entity was touched by other entity
Definition EnEntity.c:46
@ CONTACT
Definition EnEntity.c:96
@ SOUNDEVENT
Definition EnEntity.c:99
@ ENTER
Object entered Trigger.
Definition EnEntity.c:104
@ ANIMEVENT
Definition EnEntity.c:98
@ SIMULATE
Definition EnEntity.c:93
@ JOINTBREAK
Definition EnEntity.c:92
@ ALL
Mask of all events.
Definition EnEntity.c:109
@ POSTFRAME
Definition EnEntity.c:74
@ LEAVE
Object left Trigger.
Definition EnEntity.c:106
@ USER
Definition EnEntity.c:101
@ EXTRA
Definition EnEntity.c:97
@ VISIBLE
Definition EnEntity.c:54

◆ EntityFlags

Entity flags.

Enumerator
VISIBLE 

entity is visible, so part of the rendering other WorldClass extra frame index result false should be rendered, true shoudn't be rendered

Entity is visible. Is rendered if there is some attached object and event EntityEvent.VISIBLE is invoked, when event mask is set.

SOLID 

Is collidable by various trace methods.

TRIGGER 

Is not collidable, but invokes touch events.

TOUCHTRIGGERS 

Interacts with triggers.

SYNCHRONIZATION_DIRTY 

Entity wants to synchronize (network)

FEATURE 

Scene rendering hint for dominant objects that are not culled by standard way.

TRANSLUCENT 

Used by tracing methods. When tracing with TraceFlags.PASSTRANSLUCENT, then this entity is ignored. Used for glass for example.

WATER 

Used by tracing methods. Traceable only with flag TraceFlags.WATER.

ACTIVE 

Tells that this entity has to be actively updated by engine, its EntityEvent.FRAME has to be called etc.

STATIC 

Static objects are included in the query.

Tells that this entity will represent mostly static object, so we can use more precise but slower methods for scene-tree linking. Also it tells to scene tree that he can count with this entity as tree-split hint.

USER1 

Flags for custom usage and filterings.

USER2 
USER3 
USER4 
USER5 
USER6 

Definition at line 113 of file EnEntity.c.

114{
119 VISIBLE,
120
121
122 SOLID,
123 TRIGGER,
126
127 FEATURE,
133
135 WATER,
136
141 ACTIVE,
142
149 STATIC,
150
152 USER1,
153 USER2,
154 USER3,
155 USER4,
156 USER5,
157 USER6
158};
@ USER6
Definition EnEntity.c:157
@ TRIGGER
Is not collidable, but invokes touch events.
Definition EnEntity.c:123
@ SOLID
Is collidable by various trace methods.
Definition EnEntity.c:122
@ ACTIVE
Definition EnEntity.c:141
@ WATER
Used by tracing methods. Traceable only with flag TraceFlags.WATER.
Definition EnEntity.c:135
@ USER4
Definition EnEntity.c:155
@ USER5
Definition EnEntity.c:156
@ USER1
Flags for custom usage and filterings.
Definition EnEntity.c:152
@ TRANSLUCENT
Definition EnEntity.c:132
@ USER2
Definition EnEntity.c:153
@ TOUCHTRIGGERS
Interacts with triggers.
Definition EnEntity.c:124
@ FEATURE
Scene rendering hint for dominant objects that are not culled by standard way.
Definition EnEntity.c:127
@ USER3
Definition EnEntity.c:154
@ STATIC
Static objects are included in the query.
Definition EnEntity.c:149
@ SYNCHRONIZATION_DIRTY
Entity wants to synchronize (network)
Definition EnEntity.c:125

Function Documentation

◆ AddChild()

proto native external bool IEntity::AddChild ( notnull IEntity child,
int pivot,
bool positionOnly = false )
protected

Adds child entity to this entity.

Note
Make sure the parent is not ToDelete
Parameters
childIEntity Pointer to entity which become our child
pivotint Pivot is pivot index, or -1 for center of parent.
positionOnlybool When set to true, the orientation will still be in WS.
Returns
bool True when entity has been attached. False otherwise.

◆ Animate()

proto native external int IEntity::Animate ( float speed,
int loop )
protected

Updates animation (either xob, or particle, whatever)

◆ AnimateEx()

proto native external int IEntity::AnimateEx ( float speed,
int loop,
out vector lin,
out vector ang )
protected

Updates animation (either xob, or particle, whatever)

◆ Attribute()

void Attribute::Attribute ( string defvalue,
string uiwidget,
string desc = "",
string rangescale = "",
ParamEnumArray enums = NULL )
inlineprivate

Definition at line 828 of file EnEntity.c.

829 {
833 m_Desc = desc;
834 m_Enums = enums;
835 }
string m_UiWidget
can be "editbox", "combobox", "spinbox", "slider", "font", "fileeditbox", "colorPicker",...
Definition EnEntity.c:823
string m_RangeScale
defined as "MIN_VALUE MAX_VALUE STEP" eg. "1 100 0.5"
Definition EnEntity.c:824
ref ParamEnumArray m_Enums
Only ints and floats are currently supported. Array can be defined this way: { ParamEnum("Choice 1",...
Definition EnEntity.c:826
string m_Desc
Definition EnEntity.c:825
string m_DefValue
Definition EnEntity.c:822

References Attribute::m_DefValue, Attribute::m_Desc, Attribute::m_Enums, Attribute::m_RangeScale, and Attribute::m_UiWidget.

◆ ClearEventMask()

proto native external EntityEvent IEntity::ClearEventMask ( EntityEvent e)
protected

Clears event mask.

Parameters
eint event mask
Returns
int event mask
Man player = g_Game.GetPlayer();
player.SetEventMask(EntityEvent.VISIBLE );
Print( player.GetEventMask() );
player.ClearEventMask(EntityEvent.ALL );
Print( player.GetEventMask() );
>> 128
>> 0
DayZGame g_Game
Definition DayZGame.c:3528
proto void Print(void var)
Prints content of variable to console/log.
EntityEvent
Entity events for event-mask, or throwing event from code.
Definition EnEntity.c:44

◆ ClearFlags()

proto native external EntityFlags IEntity::ClearFlags ( EntityFlags flags,
bool recursively )
protected

Clear Entity flags. Returns cleared flags.

Parameters
flagsint flags to be set
recursivelyflags will be recursively applied to children of hierarchy too
Returns
int cleared flags
Man player = g_Game.GetPlayer();
player.ClearFlags(EntityFlags.VISIBLE|EntityFlags.SOLID );
Print( player.GetFlags() );
>> 1610612744
EntityFlags
Entity flags.
Definition EnEntity.c:114

◆ CoordToLocal()

proto native external vector IEntity::CoordToLocal ( vector coord)
protected

Transforms world space position to local space.

Parameters
coordvector world space position to transform
Returns
vector position in local space
Man player = g_Game.GetPlayer();
Print( player.CoordToLocal("500 10 155") );
>> <15254,-54.2004,8745.53>

◆ CoordToParent()

proto native external vector IEntity::CoordToParent ( vector coord)
protected

Transforms local position to world space.

Parameters
coordvector local position to transform
Returns
vector position in world space
Man player = g_Game.GetPlayer();
Print( player.CoordToParent("1 2 3") );
>> <2549,17.6478,2857>

◆ EditorAttribute()

void EditorAttribute ( string style,
string category,
string description,
vector sizeMin,
vector sizeMax,
string color,
string color2 = "0 0 0 0",
bool visible = true,
bool insertable = true,
bool dynamicBox = false )

Definition at line 851 of file EnEntity.c.

852 {
853 m_Style = style;
858 m_Color = color;
863 }
class Attribute m_Style
can be "box", "sphere", "cylinder", "pyramid", "diamond" or custom style name
string m_Category
folder structure eg. StaticEntities/Walls
Definition EnEntity.c:841
bool m_Insertable
Definition EnEntity.c:848
bool m_Visible
Definition EnEntity.c:847
string m_Color2
Definition EnEntity.c:846
string m_Description
class purpose description
Definition EnEntity.c:842
string m_Color
Definition EnEntity.c:845
bool m_DynamicBox
Definition EnEntity.c:849
vector m_SizeMax
max vector of a bounding box
Definition EnEntity.c:844
vector m_SizeMin
min vector of a bounding box
Definition EnEntity.c:843

References m_Category, m_Color, m_Color2, m_Description, m_DynamicBox, m_Insertable, m_SizeMax, m_SizeMin, m_Style, and m_Visible.

◆ EOnAnimEvent()

void IEntity::EOnAnimEvent ( IEntity other,
AnimEvent extra )
inlineprotected

EntityEvent.ANIMEVENT.

Definition at line 194 of file EnEntity.c.

195 {
196 }

◆ EOnContact()

void IEntity::EOnContact ( IEntity other,
Contact extra )
inlineprotected

EntityEvent.CONTACT.

Definition at line 212 of file EnEntity.c.

213 {
214 }

◆ EOnDummy020()

void IEntity::EOnDummy020 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 230 of file EnEntity.c.

231 {
232 }

◆ EOnDummy021()

void IEntity::EOnDummy021 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 233 of file EnEntity.c.

234 {
235 }

◆ EOnDummy022()

void IEntity::EOnDummy022 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 236 of file EnEntity.c.

237 {
238 }

◆ EOnDummy023()

void IEntity::EOnDummy023 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 239 of file EnEntity.c.

240 {
241 }

◆ EOnDummy024()

void IEntity::EOnDummy024 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 242 of file EnEntity.c.

243 {
244 }

◆ EOnDummy025()

void IEntity::EOnDummy025 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 245 of file EnEntity.c.

246 {
247 }

◆ EOnDummy026()

void IEntity::EOnDummy026 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 248 of file EnEntity.c.

249 {
250 }

◆ EOnDummy027()

void IEntity::EOnDummy027 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 251 of file EnEntity.c.

252 {
253 }

◆ EOnDummy028()

void IEntity::EOnDummy028 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 254 of file EnEntity.c.

255 {
256 }

◆ EOnDummy029()

void IEntity::EOnDummy029 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 257 of file EnEntity.c.

258 {
259 }

◆ EOnDummy030()

void IEntity::EOnDummy030 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 260 of file EnEntity.c.

261 {
262 }

◆ EOnDummy031()

void IEntity::EOnDummy031 ( IEntity other,
int extra )
inlineprotected

Placeholder.

Definition at line 263 of file EnEntity.c.

264 {
265 }

◆ EOnEnter()

void IEntity::EOnEnter ( IEntity other,
int extra )
inlineprotected

EntityEvent.ENTER.

Definition at line 221 of file EnEntity.c.

222 {
223 }

◆ EOnExtra()

void IEntity::EOnExtra ( IEntity other,
int extra )
inlineprotected

EntityEvent.EXTRA.

Definition at line 176 of file EnEntity.c.

177 {
178 }

◆ EOnFrame()

void IEntity::EOnFrame ( IEntity other,
float timeSlice )
inlineprotected

EntityEvent.FRAME.

Definition at line 182 of file EnEntity.c.

183 {
184 }

◆ EOnInit()

void IEntity::EOnInit ( IEntity other,
int extra )
inlineprotected

EntityEvent.INIT.

Definition at line 173 of file EnEntity.c.

174 {
175 }

◆ EOnJointBreak()

void IEntity::EOnJointBreak ( IEntity other,
int extra )
inlineprotected

EntityEvent.JOINTBREAK.

Definition at line 206 of file EnEntity.c.

207 {
208 }

◆ EOnLeave()

void IEntity::EOnLeave ( IEntity other,
int extra )
inlineprotected

EntityEvent.LEAVE.

Definition at line 224 of file EnEntity.c.

225 {
226 }

◆ EOnNotVisible()

void IEntity::EOnNotVisible ( IEntity other,
int extra )
inlineprotected

EntityEvent.NOTVISIBLE.

Definition at line 179 of file EnEntity.c.

180 {
181 }

◆ EOnPhysicsMove()

void IEntity::EOnPhysicsMove ( IEntity other,
int extra )
inlineprotected

EntityEvent.PHYSICSMOVE.

Definition at line 209 of file EnEntity.c.

210 {
211 }

◆ EOnPostFrame()

void IEntity::EOnPostFrame ( IEntity other,
int extra )
inlineprotected

EntityEvent.POSTFRAME.

Definition at line 188 of file EnEntity.c.

189 {
190 }

◆ EOnPostSimulate()

void IEntity::EOnPostSimulate ( IEntity other,
float timeSlice )
inlineprotected

EntityEvent.POSTSIMULATE.

Definition at line 203 of file EnEntity.c.

204 {
205 }

◆ EOnSimulate()

void IEntity::EOnSimulate ( IEntity other,
float dt )
inlineprotected

EntityEvent.SIMULATE.

Definition at line 200 of file EnEntity.c.

201 {
202 }

◆ EOnSoundEvent()

void IEntity::EOnSoundEvent ( IEntity other,
SoundEvent extra )
inlineprotected

EntityEvent.SOUNDEVENT.

Definition at line 197 of file EnEntity.c.

198 {
199 }

◆ EOnTouch()

void IEntity::EOnTouch ( IEntity other,
int extra )
inlineprotected

EntityEvent.TOUCH.

Definition at line 170 of file EnEntity.c.

171 {
172 }

◆ EOnUser0()

void IEntity::EOnUser0 ( IEntity other,
int extra )
inlineprotected

EntityEvent.EV_USER+0.

Definition at line 215 of file EnEntity.c.

216 {
217 }

◆ EOnUser1()

void IEntity::EOnUser1 ( IEntity other,
int extra )
inlineprotected

EntityEvent.EV_USER+1.

Definition at line 218 of file EnEntity.c.

219 {
220 }

◆ EOnUser4()

void IEntity::EOnUser4 ( IEntity other,
int extra )
inlineprotected

EntityEvent.EV_USER+4.

Definition at line 227 of file EnEntity.c.

228 {
229 }

◆ EOnVisible()

int IEntity::EOnVisible ( IEntity other,
int extra )
inlineprotected

EntityEvent.VISIBLE.

Definition at line 185 of file EnEntity.c.

186 {
187 }

◆ EOnWorldProcess()

void IEntity::EOnWorldProcess ( IEntity other,
int extra )
inlineprotected

EntityEvent.WORLDPROCESS.

Definition at line 191 of file EnEntity.c.

192 {
193 }

◆ FilterNextTrace()

proto native external void IEntity::FilterNextTrace ( )
protected

When called, the Entity is excluded from consequent TraceMove/TraceLine.

◆ FromEnum()

ParamEnum Managed FromEnum ( typename e )

Definition at line 3 of file EnEntity.c.

804 {
806 int cnt = e.GetVariableCount();
807 int val;
808
809 for (int i = 0; i < cnt; i++)
810 {
811 if (e.GetVariableType(i) == int && e.GetVariableValue(NULL, i, val))
812 params.Insert(new ParamEnum(e.GetVariableName(i), val.ToString()));
813 }
814
815 return params;
816 }
void ParamEnum(string key, string value, string desc="")
Definition EnEntity.c:808

◆ Get()

proto bool BaseContainer::Get ( int varIndex,
out void val )
private

◆ GetAngles()

proto native external vector IEntity::GetAngles ( )
protected

Same as GetYawPitchRoll, but returns rotation vector around X, Y and Z axis.

◆ GetBounds()

proto external void IEntity::GetBounds ( out vector mins,
out vector maxs )
protected

Returns local bounding box of model on Entity.

Parameters
[out]minsvector minimum point of bounding box
[out]maxsvector maximum point of bounding box
Man player = g_Game.GetPlayer();
player.GetBounds(mins, maxs );
>> <0,0,0>
>> <0,0,0>

◆ GetChildren() [1/3]

proto native IEntitySource IEntitySource::GetChildren ( )
private

◆ GetChildren() [2/3]

proto native WidgetSource WidgetSource::GetChildren ( )
private

◆ GetChildren() [3/3]

proto native IEntity IEntity::GetChildren ( )
protected

Returns pointer to first child Entity in hierarchy.

Referenced by GetAttachedChildren().

◆ GetClassName()

proto native owned string BaseContainer::GetClassName ( )
private

◆ GetEventMask()

proto native external EntityEvent IEntity::GetEventMask ( )
protected

Returns current event mask.

Returns
int current event mask
Man player = g_Game.GetPlayer();
Print( player.GetEventMask() );
>> 0

◆ GetFlags()

proto native external EntityFlags IEntity::GetFlags ( )
protected

Returns Entity flags.

Returns
EntityFlags entity flags
Man player = g_Game.GetPlayer();
Print( player.GetFlags() );
>> 1610612745

◆ GetHierarchyPivot()

proto native int IEntity::GetHierarchyPivot ( )
protected

Returns the hierarchy component pivot.

◆ GetID()

proto native int IEntity::GetID ( )
protected

Return unique entity ID.

Returns
int unique entity ID
ItemBase apple = g_Game.CreateObject( "FruitApple", String2Vector("0 10 0"), false );
Print( apple.GetID() );
>> 0

◆ GetLocalAngles()

proto native external vector IEntity::GetLocalAngles ( )
protected

Same as GetLocalYawPitchRoll, but returns rotation vector around X, Y and Z axis.

◆ GetLocalPosition()

proto external vector IEntity::GetLocalPosition ( )
protected

Returns local position of Entity.

Returns
vector entity local position
Man player = g_Game.GetPlayer();
Print( player.GetOrigin() );
>> <2577.02,15.6837,2924.27>

◆ GetLocalTransform()

proto external void IEntity::GetLocalTransform ( out vector mat[])
protected

Returns local transformation of Entity. It returns only so much vectors as array is big.

Parameters
matvector[1...4] matrix to be get
Man player = g_Game.GetPlayer();
player.GetTransform(mat);
>> <0.989879,-0,0.141916>,<0,1,0>,<-0.141916,0,0.989879>,<2545.08,15.6754,2867.49>

◆ GetLocalYawPitchRoll()

proto native external vector IEntity::GetLocalYawPitchRoll ( )
protected

Returns local orientation when it's in hierarchy (Yaw, Pitch, Roll)

Returns
vector local orientation
Man player = g_Game.GetPlayer();
Print( player.GetLocalYawPitchRoll() );
>> <180,-57.2585,180>

◆ GetName() [1/2]

proto native owned string BaseContainer::GetName ( )
private

◆ GetName() [2/2]

proto native external owned string IEntity::GetName ( )
protected

◆ GetOrigin()

proto native external vector IEntity::GetOrigin ( )
protected

Returns origin of Entity.

Returns
vector entity origin
Man player = g_Game.GetPlayer();
Print( player.GetOrigin() );
>> <2577.02,15.6837,2924.27>

◆ GetParent() [1/3]

proto native IEntitySource IEntitySource::GetParent ( )
private

◆ GetParent() [2/3]

proto native WidgetSource WidgetSource::GetParent ( )
private

◆ GetParent() [3/3]

proto native IEntity IEntity::GetParent ( )
protected

Returns pointer to parent Entity in hierarchy.

◆ GetRenderTransform()

proto external void IEntity::GetRenderTransform ( out vector mat[])
protected

Returns render transformation of Entity. Must pass in vector array size of 4.

Parameters
matvector[4] matrix to be get
Man player = g_Game.GetPlayer();
player.GetRenderTransform(mat);
>> <0.989879,-0,0.141916>,<0,1,0>,<-0.141916,0,0.989879>,<2545.08,15.6754,2867.49>

◆ GetScale()

proto native external float IEntity::GetScale ( )
protected

◆ GetSibling() [1/3]

proto native IEntitySource IEntitySource::GetSibling ( )
private

◆ GetSibling() [2/3]

proto native WidgetSource WidgetSource::GetSibling ( )
private

◆ GetSibling() [3/3]

proto native IEntity IEntity::GetSibling ( )
protected

Returns pointer to next child Entity on the same hierarchy.

◆ GetTransform()

proto external void IEntity::GetTransform ( out vector mat[])
protected

Returns transformation of Entity. It returns only so much vectors as array is big.

Parameters
matvector[1...4] matrix to be get
Man player = g_Game.GetPlayer();
player.GetTransform(mat);
>> <0.989879,-0,0.141916>,<0,1,0>,<-0.141916,0,0.989879>,<2545.08,15.6754,2867.49>

◆ GetTransformAxis()

proto native external vector IEntity::GetTransformAxis ( int axis)
protected

Returns one row of Entity transformation matrix.

Parameters
axisint matrix axis. Can be 0..3
Returns
vector axis row of Entity matrix
Man player = g_Game.GetPlayer();
Print( player.GetTransformAxis(0) );
Print( player.GetTransformAxis(1) );
Print( player.GetTransformAxis(2) );
Print( player.GetTransformAxis(3) );
>> <-0.386781,0,0.922171>
>> <0,1,0>
>> <-0.922171,0,-0.386782>
>> <2551.34,15.6439,2856.72>

◆ GetVObject()

proto native vobject IEntity::GetVObject ( )
protected

Returns visual object set to this Entity. No reference is added.

◆ GetWorldBounds()

proto external void IEntity::GetWorldBounds ( out vector mins,
out vector maxs )
protected

Returns quantized world-bound-box of Entity.

Parameters
[out]minsvector minimum point of bounding box
[out]maxsvector maximum point of bounding box
Man player = g_Game.GetPlayer();
player.GetWorldBounds( mins, maxs );
>> <2547.2,15.5478,2852.85>
>> <2548.8,17.5478,2855.05>

◆ GetYawPitchRoll()

proto native external vector IEntity::GetYawPitchRoll ( )
protected

Returns orientation of Entity in world space (Yaw, Pitch, Roll)

Returns
vector entity orientation
Man player = g_Game.GetPlayer();
Print( player.GetYawPitchRoll() );
>> <180,-76.5987,180>

◆ IsFlagSet()

proto native external bool IEntity::IsFlagSet ( EntityFlags flags)
protected

Test if one or more of specified flags are set.

Returns
bool True if is set, false otherwise.
Man player = g_Game.GetPlayer();
player.SetFlags(EntityFlags.VISIBLE);
Print( player.IsFlagSet(EntityFlags.VISIBLE) );
>> true

◆ IsHierarchyPositionOnly()

proto native bool IEntity::IsHierarchyPositionOnly ( )
protected

Returns if the hierarchy component was created with positionOnly.

◆ IsType()

proto bool BaseContainer::IsType ( int varIndex,
typename type  )
private

◆ IsVariableSet()

proto native bool BaseContainer::IsVariableSet ( int varIndex)
private

◆ ParamEnum() [1/2]

void ParamEnum::ParamEnum ( string key,
string value,
string desc = "" )
inlineprivate

Definition at line 793 of file EnEntity.c.

794 {
795 m_Key = key;
796 m_Value = value;
797 m_Desc = desc;
798 }
string m_Desc
Definition EnEntity.c:791
string m_Key
Definition EnEntity.c:789
string m_Value
Definition EnEntity.c:790

References ParamEnum::m_Desc, ParamEnum::m_Key, and ParamEnum::m_Value.

◆ ParamEnum() [2/2]

void FromEnum::ParamEnum ( string key,
string value,
string desc = "" )

Definition at line 808 of file EnEntity.c.

810 {
811 if (e.GetVariableType(i) == int && e.GetVariableValue(NULL, i, val))
812 params.Insert(new ParamEnum(e.GetVariableName(i), val.ToString()));
813 }

References ParamEnum().

Referenced by ParamEnum().

◆ RemoveChild()

proto native external bool IEntity::RemoveChild ( notnull IEntity child,
bool keepTransform = false )
protected

Removes child entity from hierarchy.

Note
Make sure the child is not ToDelete
Parameters
childIEntity Pointer to child entity we want to remove.
keepTransformbool When set to true, Entity is kept on her world position. Otherwise it's local transform is used as world-space one.
Returns
bool True if it was removed, false when this entity is not our child.

◆ SendEvent()

proto external volatile void IEntity::SendEvent ( notnull IEntity actor,
EntityEvent e,
void extra )
protected

Dynamic event invokation. Parameters are the same as in IEntity::EOnXXXX() methods.

◆ SetAngles()

proto native external void IEntity::SetAngles ( vector angles)
protected

Same as SetYawPitchRoll, but sets rotation around X, Y and Z axis.

◆ SetCameraMask()

proto native external int IEntity::SetCameraMask ( int mask)
protected

Sets visibility mask for cameras, where Entity will be rendered.

◆ SetEventMask()

proto native external EntityEvent IEntity::SetEventMask ( EntityEvent e)
protected

Sets event mask.

Parameters
ecombined mask of one or more members of EntityEvent enum
Man player = g_Game.GetPlayer();
Print( player.GetEventMask() );
player.SetEventMask( EntityEvent.VISIBLE );
Print( player.GetEventMask() );
>> 0
>> 128

◆ SetFlags()

proto native external EntityFlags IEntity::SetFlags ( EntityFlags flags,
bool recursively )
protected

Sets Entity flags. It's OR operation, not rewrite. Returns previous flags.

Parameters
flagsint flags to be set
recursivelyflags will be recursively applied to children of hierarchy too
Returns
int previous flags
Man player = g_Game.GetPlayer();
player.SetFlags(EntityFlags.VISIBLE|EntityFlags.SOLID );
Print( player.GetFlags() );
>> 1610612747

◆ SetID()

proto native void IEntity::SetID ( int id)
protected

Set unique entity ID.

Parameters
idint unique entity ID to be set
ItemBase apple = g_Game.CreateObject( "Fruit_Apple", String2Vector("0 10 0"), false );
apple.SetID(101);
Print( apple.GetID() );
>> 101

◆ SetName()

proto native void IEntity::SetName ( string name)
protected

◆ SetObject()

proto native external void IEntity::SetObject ( vobject object,
string options )
protected
\brief Sets the visual object to this entity. Reference is added and released upon entity destruction
\param object handle to object got by GetObject()
\param options String, dependant on object type.

Only supported one for XOB objects: $remap 'original material name' 'new material'; [$remap 'another original material name' 'anothernew material']

◆ SetOrigin()

proto native external void IEntity::SetOrigin ( vector orig)
protected

Sets origin for entity.

Parameters
origvector origin to be set
Man player = g_Game.GetPlayer();
player.SetOrigin("2550 10 2900" );
Print( player.GetOrigin() );
>> <2550,10,2900>

◆ SetScale()

proto native external void IEntity::SetScale ( float scale)
protected

◆ SetTransform()

proto native external void IEntity::SetTransform ( vector mat[4])
protected

Sets entity transformation.

Parameters
matvector[4] matrix to be set
Math3D.MatrixIdentity( mat )
Man player = g_Game.GetPlayer();
player.SetTransform( mat );
player.GetTransform(outmat );
>> <1,0,0>,<0,1,0>,<0,0,1>,<0,0,0>

◆ SetYawPitchRoll()

proto native external void IEntity::SetYawPitchRoll ( vector angles)
protected

Sets angles for entity (Yaw, Pitch, Roll)

Parameters
anglesvector angles to be set
Man player = g_Game.GetPlayer();
player.SetYawPitchRoll("180 50 180" );
Print( player.GetYawPitchRoll() );
>> <-180,50,-180>

◆ Update()

proto native external int IEntity::Update ( )
protected
Updates entity state/position. Should be called when you want to manually commit position changes etc
before trace methods etc. Entity is updated automatically at the end and the beginning of simulation step,
when it has EntityFlags.TFL_ACTIVE flag set.
\returns mask with flags

EntityFlags.UPDATE - hierarchy has been updated EntityFlags.UPDATE_MDL - model hierarchy has been updated

◆ VarIndex()

proto native int BaseContainer::VarIndex ( string varName)
private

◆ VectorToLocal()

proto native external vector IEntity::VectorToLocal ( vector vec)
protected

Transforms world space vector to local space.

Parameters
vecvector world space vector to transform
Returns
vector local space vector
Man player = g_Game.GetPlayer();
Print( player.VectorToLocal("2 1 5") );
>> <-0.166849,1,5.38258>

◆ VectorToParent()

proto native external vector IEntity::VectorToParent ( vector vec)
protected

Transforms local vector to world space.

Parameters
vecvector local space vector to transform
Returns
vector world space vector
Man player = g_Game.GetPlayer();
Print( player.VectorToParent("1 2 3") );
>> <2.89791,2,1.26575>

Variable Documentation

◆ m_Category

string m_Category

folder structure eg. StaticEntities/Walls

Definition at line 841 of file EnEntity.c.

Referenced by EditorAttribute(), GestureMenuItem(), GetCategory(), GetItemCategory(), and RadialQuickbarItem().

◆ m_Color

string m_Color

Definition at line 845 of file EnEntity.c.

Referenced by EditorAttribute().

◆ m_Color2

string m_Color2

Definition at line 846 of file EnEntity.c.

Referenced by EditorAttribute().

◆ m_DefValue

string Attribute::m_DefValue
private

Definition at line 822 of file EnEntity.c.

Referenced by Attribute::Attribute().

◆ m_Desc [1/3]

string ParamEnum::m_Desc
private

Definition at line 791 of file EnEntity.c.

Referenced by ParamEnum::ParamEnum().

◆ m_Desc [2/3]

string m_Desc

Definition at line 806 of file EnEntity.c.

◆ m_Desc [3/3]

string Attribute::m_Desc
private

Definition at line 825 of file EnEntity.c.

Referenced by Attribute::Attribute().

◆ m_Description

◆ m_DynamicBox

bool m_DynamicBox

Definition at line 849 of file EnEntity.c.

Referenced by EditorAttribute().

◆ m_Enums

ref ParamEnumArray Attribute::m_Enums
private

Only ints and floats are currently supported. Array can be defined this way: { ParamEnum("Choice 1", "1"), ParamEnum("Choicen 2", "2") }.

Definition at line 826 of file EnEntity.c.

Referenced by Attribute::Attribute().

◆ m_Insertable

bool m_Insertable

Definition at line 848 of file EnEntity.c.

Referenced by EditorAttribute().

◆ m_Key [1/2]

string ParamEnum::m_Key
private

Definition at line 789 of file EnEntity.c.

Referenced by ParamEnum::ParamEnum().

◆ m_Key [2/2]

◆ m_RangeScale

string Attribute::m_RangeScale
private

defined as "MIN_VALUE MAX_VALUE STEP" eg. "1 100 0.5"

Definition at line 824 of file EnEntity.c.

Referenced by Attribute::Attribute().

◆ m_SizeMax

vector m_SizeMax

max vector of a bounding box

Definition at line 844 of file EnEntity.c.

Referenced by EditorAttribute().

◆ m_SizeMin

vector m_SizeMin

min vector of a bounding box

Definition at line 843 of file EnEntity.c.

Referenced by EditorAttribute().

◆ m_Style

class Attribute m_Style

can be "box", "sphere", "cylinder", "pyramid", "diamond" or custom style name

Referenced by EditorAttribute().

◆ m_UiWidget

string Attribute::m_UiWidget
private

can be "editbox", "combobox", "spinbox", "slider", "font", "fileeditbox", "colorPicker", "flags", "resourceNamePicker"

Definition at line 823 of file EnEntity.c.

Referenced by Attribute::Attribute().

◆ m_Value [1/2]

string ParamEnum::m_Value
private

Definition at line 790 of file EnEntity.c.

Referenced by ParamEnum::ParamEnum().

◆ m_Value [2/2]

◆ m_Visible