Project1

标题: 求大佬帮写个菜单画面中血条变色的插件吧! [打印本页]

作者: 雷影    时间: 2023-4-10 18:52
标题: 求大佬帮写个菜单画面中血条变色的插件吧!
在搞一个野生的工程,想把血条改成不能直接看到血量多少的模式。
想法1:就是改成生化危机的心电图哪样。不过似乎比较麻烦?
想法2:血条并不会因为受伤而逐渐变短!单纯血条变色。血量75%以上时绿色,25%以上时黄色,25%以下时红色!

能实现其中一种方式就可以 了!
这几天尝试用AI帮忙,可折腾半天就是搞不出来,果然自己不懂代码,找AI也没用,看不懂。
作者: 余杭    时间: 2023-4-10 18:52
本帖最后由 余杭 于 2023-4-10 23:04 编辑

这样可以满足条件二,你这个要求心电图的样式我没见过,也不知道怎么做。

用这个需要在插件里安装 Drill 大佬的 Drill_CoreOfColor.js 插件才能用。

color123 的 [] 里面的数字就是 Drill_CoreOfColor 中的颜色。

想要去掉血量数字的话就把最后 drawCurrentAndMax 那一行注释掉或者删掉。

JAVASCRIPT 代码复制
  1. Window_Base.prototype.drawGaugeHHPP = function(x, y, width, rate, color1, color2, color3) {
  2.     var fillW = Math.floor(width * 1);
  3.     var gaugeY = y + this.lineHeight() - 18;
  4.     this.contents.fillRect(x, gaugeY, width, 16, this.gaugeBackColor());
  5.         if (rate <=0.25) {
  6.                 this.contents.gradientFillRect(x, gaugeY, fillW, 16, color1, color1);
  7.         } else if (rate <= 0.75) {
  8.                 this.contents.gradientFillRect(x, gaugeY, fillW, 16, color2, color2);
  9.         } else {
  10.                 this.contents.gradientFillRect(x, gaugeY, fillW, 16, color3, color3);
  11.         }
  12. };
  13.  
  14. Window_Base.prototype.drawActorHp = function(actor, x, y, width) {
  15.     width = width || 186;
  16.     var DrillColors = DrillUp.g_COC_color_list;
  17.     var color1 = DrillColors[1].color;
  18.     var color2 = DrillColors[2].color;
  19.     var color3 = DrillColors[3].color;
  20.     this.drawGaugeHHPP(x, y, width, actor.hpRate(), color1, color2, color3);
  21.     // this.drawGauge(x, y, width, actor.hpRate(), color1, color2);
  22.     this.changeTextColor(this.systemColor());
  23.     this.drawText(TextManager.hpA, x, y, 44);
  24.     this.drawCurrentAndMax(actor.hp, actor.mhp, x, y, width, this.hpColor(actor), this.normalColor());
  25. };

作者: 雷影    时间: 2023-4-11 08:07
余杭 发表于 2023-4-10 18:52
这样可以满足条件二,你这个要求心电图的样式我没见过,也不知道怎么做。

用这个需要在插件里安装 Drill  ...

谢谢!完全符合要求!有点小问题!我加大了血条长度宽度想放在头像后面当背景色,发现结果是挡住了头像,调整了插件顺序也不行,是显示优先度的问题么?
作者: 余杭    时间: 2023-4-11 09:05
雷影 发表于 2023-4-11 08:07
谢谢!完全符合要求!有点小问题!我加大了血条长度宽度想放在头像后面当背景色,发现结果是挡住了头像, ...

的确是优先度问题,先绘制的会在下面,你想把血条放头像下面的话,有很多地方都要改了,不如不放在头像下面
作者: 雷影    时间: 2023-4-12 23:50
本帖最后由 雷影 于 2023-4-12 23:54 编辑
余杭 发表于 2023-4-11 09:05
的确是优先度问题,先绘制的会在下面,你想把血条放头像下面的话,有很多地方都要改了,不如不放在头像下 ...


大佬!我想到血条改成心电图的方法了,不知道可不可行?
在这个插件基础上!能不能改成或者加上指定数据库里ID的动画?
预设3种心电图的动画,在3个状态下分别循环播放就可以了!

另外在3个血量判断里,增加一个优先级比较高的 中毒 紫色状态成第四个状态可行不!

作者: 余杭    时间: 2023-4-13 00:05
雷影 发表于 2023-4-12 23:50
大佬!我想到血条改成心电图的方法了,不知道可不可行?
在这个插件基础上!能不能改成或者加上指定数据 ...

状态可以,动画不好改,他们用的窗口不一样
作者: 雷影    时间: 2023-4-13 07:32
余杭 发表于 2023-4-13 00:05
状态可以,动画不好改,他们用的窗口不一样

不能显示动画,哪显示图片行么?比如类似步行图哪样,可以动的帧数比较多的步行图?
作者: 小怪兽奇奇侠    时间: 2023-4-13 08:30
竟是06年的大佬




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1