Project1

标题: 如果使角色被事件移动时和事件接触也触发条件 [打印本页]

作者: 越前リョーマ    时间: 2008-4-20 00:34
标题: 如果使角色被事件移动时和事件接触也触发条件
就是说主角被事件控制,
移动了。

然而这时和事件接触也不会有任何反映。

如何使这时有【于主角接触】和【于事件接触】的效果?
作者: 八云紫    时间: 2008-4-20 00:37
那是啥?感觉这样更不好弄。反正都被事件控制了,还需要【于主角接触】效果么?
作者: 越前リョーマ    时间: 2008-4-20 00:44
以下引用八云紫于2008-4-19 16:37:47的发言:

那是啥?感觉这样更不好弄。反正都被事件控制了,还需要【于主角接触】效果么?

特殊情况的需要。
作者: 小鸡三毛老大    时间: 2008-4-20 01:07
以下引用越前リョーマ于2008-4-19 16:44:59的发言:


以下引用八云紫于2008-4-19 16:37:47的发言:

那是啥?感觉这样更不好弄。反正都被事件控制了,还需要【于主角接触】效果么?


特殊情况的需要。

直接用那个控制角色的事件 不就可以了咯

作者: 越前リョーマ    时间: 2008-4-20 01:08
以下引用小鸡三毛老大于2008-4-19 17:07:35的发言:


以下引用越前リョーマ于2008-4-19 16:44:59的发言:


以下引用八云紫于2008-4-19 16:37:47的发言:

那是啥?感觉这样更不好弄。反正都被事件控制了,还需要【于主角接触】效果么?


特殊情况的需要。


直接用那个控制角色的事件 不就可以了咯

但移动时,
有时是无法判断接触的事件时什么的。
作者: adddd    时间: 2008-4-20 01:52
提示: 作者被禁止或删除 内容自动屏蔽
作者: 雪流星    时间: 2008-4-20 13:38
在行动时使用脚本:$game_map.events[事件ID].start强制执行事件
作者: 越前リョーマ    时间: 2008-4-20 18:28
以下引用snstar2006于2008-4-20 5:38:35的发言:

在行动时使用脚本:$game_map.events[事件ID].start强制执行事件


[本贴由作者于 2008-4-20 5:53:29 最后编辑]

可是比如随机移动时不知道会碰到哪个事件,
这样要怎么触发呢……
作者: 光郎    时间: 2008-4-20 19:40
你先用场景描述法说说你要做的效果……
作者: 小柯    时间: 2008-4-20 19:49
你们试着做一下这么个事件大概就知道了:

比如地图上有两个箱子,
角色站在中间,然后进入游戏就由事件控制随机移动,
碰到箱子却无法执行里面的内容。
作者: 沉影不器    时间: 2008-4-20 19:56
提示: 作者被禁止或删除 内容自动屏蔽
作者: 雪流星    时间: 2008-4-20 21:24
以下引用沉影不器于2008-4-20 11:56:54的发言:
事件无效因为主角正在强制行动中,去掉这个判断,自己写其它判断方式吧,或者另加个开关控制

以原先也这样写,但是似乎无效{/gg}
还是我哪里没弄对?
作者: zjx2005    时间: 2008-4-20 23:54
地图X,Y坐标判定吧......
作者: 沉影不器    时间: 2008-4-21 00:43
提示: 作者被禁止或删除 内容自动屏蔽
作者: 越前リョーマ    时间: 2008-4-21 00:46
以下引用沉影不器于2008-4-20 11:56:54的发言:

事件无效因为主角正在强制行动中,去掉这个判断,自己写其它判断方式吧,或者另加个开关控制


#--------------------------------------------------------------------------
# ● 判断正面的事件启动
#     triggers : 目标队列
#--------------------------------------------------------------------------
def check_event_trigger_there(triggers)
   return false if $game_map.interpreter.running? # 这句要是注释掉就能触发了
   result = false
   front_x = $game_map.x_with_direction(@x, @direction)
   front_y = $game_map.y_with_direction(@y, @direction)
   for event in $game_map.events_xy(front_x, front_y)
     if triggers.include?(event.trigger) and event.priority_type == 1
       event.start
       result = true
     end
   end
   if result == false and $game_map.counter?(front_x, front_y)
     front_x = $game_map.x_with_direction(front_x, @direction)
     front_y = $game_map.y_with_direction(front_y, @direction)
     for event in $game_map.events_xy(front_x, front_y)
       if triggers.include?(event.trigger) and event.priority_type == 1
         event.start
         result = true
       end
     end
   end
   return result
end

搜索这段脚本然后后去掉那句?




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