DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
Truck_02.c
См. документацию.
1class Truck_02 extends CarScript
2{
3 protected ref UniversalTemperatureSource m_UTSource;
4 protected ref UniversalTemperatureSourceSettings m_UTSSettings;
6
7 void Truck_02()
8 {
9 //m_dmgContactCoef = 0.018;
10 m_enginePtcPos = "0 1.346 2.205";
11 }
12
13 override void EEInit()
14 {
15 super.EEInit();
16
17 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
18 {
20 m_UTSSettings.m_ManualUpdate = true;
22 m_UTSSettings.m_TemperatureCap = 0;
23 m_UTSSettings.m_RangeFull = 0.5;
24 m_UTSSettings.m_RangeMax = 2;
25
28 }
29 }
30
31 override void OnEngineStart()
32 {
33 super.OnEngineStart();
34
35 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
36 {
37 m_UTSource.SetDefferedActive(true, 20.0);
38 }
39 }
40
41 override void OnEngineStop()
42 {
43 super.OnEngineStop();
44
45 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
46 {
47 m_UTSource.SetDefferedActive(false, 10.0);
48 }
49 }
50
51 override void EOnPostSimulate(IEntity other, float timeSlice)
52 {
53 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
54 {
55 if (m_UTSource.IsActive())
56 {
58 }
59 }
60 }
61
62 override int GetAnimInstance()
63 {
64 return VehicleAnimInstances.MULTICAR;
65 }
66
67 override int GetSeatAnimationType( int posIdx )
68 {
69 switch( posIdx )
70 {
71 case 0:
72 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
73 case 1:
74 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
75 }
76
77 return 0;
78 }
79
80 override int GetCarDoorsState( string slotType )
81 {
82 CarDoor carDoor;
83
84 switch( slotType )
85 {
86 case "Truck_02_Door_1_1":
87 Class.CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
88 if ( carDoor )
89 {
90 if ( GetAnimationPhase("DoorsDriver") > 0.5 )
91 {
92 return CarDoorState.DOORS_OPEN;
93 }
94 else
95 {
96 return CarDoorState.DOORS_CLOSED;
97 }
98 }
99
100 return CarDoorState.DOORS_MISSING;
101 break;
102
103 case "Truck_02_Door_2_1":
104 Class.CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
105 if ( carDoor )
106 {
107 if ( GetAnimationPhase("DoorsCoDriver") > 0.5 )
108 {
109 return CarDoorState.DOORS_OPEN;
110 }
111 else
112 {
113 return CarDoorState.DOORS_CLOSED;
114 }
115 }
116
117 return CarDoorState.DOORS_MISSING;
118 break;
119 }
120
121 return CarDoorState.DOORS_MISSING;
122 }
123
124 override bool CrewCanGetThrough( int posIdx )
125 {
126 CarDoor carDoor;
127 switch( posIdx )
128 {
129 case 0:
130 if ( GetCarDoorsState( "Truck_02_Door_1_1" ) == CarDoorState.DOORS_CLOSED )
131 {
132 return false;
133 }
134
135 return true;
136 break;
137
138 case 1:
139 if ( GetCarDoorsState( "Truck_02_Door_2_1" ) == CarDoorState.DOORS_CLOSED )
140 {
141 return false;
142 }
143
144 return true;
145 break;
146 }
147
148 return false;
149 }
150
151 override float OnSound( CarSoundCtrl ctrl, float oldValue )
152 {
153 switch ( ctrl )
154 {
155 case CarSoundCtrl.DOORS:
156 float newValue = 0;
157
158 //-----
159 if ( GetCarDoorsState( "Truck_02_Door_1_1" ) == CarDoorState.DOORS_CLOSED )
160 {
161 newValue += 0.4;
162 }
163
164 if ( GetCarDoorsState( "Truck_02_Door_2_1" ) == CarDoorState.DOORS_CLOSED )
165 {
166 newValue += 0.4;
167 }
168
169 if ( newValue > 1 )
170 newValue = 1;
171
172 return newValue;
173 break;
174 }
175
176 return oldValue;
177 }
178
179 override string GetAnimSourceFromSelection( string selection )
180 {
181 switch( selection )
182 {
183 case "doors_driver":
184 return "DoorsDriver";
185 case "doors_codriver":
186 return "DoorsCoDriver";
187 case "doors_hood":
188 return "DoorsHood";
189 case "doors_trunk":
190 return "DoorsTrunk";
191 case "wheelsideplate1":
192 return "WheelSidePlate1";
193 case "wheelsideplate2":
194 return "WheelSidePlate2";
195 }
196
197 return "";
198 }
199
200 override bool IsVitalCarBattery()
201 {
202 return false;
203 }
204
205 override bool IsVitalSparkPlug()
206 {
207 return false;
208 }
209
210 override bool IsVitalGlowPlug()
211 {
212 return false;
213 }
214
215 override bool IsVitalEngineBelt()
216 {
217 return false;
218 }
219
220 override bool IsVitalRadiator()
221 {
222 return false;
223 }
224
225 override bool CanReachSeatFromSeat( int currentSeat, int nextSeat )
226 {
227 switch( currentSeat )
228 {
229 case 0:
230 if ( nextSeat == 1 )
231 return true;
232 break;
233
234 case 1:
235 if ( nextSeat == 0 )
236 return true;
237 break;
238 }
239
240 return false;
241 }
242
243 override bool CanReachDoorsFromSeat( string pDoorsSelection, int pCurrentSeat )
244 {
245 switch( pCurrentSeat )
246 {
247 case 0:
248 if (pDoorsSelection == "DoorsDriver")
249 {
250 return true;
251 }
252 break;
253
254 case 1:
255 if (pDoorsSelection == "DoorsCoDriver")
256 {
257 return true;
258 }
259 break;
260 }
261
262 return false;
263 }
264
265 override int GetSeatIndexFromDoor( string pDoorSelection )
266 {
267 switch (pDoorSelection)
268 {
269 case "DoorsDriver":
270 return 0;
271 break;
272 case "DoorsCoDriver":
273 return 1;
274 break;
275 }
276 return -1;
277 }
278
279 override void OnDebugSpawn()
280 {
281 EntityAI entity;
282
283 if ( Class.CastTo(entity, this) )
284 {
285 entity.GetInventory().CreateInInventory( "Truck_02_Wheel" );
286 entity.GetInventory().CreateInInventory( "Truck_02_Wheel" );
287 entity.GetInventory().CreateInInventory( "Truck_02_Wheel" );
288 entity.GetInventory().CreateInInventory( "Truck_02_Wheel" );
289
290 entity.GetInventory().CreateInInventory( "TruckBattery" );
291 entity.GetInventory().CreateInInventory( "SparkPlug" );
292
293 entity.GetInventory().CreateInInventory( "Truck_02_Door_1_1" );
294 entity.GetInventory().CreateInInventory( "Truck_02_Door_2_1" );
295
296 entity.GetInventory().CreateInInventory( "HeadlightH7" );
297 entity.GetInventory().CreateInInventory( "HeadlightH7" );
298 }
299
300 Fill( CarFluid.FUEL, 50 );
301 Fill( CarFluid.OIL, 4.0 );
302 };
303}
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
Определения Car.c:4
CarFluid
Type of vehicle's fluid. (native, do not change or extend)
Определения Car.c:19
CarDoorState
Определения CarScript.c:2
vector m_enginePtcPos
Определения CarScript.c:195
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
Определения CivilianSedan.c:432
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:220
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:219
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения InventoryItem.c:496
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения Truck_02.c:151
override bool IsVitalEngineBelt()
Определения Truck_02.c:215
override int GetAnimInstance()
Определения Truck_02.c:62
override void OnDebugSpawn()
Определения Truck_02.c:279
override int GetSeatIndexFromDoor(string pDoorSelection)
Определения Truck_02.c:265
void Truck_02()
Определения Truck_02.c:7
override bool IsVitalGlowPlug()
Определения Truck_02.c:210
override int GetCarDoorsState(string slotType)
Определения Truck_02.c:80
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
Определения CivilianSedan.c:5
override string GetAnimSourceFromSelection(string selection)
Определения Truck_02.c:179
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения Truck_02.c:243
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения Truck_02.c:51
override void OnEngineStart()
Определения Truck_02.c:31
override void EEInit()
Определения Truck_02.c:13
override bool IsVitalRadiator()
Определения Truck_02.c:220
override bool CrewCanGetThrough(int posIdx)
Определения Truck_02.c:124
override bool IsVitalCarBattery()
Определения Truck_02.c:200
ref UniversalTemperatureSource m_UTSource
Определения CivilianSedan.c:3
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения Truck_02.c:225
override bool IsVitalSparkPlug()
Определения Truck_02.c:205
override void OnEngineStop()
Определения Truck_02.c:41
override int GetSeatAnimationType(int posIdx)
Определения Truck_02.c:67
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения CivilianSedan.c:4
Определения CivilianSedan.c:2
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения Building.c:6
Определения constants.c:659
Определения EnEntity.c:165
original Timer deletes m_params which is unwanted
Определения UniversalTemperatureSource.c:38
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
proto native CGame GetGame()
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
static const float ITEM_TEMPERATURE_NEUTRAL_ZONE_MIDDLE
Определения constants.c:806