本帖最后由 未命名 于 2015-8-6 16:09 编辑
稍微这么做:
在Scene_Battle 1的116行 设置游戏结束标志 那里作如下修改:
将:
# 设置游戏结束标志 $game_temp.gameover = true # 返回 true return true
# 设置游戏结束标志
$game_temp.gameover = true
# 返回 true
return true
改为:
#$game_switches[x]里面的数字改成你想要的变量编号。 #第一个是打开战斗失败不结束战斗的开关。 if $game_switches[1] == false # $game_temp.gameover = true # 返回 true return true else # #这个是执行事件的开关。 $game_switches[2] = true # return false # end
#$game_switches[x]里面的数字改成你想要的变量编号。
#第一个是打开战斗失败不结束战斗的开关。
if $game_switches[1] == false #
$game_temp.gameover = true
# 返回 true
return true
else #
#这个是执行事件的开关。
$game_switches[2] = true #
return false #
end
然后在想要这么做的战斗中制作个条件为开关2(或者你想要的)打开,距离为“战斗”或“暂时”的战斗事件,
内容随意。
比如:
如果事件执行结束后还要继续战斗……请复活角色,要不然BUG。
记得之后把开关都关上,要不然下次又执行。
还有注意不要把脚本return true下面的end删掉……
———————————————————————————————————————————————————
好吧,如果希望战斗继续经过回合,同时又能在之后触发事件,把上面第一个开关一直开就好了(先前说是变量搞错了)。
但是如果角色全灭后还有没行动的人正好发动单体攻击就会报错,
所以:
在Scene_Battle 4中找到“行动方的战斗者是敌人的情况下”下面的
if @active_battler.restriction == 3 target = $game_troop.random_target_enemy elsif @active_battler.restriction == 2 target = $game_party.random_target_actor else index = @active_battler.current_action.target_index target = $game_party.smooth_target_actor(index) end
if @active_battler.restriction == 3
target = $game_troop.random_target_enemy
elsif @active_battler.restriction == 2
target = $game_party.random_target_actor
else
index = @active_battler.current_action.target_index
target = $game_party.smooth_target_actor(index)
end
插入下面的脚本中。
for actor in $game_party.actors if actor.exist? #在这里插入。 break end end
for actor in $game_party.actors
if actor.exist?
#在这里插入。
break
end
end
再下来一点的“设置对像方的战斗者序列”
@target_battlers = [target] # 应用通常攻击效果 for target in @target_battlers target.attack_effect(@active_battler) end
@target_battlers = [target]
# 应用通常攻击效果
for target in @target_battlers
target.attack_effect(@active_battler)
end
用下面的脚本包围
if target != nil #放在这。 end
if target != nil
#放在这。
end
最后是“设置物品或特技对像方的战斗者”下面的“敌单体”那有
@target_battlers.push($game_party.smooth_target_actor(index))
@target_battlers.push($game_party.smooth_target_actor(index))
变成
for actor in $game_party.actors if actor.exist? @target_battlers.push($game_party.smooth_target_actor(index)) break end end
for actor in $game_party.actors
if actor.exist?
@target_battlers.push($game_party.smooth_target_actor(index))
break
end
end
就完事了。
于是,在我方全灭后,战斗就不断地循环回合,我方动不了地方也不动,但是如果有战斗事件依然执行。
如果要加入些控制选项还要在窗口那改…… |