Project1

标题: RMVX脚本咋改,实现战斗结束后调用公共事件? [打印本页]

作者: alonescud    时间: 2008-6-7 07:51
标题: RMVX脚本咋改,实现战斗结束后调用公共事件?
RT

XP我知道。。。VX就不懂了 请请教! [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 3535    时间: 2008-6-7 07:58
common_event = $data_common_events[1]
$game_troop.interpreter.setup(common_event.list, 0)

加在Scene_Battle,def process_victory內。
作者: alonescud    时间: 2008-6-7 08:03
以下引用3535于2008-6-6 23:58:03的发言:

common_event = $data_common_events[1]
$game_map.interpreter.setup(common_event.list, 0)

加在Scene_Battle,def process_victory內。


[本贴由作者于 2008-6-7 0:00:45 最后编辑]


那在调用的那个公共事件里要像XP加以下内容吗?

$game_temp.in_battle = false
$game_party.clear_actions
for actor in $game_party.actors
  actor.remove_states_battle
end
    $game_troop.enemies.clear
    if $game_temp.battle_proc != nil
      $game_temp.battle_proc.call(0)
      $game_temp.battle_proc = nil
    end

作者: alonescud    时间: 2008-6-7 08:07
另外:我刚才试了下,这是在结束后到地图画面才执行事件,我的意思是在最后的战斗画面里。。 [LINE]1,#dddddd[/LINE]版主对此帖的评论:『不要连帖,请善用帖子编辑功能』,积分『-5』。这些被扣积分的一半会用于对本帖正确答案的悬赏。
作者: Infrared    时间: 2008-6-7 08:11
提示: 作者被禁止或删除 内容自动屏蔽
作者: 雪流星    时间: 2008-6-7 08:16
其實不用那麼麻煩
$game_temp.common_event_id = 公共事件編號
就可以了
作者: Infrared    时间: 2008-6-7 08:20
提示: 作者被禁止或删除 内容自动屏蔽
作者: alonescud    时间: 2008-6-7 08:33
以下引用Infrared于2008-6-7 0:20:50的发言:

补充:下面要加多一句:
$game_troop.interpreter.update
以下引用Infrared于2008-6-7 0:20:50的发言:

补充:下面要加多一句:
$game_troop.interpreter.update



那就是 common_event = $data_common_events[10]
  $game_troop.interpreter.setup(common_event.list,0)
  $game_troop.interpreter.update   
对吗?

这样我试过了,好像也是一样,没区别。。。


另外:公共事件里的
    $game_temp.in_battle = false
    $game_party.clear_actions
    for actor in $game_party.actors
      actor.remove_states_battle
    end
    $game_troop.enemies.clear
    if $game_temp.battle_proc != nil
      $game_temp.battle_proc.call(0)
      $game_temp.battle_proc = nil
    end


我删了,因为会出错```

作者: 雪流星    时间: 2008-6-7 08:34
以下引用Infrared于2008-6-7 0:20:50的发言:
补充:下面要加多一句:
$game_troop.interpreter.update

不需要
我没有+那句一样在战斗后可以自动执行公共事件
你试一下就知道了
作者: Infrared    时间: 2008-6-7 08:37
提示: 作者被禁止或删除 内容自动屏蔽
作者: alonescud    时间: 2008-6-7 08:43
以下引用Infrared于2008-6-7 0:37:44的发言:


以下引用snstar2006于2008-6-7 0:34:59的发言:


以下引用Infrared于2008-6-7 0:20:50的发言:
补充:下面要加多一句:
$game_troop.interpreter.update


不需要
我没有+那句一样在战斗后可以自动执行公共事件
你试一下就知道了


我是在补充我自已的方法。


TO LZ:

   common_event = $data_common_events[1]
   $game_troop.interpreter.setup(common_event.list, 0)
   $game_troop.interpreter.update
   display_exp_and_gold
   display_drop_items
   display_level_up
   battle_end(0)



谢谢两位深夜在线热心解答```我的实验结果是

只有这个(调不出公共事件)
common_event = $data_common_events[1]

(两行的话,就ok)
common_event = $data_common_events[1]
$game_troop.interpreter.setup(common_event.list, 0)

(三行的话,也ok,我看不出来区别,难道有其它作用?)
common_event = $data_common_events[1]
$game_troop.interpreter.setup(common_event.list, 0)
$game_troop.interpreter.update

但同样的问题是:我的公共事件内是一个显示以对话框,但这几种效果都是战斗结束后切换到地图画面才调用(即:显示那个对话框),依然没有在战斗画面的最后一步执行..

另外一种猜侧:就是我刚才删公共事件的那些内容(XP系统时有加上)

$game_temp.in_battle = false
   $game_party.clear_actions
   for actor in $game_party.actors
     actor.remove_states_battle
   end
   $game_troop.enemies.clear
   if $game_temp.battle_proc != nil
     $game_temp.battle_proc.call(0)
     $game_temp.battle_proc = nil
   end


因为删除上述内容是否导致只能在战斗调用事件,而不是在战斗画面结束前调用?  请指教


作者: Infrared    时间: 2008-6-7 08:47
提示: 作者被禁止或删除 内容自动屏蔽
作者: alonescud    时间: 2008-6-7 08:58
以下引用Infrared于2008-6-7 0:47:38的发言:

放在display_exp_and_gold上…………………

删了那些内容,经测试没影响,因为我没加也能调用。


又试了一下,如果放在display_exp_and_gold上,那就是和显示得到金钱,物品混在一个框内显示,而且还显示在他们之前,感觉比较怪怪的。。不过先这样吧,就让他在MAP画面显示好了。对我来说区别不算很大。除非有意料之外的问题,,,以后再说,谢了先。

PS.之前没看到 wait_for_message..加了这个就可以有个间隔了,谢~

PS.




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