Project1

标题: 关于选项的代码,用了后好像有问题,求大大看一下 [打印本页]

作者: 天空娃娃    时间: 2019-9-9 16:32
标题: 关于选项的代码,用了后好像有问题,求大大看一下
就是执行后,选项选择后要重新再点一次确定键,再执行一次才能执行第二段脚本的内容....我该加上什么..求救,在第一段脚本的结尾加长this.setWaitMode('message')会报错....

选项1.png (361.76 KB, 下载次数: 10)

选项1.png

选项2.png (392.76 KB, 下载次数: 11)

选项2.png

作者: a987654    时间: 2019-9-9 21:04
加上那句就是等选完以后才执行下个脚本,出错的时候按f8然后选Console,把错误截图发上来
作者: yang1zhi    时间: 2019-9-9 21:21
$gameMap._interpreter.setWaitMode('message')
作者: 天空娃娃    时间: 2019-9-9 21:34
yang1zhi 发表于 2019-9-9 21:21
$gameMap._interpreter.setWaitMode('message')

这句放在哪里呀....
作者: 天空娃娃    时间: 2019-9-9 21:36
a987654 发表于 2019-9-9 21:04
加上那句就是等选完以后才执行下个脚本,出错的时候按f8然后选Console,把错误截图发上来 ...

突然可以了.....
作者: 天空娃娃    时间: 2019-9-9 21:38
yang1zhi 发表于 2019-9-9 21:21
$gameMap._interpreter.setWaitMode('message')

可以了,谢谢!!!
作者: 天空娃娃    时间: 2019-9-9 21:38
a987654 发表于 2019-9-9 21:04
加上那句就是等选完以后才执行下个脚本,出错的时候按f8然后选Console,把错误截图发上来 ...

谢谢大佬,暂时可以了,等再有问题我再在这个楼问问您
作者: 天空娃娃    时间: 2019-9-9 21:42
a987654 发表于 2019-9-9 21:04
加上那句就是等选完以后才执行下个脚本,出错的时候按f8然后选Console,把错误截图发上来 ...

这个代码只能固定第几个选项执行固定的事件,不能根据不同物品执行不同事件,请问大大根据不同物品执行不同的事件该怎么改呢?
作者: 天空娃娃    时间: 2019-9-9 21:55
yang1zhi 发表于 2019-9-9 21:21
$gameMap._interpreter.setWaitMode('message')

这个代码只能固定第几个选项执行固定的事件,不能根据不同物品执行不同事件,请问大大根据不同物品执行不同的事件该怎么改呢?
作者: a987654    时间: 2019-9-9 22:02
用物品id判断
this._branch[this._indent]
是选中第几项
Object.keys($gameParty._items)[this._branch[this._indent]]
是选中物品id

作者: 天空娃娃    时间: 2019-9-9 22:25
a987654 发表于 2019-9-9 22:02
用物品id判断
this._branch[this._indent]
是选中第几项

谢谢!!!那么下面的case 0的那些就是物品的ID是吧!
作者: 天空娃娃    时间: 2019-9-9 22:28
a987654 发表于 2019-9-9 22:02
用物品id判断
this._branch[this._indent]
是选中第几项

emmm,选项选了没有反应
作者: a987654    时间: 2019-9-9 22:29
对,就没有0了,数据库序号都是从1开始的
作者: 天空娃娃    时间: 2019-9-9 22:31
a987654 发表于 2019-9-9 22:02
用物品id判断
this._branch[this._indent]
是选中第几项

图在下面
作者: 天空娃娃    时间: 2019-9-9 22:32
大佬这里这里

选项3.png (369.24 KB, 下载次数: 9)

选项3.png

选项4.png (435.79 KB, 下载次数: 13)

选项4.png

作者: a987654    时间: 2019-9-9 22:35
也可以把选中物品id放在变量里

作者: a987654    时间: 2019-9-9 22:38
出错的时候按f8然后选Console,把错误截图发上来
作者: a987654    时间: 2019-9-9 23:00
报的错误是非法字符,可能是用了中文的标点符号,你可以设置输入法:中文时使用英文标点
作者: yang1zhi    时间: 2019-9-9 23:30
天空娃娃 发表于 2019-9-9 21:55
这个代码只能固定第几个选项执行固定的事件,不能根据不同物品执行不同事件,请问大大根据不同物品执行不 ...


你建一个数组。
在你添加名字到选项数组里的时候。
把道具ID添加到这个建立的数组里。
你选择后。根据你的this._branch[this._indent]选项号码
来从你建立的数组里取出ID
数组[this._branch[this._indent]]

当然,你如果是按顺序把数据库里从上往下。那按楼上那个方法也行
Object.keys(
就是得出这个哈希表的关键KEY组成的数组
只是有时候,第出的KEY顺序不是从小到大。
数据库有些是空的。


作者: 天空娃娃    时间: 2019-9-9 23:36
a987654 发表于 2019-9-9 23:00
报的错误是非法字符,可能是用了中文的标点符号,你可以设置输入法:中文时使用英文标点 ...

这次没出错了.......但是选了选项后没有反应呀,图在下面....
作者: 天空娃娃    时间: 2019-9-9 23:39
没反应....

选项5.png (343.62 KB, 下载次数: 12)

选项5.png

作者: 天空娃娃    时间: 2019-9-9 23:40
yang1zhi 发表于 2019-9-9 23:30
你建一个数组。
在你添加名字到选项数组里的时候。
把道具ID添加到这个建立的数组里。

大佬可以详细说一下怎么建立,用什么代码么..........没学过编程,求教.....
作者: 天空娃娃    时间: 2019-9-10 09:54
a987654 发表于 2019-9-9 23:00
报的错误是非法字符,可能是用了中文的标点符号,你可以设置输入法:中文时使用英文标点 ...

问题解决了,有反应了,好像变量单纯等于的话没有反应,但是小于或等于和大于或等于的话就有反应了......这个请问怎么肥4....
作者: a987654    时间: 2019-9-10 14:06
看源代码发现,变量是通过===判断相等的,不允许类型自动转换


前面加上+就可以把字符串转换成数字


修改后就是这个样子

作者: 天空娃娃    时间: 2019-9-13 10:13
a987654 发表于 2019-9-10 14:06
看源代码发现,变量是通过===判断相等的,不允许类型自动转换

大佬大佬,我多加一个事件,并且把那个items改成skills第二个就不能显示了.....是因为重叠了,所以不显示么?原来的items还是能显示




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