@@ -330,16 +330,17 @@ int lambda = 0; int exit_bonus = 0; int under_warter = 0; @property { - int score() { return lambda*25*(1+exit_bonus) - turn; } + long score() { return lambda*25L*(1+exit_bonus) - turn; } int water_level() { return water.level(turn); } int water_until_rise() { return water.until_rise(turn); } bool cleared() { return exit_bonus>0; } int hp() { return map.waterproof - under_warter; } + long score_if_abort_now() { return lambda*25*(1+max(1,exit_bonus)) - turn; } } } unittest { Game.load(["###","...","#RL"], ["xxx":"yyy"]); }