【解決済み】『用語』で設定した単語と異なる単語を表示する

k.a.i
記事: 14
登録日時: 2018年3月31日(土) 09:07

【解決済み】『用語』で設定した単語と異なる単語を表示する

投稿記事by k.a.i » 2018年7月15日(日) 07:31

いつもお世話になっております。
質問内容は、件名のとおりです。

例えば『用語』でアイテムを『ITEM』と設定します。
その場合、当然メニューなどで『ITEM』と表示されます。
これはrpg_managersのObject.definePropertiesの項目で設定されていると思われるのですが、
そこの記述を書き換えて、ゲーム中で別の単語を表示するようにはできないでしょうか。

用途としては、『用語』で設定した単語を参照するプラグインがあり、
用語ではそのプラグインの動作を優先して単語を設定しているのですが、
ゲーム中ではその単語を表示したくないのです。
(例:用語ではアイテムをITEMと設定しなければならないのですが、
ゲーム中の表示ではアイテムと表示したいのです)

これは、可能でしょうか?どなたかご教授いただければ幸いです。
よろしくお願い致します。
最後に編集したユーザー k.a.i on 2018年9月10日(月) 04:30 [ 編集 1 回目 ]

アバター
しぐれん
記事: 972
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by しぐれん » 2018年7月15日(日) 21:31

具体的には何のプラグインを使っているのでしょうか?
それがわからないと回答できないと思います・
現在、プラグイン依頼はお休み中です。
k.a.i
記事: 14
登録日時: 2018年3月31日(土) 09:07

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by k.a.i » 2018年7月16日(月) 07:29

しぐれん様

いつもありがとうございます。
そのプラグインとは、moghunterさんのMOG_BattleCommandsというものです。
戦闘コマンドをリング状に表示するというもので、先日もこのプラグインの修正を
当フォーラムにてお願いした経緯があります。
コマンドアイコンのimgファイル名を半角英数にしなければならない都合上、
用語関係も半角英数に統一する必要があり、例えば攻撃をattackに設定する必要があります。
ただ、アイテムをitemとするとメニュー画面のメニューも全て英語に統一する必要があり、
見栄えが変わってきます。

と、ここまでご説明しましたが、プラグインの挙動、競合などは考慮していただく必要はありません。
単純に、「用語で設定した単語を無視してゲーム中別の単語を表示」できるのかどうか、
お手数でなく現時点でご回答可能でございましたら、どなたかご教授いただければと思い
質問させていただきました。

あるいは、rpg_managers内の
Object.defineProperties(TextManager, {
level : TextManager.getter('basic', 0),
例えばこの記述でおそらく用語に設定した単語を取得している思うのですが
(js素人のため勘です)
TextManager~以降を直接書き換えて用語の単語を無視するという方法は可能でしょうか。
アバター
フトコロ
記事: 1029
登録日時: 2017年2月06日(月) 21:32

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by フトコロ » 2018年7月16日(月) 13:55

k.a.i さんが書きました:あるいは、rpg_managers内の
Object.defineProperties(TextManager, {
level : TextManager.getter('basic', 0),
例えばこの記述でおそらく用語に設定した単語を取得している思うのですが
(js素人のため勘です)
TextManager~以降を直接書き換えて用語の単語を無視するという方法は可能でしょうか。

こんにちは。
先日別のトピックで似たような回答をしましたが
その方法でデータベースの用語とは異なる文字列をTextManagerに設定することが可能です。

ただし、MOG_BattleCommandsプラグイン側の処理を軽くみましたが、
そのTextManagerに設定された文字列を使ってファイル名を探しているで、
残念ですが意味が無いです。
---------------------------------------------------------------------------------------------------
プラグイン置き場(GitHub)
https://github.com/futokoro/RPGMaker/blob/master/README.md

検討中の内容は上記リンク先の「対応するかもしれないプラグインのメモ」を参照してください。
ichi
記事: 14
登録日時: 2018年2月12日(月) 00:10

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by ichi » 2018年7月16日(月) 14:20

練習も兼ねて確認しました。

現在の状況はわかりかねますが、
リング中央に表示される、コマンド名は日本語で設定されれば良いということでよろしいのでしょうか。

前回の質問でご推察の通り
コマンドのアイコンは、「"Com_" + コマンド名」を引数とし
ImageManager.loadBcomで読み込まれます。

直接修正しようと思ったら、
コマンド名(this._list[].name)は、用語やタイプで設定した値ですから(厳密にはaddCommandで設定された値)
コマンド名が"アイテム"である場合、ImageManager.loadBcomの引数を"Com_item"とする条件式を
プラグインに追加すれば、実現は可能かと思われます。

※下記のようなもの
if(this._list[r].name == "アイテム"){
this._com_images.push(ImageManager.loadBcom("Com_item"));
}else{
this._com_images.push(ImageManager.loadBcom("Com_" + this._list[r].name));
}

しかしこれを全コマンド分やろうとするのは、綺麗ではないし、
(コマンド名から、読む画像を直接指定するだけですからね...)
日本語で設定されていることの影響範囲を不明です。
やりようはいくつもありますが、本当に簡単なもので参考程度に

すでに把握している、またはずれた回答をしていた場合、申し訳ございません。
また、回答に誤り等があればご教授頂けると幸いです。
k.a.i
記事: 14
登録日時: 2018年3月31日(土) 09:07

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by k.a.i » 2018年7月27日(金) 06:34

フトコロ様

返信遅れまして申し訳ありません。
ご検討していただき、ありがとうございました。
k.a.i
記事: 14
登録日時: 2018年3月31日(土) 09:07

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by k.a.i » 2018年7月27日(金) 06:36

ichi様

返信遅れまして申し訳ありません。
貴重なお時間を使ってご検討いただき、ありがとうございます。
作っていただいたコードを元にこれから動作確認させていただくところでした。

取り急ぎお礼まで。ありがとうございました。
ぶろっく
記事: 17
登録日時: 2018年1月13日(土) 20:52

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by ぶろっく » 2018年7月29日(日) 20:51

すみません、横から失礼いたします。
自分もk.a.i様と同じ問題で、頭を悩ませています。

ichi様がご教示して下さったやり方を試そうとしたのですが、JSの勉強不足の為
プラグインのどの部分に、条件式を導入していいのかわかりません。

また他にもやりようがあるみたいなので、他の方法も教えていただけるとありがたいです…。
ichi
記事: 14
登録日時: 2018年2月12日(月) 00:10

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by ichi » 2018年8月03日(金) 00:00

上記の「this._com_images.push(ImageManager.loadBcom("Com_" + this._list[r].name));」は
もともと記載されているものですから、これで検索すれば条件の記載箇所は把握できるかと思います。

※例で記載したものはあくまで、コマンドが"アイテム"であった場合について
記載したもので、そっくりそのまま追記すればエラーが解消されるというものではありません。
この方法でエラーを回避する場合、コマンドがアイテム以外の場合の条件式をつらつら書く必要があります。

また他のやり方についてですが、説明が長々となってしまうので、割愛させてください。
個人的にはこの方法が一番難易度が低いかと思います。
ぶろっく
記事: 17
登録日時: 2018年1月13日(土) 20:52

Re: 『用語』で設定した単語と異なる単語を表示する

投稿記事by ぶろっく » 2018年8月06日(月) 18:49

>ichi様

教えてくださった方法で、問題を解決することが出来ました!
本当にありがとうございます!


※※※

MOG_BattleCommandsのJS内にある
this._com_images.push(ImageManager.loadBcom("Com_" + this._list[r].name));を

ichi様の例に記載されている
if(this._list[r].name == "アイテム"){
this._com_images.push(ImageManager.loadBcom("Com_item"));
}else{
this._com_images.push(ImageManager.loadBcom("Com_" + this._list[r].name));
}
にまるっと置き換えることで出来ました。
(自分の場合、アイテムは「道具」という用語にしてましたので、そちらのみ変更しました)

“MV:質問” へ戻る