赞 | 0 |
VIP | 1 |
好人卡 | 5 |
积分 | 1 |
经验 | 47515 |
最后登录 | 2024-9-13 |
在线时间 | 216 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 90
- 在线时间
- 216 小时
- 注册时间
- 2007-9-5
- 帖子
- 370
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
如何让援助的对象只限于1号角色,也就是说只有$game_actors[1]才是援助对象,其他角色不会被援助
战斗特殊效果
http://rpg.blue/web/htm/news184.htm
好像这一段是描写关于援助的:
- class Scene_Battle
- #追加
- attr_reader :active_battler
- #ここまで
- ##新メソッド
- def make_cover_skill_action_result
- cover_num = 0
- cover_bool = false
- for i in @skill.element_set
- if !($data_system.elements[i][/^#{ELEMENT_NAME_COVER}/].nil?)
- cover_bool = true
- elm_num = $data_system.elements[i][/([+-]*[0-9]+)/]
- if !(elm_num.nil?)
- cover_num += elm_num.to_i
- end
- end
- end
- if cover_bool.equal?(true)
- ##自分のみが対象だった場合は味方からランダムに1人をかばう
- if @target_battlers.include?(@active_battler)
- if @target_battlers.size == 1
- if @target_battlers[0].is_a?(Game_Actor)
- friends = $game_party.actors.dup
- friends.delete(@active_battler)
- @target_battlers = [friends[rand(friends.size)]]
- elsif @target_battlers[0].is_a?(Game_Enemy)
- friends = $game_troop.enemies.dup
- friends.delete(@active_battler)
- @target_battlers = [friends[rand(friends.size)]]
- end
- else
- @target_battlers.delete(@active_battler)
- end
- end
- @active_battler.covered_friends = @target_battlers.dup
- @active_battler.add_state(get_cover_state_id())##ステート付加時にデフォルト回数で発動回数が設定される
- if (cover_num > 0)
- @active_battler.cover_remain = cover_num#発動回数が有った場合はその回数で上書き
- end
- for target in @target_battlers
- target.damage = COVER_EFFECT_CHAR
- end
- end
- end
- ##ここまで
- end
- class Game_Party
- ##追加エイリアス
- include Cover_Module
- #--------------------------------------------------------------------------
- # ● 対象アクターのスムーズな決定
- # actor_index : アクターインデックス
- #--------------------------------------------------------------------------
- alias before_cover_original_smooth_target_actor smooth_target_actor
- def smooth_target_actor(actor_index)
- if $scene.is_a?(Scene_Battle)
- battler = $scene.active_battler()
- else
- battler = nil
- end
- target = [before_cover_original_smooth_target_actor(actor_index)]
- get_target_battlers_after_cover!(target, battler)
- return target[0]
- end
- ##ここまで
- end
- class Game_Troop
- ##追加エイリアス
- include Cover_Module
- #--------------------------------------------------------------------------
- # ● 対象エネミーのスムーズな決定
- # enemy_index : エネミーインデックス
- #--------------------------------------------------------------------------
- alias before_cover_original_smooth_target_enemy smooth_target_enemy
- def smooth_target_enemy(enemy_index)
- if $scene.is_a?(Scene_Battle)
- battler = $scene.active_battler()
- else
- battler = nil
- end
- target = [before_cover_original_smooth_target_enemy(enemy_index)]
- get_target_battlers_after_cover!(target, battler)
- return target[0]
- end
- ##ここまで
- end
复制代码 |
|