查看: 4679|回复: 8

[RMVX发布] 自定义事件触发条件

  [复制链接]

八云紫的式神<

梦石
0
星屑
823
在线时间
1255 小时
注册时间
2008-1-1
回帖
3889

烫烫烫

发表于 2008-8-23 01:16:42 | 显示全部楼层 |阅读模式

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

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

×
自定义事件触发条件,就是不用RMVX自带的事件触发条件,而是指定别的条件
例如角色位置 等

使用方法:
建立一个事件,触发方式为自动触发
在第一句写上条件

注意:如果事件不能正常终止,请在事件最后加一句脚本
$game_map.need_refresh = true

范例:http://rpg.blue/upload_program/files/Project4_99853904.rar

  1. class Game_Player < Game_Character
  2.   attr_accessor:refresh_by_step_zh99998
  3.   alias check_event_trigger_here_zh99998 check_event_trigger_here
  4.   alias initialize_zh99998 initialize
  5.   def initialize
  6.     @refresh_by_step_zh99998 = []
  7.     initialize_zh99998
  8.   end
  9.   def check_event_trigger_here(triggers) #定义每步刷新
  10.     refresh_by_step_zh99998.each do |i|  #循环每个条件
  11.       unless eval(i[0]) == i[1]          #如果与登记的结果不同
  12.         $game_map.need_refresh = true      #地图刷新
  13.         $game_player.refresh_by_step_zh99998 = [] # 清空条件
  14.       end
  15.     end
  16.     check_event_trigger_here_zh99998(triggers)
  17.   end
  18. end
  19. class Game_Event < Game_Character
  20.   alias conditions_met_zh99998? conditions_met?
  21.   def conditions_met?(page)
  22.     c = page.list[0]
  23.     return conditions_met_zh99998?(page) unless c.code == 108
  24.     c = c.parameters[0]                   #取出注释内容
  25.     $game_player.refresh_by_step_zh99998.push([c,eval(c)]) #登记条件和结果
  26.     return eval(c)                        #判断是否符合
  27.   end
  28. end
复制代码


附上几个常用的条件:
$game_player.x < 5 and $game_player.y < 5
$game_player.in_area?($data_areas[1])
$game_actors[3].skill_learn?(1)
$game_party.gold > 100

更多请看小幽的脚本查询手册
http://rpg.blue/viewthread.php?tid=73347&ntime=2008%2D7%2D25+8%3A42%3A55

这个脚本用截图看不出任何效果,所以就不发截图了

              [本贴由 八云紫 于 2008-10-30 15:01:39 进行了编辑]
rm for linux(wine)制作中,期待夏娜SAMA能实现到webrm上
梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-8-23
回帖
508
发表于 2008-8-23 02:48:27 | 显示全部楼层
..直接用 并行处理 就得了嘛..
横版卷轴ARPG制作中... 系统80% 素材95% 剧情1%.... 有脚本问题随时吼我- -(被T出)
回复

使用道具 举报

名侦探小柯

梦石
10
星屑
4398
在线时间
3740 小时
注册时间
2006-9-6
回帖
36595

极短27获奖MZ评测员开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

发表于 2008-8-23 02:53:32 | 显示全部楼层
角色位置…… - -
好像直接放个事件或者用并行事件都能做……
不定期回归 ~ 游戏开发之旅
———————————————————————————————
回复

使用道具 举报

八云紫的式神<

梦石
0
星屑
823
在线时间
1255 小时
注册时间
2008-1-1
回帖
3889

烫烫烫

 楼主| 发表于 2008-8-23 03:24:22 | 显示全部楼层
除了角色位置还有别的用处,而且用一句注释比并行+判断省事得多
当有多个需要自定义条件的事件时用这个比用并行流畅,因为这个是每步刷新的
另外,这就是火鸡说的【并行(hang)事件】
rm for linux(wine)制作中,期待夏娜SAMA能实现到webrm上
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
46
在线时间
10 小时
注册时间
2007-5-27
回帖
2407

第1届Title华丽大赛新人奖

发表于 2008-8-23 06:23:59 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-8-21
回帖
35
发表于 2008-8-23 08:39:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

八云紫的式神<

梦石
0
星屑
823
在线时间
1255 小时
注册时间
2008-1-1
回帖
3889

烫烫烫

 楼主| 发表于 2008-8-24 19:24:07 | 显示全部楼层
自己顶一下……召唤火鸡
版主对此帖的评论:『干什么????』,积分『-0』。这些被扣积分的一半会用于对本帖正确答案的悬赏。
rm for linux(wine)制作中,期待夏娜SAMA能实现到webrm上
回复

使用道具 举报

梦石
0
星屑
50
在线时间
134 小时
注册时间
2009-3-29
回帖
376
发表于 2009-5-28 20:11:15 | 显示全部楼层
哈哈,做射击成武器直接打
版主对此帖的评论:『灌水+挖坟』,积分『-10』。这些被扣积分的一半会用于对本帖正确答案的悬赏。
黑之结界勇士
回复

使用道具 举报

梦石
0
星屑
50
在线时间
134 小时
注册时间
2009-3-29
回帖
376
发表于 2009-12-18 21:34:56 | 显示全部楼层
是不是等于  别人NPC跟这个NPC接触都可以的?
黑之结界勇士
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部