DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
Barrel_ColorBase.c
См. документацию.
2{
3 private bool m_IsLocked = false;
4 private ref Timer m_BarrelOpener;
5
8
9 override void InitItemVariables()
10 {
11 super.InitItemVariables();
12
13 m_BarrelOpener = new Timer();
14
15 m_Openable = new OpenableBehaviour(false);
16 m_RainProcurement = new RainProcurementManager(this); //legacy reasons
18
19 m_HalfExtents = Vector(0.30,0.85,0.30);
20
21 RegisterNetSyncVariableBool("m_Openable.m_IsOpened");
22 }
23
25 {
26 return 110;
27 }
28
29 override void EECargoIn(EntityAI item)
30 {
31 super.EECargoIn(item);
32
33 MiscGameplayFunctions.SoakItemInsideParentContainingLiquidAboveThreshold(ItemBase.Cast(item), this);
34 }
35
37 {
38 super.OnFreezeStateChangeServer();
39
40 //soak CARGO items on unfreeze
41 CargoBase cargo;
42 if (!GetIsFrozen() && GetLiquidType() != 0 && Class.CastTo(cargo,GetInventory().GetCargo()))
43 {
44 int count = cargo.GetItemCount();
45 for (int i = 0; i < count; ++i)
46 {
47 MiscGameplayFunctions.SoakItemInsideParentContainingLiquidAboveThreshold(ItemBase.Cast(cargo.GetItem(i)), this);
48 }
49 }
50 }
51
52 override void OnStoreSave( ParamsWriteContext ctx )
53 {
54 super.OnStoreSave( ctx );
55
56 ctx.Write( m_Openable.IsOpened() );
57 }
58
59 override bool OnStoreLoad( ParamsReadContext ctx, int version )
60 {
61 if ( !super.OnStoreLoad( ctx, version ) )
62 return false;
63
64 bool opened;
65 if ( version >= 110 && !ctx.Read( opened ) )
66 {
67 return false;
68 }
69
70 if ( opened )
71 {
72 OpenLoad();
73 }
74 else
75 {
76 CloseLoad();
77 }
78
79 return true;
80 }
81
82 bool IsLocked()
83 {
84 return m_IsLocked;
85 }
86
87 override void Open()
88 {
89 m_Openable.Open();
90 m_RainProcComponent.StartRainProcurement();
91 SetTakeable(false);
92
94 }
95
96 void OpenLoad()
97 {
98 m_Openable.Open();
99 m_RainProcComponent.StartRainProcurement();
100 SetSynchDirty();
101 SetTakeable(false);
102
104 }
105
106 override void Close()
107 {
108 m_Openable.Close();
109 m_RainProcComponent.StopRainProcurement();
110 SetTakeable(true);
111
113 }
114
116 {
117 m_Openable.Close();
118 m_RainProcComponent.StopRainProcurement();
119 SetSynchDirty();
120 SetTakeable(true);
121
123 }
124
125 override bool IsOpen()
126 {
127 return m_Openable.IsOpened();
128 }
129
130 override void OnWasAttached( EntityAI parent, int slot_id)
131 {
132 super.OnWasAttached(parent, slot_id);
133
134 Open();
135 }
136
137 override void OnWasDetached(EntityAI parent, int slot_id)
138 {
139 super.OnWasDetached(parent, slot_id);
140
141 Close();
142 }
143
144 protected void UpdateVisualState()
145 {
146 if ( IsOpen() )
147 {
148 SetAnimationPhase("Lid",1);
149 SetAnimationPhase("Lid2",0);
150 }
151 else
152 {
153 SetAnimationPhase("Lid",0);
154 SetAnimationPhase("Lid2",1);
155 }
156 }
157
159 {
160 super.OnVariablesSynchronized();
161
163 }
164
165 void Lock(float actiontime)
166 {
167 m_IsLocked = true;
168 m_BarrelOpener.Run(actiontime, this, "Unlock", NULL,false);
169 }
170
171 void Unlock()
172 {
173 m_IsLocked = false;
174 Open();
175 }
176
178 {
179 int slot_id;
180 ItemBase ingredient;
181 slot_id = InventorySlots.GetSlotIdFromString("Lime");
182 ingredient = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
183 if ( ingredient && GetQuantity() > 10000 )
184 {
185 TanPelts(ingredient, player);
186 }
187 else
188 {
189 slot_id = InventorySlots.GetSlotIdFromString("Material_Nails");
190 ingredient = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
191 if ( ingredient && GetQuantity() > 10000 )
192 {
193 ColourLeatherClothes(ingredient, player, "Black");
194 }
195 else
196 {
197 slot_id = InventorySlots.GetSlotIdFromString("BirchBark");
198 ingredient = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
199 if ( ingredient && GetQuantity() > 10000 )
200 {
201 ColourLeatherClothes(ingredient, player, "Beige");
202 }
203 else
204 {
205 slot_id = InventorySlots.GetSlotIdFromString("OakBark");
206 ingredient = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
207 if ( ingredient && GetQuantity() > 10000 )
208 {
209 ColourLeatherClothes(ingredient, player, "Brown");
210 }
211 else
212 {
213
214 slot_id = InventorySlots.GetSlotIdFromString("Disinfectant");
215 ingredient = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
216 if ( ingredient && GetQuantity() > 10000 )
217 {
218 BleachClothes(ingredient, player);
219 }
220 else
221 {
222 slot_id = InventorySlots.GetSlotIdFromString("Plant");
223 ingredient = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
224 slot_id = InventorySlots.GetSlotIdFromString("Guts");
225 ItemBase reactant = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
226 if ( ingredient && reactant && GetQuantity() > 5000 )
227 {
228 ProduceFertilizer(ingredient,reactant,player);
229 }
230 else
231 {
232 slot_id = InventorySlots.GetSlotIdFromString("BerryR");
233 ItemBase ingredientR = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
234 slot_id = InventorySlots.GetSlotIdFromString("Plant");
235 ItemBase ingredientG = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
236 slot_id = InventorySlots.GetSlotIdFromString("BerryB");
237 ItemBase ingredientB = ItemBase.Cast( GetInventory().FindAttachment(slot_id) );
238 if ( (ingredientR || ingredientG || ingredientB) && GetQuantity() > 10000)
239 {
240 ColourClothes(ingredientR,ingredientG,ingredientB,player);
241 }
242 }
243 }
244 }
245 }
246 }
247 }
248 Close();
249 }
250
251 void ProduceFertilizer( ItemBase guts, ItemBase plant, PlayerBase player )
252 {
253 float lime_quantity = plant.GetQuantity()*GameConstants.BAREL_LIME_PER_PLANT;
254
255 guts.Delete();
256 plant.Delete();
257
258 ItemBase lime = ItemBase.Cast( GetInventory().CreateInInventory("GardenLime") );
259
260 lime.SetQuantity(lime_quantity);
261 Lock(50);
262 }
263
264 void TanPelts( ItemBase lime, PlayerBase player )
265 {
266 EntityAI item;
267 int item_count = GetInventory().GetCargo().GetItemCount();
268 int pelt_count = 0;
269 int lime_amount = Math.Floor(lime.GetQuantity()/GameConstants.BAREL_LIME_PER_PELT);
270
271
272 for (int i = 0; i < item_count; i++)
273 {
274 item = GetInventory().GetCargo().GetItem(i);
275 if ( item.IsPeltBase() )
276 {
277 pelt_count = g_Game.ConfigGetInt("cfgVehicles " + item.GetType() + " peltGain");
278 if ( pelt_count <= lime_amount )
279 {
280 TanLeatherLambda lambda = new TanLeatherLambda(item, "TannedLeather", player, pelt_count);
281 lambda.SetTransferParams(true, true, true);
282 player.ServerReplaceItemWithNew(lambda);
283
284 lime_amount -= pelt_count;
285 if ( lime_amount <= 0 )
286 {
287 lime.Delete();
288 break;
289 }
290 }
291 }
292 }
293 if ( lime )
294 {
296 }
297 if ( pelt_count > 0 )
298 {
299 Lock(30);
300 }
301 }
302
303 void ColourLeatherClothes( ItemBase color_source, PlayerBase player, string color )
304 {
305 EntityAI item;
306 int item_count = GetInventory().GetCargo().GetItemCount();
307 string item_name = "";
308
309
310 for (int i = 0; i < item_count; i++)
311 {
312 item = GetInventory().GetCargo().GetItem(i);
313 if ( item.IsClothing() )
314 {
315 if ( GetGame().ObjectIsKindOf (item, "LeatherSack_Natural") )
316 {
317 item_name = "Bag_LeatherSack_"+color;
318 }
319 else if ( GetGame().ObjectIsKindOf (item, "LeatherStorageVest_Natural") )
320 {
321 item_name = "Vest_LeatherStorage_"+color;
322 }
323 else if ( GetGame().ObjectIsKindOf (item, "LeatherJacket_Natural") )
324 {
325 item_name = "Top_LeatherJacket_"+color;
326 }
327 else if ( GetGame().ObjectIsKindOf (item, "LeatherPants_Natural") )
328 {
329 item_name = "Pants_LeatherPants_"+color;
330 }
331 else if ( GetGame().ObjectIsKindOf (item, "LeatherMoccasinsShoes_Natural") )
332 {
333 item_name = "Shoes_LeatherMoccasins_"+color;
334 }
335 else if ( GetGame().ObjectIsKindOf (item, "LeatherHat_Natural") )
336 {
337 item_name = "Hat_Leather_"+color;
338 }
339 if ( item_name != "" )
340 {
341 TurnItemIntoItemLambda lambda = new TurnItemIntoItemLambda(item, item_name, player);
342 lambda.SetTransferParams(true, true, true);
343 player.ServerReplaceItemWithNew(lambda);
344 }
345 }
346 }
347 if ( item_name != "" )
348 {
349 Lock(20);
350 }
351 }
352
353
354 void BleachClothes( ItemBase bleach, PlayerBase player )
355 {
356 EntityAI item;
357 int bleach_amount = bleach.GetQuantity();
358 int item_count = GetInventory().GetCargo().GetItemCount();
359 string item_name = "";
360
361 for (int i = 0; i < item_count; i++)
362 {
363 item = GetInventory().GetCargo().GetItem(i);
364 if ( item.IsClothing() )
365 {
366 if ( bleach_amount >= GameConstants.BAREL_BLEACH_PER_CLOTH )
367 {
368 if ( ( GetGame().ObjectIsKindOf (item, "TShirt_ColorBase") && !GetGame().ObjectIsKindOf (item, "TShirt_White") ) || ( GetGame().ObjectIsKindOf (item, "Armband_ColorBase") && !GetGame().ObjectIsKindOf (item, "Armband_White") ) ) //cannot bleach white items...?
369 {
370 int index = item.GetType().IndexOf("_");
371 string itemtype = item.GetType().Substring( 0, index + 1 );
372 ItemBase itemIB = ItemBase.Cast(item);
373 MiscGameplayFunctions.TurnItemIntoItem(itemIB,itemtype+"White",player);
374
375 bleach_amount -= GameConstants.BAREL_BLEACH_PER_CLOTH;
376 }
377 if ( GetGame().IsKindOf (item.GetDisplayName(), "LeatherSack_ColorBase") )
378 {
379 item_name = "LeatherSack_Natural";
380 }
381 else if ( GetGame().IsKindOf (item.GetDisplayName(), "LeatherStorageVest_ColorBase") )
382 {
383 item_name = "LeatherStorageVest_Natural";
384 }
385 else if ( GetGame().IsKindOf (item.GetDisplayName(), "LeatherJacket_ColorBase") )
386 {
387 item_name = "LeatherJacket_Natural";
388 }
389 else if ( GetGame().IsKindOf (item.GetDisplayName(), "LeatherPants_ColorBase") )
390 {
391 item_name = "LeatherPants_Natural";
392 }
393 else if ( GetGame().IsKindOf (item.GetDisplayName(), "LeatherMoccasinsShoes_ColorBase") )
394 {
395 item_name = "LeatherMoccasinsShoes_Natural";
396 }
397 else if ( GetGame().IsKindOf (item.GetDisplayName(), "LeatherHat_ColorBase") )
398 {
399 item_name = "LeatherHat_Natural";
400 }
401 if ( item_name != "" )
402 {
403 TurnItemIntoItemLambda lambda = new TurnItemIntoItemLambda(item, item_name, player);
404 lambda.SetTransferParams(true, true, true);
405 player.ServerReplaceItemWithNew(lambda);
406 bleach_amount -= GameConstants.BAREL_BLEACH_PER_CLOTH;
407 }
408 }
409 else
410 {
411 bleach.Delete();
412 break;
413 }
414 }
415 }
416 if ( bleach )
417 {
418 bleach.SetQuantity(bleach_amount);
419 }
420 if ( item_name != "" )
421 {
422 Lock(10);
423 }
424 }
425
426 void ColourClothes( ItemBase rci, ItemBase gci, ItemBase bci, PlayerBase player )
427 {
428 EntityAI item;
429 float r = 0;
430 float g = 0;
431 float b = 0;
432 float a = 1; //alpha
433 int item_count = GetInventory().GetCargo().GetItemCount();
434 bool was_colored = false;
435 if ( rci )
436 {
437 r = rci.GetQuantity()/10;
438 r = Math.Clamp(r, 0, 0.78); //TODO adjust clamp as needed, full RGB would result in a white item
439 }
440 if ( gci )
441 {
442 g = gci.GetQuantity()/10;
443 g = Math.Clamp(g, 0, 0.78);
444 }
445 if ( bci )
446 {
447 b = bci.GetQuantity()/10;
448 b = Math.Clamp(b, 0, 0.78);
449 }
450 for (int i = 0; i < item_count; i++)
451 {
452 item = GetInventory().GetCargo().GetItem(i);
453 if ( item.IsClothing() )
454 {
455 if ( GetGame().ObjectIsKindOf (item, "TShirt_White") || GetGame().ObjectIsKindOf (item, "Armband_White") )
456 {
457 ItemBase itemIB = ItemBase.Cast(item);
458 int index = itemIB.GetType().IndexOf("_");
459 string itemtype = itemIB.GetType().Substring( 0, index + 1 );
460
461 ColourClothesLambda clambda = new ColourClothesLambda(itemIB, itemtype + "Dyed", player, r, g, b, a);
462 clambda.SetTransferParams(true, true, true);
463 MiscGameplayFunctions.TurnItemIntoItemEx(player, clambda);
464 was_colored = true;
465 }
466 }
467 }
468
469 if ( was_colored )
470 {
471 if ( rci )
472 {
473 //rci.AddQuantity(-r*10,true,false);
474 rci.Delete();
475 }
476 if ( gci )
477 {
478 //gci.AddQuantity(-g*10,true,false);
479 gci.Delete();
480 }
481 if ( bci )
482 {
483 //bci.AddQuantity(-b*10,true,false);
484 bci.Delete();
485 }
486 Lock(30);
487 }
488 }
489
490 override bool CanPutInCargo( EntityAI parent )
491 {
492 if ( !super.CanPutInCargo( parent ))
493 return false;
494
495 if ( GetNumberOfItems() == 0 && !IsOpen() )
496 return true;
497
498 return false;
499 }
500
501 override bool CanPutIntoHands( EntityAI parent )
502 {
503 if ( !super.CanPutIntoHands( parent ))
504 return false;
505
506 if ( GetNumberOfItems() == 0 && (GetInventory().IsAttachment() || !IsOpen()) )
507 return true;
508
509 return false;
510 }
511
512 override bool CanReceiveItemIntoCargo( EntityAI item )
513 {
514 if ( IsOpen() )
515 return super.CanReceiveItemIntoCargo( item );
516
517 return false;
518 }
519
520 override bool CanReleaseCargo( EntityAI cargo )
521 {
522 return IsOpen();
523 }
524
525 override bool CanDetachAttachment( EntityAI parent )
526 {
527 if ( GetNumberOfItems() == 0)
528 return true;
529 return false;
530 }
531
532 override void InitItemSounds()
533 {
534 super.InitItemSounds();
535
537
538 if (GetBarrelOpenSoundset() != string.Empty)
539 handler.AddSound(SoundConstants.ITEM_BARREL_OPEN, GetBarrelOpenSoundset());
540
541 if (GetBarrelCloseSoundset() != string.Empty)
542 handler.AddSound(SoundConstants.ITEM_BARREL_CLOSE, GetBarrelCloseSoundset());
543 }
544
545 override string GetDeploySoundset()
546 {
547 return "placeBarrel_SoundSet";
548 }
549
551 {
552 return "barrel_open_SoundSet";
553 }
554
556 {
557 return "barrel_close_SoundSet";
558 }
559 //================================================================
560
561 override float GetLiquidThroughputCoef()
562 {
564 }
565
566 override void SetActions()
567 {
569 super.SetActions();
570
573
574 }
575
576 override void OnDebugSpawn()
577 {
579 }
580
582 //OUBLIETTE OF THE DEPRECATED CODE//
587};
588
593
595{
596 int r, g, b, a;
597 void ColourClothesLambda(EntityAI old_item, string new_item_type, PlayerBase player, int rr, int gg, int bb, int aa)
598 { r = rr; g = gg; b = bb; a = aa; }
599
600 override void CopyOldPropertiesToNew(notnull EntityAI old_item, EntityAI new_item)
601 {
602 super.CopyOldPropertiesToNew(old_item, new_item);
603
604 //Print("ColourClothesLambda::OnCreated object=" + new_item);
605 ItemBase ib = ItemBase.Cast(new_item);
606 if ( new_item )
607 {
608 new_item.SetObjectTexture(new_item.GetHiddenSelectionsData().GetHiddenSelectionIndex( "personality" ), MiscGameplayFunctions.GetColorString(r, g, b, a));
609
610 //nitem.SetItemVariableString("varColor", color); //SYNCFAIL
611 ib.SetColor(r*255, g*255, b*255, a*255);
612 }
613 }
614};
615
617{
619
620 void TanLeatherLambda (EntityAI old_item, string new_item_type, PlayerBase player, int pelt_count) { m_PeltCount = pelt_count; }
621
622 override void CopyOldPropertiesToNew (notnull EntityAI old_item, EntityAI new_item)
623 {
624 super.CopyOldPropertiesToNew(old_item, new_item);
625
626 if (new_item)
627 {
628 ItemBase tanned_pelt = ItemBase.Cast( new_item );
629 tanned_pelt.SetQuantity(m_PeltCount);
630 }
631 else
632 {
633 Debug.LogError("TanLeatherLambda: failed to create new item","static");
634 }
635 }
636};
void AddAction(typename actionName)
Определения AdvancedCommunication.c:220
void DeployableContainer_Base()
Определения Container_Base.c:36
Container_Base m_HalfExtents
DayZGame g_Game
Определения DayZGame.c:3868
Empty
Определения Hand_States.c:14
int GetNumberOfItems()
Returns the number of items in cargo, otherwise returns 0(non-cargo objects). Recursive.
Определения ItemBase.c:8218
void SetQuantityMax()
Определения ItemBase.c:8065
override float GetQuantity()
Определения ItemBase.c:8154
ItemSoundHandler GetItemSoundHandler()
Определения ItemBase.c:9085
override void SetTakeable(bool pState)
Определения ItemBase.c:9042
override int GetLiquidType()
Определения ItemBase.c:8547
void ItemSoundHandler(ItemBase parent)
Определения ItemSoundHandler.c:31
Определения Barrel_ColorBase.c:590
override void Close()
Определения Barrel_ColorBase.c:106
bool m_IsLocked
Определения Barrel_ColorBase.c:3
void UpdateVisualState()
Определения Barrel_ColorBase.c:144
override bool CanDetachAttachment(EntityAI parent)
Определения Barrel_ColorBase.c:525
override bool CanPutInCargo(EntityAI parent)
Определения Barrel_ColorBase.c:490
override void InitItemVariables()
Определения Barrel_ColorBase.c:9
override void Open()
Определения Barrel_ColorBase.c:87
override void OnVariablesSynchronized()
Определения Barrel_ColorBase.c:158
override void OnDebugSpawn()
Определения Barrel_ColorBase.c:576
override bool OnStoreLoad(ParamsReadContext ctx, int version)
Определения Barrel_ColorBase.c:59
ref RainProcurementManager m_RainProcurement
Определения Barrel_ColorBase.c:584
string GetBarrelOpenSoundset()
Определения Barrel_ColorBase.c:550
override void InitItemSounds()
Определения Barrel_ColorBase.c:532
override bool CanReceiveItemIntoCargo(EntityAI item)
Определения Barrel_ColorBase.c:512
void ColourLeatherClothes(ItemBase color_source, PlayerBase player, string color)
Определения Barrel_ColorBase.c:303
bool IsLocked()
Определения Barrel_ColorBase.c:82
ref Timer m_BarrelOpener
Определения Barrel_ColorBase.c:4
override void EECargoIn(EntityAI item)
Определения Barrel_ColorBase.c:29
void BleachClothes(ItemBase bleach, PlayerBase player)
Определения Barrel_ColorBase.c:354
void ProduceFertilizer(ItemBase guts, ItemBase plant, PlayerBase player)
Определения Barrel_ColorBase.c:251
void DetermineAction(PlayerBase player)
Определения Barrel_ColorBase.c:177
override void OnWasDetached(EntityAI parent, int slot_id)
Определения Barrel_ColorBase.c:137
void CloseLoad()
Определения Barrel_ColorBase.c:115
void ColourClothes(ItemBase rci, ItemBase gci, ItemBase bci, PlayerBase player)
Определения Barrel_ColorBase.c:426
void SoundBarrelClosePlay()
override bool CanReleaseCargo(EntityAI cargo)
Определения Barrel_ColorBase.c:520
override string GetDeploySoundset()
Определения Barrel_ColorBase.c:545
override void SetActions()
Определения Barrel_ColorBase.c:566
void SoundBarrelOpenPlay()
void Lock(float actiontime)
Определения Barrel_ColorBase.c:165
override bool IsOpen()
Определения Barrel_ColorBase.c:125
override float GetLiquidThroughputCoef()
Определения Barrel_ColorBase.c:561
void OpenLoad()
Определения Barrel_ColorBase.c:96
override int GetDamageSystemVersionChange()
Определения Barrel_ColorBase.c:24
override void OnStoreSave(ParamsWriteContext ctx)
Определения Barrel_ColorBase.c:52
string GetBarrelCloseSoundset()
Определения Barrel_ColorBase.c:555
override bool CanPutIntoHands(EntityAI parent)
Определения Barrel_ColorBase.c:501
override void OnWasAttached(EntityAI parent, int slot_id)
Определения Barrel_ColorBase.c:130
void Unlock()
Определения Barrel_ColorBase.c:171
ref OpenableBehaviour m_Openable
Определения Barrel_ColorBase.c:7
override void OnFreezeStateChangeServer()
Определения Barrel_ColorBase.c:36
ref RainProcurementComponentBarrel m_RainProcComponent
Определения Barrel_ColorBase.c:6
void TanPelts(ItemBase lime, PlayerBase player)
Определения Barrel_ColorBase.c:264
Определения Barrel_ColorBase.c:589
Определения Barrel_ColorBase.c:591
proto native int GetItemCount()
proto native EntityAI GetItem(int index)
represents base for cargo storage for entities
Определения Cargo.c:7
Super root of all classes in Enforce script.
Определения EnScript.c:11
void ColourClothesLambda(EntityAI old_item, string new_item_type, PlayerBase player, int rr, int gg, int bb, int aa)
Определения Barrel_ColorBase.c:597
override void CopyOldPropertiesToNew(notnull EntityAI old_item, EntityAI new_item)
Определения Barrel_ColorBase.c:600
static void LogError(string message=LOG_DEFAULT, string plugin=LOG_DEFAULT, string author=LOG_DEFAULT, string label=LOG_DEFAULT, string entity=LOG_DEFAULT)
Prints debug message as error message.
Определения Debug.c:245
Определения Debug.c:2
Определения Building.c:6
Определения constants.c:659
static proto native int GetSlotIdFromString(string slot_name)
converts string to slot_id
provides access to slot configuration
Определения InventorySlots.c:6
override bool SetQuantity(float value, bool destroy_config=true, bool destroy_forced=false, bool allow_client=false, bool clamp_to_stack_max=true)
Определения PileOfWoodenPlanks.c:88
Определения InventoryItem.c:731
Определения EnMath.c:7
Определения PlayerBaseClient.c:2
DEPRECATED, done through the RainProcurementHandler / component instead.
Определения RainProcurementManager.c:3
proto bool Write(void value_out)
proto bool Read(void value_in)
override void CopyOldPropertiesToNew(notnull EntityAI old_item, EntityAI new_item)
Определения Barrel_ColorBase.c:622
int m_PeltCount
Определения Barrel_ColorBase.c:618
void TanLeatherLambda(EntityAI old_item, string new_item_type, PlayerBase player, int pelt_count)
Определения Barrel_ColorBase.c:620
Определения DayZPlayerImplement.c:63
Serializer ParamsReadContext
Определения gameplay.c:15
proto native CGame GetGame()
Serializer ParamsWriteContext
Определения gameplay.c:16
const int BAREL_BLEACH_PER_CLOTH
Определения constants.c:966
const int BAREL_LIME_PER_PELT
Определения constants.c:965
const float BAREL_LIME_PER_PLANT
Определения constants.c:967
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
const float LIQUID_THROUGHPUT_BARREL
Определения constants.c:574
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
static proto float Floor(float f)
Returns floor of value.
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'.