Project1

标题: 请问如何做到清空背包进入地图,搜刮地图,带回家里 [打印本页]

作者: DCASH45    时间: 2021-7-5 18:48
标题: 请问如何做到清空背包进入地图,搜刮地图,带回家里
本帖最后由 DCASH45 于 2021-7-5 18:51 编辑

请问如何做出进一个关卡清空背包,然后退出关卡搜刮的物品都会带出来,放在进关卡前的背包,如果死亡则清空背包,返回出发前。
这种效果能做出来吗?
作者: Retsu    时间: 2021-7-5 21:40
变量A=物品A数量
变量B=物品B数量
……
……

物品A数量 减少 变量A
物品B数量 减少 变量B
……
……

出来之后
物品A数量 增加 变量A
物品B数量 增加 变量B
……
……


比较繁琐,应该能达到效果
作者: 鼠曲草    时间: 2021-7-6 00:19
做应该能做,但是不是用事件。。至少也是把物品数据要用脚本保存一下吧
具体的我就不懂了,我对脚本一无所知等一个代码我也学习一下
作者: DCASH45    时间: 2021-7-6 00:43
Retsu 发表于 2021-7-5 21:40
变量A=物品A数量
变量B=物品B数量
……

刚刚去试了下,成功了,厉害,但是太多东西了,有没有可以实现这种功能的插件啊
作者: DCASH45    时间: 2021-7-6 00:43
鼠曲草 发表于 2021-7-6 00:19
做应该能做,但是不是用事件。。至少也是把物品数据要用脚本保存一下吧
具体的我就不懂了,我对脚本一无所 ...

2楼的大佬那个可以做,但是东西太多了,就没有那种插件吗
作者: QChan    时间: 2021-7-6 02:59
本帖最后由 QChan 于 2021-7-6 03:02 编辑

我试着做了个脚本,不太确定有没有什么BUG。
你丢到 js/plugins 里面,然后插件管理器启用这个插件。

然后就可以用插件指令了


插件指令有下面这些
qchan_saveitem save
保存当前背包, 并且清空背包
保存的物品信息会写到你的存档里。

qchan_saveitem clearsave
清除已经保存的物品

qchan_saveitem clearitems
清除当前背包物品

qchan_saveitem merge
qchan_saveitem merge2
把保存的物品合并到当前背包
merge 和 merge2 功能是一样的,merge 是独立的给予物品, merge2 是用系统自己的给予物品。
如果有装一些提醒获取物品的插件,用 merge2 可能会触发。


你可以进入关卡前用一下 qchan_saveitem save 保存背包,通关后出来后用一下 qchan_saveitem merge 合并背包。
如果是死亡的话可以用 qchan_saveitem clearitems 清空背包, 出来再用 qchan_saveitem merge 把旧背包恢复。


如果你有装 YEP_ItemCore 插件,那个插件的独立物品可能会无法保存,那边代码太多了,我暂时没弄懂,所以还没兼容。

QChan_SaveItem.rar

1.03 KB, 下载次数: 34


作者: DCASH45    时间: 2021-7-6 03:20
QChan 发表于 2021-7-6 02:59
我试着做了个脚本,不太确定有没有什么BUG。
你丢到 js/plugins 里面,然后插件管理器启用这个插件。

大佬大佬,可以加qq聊一聊吗!3156457306,谢谢你!!!
作者: 开关关    时间: 2021-7-6 03:33
本帖最后由 开关关 于 2021-7-6 06:01 编辑

哈哈,写完插件发现撞车了。_(:з」∠)_ 不过这个插件用起来和楼上的有点不同,还是发出来吧。
插件内容

[line]3[/line]
具体到楼主这个案例,用法就是:

进一个关卡时,需要切换到另一个背包,这里就暂且命名为a吧。
JAVASCRIPT 代码复制
  1. $gameParty.useAnotherItems("a");

顺利打通关卡,则切换回原版背包,然后将背包a合并到原版背包,最后清空背包a。
JAVASCRIPT 代码复制
  1. $gameParty.useOriginalItems();
  2. $gameParty.mixAnotherItems("a");
  3. $gameParty.deleteAnotherItems("a");

如果半路失败了,失败退出关卡,则切换回原版背包,不合并,直接清空背包a。
JAVASCRIPT 代码复制
  1. $gameParty.useOriginalItems();
  2. $gameParty.deleteAnotherItems("a");


作者: DCASH45    时间: 2021-7-6 04:28
开关关 发表于 2021-7-6 03:33
哈哈,写完插件发现撞车了。_(:з」∠)_ 不过这个插件用起来和楼上的有点不同,还是发出来吧。
[fold=插件 ...

谢谢大哥!!!
作者: DCASH45    时间: 2022-7-23 16:51
QChan 发表于 2021-7-6 02:59
我试着做了个脚本,不太确定有没有什么BUG。
你丢到 js/plugins 里面,然后插件管理器启用这个插件。

大佬在吗,最近做游戏遇到很多困难,希望可以得到您的帮助!我发现找不到你的QQ了,可以发给我嘛谢谢麻烦了




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