2021-03-31 06:45:21 +02:00
|
|
|
import * as React from "react";
|
|
|
|
import { numeralWrapper } from "../../ui/numeralFormat";
|
2021-09-04 09:27:31 +02:00
|
|
|
import { IPlayer } from "../../PersonObjects/IPlayer";
|
2021-03-31 06:45:21 +02:00
|
|
|
|
2021-09-04 09:27:31 +02:00
|
|
|
interface IProps {
|
2021-09-05 01:09:30 +02:00
|
|
|
money: number | string;
|
|
|
|
player?: IPlayer;
|
2021-09-04 09:27:31 +02:00
|
|
|
}
|
|
|
|
export function Money(props: IProps): JSX.Element {
|
2021-09-05 01:09:30 +02:00
|
|
|
if (props.player !== undefined) {
|
|
|
|
if (typeof props.money !== "number")
|
|
|
|
throw new Error(
|
|
|
|
"if player if provided, money should be number, contact dev",
|
|
|
|
);
|
|
|
|
if (!props.player.canAfford(props.money))
|
|
|
|
return (
|
|
|
|
<span className={"unbuyable samefont"}>
|
|
|
|
{numeralWrapper.formatMoney(props.money)}
|
|
|
|
</span>
|
|
|
|
);
|
|
|
|
}
|
|
|
|
return (
|
|
|
|
<span className={"money-gold samefont"}>
|
|
|
|
{typeof props.money === "number"
|
|
|
|
? numeralWrapper.formatMoney(props.money)
|
|
|
|
: props.money}
|
|
|
|
</span>
|
|
|
|
);
|
|
|
|
}
|