查看: 2245|回复: 1

[已经解决] 如何让攻击目标死亡时,我方接下里对此敌人的攻击不发动

[复制链接]
梦石
0
星屑
2920
在线时间
713 小时
注册时间
2010-7-25
回帖
659

开拓者

发表于 2015-10-7 11:04:55 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
原本在攻击敌人时,如果攻击未发出,但敌人已经被其他队友的技能打死了,那么自动切换为下一个编号的目标。
但我用强制做了连击效果,发现连击在吧敌人连死之后接着去打其他敌人了,这是不应该的,所以问问这么修改原始脚本,让我方预定好的攻击目标是不存在时放弃行动。

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2015-10-8 20:35:36 | 显示全部楼层
参照 Game_Unit#smooth_target 和 Game_Action#targets_for_opponents、Game_Action#targets_for_friends 方法

简单改了下,未测试。如果有什么问题,可以自己看着改改。
[pre lang="ruby"]
class Game_Action
  def targets_for_opponents
    if item.for_random?
      Array.new(item.number_of_targets) { opponents_unit.random_target }
    elsif item.for_one?
      num = 1 + (attack? ? subject.atk_times_add.to_i : 0)
      if @target_index < 0
        [opponents_unit.random_target] * num
      else
        # [opponents_unit.smooth_target(@target_index)] * num
        target = opponents_unit.members[@target_index]
        target && target.alive? ? Array.new(num, target) : []
      end
    else
      opponents_unit.alive_members
    end
  end
end
[/pre]

点评

确实可用,对目标为上一次的普通攻击与强制技能都不自动切换目标了  发表于 2015-10-10 11:32
楼主用强制战斗行动做的吧  发表于 2015-10-9 06:36
如果是三连击的第一下秒杀敌人呢?  发表于 2015-10-8 22:05

评分

参与人数 2星屑 +10 梦石 +1 收起 理由
VIPArcher + 1 认可答案
jianyulei + 10 我很赞同

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部