Project1
标题:
战斗结束后清除队员
[打印本页]
作者:
企鹅达达
时间:
2010-10-2 08:47
标题:
战斗结束后清除队员
本帖最后由 八云紫 于 2010-10-8 13:24 编辑
想做一个召唤师的职业,用技能呼唤公用事件加入队员,但是得到经验值之后怎么把这些队员清除出去呢?假设我设置的召唤兽的主角id号是101以后的号码
作者:
wsmyzc
时间:
2010-10-2 08:51
在每张地图都放入一个事件进行判断是否有这些召唤出来的队员,然后对应地进行增减。。
或者直接批量减少ID 101以后的队员
(建议用后者。。反正没多大影响)
作者:
企鹅达达
时间:
2010-10-2 08:57
回复
wsmyzc
的帖子
不可以在脚本里面回到地图界面之前清除吗?因为如果是在地图上清除,如果我使用人物跟随之类的脚本时会有一段时间显示出那些召唤兽的行走图吧?而且并行处理事件太多的话,我怕拖慢游戏速度……
作者:
Rion幻音
时间:
2010-10-2 09:14
在Scene Battle中的def process_victory插入 脚本/公共事件 即可
作者:
企鹅达达
时间:
2010-10-2 09:27
本帖最后由 企鹅达达 于 2010-10-2 10:15 编辑
回复
Rion幻音
的帖子
逃走和失败(主要是针对boss战等可以失败的事件)的场合也应该要吧?而且,与其特地在脚本中呼唤公用事件,为什么不直接用脚本……
#------------------------------------------------------------------------------
# 這個類用來執行顯示作戰畫面的程式。
#==============================================================================
class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# * 結束作戰
# result : 作戰結果 (0: 得勝, 1: 撤退, 2: 我方全滅)
#--------------------------------------------------------------------------
def battle_end(result)
if result == 2 and not $game_troop.can_lose
call_gameover
else
$game_party.clear_actions
$game_party.remove_states_battle
$game_troop.clear
if $game_temp.battle_proc != nil
$game_temp.battle_proc.call(result)
$game_temp.battle_proc = nil
end
unless $BTEST
$game_temp.map_bgm.play
$game_temp.map_bgs.play
end
#==================追加===============================
remove_helper
#=======================================================
$scene = Scene_Map.new
@message_window.clear
Graphics.fadeout(30)
end
$game_temp.in_battle = false
end
#======================追加===================================
def remove_helper
for i in 101..200
$game_party.remove_actor(i)
end
end
#=============================================================
end
复制代码
……自己想出来了,不知道会不会有bug 囧
作者:
Rion幻音
时间:
2010-10-2 10:14
def process_victory 获胜处理
def process_escape 逃跑处理
def process_defeat 失败处理
全部插入脚本 $game_party.remove_actor(*)即可(*为角色ID)
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1