Project1

标题: 求助:肉盾的设置问题 [打印本页]

作者: 花落寥秋    时间: 2014-2-7 18:01
标题: 求助:肉盾的设置问题
好吧我承认,作为菜鸟这已经是第三个问题了......因为实在对这些东西不熟......
战斗中想设置一个技能,使用者会成为所谓的‘肉盾’,加强自身防御并吸引敌人攻击的效果,求各位大神帮帮忙
作者: 恐惧剑刃    时间: 2014-2-7 18:49
本帖最后由 恋′挂机 于 2014-2-7 19:11 编辑

修正版
  1. Wall = 18 # 嘲讽状态id
  2. class Scene_Battle
  3.   def make_basic_action_result
  4.     # 攻击的情况下
  5.     if @active_battler.current_action.basic == 0
  6.       # 设置攻击 ID
  7.       @animation1_id = @active_battler.animation1_id
  8.       @animation2_id = @active_battler.animation2_id
  9.       # 行动方的战斗者是敌人的情况下
  10.       if @active_battler.is_a?(Game_Enemy)
  11.         if @active_battler.restriction == 3
  12.           target = $game_troop.random_target_enemy
  13.         elsif @active_battler.restriction == 2
  14.           target = $game_party.random_target_actor
  15.         else
  16.           index = @active_battler.current_action.target_index
  17.           target = $game_party.smooth_target_actor(index)
  18.         end
  19.         a = []
  20.         for i in $game_party.actors
  21.           a << i if i.state? Wall
  22.         end
  23.         a = a[rand(a.size)]
  24.         @target_battlers = [a]
  25.         for target in @target_battlers
  26.           target.attack_effect(@active_battler)
  27.         end
  28.         return
  29.       end
  30.       # 行动方的战斗者是角色的情况下
  31.       if @active_battler.is_a?(Game_Actor)
  32.         if @active_battler.restriction == 3
  33.           target = $game_party.random_target_actor
  34.         elsif @active_battler.restriction == 2
  35.           target = $game_troop.random_target_enemy
  36.         else
  37.           index = @active_battler.current_action.target_index
  38.           target = $game_troop.smooth_target_enemy(index)
  39.         end
  40.       end
  41.       # 设置对像方的战斗者序列
  42.       @target_battlers = [target]
  43.       # 应用通常攻击效果
  44.       for target in @target_battlers
  45.         target.attack_effect(@active_battler)
  46.       end
  47.       return
  48.     end
  49.     # 防御的情况下
  50.     if @active_battler.current_action.basic == 1
  51.       # 帮助窗口显示"防御"
  52.       @help_window.set_text($data_system.words.guard, 1)
  53.       return
  54.     end
  55.     # 逃跑的情况下
  56.     if @active_battler.is_a?(Game_Enemy) and
  57.        @active_battler.current_action.basic == 2
  58.       #  帮助窗口显示"逃跑"
  59.       @help_window.set_text("逃跑", 1)
  60.       # 逃跑
  61.       @active_battler.escape
  62.       return
  63.     end
  64.     # 什么也不做的情况下
  65.     if @active_battler.current_action.basic == 3
  66.       # 清除强制行动对像的战斗者
  67.       $game_temp.forcing_battler = nil
  68.       # 移至步骤 1
  69.       @phase4_step = 1
  70.       return
  71.     end
  72.   end
  73. end
复制代码

作者: fux2    时间: 2014-2-7 18:57
恋′挂机 发表于 2014-2-7 18:49

这样貌似不妥?如果有多个角色存在嘲讽状态怎么办,
在所有嘲讽状态的角色里取随机人应该更好。
另外这种buff只能适用于角色而不能用于敌人吧……
作者: 花落寥秋    时间: 2014-2-7 20:13
fux2 发表于 2014-2-7 18:57
这样貌似不妥?如果有多个角色存在嘲讽状态怎么办,
在所有嘲讽状态的角色里取随机人应该更好。
另外这种 ...

朋友你有什么看法吗?
作者: 花落寥秋    时间: 2014-2-7 22:26
fux2 发表于 2014-2-7 18:57
这样貌似不妥?如果有多个角色存在嘲讽状态怎么办,
在所有嘲讽状态的角色里取随机人应该更好。
另外这种 ...

哦对了,如果真的用嘲讽状态的话我想设定的是特定的人物,也就是说队伍里只有一个专职肉盾,其他人各司其职……有什么办法吗?
作者: 花落寥秋    时间: 2014-2-8 16:51
恋′挂机 发表于 2014-2-7 18:49
修正版

乌拉,谢谢啦!




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1