本帖最后由 灯笼菜刀王 于 2019-1-16 21:00 编辑
原理:只要在确定行动的时候替换下就好了, 默认战斗的话, 用它替换掉scene_battle 4 的 def make_action_orders 这段
这样, 只要有同时使用 10086号技能 和 10087号技能的时候, 第一个人就会什么都不做, 第二个人使用 10088号技能
class Game_Actor < Game_Battler def skill_can_use?(skill_id) return super end end class Scene_Battle def make_action_orders # 初始化序列 @action_battlers @action_battlers = [] # 添加敌人到 @action_battlers 序列 for enemy in $game_troop.enemies @action_battlers.push(enemy) end # 添加角色到 @action_battlers 序列 a = 0 for actor in $game_party.actors if actor.current_action.kind == 1 and [10086,10087].include?(actor.current_action.skill_id) a += 1 actor.current_action.skill_id = 10088 if a == 2 end @action_battlers.push(actor) end if a == 2 for actor in @action_battlers if actor.current_action.kind == 1 and [10086,10087].include?(actor.current_action.skill_id) actor.current_action.kind = 0 actor.current_action.basic = 3 a = 0 break end end end # 确定全体的行动速度 for battler in @action_battlers battler.make_action_speed end # 按照行动速度从大到小排列 @action_battlers.sort! {|a,b| b.current_action.speed - a.current_action.speed } end end
class Game_Actor < Game_Battler
def skill_can_use?(skill_id)
return super
end
end
class Scene_Battle
def make_action_orders
# 初始化序列 @action_battlers
@action_battlers = []
# 添加敌人到 @action_battlers 序列
for enemy in $game_troop.enemies
@action_battlers.push(enemy)
end
# 添加角色到 @action_battlers 序列
a = 0
for actor in $game_party.actors
if actor.current_action.kind == 1 and [10086,10087].include?(actor.current_action.skill_id)
a += 1
actor.current_action.skill_id = 10088 if a == 2
end
@action_battlers.push(actor)
end
if a == 2
for actor in @action_battlers
if actor.current_action.kind == 1 and [10086,10087].include?(actor.current_action.skill_id)
actor.current_action.kind = 0
actor.current_action.basic = 3
a = 0
break
end
end
end
# 确定全体的行动速度
for battler in @action_battlers
battler.make_action_speed
end
# 按照行动速度从大到小排列
@action_battlers.sort! {|a,b|
b.current_action.speed - a.current_action.speed }
end
end
|