IngRRD/lib/medals
2014-11-26 11:25:42 +01:00

99 lines
2.0 KiB
Bash

#!/bin/bash
medals() {
local \
stat \
if [[ -f .innovator ]]
then
innovator=$(<.innovator)
else
innovator=0
fi
if (( innovator >= 1 ))
then
(( bronzecount++ ))
bronzes+=( innovator )
else
nosilver["Innovator"]=1
fi
if (( innovator >= 2 ))
then
(( silvercount++ ))
silvers+=( innovator )
else
nobronze["Innovator"]=1
fi
if (( innovator >= 3 ))
then
(( goldcount++ ))
golds+=( innovator )
else
nogold["Innovator"]=1
fi
if (( innovator >= 4 ))
then
(( platinumcount++ ))
platinums+=( innovator )
else
noplatinum["Innovator"]=1
fi
if (( innovator == 5 ))
then
(( blackcount++ ))
blacks+=( innovator )
else
noblack["Innovator"]=1
fi
for stat in "${medals[@]}"
do
if (( last["$stat"] >= bronze["$stat"] ))
then
(( bronzecount++ ))
bronzes+=( "$stat" )
else
upbronze[last["$stat"] * 100 / bronze["$stat"]]+="$stat "
fi
if (( last["$stat"] >= silver["$stat"] ))
then
(( silvercount++ ))
silvers+=( "$stat" )
elif (( last["$stat"] >= bronze["$stat"] ))
then
upsilver[( last["$stat"] - bronze["$stat"] ) * 100 / ( silver["$stat"] - bronze["$stat"] )]+="$stat "
else
nosilver["$stat"]=1
fi
if (( last["$stat"] >= gold["$stat"] ))
then
(( goldcount++ ))
golds+=( "$stat" )
elif (( last["$stat"] >= silver["$stat"] ))
then
upgold[( last["$stat"] - silver["$stat"] ) * 100 / ( gold["$stat"] - silver["$stat"] )]+="$stat "
else
nogold["$stat"]=1
fi
if (( last["$stat"] >= platinum["$stat"] ))
then
(( platinumcount++ ))
platinums+=( "$stat" )
elif (( last["$stat"] >= gold["$stat"] ))
then
upplatinum[( last["$stat"] - gold["$stat"] ) * 100 / ( platinum["$stat"] - gold["$stat"] )]+="$stat "
else
noplatinum["$stat"]=1
fi
if (( last["$stat"] >= black["$stat"] ))
then
(( blackcount++ ))
blacks+=( "$stat" )
elif (( last["$stat"] >= platinum["$stat"] ))
then
upblack[( last["$stat"] - platinum["$stat"] ) * 100 / ( black["$stat"] - platinum["$stat"] )]+="$stat "
else
noblack["$stat"]=1
fi
done
}