Skip to content
Snippets Groups Projects
Commit 6ba01f09 authored by hexall90's avatar hexall90
Browse files

NaN in losses hoepfully addressed

parent 9bb4fabd
Branches
Tags
No related merge requests found
...@@ -38,30 +38,44 @@ ...@@ -38,30 +38,44 @@
<<elseif $losses > 0>> <<elseif $losses > 0>>
/* if the losses are more than zero */ /* if the losses are more than zero */
/* generates a list of randomized losses, from which each unit picks one at random */ /* generates a list of randomized losses, from which each unit picks one at random */
<<set _losses = $losses>>
<<if $SFIntervention == 1>> <<if $SFIntervention == 1>>
<<set $deployedUnits++>> <<set $deployedUnits++>>
<</if>> <</if>>
<<set _averageLosses = Math.trunc($losses / $deployedUnits)>> <<set _averageLosses = Math.trunc(_losses / $deployedUnits)>>
<<set _lossesList = []>> <<set _lossesList = []>>
<<set _validityCount = 0>> <<set _validityCount = 0>>
<<for _i = 0; _i < $deployedUnits; _i++>> <<for _i = 0; _i < $deployedUnits; _i++>>
<<set _assignedLosses = Math.trunc(Math.clamp(_averageLosses + random(-5,5), 0, 100))>> <<set _assignedLosses = Math.trunc(Math.clamp(_averageLosses + random(-5,5), 0, 100))>>
<<if _assignedLosses > $losses>> <<if _assignedLosses > _losses>>
<<set _assignedLosses = $losses>> <<set _assignedLosses = _losses>>
<<set $losses = 0>> <<set _losses = 0>>
<<else>> <<else>>
<<set $losses -= _assignedLosses>> <<set _losses -= _assignedLosses>>
<</if>> <</if>>
<<set _lossesList.push(_assignedLosses)>> <<set _lossesList.push(_assignedLosses)>>
<<set _validityCount += _assignedLosses>> <<set _validityCount += _assignedLosses>>
<</for>> <</for>>
<<if $losses > 0>> <<if _losses > 0>>
<<set _lossesList[random(_lossesList.length)] += $losses>> <<set _lossesList[random(_lossesList.length - 1)] += _losses>>
<</if>> <</if>>
<<set _lossesList.shuffle()>> <<set _lossesList.shuffle()>>
/* sanity check for losses */
<<set _count = 0>>
<<for _i = 0; _i < _lossesList.length; _i++>>
<<if !isInt(_lossesList[_i])>>
<<set _lossesList[_i] = 0>>
<</if>>
<<set _count += _lossesList[_i]>>
<</for>>
<<if _count < $losses>>
<<set _lossesList[random(_lossesList.length - 1)] += $losses - _count>>
<<elseif _count > $losses>>
<br>@@.red;Error: assigned losses higher than actual losses@@
<</if>>
/* assigns the losses and notify the player */ /* assigns the losses and notify the player */
<<if $deployingBots == 1>> <<if $deployingBots == 1>>
<br> <br>
<br> <br>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment