查看: 5776|回复: 3

[有事请教] 如何去做状态与屏障同在的效果

[复制链接]
梦石
0
星屑
1363
在线时间
242 小时
注册时间
2017-11-5
回帖
25
发表于 2019-8-25 23:45:14 | 显示全部楼层 |阅读模式
悬赏50星屑已解决
用了YEP吸收屏障插件,想做一个有护甲时也有状态X,护甲被敌人打没时状态X也消失,不知道用代码怎么写

最佳答案

查看完整内容

[pre lang="javascript"]Window_Base.prototype.drawActorHp = function(actor, wx, wy, ww) { ww = ww || 186; var color1 = this.hpGaugeColor1(); var color2 = this.hpGaugeColor2(); if (actor.barrierPoints() > 0) {//如果有护盾,则绘制护盾状态 color1 = this.textColor(8);//如果有护盾则改变血条颜色1 color2 = this.textColor(7);//如果有护盾则改变血条颜色2 this.drawGauge(wx, w ...
梦石
0
星屑
842
在线时间
174 小时
注册时间
2012-2-7
回帖
33
发表于 2019-8-25 23:45:15 | 显示全部楼层
[pre lang="javascript"]Window_Base.prototype.drawActorHp = function(actor, wx, wy, ww) {
    ww = ww || 186;
    var color1 = this.hpGaugeColor1();
    var color2 = this.hpGaugeColor2();
    if (actor.barrierPoints() > 0) {//如果有护盾,则绘制护盾状态
      color1 = this.textColor(8);//如果有护盾则改变血条颜色1
      color2 = this.textColor(7);//如果有护盾则改变血条颜色2
      this.drawGauge(wx, wy, ww, actor.hpRate(), color1, color2);
      this.drawBarrierGauge(actor, wx+5, wy+45, ww);//绘制护盾图标,wx和wy是位置
    }else{
    this.drawGauge(wx, wy, ww, actor.hpRate(), color1, color2);
    }
    this.changeTextColor(this.systemColor());
    var c1 = this.hpColor(actor);
    var c2 = this.normalColor();
    this.drawCurrentAndMax(actor.hp, actor.mhp, wx, wy+10, ww, c1, c2);
};


Window_Base.prototype.drawBarrierGauge = function(actor, wx, wy, ww) {
    var ph = Window_Base._iconHeight;
          this.drawIcon(90,wx,wy-ph);
    this.drawText(actor.barrierPoints(), wx, wy-ph-3, 32,'center');
}[/pre]

这是我只用的代码,只要插入YEP_AbsorptionBarrier(YEP护盾屏障的插件)代码最后就行
实际想效果如下图
QQ图片20200926141655.png QQ图片20200926141701.png
回复

使用道具 举报

梦石
0
星屑
1363
在线时间
242 小时
注册时间
2017-11-5
回帖
25
 楼主| 发表于 2019-8-26 08:23:34 | 显示全部楼层
<Custom Passive Condition>
  if (this._battler.barrierPoints() != 0) {
    condition = false;
  } else {
    condition = true;
  }
</Custom Passive Condition>
用了自动被动插件后写的 但是不对····
回复

使用道具 举报

梦石
0
星屑
1363
在线时间
242 小时
注册时间
2017-11-5
回帖
25
 楼主| 发表于 2019-8-26 13:04:56 | 显示全部楼层
本帖最后由 421342121 于 2019-8-26 13:06 编辑

<Custom Confirm Effect>
if (角色受到X点伤害) {
  target.removeState(id);
}
</Custom Confirm Effect>

无法采用护盾值的话我打算用受到伤害来做,角色受到多少伤害如何正确写出 望指教
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部