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

Project1

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

[已经解决] 敌人使用技能的目标选择是在哪里设定的?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
4557
在线时间
807 小时
注册时间
2017-7-14
帖子
170

开拓者

跳转到指定楼层
1
发表于 2019-6-7 01:53:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
每回合开始前,敌人执行什么行动应该都是设定好了的吧,那敌人比如用一个单体攻击技能或者一个单体回复的技能的目标是在哪里设定的呢?是通过什么来判断的?

Lv6.析梦学徒

老鹰

梦石
40
星屑
34725
在线时间
6740 小时
注册时间
2012-5-26
帖子
3259

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

2
发表于 2019-6-7 11:04:03 | 只看该作者
本帖最后由 百里_飞柳 于 2019-6-7 11:07 编辑
  1. class Scene_Battle
  2.   #--------------------------------------------------------------------------
  3.   # ● 使用技能/物品
  4.   #--------------------------------------------------------------------------
  5.   def use_item
  6.     item = @subject.current_action.item
  7.     @log_window.display_use_item(@subject, item)
  8.     @subject.use_item(item)
  9.     refresh_status
  10.     targets = @subject.current_action.make_targets.compact
  11.     show_animation(targets, item.animation_id)
  12.     targets.each {|target| item.repeats.times { invoke_item(target, item) } }
  13.   end
  14. end
复制代码

这里面,当前角色 @subject 的当前行动 current_action 调用了生成目标的方法,获得了目标角色的数组,并且去掉了nil
然后该方法在 Game_Action#make_targets,可以看到里面充斥着 Game_Unit#random_target 方法,也就是粗暴地取随机一人……

当然这个取随机是对于 敌人行动 或 多目标技能 的判定,
对于我方角色使用的 单目标技能,是依靠敌人/角色选择窗口获取目标,并记录在了 Game_Action 的 @target_index 里
对于这个变量,在 Game_Action#make_targets 所调用的方法里也可以找到很多处判定

点评

谢谢你,解决了!!!  发表于 2019-6-7 14:07

评分

参与人数 1星屑 +100 收起 理由
VIPArcher + 100 认可答案

查看全部评分

回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 18:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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