| 赞 | 0  | 
 
| VIP | 0 | 
 
| 好人卡 | 0 | 
 
| 积分 | 1 | 
 
| 经验 | 1343 | 
 
| 最后登录 | 2014-10-10 | 
 
| 在线时间 | 16 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 50 
 
        - 在线时间
 - 16 小时
 
        - 注册时间
 - 2010-7-1
 
        - 帖子
 - 31
 
 
 
 | 
	
3楼
 
 
 楼主 |
发表于 2011-6-18 19:55:42
|
只看该作者
 
 
 
就是Game_BattleAction 
  #-------------------------------------------------------------------------- 
  # ● 技能评价(指定目标) 
  #     target : 目标战斗者 
  #-------------------------------------------------------------------------- 
  def evaluate_skill_with_target(target) 
    target.clear_action_results 
    target.make_obj_damage_value(battler, skill) 
    if skill.for_opponent? 
      return target.hp_damage.to_f / [target.hp, 1].max 
    else 
      recovery = [-target.hp_damage, target.maxhp - target.hp].min 
      return recovery.to_f / target.maxhp 
    end 
  end 
这两段东西,貌似是角色用的,敌人身上很不给力。 
 
 
cqr19950307于2011-6-18 19:56补充以下内容: 
  #-------------------------------------------------------------------------- 
  # ● 技能评价 
  #-------------------------------------------------------------------------- 
  def evaluate_skill 
    @value = 0 
    unless battler.skill_can_use?(skill) 
      return 
    end 
    if skill.for_opponent? 
      targets = opponents_unit.existing_members 
    elsif skill.for_user? 
      targets = [battler] 
    elsif skill.for_dead_friend? 
      targets = friends_unit.dead_members 
    else 
      targets = friends_unit.existing_members 
    end 
    for target in targets 
      value = evaluate_skill_with_target(target) 
      if skill.for_all? 
        @value += value 
      elsif value > @value 
        @value = value 
        @target_index = target.index 
      end 
    end 
  end 
还有这个 
 
 
cqr19950307于2011-6-25 11:05补充以下内容: 
好了解决了。 |   
 
 
 
 |