こんばんは。ごま鍋といいます。
現在、オリジナルの戦闘プラグインを作成しようと考えています。
画像とウィンドウ、文字は表示できたのですが、エネミーのパラメーターや名前をデータベースから引っ張
ってこようとしたところ、上手くいかず困っています。
var enemy = $dataEnemies[1].name;
単純に上記の記載で上手くいくのでは?と思っていたのですが、結果プラグインが機能しなくなりました・・・
サンプルでついてきた「EnemyBook.js」を読んでみたのですが、解決策が思い浮かびません・・・
基本的なことかもしれず申し訳ございませんが、わかる方がおりましたらご教授お願いします。
【解決済み】プラグインでの「$dataEnemies[0].name;」の使用方法について
Re: プラグインでの「$dataEnemies[0].name;」の使用方法について
何がどう機能しなくなったのかわからないので助言できませんが、とりあえず
var enemy = $dataEnemies[1].name;
この記述自体に問題はないと思います。(enemyにID:1の敵の名前が入るはず)
var enemy = $dataEnemies[1].name;
この記述自体に問題はないと思います。(enemyにID:1の敵の名前が入るはず)
Re: プラグインでの「$dataEnemies[0].name;」の使用方法について
奏ねこまさん回答ありがとうございます。
いろいろ試してたら上手くいきました。あってたみたいです。
ありがとうございます。
ただ、違う問題がでてきてしまいました・・・
下記ような問題です。
(function() {
var a = 0; 変数aは正常に動作する。
var enemy = $dataEnemies[1].name; ここに作りたいけど、ここに作るとプラグインが機能しない
ここに作ることができれば、迷うことなく使える。
---------------------------------------------------
途中にいろいろある。
----------------------------------------------------
Scene_Sample.prototype.createSampleWindow = function() {
----------------------------------------------------
中にいろいろある
----------------------------------------------------
var enemy = $dataEnemies[1].name; ここに作れば、この関数内のdrawtextEXで表示できる。
};
Scene_Sample.prototype.update = function() {
this.createSampleWindow();ここで作ったから、ここの中では使えるけど他の関数内でも使いたい。
this.〇〇〇();ここの中では使えない。
};
----------------------------------------------------
})();
$data系のグローバル変数は、
(function() {
のすぐ下で使えないものなのでしょうか?
よかったら、ご教授お願いします。
いろいろ試してたら上手くいきました。あってたみたいです。
ありがとうございます。
ただ、違う問題がでてきてしまいました・・・
下記ような問題です。
(function() {
var a = 0; 変数aは正常に動作する。
var enemy = $dataEnemies[1].name; ここに作りたいけど、ここに作るとプラグインが機能しない
ここに作ることができれば、迷うことなく使える。
---------------------------------------------------
途中にいろいろある。
----------------------------------------------------
Scene_Sample.prototype.createSampleWindow = function() {
----------------------------------------------------
中にいろいろある
----------------------------------------------------
var enemy = $dataEnemies[1].name; ここに作れば、この関数内のdrawtextEXで表示できる。
};
Scene_Sample.prototype.update = function() {
this.createSampleWindow();ここで作ったから、ここの中では使えるけど他の関数内でも使いたい。
this.〇〇〇();ここの中では使えない。
};
----------------------------------------------------
})();
$data系のグローバル変数は、
(function() {
のすぐ下で使えないものなのでしょうか?
よかったら、ご教授お願いします。
Re: プラグインでの「$dataEnemies[0].name;」の使用方法について
ごま鍋 さんが書きました:$data系のグローバル変数は、
(function() {
のすぐ下で使えないものなのでしょうか?
「(function() { のすぐ下」が実行されるときは$data~はまだ存在してませんので。
Scene_Sample.prototype.createSampleWindow の中で取得した $dataEnemies[1].name の値を
Scene_Sample のすべての関数で使いたいなら
var enemy = $dataEnemies[1].name;
ではなく
this.enemy = $dataEnemies[1].name;
としたら良いんじゃないでしょうか。
使うときは this.drawTextEx(this.enemy, ~ という感じで。
Re: プラグインでの「$dataEnemies[0].name;」の使用方法について
奏ねこまさん回答ありがとうございます。
奏ねこまさんのおかげで上手くいきました~。
$data~のことも、大変勉強になりました。
あとthis.について理解が不足してることも判明したので、勉強してみます。
本当にありがとうございました。
奏ねこまさんのおかげで上手くいきました~。
$data~のことも、大変勉強になりました。
あとthis.について理解が不足してることも判明したので、勉強してみます。
本当にありがとうございました。