DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
DayZPhysics.c
См. документацию.
44
45
50{
53
56
57 float radius;
58
64
73 int type;
74
75 bool sorted;
77
78 void RaycastRVParams( vector vBeg, vector vEnd, Object pIgnore = null, float fRadius = 0.0 )
79 {
80 begPos = vBeg;
81 endPos = vEnd;
82 ignore = pIgnore;
83 radius = fRadius;
84
85 // default values
86 with = null;
87 flags = CollisionFlags.NEARESTCONTACT;
88 type = ObjIntersectView;
89 sorted = false;
90 groundOnly = false;
91 }
92};
93
94
114
116{
117 bool OnContact(IEntity other, Contact contact)
118 {
119 return true;
120 }
121};
122
124{
125 private void DayZPhysics() {}
126 private void ~DayZPhysics() {}
127
199 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);
200
201 //I am so sorry about this, I am unable to change RaycastRV above without breaking rest of DZ
202 //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);
203
204 proto static bool GetHitSurface(Object other, vector begPos, vector endPos, string surface);
205
206 proto static bool GetHitSurfaceAndLiquid(Object other, vector begPos, vector endPos, string surface, out int liquidType);
207
208 proto static bool RaycastRVProxy( notnull RaycastRVParams in, out notnull array< ref RaycastRVResult> results, array< Object > excluded = null );
209
210
211 proto static bool RayCastBullet(vector begPos, vector endPos, PhxInteractionLayers layerMask, Object ignoreObj, out Object hitObject, out vector hitPosition, out vector hitNormal, out float hitFraction);
212
213 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);
214
215
216 proto static bool GeometryOverlapBullet(vector transform[4], dGeom geometry, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
217
218 proto static bool EntityOverlapBullet(vector transform[4], IEntity entity, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
219
220 proto static bool EntityOverlapSingleBullet(vector transform[4], IEntity entity, IEntity other, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
221
222 proto static bool SphereOverlapBullet(vector position, float radius, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
223
224 proto static bool CylinderOverlapBullet(vector transform[4], vector extents, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
225
226 proto static bool CapsuleOverlapBullet(vector transform[4], float radius, float height, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
227
228 proto static bool BoxOverlapBullet(vector transform[4], vector extents, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback);
229
230}
enum PGPolyFlags TERRAIN
enum PGPolyFlags ROADWAY
DOOR
Определения AIWorld.c:4
enum PGPolyFlags BUILDING
PhxInteractionLayers
Определения DayZPhysics.c:2
@ ITEM_LARGE
Определения DayZPhysics.c:38
@ AI_COMPLEX
Определения DayZPhysics.c:31
@ TRIGGER_NOTERRAIN
Определения DayZPhysics.c:35
@ DYNAMICITEM_NOCHAR
Определения DayZPhysics.c:10
@ ITEM_SMALL
Определения DayZPhysics.c:37
@ DYNAMICITEM
Определения DayZPhysics.c:9
@ CHARACTER_NO_GRAVITY
Определения DayZPhysics.c:13
@ WATERLAYER
Определения DayZPhysics.c:22
@ TEMP
Определения DayZPhysics.c:42
@ GHOST
Определения DayZPhysics.c:25
@ AI_NO_COLLISION
Определения DayZPhysics.c:30
@ RAGDOLL
Определения DayZPhysics.c:20
@ CHARACTER
Определения DayZPhysics.c:7
@ FIREGEOM
Redefinition of 'RAGDOLL_NO_CHARACTER'.
Определения DayZPhysics.c:17
@ AI
Определения DayZPhysics.c:29
@ RAGDOLL_NO_CHARACTER
Определения DayZPhysics.c:14
@ TINYCAPSULE
Определения DayZPhysics.c:33
@ WORLDBOUNDS
Определения DayZPhysics.c:26
@ VEHICLE_NOTERRAIN
Определения DayZPhysics.c:12
@ FENCE
Определения DayZPhysics.c:27
@ VEHICLE
Определения DayZPhysics.c:8
@ CAMERA
Определения DayZPhysics.c:40
@ NOCOLLISION
Определения DayZPhysics.c:3
@ DEFAULT
Определения ECrewMemberState.c:3
bool OnContact(IEntity other, Contact contact)
Определения DayZPhysics.c:117
Определения EnPhysics.c:305
static proto bool GetHitSurface(Object other, vector begPos, vector endPos, string surface)
void ~DayZPhysics()
Определения DayZPhysics.c:126
static proto bool SphereOverlapBullet(vector position, float radius, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
void DayZPhysics()
Определения DayZPhysics.c:125
static proto bool GetHitSurfaceAndLiquid(Object other, vector begPos, vector endPos, string surface, out int liquidType)
static proto bool GeometryOverlapBullet(vector transform[4], dGeom geometry, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
static proto bool EntityOverlapSingleBullet(vector transform[4], IEntity entity, IEntity other, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
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 EntityOverlapBullet(vector transform[4], IEntity entity, 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 RayCastBullet(vector begPos, vector endPos, PhxInteractionLayers layerMask, Object ignoreObj, out Object hitObject, out vector hitPosition, out vector hitNormal, out float hitFraction)
static proto bool CylinderOverlapBullet(vector transform[4], vector extents, PhxInteractionLayers layerMask, notnull CollisionOverlapCallback callback)
static proto bool RaycastRVProxy(notnull RaycastRVParams in, out notnull array< ref RaycastRVResult > results, array< Object > excluded=null)
Определения EnEntity.c:165
TODO doc.
Определения EnScript.c:118
Определения ObjectTyped.c:2
vector endPos
end position of raycast (e.g. player direction)
Определения DayZPhysics.c:52
bool groundOnly
raycasts only ground (ignores all objects). Default value is false if not needed.
Определения DayZPhysics.c:76
bool sorted
used only if groundOnly = false
Определения DayZPhysics.c:75
Object with
ignore object with this object, otherwise collision hits, used only if groundOnly is false
Определения DayZPhysics.c:55
float radius
radius along the ray tested
Определения DayZPhysics.c:57
vector begPos
begin position of raycast (e.g. player position)
Определения DayZPhysics.c:51
void RaycastRVParams(vector vBeg, vector vEnd, Object pIgnore=null, float fRadius=0.0)
Определения DayZPhysics.c:78
int type
Определения DayZPhysics.c:73
Object ignore
ignore this object in collision, used only if groundOnly is false
Определения DayZPhysics.c:54
CollisionFlags flags
Определения DayZPhysics.c:63
Определения DayZPhysics.c:50
Object obj
object,that we collide with (NULL if none), If hierLevel > 0 object is the proxy object
Определения DayZPhysics.c:100
int component
index of component in corresponding geometry level
Определения DayZPhysics.c:107
bool entry
is false if begining point was TriggerInsider
Определения DayZPhysics.c:111
bool exit
is false if end point was inside
Определения DayZPhysics.c:112
vector dir
direction outside (in world coord) or (in case of line-object collision) direction and size of the in...
Определения DayZPhysics.c:104
int hierLevel
which hierarchy level is the collision detected at, == 0 = objects in landscape, > 0 = proxy
Определения DayZPhysics.c:106
SurfaceInfo surface
surface material info handle
Определения DayZPhysics.c:109
vector pos
position of collision (in world coord)
Определения DayZPhysics.c:103
Object parent
if hierLevel > 0 most parent of the proxy object
Определения DayZPhysics.c:101
Определения DayZPhysics.c:99
Определения SurfaceInfo.c:9
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
Определения EnConvert.c:106
CollisionFlags
Определения EnDebug.c:141
@ TRIGGER
Is not collidable, but invokes touch events.
Определения EnEntity.c:124
int[] dGeom
Определения EnPhysics.c:6