Project1

标题: 个人项目,微偿求一个关于副本的小插件!!!!!! [打印本页]

作者: a2132635    时间: 2023-10-17 14:10
标题: 个人项目,微偿求一个关于副本的小插件!!!!!!
副本插件需求
1.使用插件管理所有的副本,每一个副本是一个独立的地图,有着独立的数据(副本地图中的敌人对应已经设置好的)填入副本对应的地图ID进行管理。进入副本后,刷新副本地图中的数据
(1)地图内的所有事件恢复到初始位置,包括
①地图中的人物与触发的事件,以及还原人物的初始位置
②地图上已激活的机关事件
③已被销毁的事件(破坏销毁;比如说事件01关闭,隐藏了物体等情况)
2.可以通过插件设置副本通关奖励(事件控制),设置副本的通关条件(任务不满足时副本通关奖励无法拿到)。并可填写原生RM事件ID,当副本条件满足后,激活该事件(副本通关奖励)。
3.插件可以管理多个副本。暂定为30个。


副本:天迹山脉
示意地图如下

副本通关条件:
① 击败公主
② 击败山坡上的王子
③ 与副本入口的勇者对话.

按照示意流程,对完话,打BOSS1号,打碎罐子,拿奖励,然后走小路打BOSS2,最后回到入口NPC,获得奖励箱子。
因我目前的技术,只能做一次性副本,即里面的一切都无法重置----------切 换到事件2关闭事件1后,如何重置?主要是这个问题

逛了一圈论坛,好像没有找到类似的。故在此恳求大佬能够出手。

QQ图片20231017134421.png (1.1 MB, 下载次数: 17)

QQ图片20231017134421.png

作者: shiroin    时间: 2023-10-17 14:33
你只是做不到重置事件的话,开关调控和“暂时消除事件”功能不能完成你的需求吗?
作者: xiamumomo    时间: 2023-10-18 10:12
这种重置位置Drill有其他的开关什么的在转场时候处理就好了  
var key = [mapId, eventId, 'A-D']
$gameSelfSwitches.setValue(key, true);
这是开关脚本形式 mapId指的是地图ID  eventId指的是事件ID那个地图的事件ID   'A-D'这是那个事件的独立开关
灵活运用 有的插件做出来更麻烦
作者: 151502289882    时间: 2023-10-18 10:24
把副本的每个事件都弄个开关,事件结束了开关打开。
然后在公共事件新增一个FB刷新,功能就是把副本开关都关闭
出副本或者打败boss后,用公共事件——FB刷新

可以参考我最近在做的游戏
链接:https://pan.baidu.com/s/1worvbkqPt3elXwVvKx1FGw
提取码:cufj
--来自百度网盘超级会员V7的分享
作者: sd0022556    时间: 2023-10-20 00:36
本帖最后由 sd0022556 于 2023-11-9 23:57 编辑

这个简单啊

图片1.png (25.5 KB, 下载次数: 21)

图片1.png

图片2.png (64.11 KB, 下载次数: 18)

图片2.png

图片3.png (49.51 KB, 下载次数: 20)

图片3.png

图片4.png (62.12 KB, 下载次数: 17)

图片4.png

5.png (69.82 KB, 下载次数: 21)

5.png

作者: sd0022556    时间: 2023-10-20 00:39
sd0022556 发表于 2023-10-20 00:36
这个简单啊
1.首先,整个的循环有3个主要事件:地图入口,副本出口,boos

进入出去的图片反了
作者: a2132635    时间: 2023-10-20 08:53
sd0022556 发表于 2023-10-20 00:36
这个简单啊
1.首先,整个的循环有3个主要事件:地图入口,副本出口,boos

谢谢大佬!万分感谢。如果可以我会在我的游戏里加上大佬的角色作为感谢
作者: a2132635    时间: 2023-10-20 08:54
151502289882 发表于 2023-10-18 10:24
把副本的每个事件都弄个开关,事件结束了开关打开。
然后在公共事件新增一个FB刷新,功能就是把副本开关都 ...

谢谢大佬指点。我先去尝试一下。
公共事件那一块只浅浅的运用了一下,还要再看看
作者: a2132635    时间: 2023-10-20 08:56
xiamumomo 发表于 2023-10-18 10:12
这种重置位置Drill有其他的开关什么的在转场时候处理就好了  
var key = [mapId, eventId, 'A-D']
$gameSel ...

呃啊....drill
作者: a2132635    时间: 2023-10-20 08:57
xiamumomo 发表于 2023-10-18 10:12
这种重置位置Drill有其他的开关什么的在转场时候处理就好了  
var key = [mapId, eventId, 'A-D']
$gameSel ...

先谢谢大佬的指点。呃,关于drill大佬的系列插件,已经在学习了,大佬您说的东西,还没看到这里估计,我先保存看看。谢谢大佬
作者: a2132635    时间: 2023-10-20 08:59
shiroin 发表于 2023-10-17 14:33
你只是做不到重置事件的话,开关调控和“暂时消除事件”功能不能完成你的需求吗? ...

大佬。这个可以做到我进来打完BOSS1,开了一个箱子。然后又传送出去,再次进来,箱子会还原吗?
另外,在副本里面,如果说我有几十个箱子,每一个箱子我都需要做一次管理吗?
作者: a2132635    时间: 2023-10-20 09:00
补充描述
假设一个副本里面,打完一个boss,事件奖励显示20个宝箱。下一次来副本的时候,是不是每一个宝箱我都要去做一次刷新啊?大佬们

作者: shiroin    时间: 2023-10-20 11:39
a2132635 发表于 2023-10-20 08:59
大佬。这个可以做到我进来打完BOSS1,开了一个箱子。然后又传送出去,再次进来,箱子会还原吗?
另外,在 ...

你可以给宝箱事件进行模块化,建立一个事件模块地图,专门放置经常需要重复利用的事件模板
然后需要的时候,通过事件复制插件进行调用,这样首先解决你说的几十个箱子太麻烦的问题

其次暂时消除事件会在刷新地图后重新出现,所以传送出去再次进来,箱子确实会还原,你担心玩家可以借这个机制去刷宝箱,可以增肌开关的调控,只有打倒BOSS才能接触宝箱,BOSS如何刷新就得看你游戏具体的机制
作者: sd0022556    时间: 2023-10-20 14:05
a2132635 发表于 2023-10-20 08:53
谢谢大佬!万分感谢。如果可以我会在我的游戏里加上大佬的角色作为感谢 ...

好兄弟要有想象力啊o(╥﹏╥)o
1.你可以把箱子想象成不会战斗的boos
2.点击宝箱1,触发开关,--宝箱1=开启,然后事件页2,开关为宝箱1=开启,内容空着就行
3.副本的进入的刷新,离开副本,打完boos的传送,事件页里加入宝箱1=关闭就行了啊
4.宝箱开关因为进出的时候关闭了,所以’宝箱1’这个开关你所有的副本都可以用(只有副本啊)
5.最后,如果你说的微尝时你的游戏里的npc的话,那就不用了
作者: a2132635    时间: 2023-10-20 16:42
sd0022556 发表于 2023-10-20 14:05
好兄弟要有想象力啊o(╥﹏╥)o
1.你可以把箱子想象成不会战斗的boos
2.点击宝箱1,触发开关,--宝箱1=开 ...

哈哈,那没有。我说的微偿是奶茶钱。npc是给一些帮助我的大佬感谢用的
具体我在琢磨琢磨
作者: a2132635    时间: 2023-10-20 16:43
shiroin 发表于 2023-10-20 11:39
你可以给宝箱事件进行模块化,建立一个事件模块地图,专门放置经常需要重复利用的事件模板
然后需要的时 ...

原来如此。谢谢大佬
作者: sd0022556    时间: 2023-10-20 17:06
a2132635 发表于 2023-10-20 16:42
哈哈,那没有。我说的微偿是奶茶钱。npc是给一些帮助我的大佬感谢用的
具体我在琢磨琢磨 ...

好吧,我明白了,你的目的不是为了解决问题,而是那个副本脚本,打扰了
作者: a2132635    时间: 2023-10-21 19:49
sd0022556 发表于 2023-10-20 17:06
好吧,我明白了,你的目的不是为了解决问题,而是那个副本脚本,打扰了 ...

是用插件用爽了,自己就不想去写事件管理了。嘿嘿




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