赞 | 0 |
VIP | 30 |
好人卡 | 4 |
积分 | 1 |
经验 | 6446 |
最后登录 | 2022-4-23 |
在线时间 | 156 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 84
- 在线时间
- 156 小时
- 注册时间
- 2009-8-5
- 帖子
- 533
|
- 把“普通攻击同伴”改为“随机魔法攻击”比较简单。
- .restriction == 3就是“普通攻击同伴”,找到之后改为随机用一个魔法:
- Scene_Battle 4的def make_basic_action_result就是生成结果。把里面普通攻击同伴改为这样:
- list = [7,8,10,11,13,14]
- sk = $data_skills[list[rand(list.size)]]
- target = $game_troop.random_target_enemy
- target.skill_effect(@active_battler,sk)
- p target.damage#这句可以不要
- @target_battlers = [target]
- @animation1_id = sk.animation1_id
- @animation2_id = sk.animation2_id
- return
- 其中list是可选魔法列表,这里用的是针对单个敌人的。你可以自己尝试改为根据技能的攻击范围来选对象。
- 本段脚本如下:
- #--------------------------------------------------------------------------
- # ● 生成基本行动结果
- #--------------------------------------------------------------------------
- def make_basic_action_result
- # 攻击的情况下
- if @active_battler.current_action.basic == 0
- # 设置攻击 ID
- @animation1_id = @active_battler.animation1_id
- @animation2_id = @active_battler.animation2_id
- # 行动方的战斗者是敌人的情况下
- if @active_battler.is_a?(Game_Enemy)
- if @active_battler.restriction == 3
- #-------------------
- # 柳柳到此一游★
- #-------------------
- list = [7,8,10,11,13,14]
- sk = $data_skills[list[rand(list.size)]]
- target = $game_party.random_target_actor
- target.skill_effect(@active_battler,sk)
- p target.damage#这句可以不要
- @target_battlers = [target]
- @animation1_id = sk.animation1_id
- @animation2_id = sk.animation2_id
- return
- #-------------------
- # 柳柳到此一游完毕★
- #-------------------
- 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
- end
- # 行动方的战斗者是角色的情况下
- if @active_battler.is_a?(Game_Actor)
- if @active_battler.restriction == 3
- #-------------------
- # 柳柳到此一游★
- #-------------------
- list = [7,8,10,11,13,14]
- sk = $data_skills[list[rand(list.size)]]
- target = $game_troop.random_target_enemy
- target.skill_effect(@active_battler,sk)
- p target.damage#这句可以不要
- @target_battlers = [target]
- @animation1_id = sk.animation1_id
- @animation2_id = sk.animation2_id
- return
- #-------------------
- # 柳柳到此一游完毕★
- #-------------------
- elsif @active_battler.restriction == 2
- target = $game_troop.random_target_enemy
- else
- index = @active_battler.current_action.target_index
- target = $game_troop.smooth_target_enemy(index)
- end
- end
- # 设置对像方的战斗者序列
- @target_battlers = [target]
- # 应用通常攻击效果
- for target in @target_battlers
- target.attack_effect(@active_battler)
- end
- return
- end
- # 防御的情况下
- if @active_battler.current_action.basic == 1
- # 帮助窗口显示"防御"
- @help_window.set_text($data_system.words.guard, 1)
- return
- end
- # 逃跑的情况下
- if @active_battler.is_a?(Game_Enemy) and
- @active_battler.current_action.basic == 2
- # 帮助窗口显示"逃跑"
- @help_window.set_text("逃跑", 1)
- # 逃跑
- @active_battler.escape
- return
- end
- # 什么也不做的情况下
- if @active_battler.current_action.basic == 3
- # 清除强制行动对像的战斗者
- $game_temp.forcing_battler = nil
- # 移至步骤 1
- @phase4_step = 1
- return
- end
- end
- # if @active_battler.restriction == 3在这下面加 list = [7,8,10,11,13,14]
- sk = $data_skills[list[rand(list.size)]]
- target = $game_party.random_target_actor
- target.skill_effect(@active_battler,sk)
- p target.damage
- @target_battlers = [target]
- @animation1_id = sk.animation1_id
- @animation2_id = sk.animation2_id
- return
复制代码 |
|