DayZ Scripts
v1.21.156300 ยท Jun 20, 2023
 
Loading...
Searching...
No Matches
DayZPhysics.c
Go to the documentation of this file.
2{
4
15
18
21
25
29
33
36
38
39 TEMP
40};
41
42
47{
50
53
54 float radius;
55
61
70 int type;
71
72 bool sorted;
74
75 void RaycastRVParams( vector vBeg, vector vEnd, Object pIgnore = null, float fRadius = 0.0 )
76 {
77 begPos = vBeg;
78 endPos = vEnd;
79 ignore = pIgnore;
80 radius = fRadius;
81
82 // default values
83 with = null;
84 flags = CollisionFlags.NEARESTCONTACT;
85 type = ObjIntersectView;
86 sorted = false;
87 groundOnly = false;
88 }
89};
90
91
96{
99
102
105
106 bool entry;
107 bool exit;
108};
109
111{
112 bool OnContact(IEntity other, Contact contact)
113 {
114 return true;
115 }
116};
117
119{
120 private void DayZPhysics() {}
121 private void ~DayZPhysics() {}
122
194 proto static bool RaycastRV(vector begPos, vector endPos, out vector contactPos, out vector contactDir, out int contactComponent, /*out*/ set<Object> results = NULL, Object with = NULL, Object ignore = NULL, bool sorted = false, bool ground_only = false, int iType = ObjIntersectView, float radius = 0.0, CollisionFlags flags = CollisionFlags.NEARESTCONTACT);
195
196 //I am so sorry about this, I am unable to change RaycastRV above without breaking rest of DZ
197 //proto static bool RaycastRVExt(vector begPos, vector endPos, out vector contactPos, out vector contactDir, out int contactComponent, /*out*/ array<string> resultSurfaces = NULL, /*out*/ array<Object> resultObjects = NULL, Object with = NULL, Object ignore = NULL, bool sorted = false, bool ground_only = false, int iType = ObjIntersectView, float radius = 0.0, CollisionFlags flags = CollisionFlags.NEARESTCONTACT);
198
199 proto static bool GetHitSurface(Object other, vector begPos, vector endPos, string surface);
200
201 proto static bool RaycastRVProxy( notnull RaycastRVParams in, out notnull array< ref RaycastRVResult> results, array< Object > excluded = null );
202
203
204 proto static bool RayCastBullet(vector begPos, vector endPos, PhxInteractionLayers layerMask, Object ignoreObj, out Object hitObject, out vector hitPosition, out vector hitNormal, out float hitFraction);
205
206 proto static bool SphereCastBullet(vector begPos, vector endPos, float radius, PhxInteractionLayers layerMask, Object ignoreObj, out Object hitObject, out vector hitPosition, out vector hitNormal, out float hitFraction);
207
208
209 proto static bool GeometryOverlapBullet(vector transform[4], dGeom geometry, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
210
211 proto static bool EntityOverlapBullet(vector transform[4], IEntity entity, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
212
213 proto static bool SphereOverlapBullet(vector position, float radius, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
214
215 proto static bool CylinderOverlapBullet(vector transform[4], vector extents, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
216
217 proto static bool CapsuleOverlapBullet(vector transform[4], float radius, float height, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
218
219 proto static bool BoxOverlapBullet(vector transform[4], vector extents, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
220
221}
PhxInteractionLayers
Definition DayZPhysics.c:2
@ ITEM_LARGE
Definition DayZPhysics.c:35
@ AI_COMPLEX
Definition DayZPhysics.c:28
@ TRIGGER_NOTERRAIN
Definition DayZPhysics.c:32
@ DYNAMICITEM_NOCHAR
Definition DayZPhysics.c:10
@ TRIGGER
Definition DayZPhysics.c:31
@ BUILDING
Definition DayZPhysics.c:6
@ ITEM_SMALL
Definition DayZPhysics.c:34
@ DYNAMICITEM
Definition DayZPhysics.c:9
@ CHARACTER_NO_GRAVITY
Definition DayZPhysics.c:13
@ WATERLAYER
Definition DayZPhysics.c:19
@ TERRAIN
Definition DayZPhysics.c:20
@ TEMP
Definition DayZPhysics.c:39
@ GHOST
Definition DayZPhysics.c:22
@ AI_NO_COLLISION
Definition DayZPhysics.c:27
@ RAGDOLL
Definition DayZPhysics.c:17
@ CHARACTER
Definition DayZPhysics.c:7
@ FIREGEOM
Definition DayZPhysics.c:14
@ AI
Definition DayZPhysics.c:26
@ ROADWAY
Definition DayZPhysics.c:11
@ TINYCAPSULE
Definition DayZPhysics.c:30
@ WORLDBOUNDS
Definition DayZPhysics.c:23
@ VEHICLE_NOTERRAIN
Definition DayZPhysics.c:12
@ FENCE
Definition DayZPhysics.c:24
@ DEFAULT
Definition DayZPhysics.c:5
@ VEHICLE
Definition DayZPhysics.c:8
@ CAMERA
Definition DayZPhysics.c:37
@ DOOR
Definition DayZPhysics.c:16
@ NOCOLLISION
Definition DayZPhysics.c:3
bool OnContact(IEntity other, Contact contact)
static proto bool RayCastBullet(vector begPos, vector endPos, PhxInteractionLayers layerMask, Object ignoreObj, out Object hitObject, out vector hitPosition, out vector hitNormal, out float hitFraction)
static proto bool RaycastRVProxy(notnull RaycastRVParams in, out notnull array< ref RaycastRVResult > results, array< Object > excluded=null)
private void ~DayZPhysics()
static proto bool RaycastRV(vector begPos, vector endPos, out vector contactPos, out vector contactDir, out int contactComponent, set< Object > results=NULL, Object with=NULL, Object ignore=NULL, bool sorted=false, bool ground_only=false, int iType=ObjIntersectView, float radius=0.0, CollisionFlags flags=CollisionFlags.NEARESTCONTACT)
Raycasts world by given parameters.
static proto bool BoxOverlapBullet(vector transform[4], vector extents, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
static proto bool SphereOverlapBullet(vector position, float radius, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
static proto bool CylinderOverlapBullet(vector transform[4], vector extents, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
static proto bool CapsuleOverlapBullet(vector transform[4], float radius, float height, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
static proto bool SphereCastBullet(vector begPos, vector endPos, float radius, PhxInteractionLayers layerMask, Object ignoreObj, out Object hitObject, out vector hitPosition, out vector hitNormal, out float hitFraction)
static proto bool GetHitSurface(Object other, vector begPos, vector endPos, string surface)
static proto bool GeometryOverlapBullet(vector transform[4], dGeom geometry, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
static proto bool EntityOverlapBullet(vector transform[4], IEntity entity, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
private void DayZPhysics()
TODO doc.
Definition EnScript.c:118
Object ignore
ignore this object in collision, used only if groundOnly is false
Definition DayZPhysics.c:51
CollisionFlags flags
Definition DayZPhysics.c:60
float radius
radius along the ray tested
Definition DayZPhysics.c:54
vector begPos
begin position of raycast (e.g. player position)
Definition DayZPhysics.c:48
vector endPos
end position of raycast (e.g. player direction)
Definition DayZPhysics.c:49
bool groundOnly
raycasts only ground (ignores all objects). Default value is false if not needed.
Definition DayZPhysics.c:73
void RaycastRVParams(vector vBeg, vector vEnd, Object pIgnore=null, float fRadius=0.0)
Definition DayZPhysics.c:75
bool sorted
used only if groundOnly = false
Definition DayZPhysics.c:72
Object with
ignore object with this object, otherwise collision hits, used only if groundOnly is false
Definition DayZPhysics.c:52
vector dir
direction outside (in world coord) or (in case of line-object collision) direction and size of the in...
vector pos
position of collision (in world coord)
Object obj
object,that we collide with (NULL if none), If hierLevel > 0 object is the proxy object
Definition DayZPhysics.c:97
int component
index of component in corresponding geometry level
bool entry
is false if begining point was TriggerInsider
Object parent
if hierLevel > 0 most parent of the proxy object
Definition DayZPhysics.c:98
int hierLevel
which hierarchy level is the collision detected at, == 0 = objects in landscape, > 0 = proxy
bool exit
is false if end point was inside
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
CollisionFlags
Definition EnDebug.c:141
int[] dGeom
Definition EnPhysics.c:6