设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
楼主: 仇九
打印 上一主题 下一主题

[原创发布] 【MV/MZ】虚拟按键QJ-Button 【V1.7】-2022-5-28

[复制链接]

Lv2.观梦者

梦石
0
星屑
341
在线时间
41 小时
注册时间
2022-3-28
帖子
6
1
发表于 2022-6-26 13:39:50 | 显示全部楼层
貌似判定按钮出现的条件有些奇怪
插件代码里的这个地方
  1. NBDirButton.prototype.judge = function() {
  2.     let boo = true;
  3.     if (this.Data.switchScript.length>0) {
  4.         boo = boo&&(!!eval(eval(this.Data.switchScript)));
  5.     }
  6.     if (this.Data.switch>0) {
  7.         boo = boo&&($gameSwitches.value(this.Data.switch));
  8.     }
  9.     if (this.Data.textHide) {
  10.         let ts = $gameMessage.isBusy();
  11.         if (ts) {
  12.             this.textShowDelay = 10;
  13.             boo = false;
  14.         } else if (this.textShowDelay>0) {
  15.             this.textShowDelay--;
  16.             boo = false;
  17.         } else boo = true;
  18.     }
  19.     if (SceneManager._scene) {
  20.         if (this.Data["showOn"+SceneManager._scene.constructor.name.toString()]) {
  21.             boo=boo&&!!eval(this.Data["showOn"+SceneManager._scene.constructor.name.toString()]);
  22.         } else {
  23.             boo=boo&&defaultSceneShow
  24.         }
  25.     } else {
  26.         boo=boo&&defaultSceneShow
  27.     }
  28.     return boo;
  29. };
复制代码

关于this.Data.textHide的判断,里面的else boo = true会不会导致,只要不符合前两个条件就显示,导致前面对脚本和开关的判断无效,从而不能做到全true的时候才能显示
此外,貌似对于this.Data.switchScript.length>0的判断,在插件设置里写了代码,全部删除后会留下一个"",并且把他放到eval里也会返回false,长度也为1,导致即使没写代码也会误判
也可能都是我自己的原因...总感觉关于对话框是否繁忙和脚本内容这两部分的出现条件有些奇怪
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-21 13:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表