赞 | 2 |
VIP | 341 |
好人卡 | 22 |
积分 | 6 |
经验 | 66602 |
最后登录 | 2024-5-19 |
在线时间 | 1243 小时 |
Lv2.观梦者 (管理员) 八云紫的式神
- 梦石
- 0
- 星屑
- 604
- 在线时间
- 1243 小时
- 注册时间
- 2008-1-1
- 帖子
- 4282
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
自定义事件触发条件,就是不用RMVX自带的事件触发条件,而是指定别的条件
例如角色位置 等
使用方法:
建立一个事件,触发方式为自动触发
在第一句写上条件
注意:如果事件不能正常终止,请在事件最后加一句脚本
$game_map.need_refresh = true
范例:http://rpg.blue/upload_program/files/Project4_99853904.rar
- class Game_Player < Game_Character
- attr_accessor:refresh_by_step_zh99998
- alias check_event_trigger_here_zh99998 check_event_trigger_here
- alias initialize_zh99998 initialize
- def initialize
- @refresh_by_step_zh99998 = []
- initialize_zh99998
- end
- def check_event_trigger_here(triggers) #定义每步刷新
- refresh_by_step_zh99998.each do |i| #循环每个条件
- unless eval(i[0]) == i[1] #如果与登记的结果不同
- $game_map.need_refresh = true #地图刷新
- $game_player.refresh_by_step_zh99998 = [] # 清空条件
- end
- end
- check_event_trigger_here_zh99998(triggers)
- end
- end
- class Game_Event < Game_Character
- alias conditions_met_zh99998? conditions_met?
- def conditions_met?(page)
- c = page.list[0]
- return conditions_met_zh99998?(page) unless c.code == 108
- c = c.parameters[0] #取出注释内容
- $game_player.refresh_by_step_zh99998.push([c,eval(c)]) #登记条件和结果
- return eval(c) #判断是否符合
- end
- 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 进行了编辑] |
|