くろうど さんが書きました:おそらく、そうだと思います。Arkroyal さんが書きました: これはTeki_InfoクラスのdrawActorHpは無視されて、Window_Baseの方が使われているのでしょうか?
シーンクラス側からだと、で呼べると思います。コード: 全て選択
this._TekiWindow.drawActorHp(...省略...);
(クラスと関数の役割としては、Windowクラス内で呼ぶのが良いと思います)
ここらへんは他のクラスを参考にできると思います。
よろしくおねがいします。
やってみたところ、TypeError: Cannot read property 'drawActorHp' of undefinedのエラーが出ます。
コード: 全て選択
Scene_Battle.prototype.createTekiWindow = function() {
this._TekiWindow = new Teki_Info();
this.addWindow(this._TekiWindow);
};
コード: 全て選択
Teki_Info.prototype.drawActorHp = function(actor, x, y, width) {
width = width || 186;
var color1 = this.hpGaugeColor1();
var color2 = this.hpGaugeColor2();
this.drawGauge(x, y, width, 1, color1, color2);
this.changeTextColor(this.systemColor());
this.drawText(TextManager.hpA, x, y, 44);
this.drawCurrentAndMax("??", "??", x, y, width,
this.hpColor(actor), this.normalColor());
コード: 全て選択
Teki_Info.prototype.refresh = function() {
this.contents.clear();
this._TekiWindow.drawActorHp($gameTroop.members()[0],5,50,160);
クラス名と関数名以外は新しく作ったものがないのに、var文が必要なんでしょうか?
もしくは敵専用のゲージを描く関数を作るべきみたいですね…。