赞 | 0 |
VIP | 10 |
好人卡 | 49 |
积分 | 10 |
经验 | 22958 |
最后登录 | 2020-8-1 |
在线时间 | 2161 小时 |
Lv3.寻梦者 酱油的
- 梦石
- 0
- 星屑
- 1030
- 在线时间
- 2161 小时
- 注册时间
- 2007-12-22
- 帖子
- 3271
|
1.target = $game_troop.random_target_enemy 的作用?
讀取敵人的攻擊目標數據(隨機)
具體操作看以下方法:
- #--------------------------------------------------------------------------
- # ● 对像敌人的随机确定
- # hp0 : 限制 HP 0 的敌人
- #--------------------------------------------------------------------------
- def random_target_enemy(hp0 = false)
- # 初始化轮流
- roulette = []
- # 循环
- for enemy in @enemies
- # 条件符合的情况下
- if (not hp0 and enemy.exist?) or (hp0 and enemy.hp0?)
- # 添加敌人到轮流
- roulette.push(enemy)
- end
- end
- # 轮流尺寸为 0 的情况下
- if roulette.size == 0
- return nil
- end
- # 转轮盘赌,决定敌人
- return roulette[rand(roulette.size)]
- end
复制代码
1.5 target = $game_party.random_target_actor
同上,不過變成了角色
2.index = @active_battler.current_action.target_index 的作用?
讀取攻擊目標的index(目錄?位置?不會翻譯==|||)
如果行動者是角色(actor)
這個變量在 Scene_Battle 3 的 311 行被初始化,記錄了你選擇的敵人的在隊伍中的位置
- # 设置行动
- @active_battler.current_action.target_index = @actor_arrow.index
复制代码
如果現在行動者是敵人(Enemy)的話
會由於 Scene_Battle 4 的 38 ~ 40 的 enemy.make_action 語句自動調用位於
Game_Enemy 的 308 行的
self.current_action.decide_random_target_for_enemy
語句來記錄攻擊目標
3.target = $game_party.smooth_target_actor(index)的作用?
.smooth_target_actor 是位於 Game_Party 343行的一個方法(也就是位於最後的一個方法)
此方法的 return 值記錄了任意位置的角色(actor)數據
- #--------------------------------------------------------------------------
- # ● 对像角色的顺序确定
- # actor_index : 角色索引
- #--------------------------------------------------------------------------
- def smooth_target_actor(actor_index)
- # 取得对像
- actor = @actors[actor_index]
- # 对像存在的情况下
- if actor != nil and actor.exist?
- return actor
- end
- # 循环
- for actor in @actors
- # 对像存在的情况下
- if actor.exist?
- return actor
- end
- end
- end
复制代码
4.设置对像方的战斗者序列
@target_battlers = [target] 的作用?
將目標數據記錄進 @target_battlers 變量當中
@target_battlers 變量稍後會在 Scene_Battle 4 的 354~356 行被調用:
- # 应用特技效果
- for target in @target_battlers
- target.skill_effect(@active_battler, @skill)
- end
复制代码
目的是産生每個受攻擊者的傷害效果。 系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~ |
|