YEP_BattleEngineCore、YEP_X_BattleSysATB
を使用してATBを作っているのですが、
戦闘中、HP表示がどうしても現在HPの表示だけになってしまいます。
導入前のように、【現在HP/最大HP】といった
表示にしたいです。
中身を覗いてみたりもしましたが、
どう編集すればいいかさっぱりわかりませんでした。。
解決作を教えていただけると嬉しいです。
Yanfly様のプラグインによるHP表示について
トピックの投稿
返信へ返信 2 / 2ページ
Re: Yanfly様のプラグインによるHP表示について
バックアップした上で、YEP_BattleEngineCore内の同名functionを以下に差し替えてください。
その上で
この行の108の値を順次拡大してお好みの幅にしてみてください。(最大203まで)
尚、HPが3桁以下である事が確定しているのであれば、別の手も取れます。
コード: 全て選択
Yanfly.ATB.Window_BattleStatus_drawGaugeAreaWOTp =
Window_BattleStatus.prototype.drawGaugeAreaWithoutTp;
Window_BattleStatus.prototype.drawGaugeAreaWithoutTp = function(rect, actor) {
if (this.isATBGaugeStyle(2)) {
var totalArea = this.gaugeAreaWidth() - 30;
var hpW = parseInt(totalArea * 108 / 300);
var otW = parseInt(totalArea * 96 / 300);
var atW = totalArea - hpW - otW;
this.drawActorHp(actor, rect.x + 0, rect.y, hpW);
this.drawActorMp(actor, rect.x + hpW + 15, rect.y, otW);
this.drawActorAtbGauge(actor, rect.x + hpW + otW + 30, rect.y, atW);
} else {
Yanfly.ATB.Window_BattleStatus_drawGaugeAreaWOTp.call(this, rect, actor);
}
};
コード: 全て選択
var hpW = parseInt(totalArea * 108 / 300);尚、HPが3桁以下である事が確定しているのであれば、別の手も取れます。
----
-出先に居る場合回答が未テスト状態である事が多い為、テストは重々にお願いいたします。
-基本自分や友人の問題解決は自分で1からプラグインを書いているので、「こういうプラグインはありますか」に対しては助けになれません。ご了承ください。
-出先に居る場合回答が未テスト状態である事が多い為、テストは重々にお願いいたします。
-基本自分や友人の問題解決は自分で1からプラグインを書いているので、「こういうプラグインはありますか」に対しては助けになれません。ご了承ください。
Re: Yanfly様のプラグインによるHP表示について
>剣崎様
書き換えてみたところ
ゲージが溜まっているあいだ、ゲージがCPと重なってしまい、
ゲージが溜まっているあいだと満タンになった時で
ゲージの幅が違ってしまいました。
(満タンになった時のゲージは綺麗に反映されていました!125が理想の値でした!;;)
そして、HPは4桁になる予定です;;
名前は5文字以下、CPは3桁以下というのは
確定しているのですが…;;
かなり不躾なお願いで申し訳ないのですが、
ATBゲージを画像のように、CPの下に反映させる、
なんてことは可能でしょうか…??
書き換えてみたところ
ゲージが溜まっているあいだ、ゲージがCPと重なってしまい、
ゲージが溜まっているあいだと満タンになった時で
ゲージの幅が違ってしまいました。
(満タンになった時のゲージは綺麗に反映されていました!125が理想の値でした!;;)
そして、HPは4桁になる予定です;;
名前は5文字以下、CPは3桁以下というのは
確定しているのですが…;;
かなり不躾なお願いで申し訳ないのですが、
ATBゲージを画像のように、CPの下に反映させる、
なんてことは可能でしょうか…??
Re: Yanfly様のプラグインによるHP表示について
ネコムスメ様
以上をATBプラグイン内同名のfunctionと差し替えた上で、
の行の108の数値を先刻変更した物と同じにしてください
(ここに差異があると溜まった時のゲージと溜まってる最中のゲージが違う事態を招きます)
細かい画面要素の座標調整はかなり手間がかかりますので…
こちら一か所私が察知できなかった場所でATBゲージの再描画が成されていたのが原因です。ネコムスメ さんが書きました:>剣崎様
書き換えてみたところ
ゲージが溜まっているあいだ、ゲージがCPと重なってしまい、
ゲージが溜まっているあいだと満タンになった時で
ゲージの幅が違ってしまいました。
(満タンになった時のゲージは綺麗に反映されていました!125が理想の値でした!;;)
コード: 全て選択
Window_BattleStatus.prototype.redrawATBGaugeRect = function(index, actor) {
var rect = this.gaugeAreaRect(index);
var clrect = this.gaugeAreaRect(index);
var totalArea = this.gaugeAreaWidth();
if ($dataSystem.optDisplayTp) {
var gw = totalArea / 4 - 15;
clrect.x = rect.x + gw * 3 + 44;
clrect.y = rect.y;
clrect.width = gw + 2;
this.contents.clearRect(clrect.x, clrect.y, clrect.width, clrect.height);
this.drawActorAtbGauge(actor, rect.x + gw * 3 + 45, rect.y, gw);
} else {
totalArea -= 30;
var hpW = parseInt(totalArea * 108 / 300);
var otW = parseInt(totalArea * 96 / 300);
var atW = totalArea - hpW - otW;
clrect.x = rect.x + hpW + otW + 29;
clrect.y = rect.y;
clrect.width = atW + 2;
this.contents.clearRect(clrect.x, clrect.y, clrect.width, clrect.height);
this.drawActorAtbGauge(actor, rect.x + hpW + otW + 30, rect.y, atW);
}
};コード: 全て選択
var hpW = parseInt(totalArea * 108 / 300);(ここに差異があると溜まった時のゲージと溜まってる最中のゲージが違う事態を招きます)
普通にプラグインパラメーター「Gauge Style」のUnder Nameではダメなのでしょうか?ネコムスメ さんが書きました: かなり不躾なお願いで申し訳ないのですが、
ATBゲージを画像のように、CPの下に反映させる、
なんてことは可能でしょうか…??
細かい画面要素の座標調整はかなり手間がかかりますので…
----
-出先に居る場合回答が未テスト状態である事が多い為、テストは重々にお願いいたします。
-基本自分や友人の問題解決は自分で1からプラグインを書いているので、「こういうプラグインはありますか」に対しては助けになれません。ご了承ください。
-出先に居る場合回答が未テスト状態である事が多い為、テストは重々にお願いいたします。
-基本自分や友人の問題解決は自分で1からプラグインを書いているので、「こういうプラグインはありますか」に対しては助けになれません。ご了承ください。
Re: Yanfly様のプラグインによるHP表示について
>剣崎様
ありがとうございます!
名前の下だと、名前とゲージがかぶってしまい
画面がすごく見づらくなるんですよね、、、
難しいですよね、諦めます、
不躾なお願いですみませんでした><
ありがとうございます!
名前の下だと、名前とゲージがかぶってしまい
画面がすごく見づらくなるんですよね、、、
難しいですよね、諦めます、
不躾なお願いですみませんでした><