DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
Object.c
См. документацию.
8
9class ObjectSnapCallback
10{
14
17
19
22
26 void OnSetup()
27 {
28 }
29
32 void OnDebug(vector p0, vector p1, bool hasHit, bool found)
33 {
34 }
35
41 {
42 return false;
43 }
44
49 bool OnQuery(Object other)
50 {
51 return true;
52 }
53
58 bool OnCollide(Object other)
59 {
60 return true;
61 }
62};
63
64class Object extends IEntity
65{
66 private void ~Object();
67 private void Object();
68
70 {
71 return false;
72 }
73
82 void Delete()
83 {
84 GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).Call(GetGame().ObjectDelete, this);
85 }
86
87 proto native void AddProxyPhysics(string proxySelectionName);
88
89 proto native void RemoveProxyPhysics(string proxySelectionName);
90
93
96
98 proto native bool GetLODS(notnull out array<LOD> lods);
99
101 proto native owned string GetLODName(LOD lod);
102
103 proto native vector GetBoundingCenter();
104
107 {
108 array<LOD> lods = new array<LOD>;
109 GetLODS( lods );
110
111 for ( int i = 0; i < lods.Count(); ++i )
112 {
113 string lod_name = GetLODName( lods.Get( i ) );
114 lod_name.ToLower();
115 name.ToLower();
116 if ( lod_name == name )
117 {
118 return lods.Get( i );
119 }
120 }
121
122 return NULL;
123 }
124
130
136
142
144 void Explode(int damageType, string ammoType = "")
145 {
146 if (ammoType == "")
147 ammoType = ConfigGetString("ammoType");
148
149 if (ammoType == "")
150 ammoType = "Dummy_Heavy";
151
152 if ( GetGame().IsServer() )
153 {
155 DamageSystem.ExplosionDamage(EntityAI.Cast(this), null, ammoType, GetPosition(), damageType);
156 }
157 }
158
160 {
161 if ( GetGame().IsDedicatedServer() ) // Multiplayer server
162 {
163 Param1<EntityAI> p = new Param1<EntityAI>(null);
164 GetGame().RPCSingleParam( this, ERPCs.RPC_EXPLODE_EVENT, p, true);
165 }
166 else if ( !GetGame().IsMultiplayer() ) // Singleplayer
167 {
169 }
170 }
171
174 {
175 string ammoType = ConfigGetString("ammoType");
176
177 if (ammoType == "")
178 ammoType = "Dummy_Heavy";
179
180 vector pos = GetPosition();
181
182 // Handle spawn of particle if one is configured in config
183 AmmoEffects.PlayAmmoParticle(ammoType, pos);
184
185 // Handle spawn of Effect if one is configured in config
186 AmmoEffects.PlayAmmoEffect(ammoType, pos);
187 }
188
189 void OnExplosionEffects(Object source, Object directHit, int componentIndex, string surface, vector pos, vector surfNormal, float energyFactor, float explosionFactor, bool isWater, string ammoType) { }
190
192 proto native owned string GetActionComponentName(int componentIndex, string geometry = "");
193
195 proto native owned vector GetActionComponentPosition(int componentIndex, string geometry = "");
196
198 proto native owned int GetActionComponentNameList(int componentIndex, TStringArray nameList, string geometry = "");
199
201 proto native bool IsActionComponentPartOfSelection(int componentIndex, string selectionName, string geometry = "");
202
204 proto void GetActionComponentsForSelectionName(int level, string selectionName, TIntArray componentIndices);
205
207 proto vector GetActionComponentCenter(int level, int componentIndex);
208
210 proto vector GetActionComponentCenterOOB(int level, int componentIndex);
211
213 proto void GetActionComponentMinMax(int level, int componentIndex, out vector min, out vector max);
214
216 proto native bool ToDelete();
217
221 proto native bool IsPendingDeletion();
222
224 proto native int GetGeometryLevel();
225 proto native int GetFireGeometryLevel();
226 proto native int GetViewGeometryLevel();
227 proto native int GetMemoryLevel();
228
229#ifdef DEVELOPER
231 proto bool ToBonePivot(out int pivot, int level, int bone);
232 proto bool FromBonePivot(int pivot, out int level, out int bone);
233#endif
234
236 proto int GetBonePivot(int level, int component);
237
239 proto native void GetBonePivotsForAnimationSource(int level, string animationSource, out TIntArray pivots);
240
242 proto native vector GetBonePositionLS(int pivot);
243 proto native vector GetBonePositionMS(int pivot);
244 proto native vector GetBonePositionWS(int pivot);
245
247 proto native void GetBoneRotationLS(int pivot, out float quaternion[4]);
248 proto native void GetBoneRotationMS(int pivot, out float quaternion[4]);
249 proto native void GetBoneRotationWS(int pivot, out float quaternion[4]);
250
252 proto native void GetBoneTransformLS(int pivot, out vector transform[4]);
253 proto native void GetBoneTransformMS(int pivot, out vector transform[4]);
254 proto native void GetBoneTransformWS(int pivot, out vector transform[4]);
255
262 proto native void GetTightlyPackedCorners(ETransformationAxis axis, out vector corners[4]);
263
264#ifdef DIAG_DEVELOPER
265 void DebugDrawTightlyPackedCorners(ETransformationAxis axis, int color)
266 {
267#ifndef SERVER
268 vector points[2];
269 vector corners[4];
270
271 GetTightlyPackedCorners(axis, corners);
272
273 points[0] = corners[0];
274 points[1] = corners[1];
275 Shape.CreateLines(color, ShapeFlags.TRANSP | ShapeFlags.ONCE | ShapeFlags.NOOUTLINE | ShapeFlags.NOZBUFFER, points, 2);
276
277 points[0] = corners[1];
278 points[1] = corners[3];
279 Shape.CreateLines(color, ShapeFlags.TRANSP | ShapeFlags.ONCE | ShapeFlags.NOOUTLINE | ShapeFlags.NOZBUFFER, points, 2);
280
281 points[0] = corners[3];
282 points[1] = corners[2];
283 Shape.CreateLines(color, ShapeFlags.TRANSP | ShapeFlags.ONCE | ShapeFlags.NOOUTLINE | ShapeFlags.NOZBUFFER, points, 2);
284
285 points[0] = corners[2];
286 points[1] = corners[0];
287 Shape.CreateLines(color, ShapeFlags.TRANSP | ShapeFlags.ONCE | ShapeFlags.NOOUTLINE | ShapeFlags.NOZBUFFER, points, 2);
288#endif
289 }
290#endif
291
293 proto native vector GetPosition();
294
297 proto native vector GetWorldPosition();
298
300 proto native void SetPosition(vector vPos);
301
305 proto native void PlaceOnSurface();
306
311 proto native vector GetOrientation();
312
317 proto native void SetOrientation(vector vOrientation);
318
320 proto native vector GetDirection();
321
327 proto native void SetDirection(vector vPos);
328
330 proto native vector GetDirectionUp();
331
333 proto native vector GetDirectionAside();
334
336 proto native vector GetLocalPos(vector vPos);
338 proto native vector GetGlobalPos(vector vPos);
339
341 proto native vector GetSpeed();
342
344 proto native vector GetModelSpeed();
345
347 proto native bool CanAffectPathgraph();
348
350 proto native void SetAffectPathgraph(bool fromConfig, bool affect);
351
352
364 proto float ClippingInfo(out vector minMax[2]);
365
376 proto native bool GetCollisionBox(out vector minMax[2]);
377
382 proto native float GetCollisionRadius();
383
385 proto native float GetDamage();
386
387
388 proto native void GetSelectionList(out TStringArray selectionList);
389
392 {
393 vector position = GetPosition();
394 return GetGame().SurfaceGetNoiseMultiplier(NULL, position, -1);
395 }
396
399 {
400 string surface_type;
401 int liquid_type;
402
403 GetGame().SurfaceUnderObject(this, surface_type,liquid_type);
404// Print(surface_type);
405// Print(liquid_type);
406
407 return surface_type;
408 }
409
411 bool HasSelection( string selection )
412 {
413 TStringArray selections = new TStringArray;
414 GetSelectionList( selections );
415
416 for ( int i = 0; i < selections.Count(); ++i )
417 {
418 if ( selections.Get( i ) == selection )
419 {
420 return true;
421 }
422 }
423
424 return false;
425 }
426
428 bool HasAnimation( string anim_name )
429 {
430 string cfg_path_vehicles = "CfgVehicles " + GetType() + " ";
431 if ( GetGame().ConfigIsExisting (cfg_path_vehicles) && GetGame().ConfigIsExisting (cfg_path_vehicles + "AnimationSources " + anim_name) )
432 {
433 return true;
434 }
435
436 string cfg_path_weapons = "CfgWeapons " + GetType() + " ";
437 if ( GetGame().ConfigIsExisting (cfg_path_weapons) && GetGame().ConfigIsExisting (cfg_path_weapons + "AnimationSources " + anim_name) )
438 {
439 return true;
440 }
441
442 string cfg_path_magazines = "CfgMagazines " + GetType() + " ";
443 if ( GetGame().ConfigIsExisting (cfg_path_magazines) && GetGame().ConfigIsExisting (cfg_path_magazines + "AnimationSources " + anim_name) )
444 {
445 return true;
446 }
447
448 return false;
449 }
450
452 /*bool HasEnergyManager()
453 {
454 return false;
455 }*/
456
457 proto native int GetMemoryPointIndex(string memoryPointName);
458 proto native vector GetMemoryPointPos(string memoryPointName);
459 proto native vector GetMemoryPointPosByIndex(int pointIndex);
460 proto native bool MemoryPointExists(string memoryPoint);
461
462 proto native void CreateDynamicPhysics(int interactionLayers);
463 proto native void EnableDynamicCCD(bool state);
464 proto native void SetDynamicPhysicsLifeTime(float lifeTime);
465
467 void OnTreeCutDown(EntityAI cutting_entity);
468
470 string GetType()
471 {
472 string ret;
473 GetGame().ObjectGetType(this, ret);
474
475 return ret;
476 }
477
480 {
481 string tmp;
482 if (NameOverride(tmp))
483 {
484 tmp = Widget.TranslateString(tmp);
485 }
486 else
487 {
488 GetGame().ObjectGetDisplayName(this, tmp);
489 }
490 return tmp;
491 }
492
493 //Used to specify this object will always display it's own name when attached to another object
495 {
496 return false;
497 }
498
501 {
502 return GetGame().GetModelName(GetType());
503 }
504
506 proto native owned string GetShapeName();
507
509 {
510 return GetGame().ObjectRelease(this);
511 }
512
514 bool IsKindOf(string type)
515 {
516 return GetGame().ObjectIsKindOf(this, type);
517 }
518
519 // Check alive state
520 bool IsAlive()
521 {
522 return !IsDamageDestroyed();
523 }
524
526 bool IsMan()
527 {
528 return false;
529 }
530
533 {
534 return false;
535 }
536
539 {
540 return false;
541 }
542
545 {
546 return false;
547 }
548
551 {
552 return false;
553 }
554
557 {
558 return false;
559 }
560
561 //Returns true for protector cases and similar items. Usually can be nested in other cargo while full, unlike clothing..
563 {
564 return false;
565 }
566
569 {
570 return false;
571 }
572
575 {
576 return false;
577 }
578
581 {
582 return false;
583 }
584
587 {
588 return false;
589 }
590
593 {
594 return false;
595 }
596
598 bool IsTree()
599 {
600 return false;
601 }
602
604 bool IsRock()
605 {
606 return false;
607 }
608
611 {
612 return false;
613 }
614
616 bool IsBush()
617 {
618 return false;
619 }
620
622 {
623 return false;
624 }
625
628 {
629 return false;
630 }
631
633 bool IsWeapon()
634 {
635 return false;
636 }
637
640 {
641 return false;
642 }
643
646 {
647 return false;
648 }
649
654
656 {
657 return LIQUID_NONE;
658 }
659
662 bool IsWell()
663 {
664 return false;
665 }
666
667 bool ShootsExplosiveAmmo()//placed on Object so that we can optimize early checks in DayZGame without casting
668 {
669 return false;
670 }
671
674 {
675 return false;
676 }
677
680 {
681 return false;
682 }
683
686 {
687 return false;
688 }
689
692 {
693 return false;
694 }
695
698 {
699 return false;
700 }
701
704 {
705 return false;
706 }
707
709 {
710 return false;
711 }
712
713 void SetBeingBackstabbed(int backstabType){}
714
716 bool IsFood()
717 {
718 return ( IsFruit() || IsMeat() || IsCorpse() || IsMushroom() );
719 }
720
721 bool IsFruit()
722 {
723 return false;
724 }
725
726 bool IsMeat()
727 {
728 return false;
729 }
730
731 bool IsCorpse()
732 {
733 return false;
734 }
735
737 {
738 return false;
739 }
740
743 {
744 return true;
745 }
746
749 {
750 return false;
751 }
752
754 {
755 return false;
756 }
757
759 {
760 return false;
761 }
762
764 {
765 return false;
766 }
767
769 {
770 return false;
771 }
772
774 {
775 return false;
776 }
777
779 {
780 return IsPlainObject() && !IsScenery();
781 }
782
784 {
785 return HasProxyParts() || CanUseConstruction();
786 }
787
790 {
791 return false;
792 }
793
795 {
796 return IsBush() || IsTree() || IsMan() || IsDayZCreature() || IsItemBase();
797 }
798
800 {
801 return true;
802 }
803
806 {
807 return false;
808 }
809
812 proto void GetNetworkID( out int lowBits, out int highBits );
813
815 {
816 int low, high;
817 GetNetworkID( low, high );
818 return high.ToString() + low.ToString();
819 }
820
821 override string GetDebugName()
822 {
823 return GetDebugNameNative();
824 }
825
826 static string GetDebugName(Object o)
827 {
828 if (o)
829 return o.GetDebugName();
830 return "null";
831 }
832
834 proto string GetDebugNameNative();
835
837 void RPC(int rpc_type, array<ref Param> params, bool guaranteed, PlayerIdentity recipient = NULL)
838 {
839 GetGame().RPC(this, rpc_type, params, guaranteed, recipient);
840 }
841
843 void RPCSingleParam(int rpc_type, Param param, bool guaranteed, PlayerIdentity recipient = NULL)
844 {
845 GetGame().RPCSingleParam(this, rpc_type, param, guaranteed, recipient);
846 }
847
853 void OnRPC(PlayerIdentity sender, int rpc_type, ParamsReadContext ctx);
854
859
864
869
874
875
877 {
878 return GetGame().ObjectModelToWorld(this, modelPos);
879 }
880
882 {
883 return GetGame().ObjectWorldToModel(this, worldPos);
884 }
885
886 // config class API
887
888 proto string ConfigGetString(string entryName);
895 proto string ConfigGetStringRaw(string entryName);
896 proto int ConfigGetInt(string entryName);
897 bool ConfigGetBool(string entryName)
898 {
899 return (ConfigGetInt(entryName) == 1);
900 }
901
902 proto float ConfigGetFloat(string entryName);
903 proto vector ConfigGetVector(string entryName);
904 //proto ParamEntry ConfigGetEntry(string entryName);
905
911 proto native void ConfigGetTextArray(string entryName, out TStringArray values);
912
919 proto native void ConfigGetTextArrayRaw(string entryName, out TStringArray values);
920
926 proto native void ConfigGetFloatArray(string entryName, out TFloatArray values);
927
933 proto native void ConfigGetIntArray(string entryName, out TIntArray values);
934
939 proto native bool ConfigIsExisting(string entryName);
940
942 bool KindOf( string tag )
943 {
944 bool found = false;
945 string item_name = this.GetType();
946 TStringArray item_tag_array = new TStringArray;
947 ConfigGetTextArray("cfgVehicles " + item_name + " itemInfo", item_tag_array);
948
949 int array_size = item_tag_array.Count();
950 for (int i = 0; i < array_size; i++)
951 {
952 if ( item_tag_array.Get(i) == tag )
953 {
954 found = true;
955 break;
956 }
957 }
958 return found;
959 }
960
962 {
963 bool ret;
964 for( int i = 0; i < typenames.Count(); i++ )
965 {
966 ret = ret || this.IsInherited( typenames.Get(i) );
967 }
968 return ret;
969 }
970
974 proto native bool IsPlainObject();
975
979 proto native bool IsScenery();
980
981 // Damage system
985 proto native bool HasDamageSystem();
986
990 proto native bool IsDamageDestroyed();
991
996 proto native void SetDestructTime(float time);
997
1003 proto native float GetHealth(string zoneName, string healthType);
1004
1010 proto native float GetHealth01(string zoneName, string healthType);
1011
1017 proto native float GetMaxHealth(string zoneName, string healthType);
1018
1024 proto native void SetHealth(string zoneName, string healthType, float value);
1025
1029 proto native void SetFullHealth();
1030
1036 proto native void AddHealth(string zoneName, string healthType, float value);
1037
1043 proto native void DecreaseHealth(string zoneName, string healthType, float value);
1044
1051 proto native bool GetAdditionalHealthTypes(string zoneName, TStringArray outHealthTypes);
1052
1058 void DecreaseHealth(string zoneName, string healthType, float value, bool auto_delete)
1059 {
1060 DecreaseHealth(zoneName, healthType, value);
1061
1062 if (auto_delete)
1063 {
1064 float result_health = GetHealth(zoneName, healthType);
1065 if (result_health <= 0)
1066 GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).Call(GetGame().ObjectDelete, this);
1067 }
1068 }
1069
1072 {
1073 return GetHealth("", "");
1074 }
1075
1077 {
1078 return GetHealth01("", "");
1079 }
1080
1082 {
1083 return GetMaxHealth("", "");
1084 }
1085
1086 void SetHealth(float health)
1087 {
1088 SetHealth("", "", health);
1089 }
1090
1091 void SetGlobalHealth(float health)
1092 {
1093 SetHealth("", "", health);
1094 }
1095
1096 void SetHealthLevel(int healthLevel, string zone = "")
1097 {
1098 SetHealth01(zone,"", GetHealthLevelValue(healthLevel, zone));
1099 }
1100
1101 void AddHealthLevel(int healthLevelDelta, string zone = "")
1102 {
1103 int maxHealthLevel = GetNumberOfHealthLevels(zone) - 1;
1104 int newHealthLevel = Math.Clamp(GetHealthLevel(zone) + healthLevelDelta,0,maxHealthLevel);
1105 SetHealthLevel(newHealthLevel,zone);
1106 }
1107
1109 void SetHealth01(string zoneName, string healthType, float coef)
1110 {
1111 SetHealth(zoneName,healthType,(GetMaxHealth(zoneName,healthType)*coef));
1112 }
1113
1114 void SetHealthMax(string zoneName = "", string healthType = "")
1115 {
1116 SetHealth(zoneName,healthType,GetMaxHealth(zoneName,healthType));
1117 }
1118
1119 void AddHealth( float add_health)
1120 {
1121 AddHealth("", "", add_health);
1122 }
1123
1124 void DecreaseHealth(float dec_health, bool auto_delete = true)
1125 {
1126 DecreaseHealth("", "", dec_health, auto_delete);
1127 }
1128
1129 void DecreaseHealthCoef(float dec_health_coef, bool auto_delete = true)
1130 {
1131 float current_health = GetHealth();
1132 float final_health_coef = GetHealth01() - dec_health_coef;
1133 float final_health = GetMaxHealth() * final_health_coef;
1134 DecreaseHealth("", "", current_health - final_health);
1135 }
1136
1147 proto native void ProcessDirectDamage(int damageType, EntityAI source, string componentName, string ammoName, vector modelPos, float damageCoef = 1.0, int flags = 0);
1148
1153 bool EEOnDamageCalculated(TotalDamageResult damageResult, int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos, float speedCoef)
1154 {
1155 return true;
1156 }
1157
1162 proto native void GetDamageZones(out TStringArray dmgZones);
1163
1168 proto native vector GetDamageZonePos(string zoneName);
1173 proto native owned string GetDamageZoneNameByComponentIndex(int componentIndex);
1174
1180 proto native int GetHealthLevel(string zone = "");
1181
1187 proto native int GetNumberOfHealthLevels(string zone = "");
1188
1194 proto native float GetHealthLevelValue(int healthLevel, string zone = "");
1195
1196
1200 proto native bool GetAllowDamage();
1205 proto native void SetAllowDamage(bool val);
1206
1210 proto native bool GetCanBeDestroyed();
1211
1216 proto native void SetCanBeDestroyed(bool val);
1217
1229 {
1230 return IsDamageDestroyed();
1231 }
1232
1235
1238
1239 void GetActions(typename action_input_type, out array<ActionBase_Basic> actions)
1240 {
1241 }
1242
1244 SoundOnVehicle PlaySound(string sound_name, float range, bool create_local = true)
1245 {
1246 return GetGame().CreateSoundOnObject(this, sound_name, range, false, create_local);
1247 }
1248
1250 SoundOnVehicle PlaySoundLoop(string sound_name, float range, bool create_local = true)
1251 {
1252 return GetGame().CreateSoundOnObject(this, sound_name, range, true, create_local);
1253 }
1254
1256 bool PlaySoundSet( out EffectSound sound, string sound_set, float fade_in, float fade_out, bool loop = false )
1257 {
1258 if ( GetGame() && !GetGame().IsDedicatedServer() )
1259 {
1260 if ( sound )
1261 {
1262 if ( loop )
1263 {
1264 return true;
1265 }
1266 else
1267 {
1268 StopSoundSet( sound ); //auto stop for non-looped sounds
1269 }
1270 }
1271
1272 sound = SEffectManager.PlaySoundOnObject( sound_set, this, fade_in, fade_out, loop );
1273 sound.SetAutodestroy( true );
1274
1275 return true;
1276 }
1277
1278 return false;
1279 }
1280
1282 bool PlaySoundSetLoop( out EffectSound sound, string sound_set, float fade_in, float fade_out )
1283 {
1284 return PlaySoundSet( sound, sound_set, fade_in, fade_out, true );
1285 }
1286
1288 bool PlaySoundSetAtMemoryPointLoopedSafe(out EffectSound sound, string soundSet, string memoryPoint,float play_fade_in = 0, float stop_fade_out = 0)
1289 {
1290 if (sound && sound.IsPlaying())
1291 {
1292 sound.SoundStop();
1293 }
1294 return PlaySoundSetAtMemoryPointLooped(sound, soundSet, memoryPoint, play_fade_in, stop_fade_out);
1295 }
1296
1297 bool PlaySoundSetAtMemoryPointLooped(out EffectSound sound, string soundSet, string memoryPoint, float play_fade_in = 0, float stop_fade_out = 0)
1298 {
1299 return PlaySoundSetAtMemoryPoint(sound, soundSet, memoryPoint, true, play_fade_in, stop_fade_out);
1300 }
1301
1302
1303 bool PlaySoundSetAtMemoryPoint(out EffectSound sound, string soundSet, string memoryPoint, bool looped = false, float play_fade_in = 0, float stop_fade_out = 0)
1304 {
1305 vector pos;
1306
1307 if (MemoryPointExists(memoryPoint))
1308 {
1309 pos = GetMemoryPointPos(memoryPoint);
1310 pos = ModelToWorld(pos);
1311 }
1312 else
1313 {
1314 ErrorEx(string.Format("Memory point %1 not found when playing soundset %2 at memory point location", memoryPoint, soundSet));
1315 return false;
1316 }
1317
1318 sound = SEffectManager.PlaySoundEnviroment(soundSet, pos, play_fade_in, stop_fade_out, looped);
1319 return true;
1320 }
1321
1323 bool StopSoundSet( out EffectSound sound )
1324 {
1325 if ( sound && GetGame() && ( !GetGame().IsDedicatedServer() ) )
1326 {
1327 sound.SoundStop();
1328 sound = null;
1329
1330 return true;
1331 }
1332
1333 return false;
1334 }
1335
1338
1340 void OnReceivedHit(ImpactEffectsData hitData);
1341
1344
1346 {
1347 int lo = 0;
1348 int hi = 0;
1349 GetNetworkID(lo, hi);
1350 return lo | hi;
1351 }
1352
1353 bool NameOverride(out string output)
1354 {
1355 return false;
1356 }
1357
1358 bool DescriptionOverride(out string output)
1359 {
1360 return false;
1361 }
1362
1364
1366 {
1367 return false;
1368 }
1369
1371 {
1372 if ( MemoryPointExists("ce_center") )
1373 {
1374 //Print("CE_CENTER found");
1375 return ModelToWorld( GetMemoryPointPos("ce_center") );
1376 }
1377 else
1378 {
1379 //Print("CE_CENTER DOING A BAMBOOZLE => not found");
1380 return GetPosition() + Vector(0, 0.2, 0);
1381 }
1382 }
1383
1384 #ifdef DEVELOPER
1385 void SetDebugItem();
1386 #endif
1387
1388 void AddArrow(Object arrow, int componentIndex, vector closeBonePosWS, vector closeBoneRotWS)
1389 {
1390 int pivot = GetBonePivot(GetFireGeometryLevel(), componentIndex);
1391 vector parentTransMat[4];
1392 vector arrowTransMat[4];
1393
1394 if (pivot == -1)
1395 {
1396 GetTransform(parentTransMat);
1397 }
1398 else
1399 {
1400 GetBoneTransformWS(pivot, parentTransMat);
1401 }
1402
1403 float scale = GetScale();
1404 scale = 1 / (scale * scale);
1405
1406 arrow.GetTransform(arrowTransMat);
1407 Math3D.MatrixInvMultiply4(parentTransMat, arrowTransMat, arrowTransMat);
1408
1409 // orthogonalize matrix - parent might be skewed
1410 Math3D.MatrixOrthogonalize4(arrowTransMat);
1411
1412 arrowTransMat[3] = arrowTransMat[3] * scale;
1413
1414 arrow.SetTransform(arrowTransMat);
1415
1416 AddChild(arrow, pivot);
1417 }
1418
1420 {
1421 return !IsHologram();
1422 }
1423
1425 {
1426 return false;
1427 }
1428
1431
1432 //Debug
1433 //----------------------------------------------
1434 /*void DbgAddPxyPhy(string slot)
1435 {
1436 Print("AddProxyPhysics slot: " + slot);
1437 AddProxyPhysics(slot);
1438 }*/
1439};
eBleedingSourceType GetType()
Определения BleedingSource.c:63
override bool CanUseConstruction()
Определения BaseBuildingBase.c:2180
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
override bool IsDayZCreature()
Определения DayZAnimal.c:55
ERPCs
Определения ERPCs.c:2
ETransformationAxis
Определения ETransformationAxis.c:2
EWaterSourceObjectType
Определения EWaterSourceObjectType.c:2
override bool IsCorpse()
Определения Edible_Base.c:1479
override bool IsMeat()
Определения Edible_Base.c:1474
override bool IsFruit()
Определения Edible_Base.c:1484
override bool IsMushroom()
Определения Edible_Base.c:1489
class BoxCollidingParams component
ComponentInfo for BoxCollidingResult.
override bool IsHologram()
Определения ItemBase.c:5753
override bool IsItemBase()
Определения ItemBase.c:7464
void OnDebug(vector p0, vector p1, bool hasHit, bool found)
Debug callback for rendering on the screen.
Определения Object.c:32
bool OnCollide(Object other)
Ray cast line test from owner to a tested position.
Определения Object.c:58
vector m_DirectionFunc
The size of the boundig box, centered.
Определения Object.c:18
enum ProcessDirectDamageFlags m_Owner
bool OnFirstContact(Object other)
Called for first layer contacts to determine if this object should be snapped around or default rv ra...
Определения Object.c:40
bool OnQuery(Object other)
Initial query around the owner position to see if an object should be processed in contact testing.
Определения Object.c:49
vector m_Offset
The direction of the owner in world space.
Определения Object.c:15
ProcessDirectDamageFlags
Определения Object.c:2
@ NO_ATTACHMENT_TRANSFER
Do not transfer damage to attachments.
Определения Object.c:4
@ ALL_TRANSFER
Определения Object.c:3
@ NO_GLOBAL_TRANSFER
Do not transfer damage to global.
Определения Object.c:5
@ NO_TRANSFER
NO_ATTACHMENT_TRANSFER | NO_GLOBAL_TRANSFER.
Определения Object.c:6
vector m_OwnerDirection
The position of the owner in world space.
Определения Object.c:13
vector m_Transform[4]
If 'OnDebug' is to be called.
Определения Object.c:21
bool m_DebugEnabled
How much should the direction be favoured.
Определения Object.c:20
vector m_OwnerPosition
The owner performing the snap callback.
Определения Object.c:12
vector m_Extents
The true center of the bounding box of the object to be dropped in model space.
Определения Object.c:16
void OnSetup()
The transformation currently being debugged.
Определения Object.c:26
proto string GetDebugNameNative()
Gets the debug name for the ParticleManager.
static bool PlayAmmoEffect(string ammoType, vector pos)
Attempt to play the ammo effect at pos if found, returns true on success.
Определения AmmoEffects.c:93
static bool PlayAmmoParticle(string ammoType, vector pos)
Attempt to play the ammo particle at pos if found, returns true on success.
Определения AmmoEffects.c:46
Static data holder for certain ammo config values.
Определения AmmoEffects.c:6
proto void ObjectGetDisplayName(Object obj, out string name)
proto native void RPCSingleParam(Object target, int rpc_type, Param param, bool guaranteed, PlayerIdentity recipient=null)
see CGame.RPC
override ScriptCallQueue GetCallQueue(int call_category)
Определения DayZGame.c:1187
proto native vector ObjectGetSelectionPositionMS(Object obj, string name)
string GetModelName(string class_name)
Get name of the p3d file of the given class name.
Определения Game.c:487
proto native vector ObjectGetSelectionPositionWS(Object obj, string name)
bool ObjectIsKindOf(Object object, string cfg_parent_name)
Returns is object inherited from parent class name.
Определения Game.c:1391
proto native vector ObjectGetSelectionPositionLS(Object obj, string name)
proto native void RPC(Object target, int rpcType, notnull array< ref Param > params, bool guaranteed, PlayerIdentity recipient=null)
Initiate remote procedure call. When called on client, RPC is evaluated on server; When called on ser...
proto native int ObjectRelease(Object obj)
RemoteObjectTreeCreate - postponed registration of network object tree (and creation of remote object...
proto native vector ObjectWorldToModel(Object obj, vector worldPos)
proto void SurfaceUnderObject(notnull Object object, out string type, out int liquidType)
proto native float SurfaceGetNoiseMultiplier(Object directHit, vector pos, int componentIndex)
proto native SoundOnVehicle CreateSoundOnObject(Object source, string sound_name, float distance, bool looped, bool create_local=false)
proto native vector ObjectGetSelectionPosition(Object obj, string name)
proto void ObjectGetType(Object obj, out string type)
proto native vector ObjectModelToWorld(Object obj, vector modelPos)
override void SetAutodestroy(bool auto_destroy)
Sets whether Effect automatically cleans up when it stops.
Определения EffectSound.c:603
Wrapper class for managing sound through SEffectManager.
Определения EffectSound.c:5
Определения Building.c:6
static array< string > GetHiddenSelectionsTexturesConfig(string type)
Определения HiddenSelectionsData.c:45
static array< string > GetHiddenSelectionsMaterialsConfig(string type)
Определения HiddenSelectionsData.c:52
static array< string > GetHiddenSelectionsConfig(string type)
Определения HiddenSelectionsData.c:38
proto native bool IsActionComponentPartOfSelection(int componentIndex, string selectionName, string geometry="")
return true if selection containts action component, 'geometry' can be "fire" or "view" (default "" f...
proto native void GetBoneRotationWS(int pivot, out float quaternion[4])
proto native bool GetCollisionBox(out vector minMax[2])
Gets collision bounding box.
bool IsBeingBackstabbed()
Определения Object.c:708
bool IsFireplace()
Returns if this entity is fireplacebase.
Определения Object.c:592
bool DisplayNameRuinAttach()
Определения Object.c:494
void OnSimulationDisabled()
Event called from C++ when simulation is disabled.
Определения Object.c:1237
proto native void GetBoneRotationMS(int pivot, out float quaternion[4])
proto native void SetDestructTime(float time)
Sets the time over which to perform DestructTent/DestructTree.
proto native bool IsDamageDestroyed()
Checks if object is destroyed.
EWaterSourceObjectType GetWaterSourceObjectType()
Определения Object.c:650
proto native owned string GetShapeName()
Return path and name of the model.
proto native bool GetAdditionalHealthTypes(string zoneName, TStringArray outHealthTypes)
List of additional health types in given zone.
bool ShootsExplosiveAmmo()
Returns if this entity is a weapon which can shoot explosive ammo.
Определения Object.c:667
void OnTreeCutDown(EntityAI cutting_entity)
Called when tree is chopped down. 'cutting_entity' can be tool, or player, if cutting bush with bare ...
proto native float GetHealth(string zoneName, string healthType)
Returns current state of health.
proto native float GetHealth01(string zoneName, string healthType)
Returns current state of health in range <0, 1>.
bool StopSoundSet(out EffectSound sound)
EffectSound - stops soundset and returns state of the sound (true - stopped, false - not playing)
Определения Object.c:1323
bool IsWell()
Определения Object.c:662
proto float ConfigGetFloat(string entryName)
bool IsEntityAI()
Returns if this entity is EntityAI.
Определения Object.c:538
proto native int GetMemoryLevel()
bool PlaySoundSetAtMemoryPointLoopedSafe(out EffectSound sound, string soundSet, string memoryPoint, float play_fade_in=0, float stop_fade_out=0)
Same as PlaySoundSetAtMemoryPointLooped, only requests stoppage of the currently playing EffectSound ...
Определения Object.c:1288
float GetHealth01()
Equivalent of GetHealth01("", "");.
Определения Object.c:1076
bool IsTransport()
Returns if this entity is transport.
Определения Object.c:679
bool IsMagazine()
Returns if this entity is Magazine.
Определения Object.c:568
LOD GetLODByName(string name)
Retrieve LOD by given name.
Определения Object.c:106
proto native void EnableDynamicCCD(bool state)
void RPCSingleParam(int rpc_type, Param param, bool guaranteed, PlayerIdentity recipient=NULL)
Remote procedure call shortcut, see CGame.RPCSingleParam / CGame.RPC.
Определения Object.c:843
proto native vector GetWorldPosition()
proto string ConfigGetStringRaw(string entryName)
Get a raw strings from config entry.
proto native void SetAffectPathgraph(bool fromConfig, bool affect)
Sets if object's geometry affects pathgraph generation. If first parameter is true,...
proto native bool IsPlainObject()
Is this just static object without config? So we can avoid calling unnecessary methods.
proto float ClippingInfo(out vector minMax[2])
Get Clipping info.
proto native owned vector GetActionComponentPosition(int componentIndex, string geometry="")
returns action component position by given component index, 'geometry' can be "fire" or "view" (defau...
proto native void RemoveProxyPhysics(string proxySelectionName)
proto native void ConfigGetTextArrayRaw(string entryName, out TStringArray values)
Get array of raw strings from config entry.
bool IsAmmoPile()
Returns if this entity is Ammo Pile.
Определения Object.c:574
void PreAreaDamageActions()
void OnExplosionEffects(Object source, Object directHit, int componentIndex, string surface, vector pos, vector surfNormal, float energyFactor, float explosionFactor, bool isWater, string ammoType)
Определения Object.c:189
bool IsInventoryItem()
Returns if this entity is InventoryItem.
Определения Object.c:580
proto native void SetFullHealth()
Sets full health to all zones and removes fatal damage when applicable.
proto native void PlaceOnSurface()
Place object on surface.
bool IsContainer()
Определения Object.c:562
proto native void GetBonePivotsForAnimationSource(int level, string animationSource, out TIntArray pivots)
Get the pivots assigned to the animation source at the specified LOD.
proto native bool ConfigIsExisting(string entryName)
Checks if given entry exists.
bool IsFruit()
Определения Object.c:721
proto native void SetDirection(vector vPos)
Set direction of object.
vector GetCenter()
Определения Object.c:1370
bool IsCorpse()
Определения Object.c:731
bool HasNetworkID()
Определения Object.c:1345
void OnReceivedHit(ImpactEffectsData hitData)
vector ModelToWorld(vector modelPos)
Определения Object.c:876
proto int GetBonePivot(int level, int component)
Get the pivot point of the bone from the component index in the LOD, level can be geometry,...
proto native int GetFireGeometryLevel()
proto native float GetHealthLevelValue(int healthLevel, string zone="")
Returns cutoff value for health level specified in object's config class parameter healthLevels.
int Release()
Определения Object.c:508
proto native float GetDamage()
Get total damage (clipped to range 0..1)
proto native vector GetSpeed()
Retrieve object's speed in global space.
bool CanUseConstructionBuild()
Returns if this entity can be built, specifically.
Определения Object.c:697
proto native vector GetDamageZonePos(string zoneName)
Obtains middle position of damage zone based on it's name.
proto vector ConfigGetVector(string entryName)
void OnSpawnByObjectSpawner(ITEM_SpawnerObject item)
Определения Object.c:1429
void SetHealth(float health)
Equivalent of SetHealth("", "", float value);.
Определения Object.c:1086
proto native float GetMaxHealth(string zoneName, string healthType)
Returns maximum value of health.
void SpawnDamageDealtEffect()
void Object()
void GetActions(typename action_input_type, out array< ActionBase_Basic > actions)
Определения Object.c:1239
string GetModelName()
Returns name of the model of this object without the '.p3d' suffix.
Определения Object.c:500
proto native bool ToDelete()
Flag to determine this object is marked to be deleted soon.
proto native void ProcessDirectDamage(int damageType, EntityAI source, string componentName, string ammoName, vector modelPos, float damageCoef=1.0, int flags=0)
Applies damage on object.
string GetDisplayName()
Get display name of entity.
Определения Object.c:479
void SynchExplosion()
Определения Object.c:159
string GetNetworkIDString()
Определения Object.c:814
bool IsWoodBase()
Returns whether object is PlanBase.
Определения Object.c:610
proto native void SetPosition(vector vPos)
Set position.
bool DisableVicinityIcon()
Disables icon in the vicinity, useful for large, immovable items, that are not buildings.
Определения Object.c:805
bool IsKindOf(string type)
Check config class name of the object.
Определения Object.c:514
proto native void GetBoneRotationLS(int pivot, out float quaternion[4])
returns local space, model space, world space orientation (quaternion) of a bone
proto native void ConfigGetTextArray(string entryName, out TStringArray values)
Get array of strings from config entry.
TStringArray GetHiddenSelections()
Returns the hiddenSelections array from the object's config.
Определения Object.c:126
override string GetDebugName()
Определения Object.c:821
void DecreaseHealth(float dec_health, bool auto_delete=true)
Equivalent of DecreaseHealth("", "", float value, bool auto_delete);.
Определения Object.c:1124
bool PlaySoundSetLoop(out EffectSound sound, string sound_set, float fade_in, float fade_out)
EffectSound - plays soundset on this object in loop and returns state of the sound (true - played,...
Определения Object.c:1282
proto native void AddProxyPhysics(string proxySelectionName)
proto native vector GetPosition()
Retrieve position.
proto native bool GetCanBeDestroyed()
Returns if object is destroyable.
void SetGlobalHealth(float health)
Equivalent of SetHealth("", "", float value);.
Определения Object.c:1091
proto native int GetHealthLevel(string zone="")
Returns global health level specified in object's config class parameter healthLevels (range is usual...
proto native void GetBoneTransformWS(int pivot, out vector transform[4])
bool IsCuttable()
Определения Object.c:621
bool CanUseConstruction()
Returns if this entity can be constucted,deconstructed (e.g. fence,watchtower)
Определения Object.c:691
bool KindOf(string tag)
Compares config class name to given string.
Определения Object.c:942
bool IsMan()
Returns if this entity is Man.
Определения Object.c:526
bool IsTree()
Returns if this entity is tree.
Определения Object.c:598
proto native void SetAllowDamage(bool val)
Enable or disable object to receive damage.
void AddHealth(float add_health)
Equivalent of AddHealth("", "", float value);.
Определения Object.c:1119
proto vector GetActionComponentCenterOOB(int level, int componentIndex)
The center of the component, in model space.
proto native void GetSelectionList(out TStringArray selectionList)
bool PlaySoundSet(out EffectSound sound, string sound_set, float fade_in, float fade_out, bool loop=false)
EffectSound - plays soundset on this object and returns state of the sound (true - played,...
Определения Object.c:1256
bool IsFuelStation()
Returns if this entity is Fuel Station (extends Building)
Определения Object.c:673
proto native void SetCanBeDestroyed(bool val)
Enable or disable destruction of object (after health is depleated)
proto native bool IsPendingDeletion()
proto string ConfigGetString(string entryName)
bool HasProxyParts()
Определения Object.c:773
bool IsItemBase()
Returns if this entity is ItemBase.
Определения Object.c:556
proto native vector GetOrientation()
Retrieve orientation (yaw, pitch, roll) in degrees
vector GetSelectionPositionLS(string name)
Определения Object.c:860
bool NameOverride(out string output)
Определения Object.c:1353
string GetSurfaceType()
Returns type of surface under object.
Определения Object.c:398
TStringArray GetHiddenSelectionsTextures()
Returns the hiddenSelectionsTextures array from the object's config.
Определения Object.c:132
vector GetSelectionPositionWS(string name)
Определения Object.c:870
bool CanBeIgnoredByDroppedItem()
Определения Object.c:794
bool ConfigGetBool(string entryName)
Определения Object.c:897
void OnEnterTrigger(ScriptedEntity trigger)
Object entered trigger.
Определения Object.c:92
bool IsFood()
Returns if this entity if a food item.
Определения Object.c:716
bool IsAnyInherited(array< typename > typenames)
Определения Object.c:961
float GetHealth()
Equivalent of GetHealth("", "");.
Определения Object.c:1071
proto native void GetDamageZones(out TStringArray dmgZones)
Obtains a list of nammes of all object's damage zones.
proto native vector GetMemoryPointPosByIndex(int pointIndex)
bool EEOnDamageCalculated(TotalDamageResult damageResult, int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos, float speedCoef)
Event called from C++ right before damage is applied.
Определения Object.c:1153
bool PlaySoundSetAtMemoryPoint(out EffectSound sound, string soundSet, string memoryPoint, bool looped=false, float play_fade_in=0, float stop_fade_out=0)
Определения Object.c:1303
bool ShowZonesHealth()
Returns true if the health of damage zones should be displayed (instead of global HP of the entity) (...
Определения Object.c:748
bool HasAnimation(string anim_name)
Searches object's config for the given animation name. Returns true if it was found,...
Определения Object.c:428
SoundOnVehicle PlaySound(string sound_name, float range, bool create_local=true)
Plays the given sound once on this object's instance. Range is in meters. Created sound is only local...
Определения Object.c:1244
proto native bool GetAllowDamage()
Returns if object can receive damage.
bool IsScriptedLight()
Определения Object.c:763
void PostAreaDamageActions()
void Delete()
Delete this object in next frame.
Определения Object.c:82
vector WorldToModel(vector worldPos)
Определения Object.c:881
bool HasFixedActionTargetCursorPosition()
Определения Object.c:1424
bool CanObstruct()
Определения Object.c:778
proto native vector GetLocalPos(vector vPos)
Calculate local position of other entity to this entity.
bool IsBush()
Returns if this entity is bush.
Определения Object.c:616
bool IsWeapon()
Returns if this entity is Weapon.
Определения Object.c:633
bool CanProxyObstructSelf()
can the object's own proxy geometry obstruct it? Currently checking 'ObjIntersectView'
Определения Object.c:789
float GetMaxHealth()
Equivalent of GetMaxHealth("", "");.
Определения Object.c:1081
proto native void AddHealth(string zoneName, string healthType, float value)
Adds health.
void AddHealthLevel(int healthLevelDelta, string zone="")
Similar to 'SetHealthLevel', but allows to jump up/down 'healthLevelDelta' amount of health levels fr...
Определения Object.c:1101
bool IsItemTent()
Определения Object.c:758
static string GetDebugName(Object o)
Определения Object.c:826
proto native vector GetDirectionAside()
Retrieve direction aside vector.
proto native bool GetLODS(notnull out array< LOD > lods)
Retrieve all LODS.
proto native int GetGeometryLevel()
Native functions for getting the level used for calculating the pivot.
bool IsPeltBase()
Returns if this entity is Pelt_Base.
Определения Object.c:627
proto native void GetTightlyPackedCorners(ETransformationAxis axis, out vector corners[4])
Get corner positions in worldspace aligned to the orientation of the object (currently only TOP/BOTTO...
proto native void SetOrientation(vector vOrientation)
Set orientation (yaw, pitch, roll) in degrees
void DecreaseHealthCoef(float dec_health_coef, bool auto_delete=true)
Decreases health by the given coeficient.
Определения Object.c:1129
proto native void GetBoneTransformMS(int pivot, out vector transform[4])
float GetSurfaceNoise()
Returns noise multiplier of surface under object.
Определения Object.c:391
bool IsRuined()
Returns whether the object is ruined (0 Health).
Определения Object.c:1228
proto native bool CanAffectPathgraph()
Returns true if object's geometry can affect pathgraph generation.
proto int ConfigGetInt(string entryName)
proto vector GetActionComponentCenter(int level, int componentIndex)
The center of the component, in model space.
proto void GetActionComponentsForSelectionName(int level, string selectionName, TIntArray componentIndices)
outputs action component index list by given selection, 'geometry' can be "fire" or "view" (default "...
vector GetSelectionPositionOld(string name)
Определения Object.c:855
proto native vector GetBonePositionWS(int pivot)
TStringArray GetHiddenSelectionsMaterials()
Returns the hiddenSelectionsMaterials array from the object's config.
Определения Object.c:138
bool IsClothing()
Returns if this entity is Clothing.
Определения Object.c:586
proto native bool MemoryPointExists(string memoryPoint)
proto void GetActionComponentMinMax(int level, int componentIndex, out vector min, out vector max)
The AABB of the component.
proto native owned string GetActionComponentName(int componentIndex, string geometry="")
returns action component name by given component index, 'geometry' can be "fire" or "view" (default "...
void SetHealthMax(string zoneName="", string healthType="")
Sets health to its maximum (zone or global)
Определения Object.c:1114
bool IsBuilding()
Returns if this entity is Building.
Определения Object.c:645
void AddArrow(Object arrow, int componentIndex, vector closeBonePosWS, vector closeBoneRotWS)
Определения Object.c:1388
void OnSimulationEnabled()
Event called from C++ when simulation is enabled.
Определения Object.c:1234
proto native void ConfigGetIntArray(string entryName, out TIntArray values)
Get array of integers from config entry.
void DecreaseHealth(string zoneName, string healthType, float value, bool auto_delete)
Decreases health with the option of auto-deleting the object if its ruined.
Определения Object.c:1058
bool IsHealthVisible()
Returns if the health of this entity should be displayed (widgets, inventory)
Определения Object.c:742
bool IsRock()
Returns if this entity is rock.
Определения Object.c:604
proto native vector GetDirection()
Retrieve direction vector.
bool IsDayZCreature()
Checks if this instance is of type DayZCreature.
Определения Object.c:532
proto native int GetMemoryPointIndex(string memoryPointName)
If Returns true if this item has EnergyManager in its config. Otherwise returns false.
void OnPlayerRecievedHit()
DEPRECATED.
string GetType()
Get config class of object.
Определения Object.c:470
SoundOnVehicle PlaySoundLoop(string sound_name, float range, bool create_local=true)
Plays the given sound in loop on this object's instance. Range is in meters. Created sound is only lo...
Определения Object.c:1250
bool HasSelection(string selection)
Returns true if the given selection was found in the p3d file. False if otherwise.
Определения Object.c:411
bool IsTransmitter()
Returns if this entity is a non-static Transmitter.
Определения Object.c:550
void Explode(int damageType, string ammoType="")
Creates an explosion on this object by its ammoType in config.
Определения Object.c:144
proto native void SetDynamicPhysicsLifeTime(float lifeTime)
void SetHealthLevel(int healthLevel, string zone="")
Sets specific health level. It will use the cutoff value as returned by 'GetHealthLevelValue' as the ...
Определения Object.c:1096
bool IsMeat()
Определения Object.c:726
proto native bool HasDamageSystem()
Checks if object's DamageSystem has been initialized(despite the name, does not really reliably answe...
bool CanProxyObstruct()
Определения Object.c:783
void SetHealth01(string zoneName, string healthType, float coef)
Sets health relative to its maximum.
Определения Object.c:1109
proto native void ConfigGetFloatArray(string entryName, out TFloatArray values)
Get array of floats from config entry.
void OnRPC(PlayerIdentity sender, int rpc_type, ParamsReadContext ctx)
Called after remote procedure call is recieved for this object.
bool CanUseHandConstruction()
Returns if this entity can be constructed without tools.
Определения Object.c:703
proto native owned string GetLODName(LOD lod)
Retrieve LOD name.
void OnExplodeClient()
Called on clients when this object explodes.
Определения Object.c:173
void ~Object()
bool IsMushroom()
Определения Object.c:736
bool DescriptionOverride(out string output)
Определения Object.c:1358
proto native void SetHealth(string zoneName, string healthType, float value)
Sets current state of health.
bool CanBeAutoDeleted()
Определения Object.c:799
proto native bool IsScenery()
Is this Scenery? (handy for excluding terain when it is not needed)
void OnLeaveTrigger(ScriptedEntity trigger)
Object left trigger.
Определения Object.c:95
int GetLiquidSourceType()
Определения Object.c:655
bool IsAlive()
Определения Object.c:520
bool CanBeSkinned()
Определения Object.c:69
bool IsHologram()
Определения Object.c:768
proto native owned int GetActionComponentNameList(int componentIndex, TStringArray nameList, string geometry="")
outputs action component name list by given component index, 'geometry' can be "fire" or "view" (defa...
proto native owned string GetDamageZoneNameByComponentIndex(int componentIndex)
Obtains name of damage zone based on index of specific component.
bool IsMeleeWeapon()
returns if this entity is Melee Weapon
Определения Object.c:639
proto string GetDebugNameNative()
native GetDebugName which is internally overloaded where needed
proto native vector GetBonePositionLS(int pivot)
returns local space, model space, world space position of the bone
proto native int GetViewGeometryLevel()
proto void GetNetworkID(out int lowBits, out int highBits)
bool IsParticle()
Определения Object.c:753
vector GetSelectionPositionMS(string name)
Определения Object.c:865
void SetBeingBackstabbed(int backstabType)
Определения Object.c:713
proto native vector GetBonePositionMS(int pivot)
bool IsStaticTransmitter()
Returns if this entity is Static Transmitter.
Определения Object.c:544
proto native vector GetDirectionUp()
Retrieve direction up vector.
proto native int GetNumberOfHealthLevels(string zone="")
Returns global number of health levels specified in object's config class parameter healthLevels (ran...
proto native void CreateDynamicPhysics(int interactionLayers)
bool PlaySoundSetAtMemoryPointLooped(out EffectSound sound, string soundSet, string memoryPoint, float play_fade_in=0, float stop_fade_out=0)
Определения Object.c:1297
void RPC(int rpc_type, array< ref Param > params, bool guaranteed, PlayerIdentity recipient=NULL)
Remote procedure call shortcut, see CGame.RPC / CGame.RPCSingleParam.
Определения Object.c:837
bool CanBeActionTarget()
Определения Object.c:1419
proto native void GetBoneTransformLS(int pivot, out vector transform[4])
returns local space, model space, world space transformations of a bone
proto native vector GetBoundingCenter()
proto native vector GetMemoryPointPos(string memoryPointName)
proto native void DecreaseHealth(string zoneName, string healthType, float value)
Decreases health.
bool CanBeRepairedToPristine()
Определения Object.c:1365
proto native float GetCollisionRadius()
Gets collision radius (bounding sphere)
EntityAI ProcessMeleeItemDamage(int mode=0)
Определения Object.c:1363
bool IsElectricAppliance()
Returns if this is an appliance, that can be plugged into electric circuit (== not energy source)
Определения Object.c:685
proto native vector GetModelSpeed()
Retrieve object's speed in local space.
proto native vector GetGlobalPos(vector vPos)
Calculate global position to this entity from local position.
Определения EnEntity.c:165
LOD class.
Определения gameplay.c:204
Определения EnMath3D.c:28
Определения EnMath.c:7
Определения ObjectTyped.c:2
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
Определения param.c:12
The class that will be instanced (moddable)
Определения gameplay.c:389
static EffectSound PlaySoundEnviroment(string sound_set, vector position, float play_fade_in=0, float stop_fade_out=0, bool loop=false)
Create and play an EffectSound, updating environment variables.
Определения EffectManager.c:228
static EffectSound PlaySoundOnObject(string sound_set, Object parent_object, float play_fade_in=0, float stop_fade_out=0, bool loop=false)
Create and play an EffectSound.
Определения EffectManager.c:247
Manager class for managing Effect (EffectParticle, EffectSound)
Определения EffectManager.c:6
proto void Call(func fn, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
Определения DamageSystem.c:2
Определения EnWidgets.c:190
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
Определения EnConvert.c:106
Serializer ParamsReadContext
Определения gameplay.c:15
proto native CGame GetGame()
enum ShapeType ErrorEx
ShapeFlags
Определения EnDebug.c:126
class DiagMenu Shape
don't call destructor directly. Use Destroy() instead
array< float > TFloatArray
Определения EnScript.c:686
array< string > TStringArray
Определения EnScript.c:685
array< int > TIntArray
Определения EnScript.c:687
proto external void GetTransform(out vector mat[])
Returns transformation of Entity. It returns only so much vectors as array is big.
proto native external float GetScale()
const int LIQUID_NONE
Определения constants.c:527
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
static proto void MatrixInvMultiply4(vector mat0[4], vector mat1[4], out vector res[4])
Invert-transforms matrix.
static proto void MatrixOrthogonalize4(vector mat[4])
Orthogonalizes matrix.
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
class JsonUndergroundAreaTriggerData GetPosition
Определения UndergroundAreaLoader.c:9
proto int ToLower()
Changes string to lowercase. Returns length.
const int CALL_CATEGORY_SYSTEM
Определения tools.c:8
proto native void AddChild(Widget child, bool immedUpdate=true)