设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1800|回复: 1
打印 上一主题 下一主题

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

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2920
在线时间
713 小时
注册时间
2010-7-25
帖子
813

开拓者

跳转到指定楼层
1
发表于 2015-10-7 11:04:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

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

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

2
发表于 2015-10-8 20:35:36 | 只看该作者
参照 Game_Unit#smooth_target 和 Game_Action#targets_for_opponents、Game_Action#targets_for_friends 方法

简单改了下,未测试。如果有什么问题,可以自己看着改改。
RUBY 代码复制
  1. class Game_Action
  2.   def targets_for_opponents
  3.     if item.for_random?
  4.       Array.new(item.number_of_targets) { opponents_unit.random_target }
  5.     elsif item.for_one?
  6.       num = 1 + (attack? ? subject.atk_times_add.to_i : 0)
  7.       if @target_index < 0
  8.         [opponents_unit.random_target] * num
  9.       else
  10.         # [opponents_unit.smooth_target(@target_index)] * num
  11.         target = opponents_unit.members[@target_index]
  12.         target && target.alive? ? Array.new(num, target) : []
  13.       end
  14.     else
  15.       opponents_unit.alive_members
  16.     end
  17.   end
  18. end

点评

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

评分

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

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 21:00

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表