306 {
307 if (!attributes)
308 return;
309
310 float health01 = Math.RandomFloatInclusive(attributes.healthMin,attributes.healthMax);
311 item.SetHealth01("","Health",health01);
312
313 float quantity01 = Math.RandomFloatInclusive(attributes.quantityMin,attributes.quantityMax);
314 if (item.IsMagazine())
315 {
316 Magazine mag = Magazine.Cast(item);
317
318
319
320
321
322
323
324
325
326
327 {
328 int ammoQuantity = (
int)Math.Lerp(0,mag.GetAmmoMax(),quantity01);
329 mag.ServerSetAmmoCount(ammoQuantity);
330 }
331 }
332 else
333 {
334 float quantityAbsolute = Math.Lerp(item.GetQuantityMin(),item.GetQuantityMax(),quantity01);
335 quantityAbsolute = Math.Round(quantityAbsolute);
336 if (quantityAbsolute <= item.GetQuantityMin() && item.ConfigGetBool("varQuantityDestroyOnMin"))
337 quantityAbsolute++;
339 }
340 }
override bool SetQuantity(float value, bool destroy_config=true, bool destroy_forced=false, bool allow_client=false, bool clamp_to_stack_max=true)