Configure anger points per Sarka instead of cars per point

This commit is contained in:
2026-10-17 18:58:35 +02:00
parent 82b52ae1fc
commit 372fca7a68
15 changed files with 125 additions and 59 deletions
+18
View File
@@ -47,6 +47,24 @@ int main(){
for(float bad:{-1.0f,10001.0f,0.5f}){files["legacy"]=files["old"];files["legacy"]["stingerChanceOneIn"]=bad;assert(!s.Read("legacy",loaded));}
files["new"]=files["old"];files["new"]["stingerChanceOneIn"]=15;files["new"]["antiAirChancePercent"]=100;
assert(s.Read("new",loaded)&&loaded->Get("antiAirChancePercent")==100&&loaded->Get("antiPersonnelMineChancePercent")==60);
assert(Settings::AddedDefault("sarkaAngerPerCar")==3);
for(int old=0;old<=5;++old){
files["sarka"]=files["old"];files["sarka"]["sarkaCarsPerAnger"]=old;
assert(s.Read("sarka",loaded)&&loaded->Get("sarkaAngerPerCar")== (old==0?0:3));
}
for(float bad:{-1.0f,6.0f,0.5f}){
files["sarka"]=files["old"];files["sarka"]["sarkaCarsPerAnger"]=bad;
assert(!s.Read("sarka",loaded));
}
for(int points:{0,1,3,5,30}){
files["sarka"]=files["old"];files["sarka"]["sarkaCarsPerAnger"]=0;
files["sarka"]["sarkaAngerPerCar"]=points;
assert(s.Read("sarka",loaded)&&loaded->Get("sarkaAngerPerCar")==points);
}
for(float bad:{-1.0f,31.0f,0.5f}){
files["sarka"]=files["old"];files["sarka"]["sarkaAngerPerCar"]=bad;
assert(!s.Read("sarka",loaded));
}
assert(!s.Read("missing",loaded));
}
''')