2021-04-06 09:50:09 +02:00
|
|
|
import { CONSTANTS } from "../Constants";
|
2021-09-05 01:09:30 +02:00
|
|
|
import { IPlayer } from "../PersonObjects/IPlayer";
|
2021-04-06 09:50:09 +02:00
|
|
|
|
|
|
|
export function getHospitalizationCost(p: IPlayer): number {
|
2021-09-05 01:09:30 +02:00
|
|
|
let money;
|
|
|
|
if (typeof p.money === "number") {
|
|
|
|
money = p.money;
|
|
|
|
} else {
|
|
|
|
money = p.money.toNumber();
|
|
|
|
}
|
2021-04-06 09:50:09 +02:00
|
|
|
|
2021-09-05 01:09:30 +02:00
|
|
|
if (money < 0) {
|
|
|
|
return 0;
|
|
|
|
}
|
2021-04-06 09:50:09 +02:00
|
|
|
|
2021-09-05 01:09:30 +02:00
|
|
|
return Math.min(money * 0.1, (p.max_hp - p.hp) * CONSTANTS.HospitalCostPerHp);
|
2021-04-06 09:50:09 +02:00
|
|
|
}
|
|
|
|
|
2021-09-05 01:09:30 +02:00
|
|
|
export function calculateHospitalizationCost(
|
|
|
|
p: IPlayer,
|
|
|
|
damage: number,
|
|
|
|
): number {
|
|
|
|
const oldhp = p.hp;
|
|
|
|
p.hp -= damage;
|
|
|
|
const cost = getHospitalizationCost(p);
|
|
|
|
p.hp = oldhp;
|
|
|
|
return cost;
|
|
|
|
}
|