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

Project1

 找回密码
 注册会员
搜索
查看: 2889|回复: 13

[已经解决] 请教在地图事件中用$game_temp.common_event_id多次执行同一个事件

[复制链接]

Lv4.逐梦者

梦石
0
星屑
9128
在线时间
463 小时
注册时间
2015-5-8
帖子
865
发表于 2020-4-15 20:39:12 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 taeckle 于 2020-4-15 20:41 编辑

目前是这样的,在地图事件中不管写多少遍$game_temp.common_event_id = 100,最后游戏都只执行1次,比如这么写:
  1. $game_temp.common_event_id = 100
  2. 等待2帧
  3. $game_temp.common_event_id = 100
  4. 等待2帧
  5. $game_temp.common_event_id = 100
  6. 等待2帧
  7. $game_temp.common_event_id = 100
  8. 等待2帧
  9. $game_temp.common_event_id = 100
  10. 等待2帧
复制代码


这里虽然写了5遍运行第100号公共事件但游戏只运行1遍

但要用地图事件指令直接调用第100号公共事件的话,就可以想执行多少遍就执行多少遍,比如在地图事件上这么搞:


请问大神在地图事件中怎么用$game_temp.common_event_id多次执行同一个事件啊?

用指令调用

用指令调用

Lv5.捕梦者

梦石
0
星屑
33138
在线时间
10485 小时
注册时间
2009-3-15
帖子
4756
发表于 2020-4-15 20:48:31 | 显示全部楼层
$game_temp.common_event_id並不是执行公共事件的脚本..只是予约

点评

那执行公共事件的脚本是什么啊?  发表于 2020-4-15 21:04
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
37749
在线时间
5383 小时
注册时间
2006-11-10
帖子
6545
发表于 2020-4-15 21:14:50 | 显示全部楼层
f = []
10086.times {f += $data_common_events[100].list}
$game_system.map_interpreter.setup(f, 0)
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
37749
在线时间
5383 小时
注册时间
2006-11-10
帖子
6545
发表于 2020-4-15 21:15:32 | 显示全部楼层
f = []
10086.times {f += $data_common_events[100].list}
$game_system.map_interpreter.setup(f, 0)
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9128
在线时间
463 小时
注册时间
2015-5-8
帖子
865
 楼主| 发表于 2020-4-15 21:22:10 | 显示全部楼层
灯笼菜刀王 发表于 2020-4-15 21:14
f = []
10086.times {f += $data_common_events[100].list}
$game_system.map_interpreter.setup(f, 0)

多谢大神指点,
请问下那个10086.times {f += $data_common_events[100].list}是什么意思啊?为啥是10086不是66666。。

点评

多谢指点!  发表于 2020-4-16 04:26
把100号公共事件推进一个数组10086次 ==|||,也就是说会执行10086次……  发表于 2020-4-15 23:34
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9128
在线时间
463 小时
注册时间
2015-5-8
帖子
865
 楼主| 发表于 2020-4-15 21:30:32 | 显示全部楼层
还有请问下这句"$game_system.map_interpreter.setup($data_common_events[100].list, 0) "
在地图事件脚本里换行该怎么换啊?



点评

多谢大神指点!  发表于 2020-4-16 04:27
在左小括号、点和逗号后面换  发表于 2020-4-15 23:41
用\换行..  发表于 2020-4-15 22:40
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7941
在线时间
1182 小时
注册时间
2007-7-29
帖子
2055
发表于 2020-4-15 23:43:52 | 显示全部楼层
我顺便提一个很邪恶的方法,使用脚本:
  1. @parameters = [100]
  2. command_117()
复制代码

评分

参与人数 2星屑 +50 +1 收起 理由
RyanBern + 50 认可答案
taeckle + 1 多谢大神指点!

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

发表于 2020-4-16 00:08:25 | 显示全部楼层
正如7楼所说,地图事件里调用公共事件这一指令是方法command_117,此方法里并未操作变量:$game_temp.common_event_id
  1.   #--------------------------------------------------------------------------
  2.   # ● 公共事件
  3.   #--------------------------------------------------------------------------
  4.   def command_117
  5.     # 获取公共事件
  6.     common_event = $data_common_events[@parameters[0]]
  7.     # 公共事件有效的情况下
  8.     if common_event != nil
  9.       # 生成子解释器
  10.       @child_interpreter = Interpreter.new(@depth + 1)
  11.       @child_interpreter.setup(common_event.list, @event_id)
  12.     end
  13.     # 继续
  14.     return true
  15.   end
复制代码

$game_temp.common_event_id是在使用了物品和技能后记录了此物品、技能的公共事件,然后在地图或者战斗中调用

评分

参与人数 2星屑 +50 +1 收起 理由
RyanBern + 50 认可答案
taeckle + 1 多谢大神指点!

查看全部评分

熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-18 15:16

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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