赞 | 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补充以下内容:
好了解决了。 |
|