現在開発中の『Big Market Simulator』で、ゲーム内のお金の管理方法を変更しました。
これまでは価格を整数(int)の「ドル単位」で管理していたため、
$3、$7、$10
のような価格しか設定できませんでした。
しかし、スーパーの商品価格を作っていくと、
$6.74 $2.99 $12.50
といった、セントまで含んだ価格を設定したくなります。
そこで今回は、ゲーム内部のお金をすべて「1ドル」ではなく、1セントを最小単位とする整数で扱えるように変更しました。
例えば、
としてゲーム内部では管理します。
表示するときだけ、674 を $6.74 の形式に変換しています。
floatで $6.74 をそのまま持つ方法もありますが、お金の計算なので、今回は整数のセント単位で統一することにしました。
商品の仕入れ価格・販売価格だけではなく、プレイヤーの所持金、設備の購入価格、レジでの売上なども順番にセント単位へ移行しています。
また、すでに多数の商品Prefabにドル単位の価格が設定されていたため、Unity Editor拡張も作成しました。
旧価格が $7 なら新しい価格を 700 cents にする、といった変換を対象フォルダ内のPrefabへまとめて適用できるようにしています。
既存のドル価格は移行中の確認用として残しているので、いきなり古いデータを削除せず、動作を確認しながら少しずつ置き換えています。
一見すると小さな変更ですが、お金は商品の購入、販売、設備、レジ、セーブデータなどゲーム内のいろいろなシステムから参照されているため、思った以上に影響範囲が広い修正になりました。
『Big Market Simulator』は現在、Steamでのリリースに向けて、こうした細かい部分も含めて調整を進めています。
フォローすると、開発ログや新作ゲームの公開が通知されます