Dayz Explorer 1.28.160049
Loading...
Searching...
No Matches
dayzcreatureaitype.c
Go to the documentation of this file.
2{
3 string m_CfgPath;
4 string m_AnimEventsCfgPath;
5
6 private ref map<int, ref AnimSoundEvent> m_AnimSoundEvents;
7 private ref map<int, ref AnimStepEvent> m_AnimStepEvents;
8 private ref map<int, ref AnimSoundVoiceEvent> m_AnimSoundVoiceEvents;
9 private ref map<int, ref AnimDamageEvent> m_AnimDamageEvents;
10
11 private void DayZCreatureAIType()
12 {
13 m_CfgPath = "CfgVehicles " + GetName() + " ";
14 m_AnimEventsCfgPath = m_CfgPath + "AnimEvents ";
15 LoadParams();
16 }
17
18 void LoadAnimSoundEvents()
19 {
20 m_AnimSoundEvents = new map<int, ref AnimSoundEvent>();
21
22 string soundsCfgPath = m_AnimEventsCfgPath + "Sounds ";
23
24 int soundCount = GetGame().ConfigGetChildrenCount(soundsCfgPath);
25 for (int i = 0; i < soundCount; i++)
26 {
27 string soundName;
28 GetGame().ConfigGetChildName(soundsCfgPath, i, soundName);
29 string soundPath = soundsCfgPath + soundName + " ";
30 AnimSoundEvent soundEvent = new AnimSoundEvent(soundPath);
31 if (soundEvent.IsValid())
32 m_AnimSoundEvents.Set(soundEvent.m_iID, soundEvent);
33 }
34 }
35
36 void LoadAnimSoundVoiceEvents()
37 {
38 m_AnimSoundVoiceEvents = new map<int, ref AnimSoundVoiceEvent>();
39
40 string soundsCfgPath = m_AnimEventsCfgPath + "SoundVoice ";
41
42 int soundCount = GetGame().ConfigGetChildrenCount(soundsCfgPath);
43 for (int i = 0; i < soundCount; i++)
44 {
45 string soundName;
46 GetGame().ConfigGetChildName(soundsCfgPath, i, soundName);
47 string soundPath = soundsCfgPath + soundName + " ";
48 AnimSoundVoiceEvent soundEvent = new AnimSoundVoiceEvent(soundPath);
49 if (soundEvent.IsValid())
50 m_AnimSoundVoiceEvents.Set(soundEvent.m_iID, soundEvent);
51 }
52 }
53
54 void LoadAnimStepEvents()
55 {
56 m_AnimStepEvents = new map<int, ref AnimStepEvent>();
57 string stepsCfgPath = m_AnimEventsCfgPath + "Steps ";
58 int stepsCount = GetGame().ConfigGetChildrenCount(stepsCfgPath);
59
60 for (int i = 0; i < stepsCount; i++)
61 {
62 string stepName;
63 GetGame().ConfigGetChildName(stepsCfgPath, i, stepName);
64 string stepPath = stepsCfgPath + stepName + " ";
65 AnimStepEvent stepEvent = new AnimStepEvent(stepPath);
66 m_AnimStepEvents.Set(stepEvent.m_iID, stepEvent);
67 }
68 }
69
70 void LoadAnimDamageEvents()
71 {
72 m_AnimDamageEvents = new map<int, ref AnimDamageEvent>();
73
74 string damagesCfgPath = m_AnimEventsCfgPath + "Damages ";
75 int damagesCount = GetGame().ConfigGetChildrenCount(damagesCfgPath);
76
77 for (int i = 0; i < damagesCount; i++)
78 {
79 string damageName;
80 GetGame().ConfigGetChildName(damagesCfgPath, i, damageName);
81 string damagePath = damagesCfgPath + damageName + " ";
82 AnimDamageEvent damageEvent = new AnimDamageEvent(damagePath);
83 m_AnimDamageEvents.Set(damageEvent.m_iID, damageEvent);
84 }
85 }
86
87 private void LoadParams()
88 {
89 LoadAnimSoundEvents();
90 LoadAnimSoundVoiceEvents();
91 LoadAnimStepEvents();
92 LoadAnimDamageEvents();
93 }
94
95 AnimStepEvent GetStepEvent(int event_id)
96 {
97 return m_AnimStepEvents.Get(event_id);
98 }
99
100 AnimSoundEvent GetSoundEvent(int event_id)
101 {
102 return m_AnimSoundEvents.Get(event_id);
103 }
104
105 AnimSoundVoiceEvent GetSoundVoiceEvent(int event_id)
106 {
107 return m_AnimSoundVoiceEvents.Get(event_id);
108 }
109
110 AnimDamageEvent GetDamageEvent(int event_id)
111 {
112 return m_AnimDamageEvents.Get(event_id);
113 }
114
115 proto native owned string GetName();
116
118 ref array<ref AnimSoundEvent> m_animSoundEvents;
119 ref array<ref AnimStepEvent> m_animStepEvents;
120 ref array<ref AnimSoundVoiceEvent> m_animSoundVoiceEvents;
121 ref array<ref AnimDamageEvent> m_animDamageEvents;
122}
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
proto native CGame GetGame()