317 {
318 if (!attributes)
319 return;
320
321 float health01 = Math.RandomFloatInclusive(attributes.healthMin,attributes.healthMax);
322 item.SetHealth01("","Health",health01);
323
324 float quantity01 = Math.RandomFloatInclusive(attributes.quantityMin,attributes.quantityMax);
325 if (item.IsMagazine())
326 {
327 Magazine mag = Magazine.Cast(item);
328
329
330
331
332
333
334
335
336
337
338 {
339 int ammoQuantity = (
int)Math.Lerp(0,mag.GetAmmoMax(),quantity01);
340 mag.ServerSetAmmoCount(ammoQuantity);
341 }
342 }
343 else
344 {
345 float quantityAbsolute = Math.Lerp(item.GetQuantityMin(),item.GetQuantityMax(),quantity01);
346 quantityAbsolute = Math.Round(quantityAbsolute);
347 if (quantityAbsolute <= item.GetQuantityMin() && item.ConfigGetBool("varQuantityDestroyOnMin"))
348 quantityAbsolute++;
350 }
351 }
override bool SetQuantity(float value, bool destroy_config=true, bool destroy_forced=false, bool allow_client=false, bool clamp_to_stack_max=true)