Project1
标题:
怎么战斗结束后触发公共事件?
[打印本页]
作者:
cigreaty
时间:
2009-5-24 22:10
提示:
作者被禁止或删除 内容自动屏蔽
作者:
cigreaty
时间:
2009-5-24 22:11
提示:
作者被禁止或删除 内容自动屏蔽
作者:
沉影不器
时间:
2009-5-25 03:40
提示:
作者被禁止或删除 内容自动屏蔽
作者:
怪蜀黍
时间:
2009-5-26 04:11
首先说明我是不怎么懂脚本的,但是在我制作的作品里成功实现了战斗结束后触发公共事件。
方法有点麻烦,但是是成功的。
以下都是在VX原来的脚本上作修改,共3个脚本,都在Scene_Battle里,题目分别叫:“处理逃跑”,“处理胜利”和“失败处理”。可以分别对这三种情况调用不同脚本。以下有“(我加)”标识的为我加的脚本,其他的脚本原封不动。使用以下脚本可以在战斗结束的三种情况下调用公共事件21号。再声明,本脚本在我的作品里面是
成功
调用了的。
#--------------------------------------------------------------------------
# ● 处理逃跑
#--------------------------------------------------------------------------
def process_escape
@info_viewport.visible = false
@message_window.visible = true
text = sprintf(Vocab::EscapeStart, $game_party.name)
$game_message.texts.push(text)
if $game_troop.preemptive
success = true
else
success = (rand(100) < @escape_ratio)
end
Sound.play_escape
if success
wait_for_message
battle_end(1)
else
@escape_ratio += 10
$game_message.texts.push('\.' + Vocab::EscapeFailure)
wait_for_message
$game_party.clear_actions
start_main
end
common_event = $data_common_events[21] #(我加)战斗结束调用公共事件21
$game_troop.interpreter.setup(common_event.list,0) #(我加)
$game_troop.interpreter.update #(我加)
end
复制代码
#--------------------------------------------------------------------------
# ● 处理胜利
#--------------------------------------------------------------------------
def process_victory
@info_viewport.visible = false
@message_window.visible = true
RPG::BGM.stop
$game_system.battle_end_me.play
unless $BTEST
$game_temp.map_bgm.play
$game_temp.map_bgs.play
end
common_event = $data_common_events[21] #(我加)战斗结束调用公共事件21
$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)
end
复制代码
#--------------------------------------------------------------------------
# ● 失败处理
#--------------------------------------------------------------------------
def process_defeat
@info_viewport.visible = false
@message_window.visible = true
text = sprintf(Vocab::Defeat, $game_party.name)
$game_message.texts.push(text)
wait_for_message
common_event = $data_common_events[21] #(我加)战斗结束调用公共事件21
$game_troop.interpreter.setup(common_event.list,0) #(我加)
$game_troop.interpreter.update #(我加)
battle_end(2)
end
复制代码
[LINE]1,#dddddd[/LINE]
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1