こんにちは。
Mr.あきちゃん さんが書きました:ステータス画面の「現在の経験値」というのがどこで表示させているのか
探しているのですが、”現在”とかの文字で検索しても、全く見つからないのです。
「現在の経験値」という文字列は、「データベース>用語>メッセージ」で設定している内容なので
コアスクリプト内を探しても、その文字列を見つけることはできません。
データベースで設定した内容は、dataフォルダ内のjsonファイルに記録されます。
メッセージ系の内容は、System.jsonです。
System.jsonを"現在"で検索すると、"messages":{...,"expTotal":"現在の%1",...} がヒットしますのでこれがそうです。
※"経験値"の部分は、別の用語で登録されています。
JSONファイルのデータは $data**** という形でゲーム内で参照できます。
System.jsonなら、$dataSystemです。
※rpg_manager.js の DataManager._databaseFilesで定義しています
なので、"現在の%1"は、$dataSystem.message.expTotal で参照できます。
Mr.あきちゃん さんが書きました:TextManagerとかいうのが怪しい気がするのですが、いずれにせよどこなのかがわかりません。
ご推察の通りに、MVではメッセージ系の文字列表示にはTextManagerで定義しています。
コード: 全て選択
Object.defineProperties(TextManager, {
略
expTotal : TextManager.getter('message', 'expTotal'),
略
}
上のように定義されているため、
TextManager.expTotal でそのままデータベースで設定した文字列"現在の%1"を参照できます。
Mr.あきちゃん さんが書きました:ステータス画面の「現在の経験値」というのは、どこで表示させているのでしょうか?
実際に画面に表示させている部分は、rpg_window.jsで定義しています。
ステータス画面のウィンドウは Window_Status というクラスです。
このクラスのメソッドでdrawExpInfoがありますが、これが経験値の部分を表示させています。
中身を見るとわかりますが、上のTextManager.expTotalが使われています。
以上、こんな感じです。