查看: 1994|回复: 5

[已经解决] 求教一个敌人使用技能的问题

[复制链接]
梦石
0
星屑
50
在线时间
4 小时
注册时间
2015-6-30
回帖
7
发表于 2015-7-1 22:19:07 | 显示全部楼层 |阅读模式

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

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

×
怎样让我方某队员处于某特定状态时,敌人才会使用某特定技能?
比如我方某队员处于麻痹状态,敌人才会使用强击技能攻击该角色,如果没有队员处于麻痹状态,那敌人的强击技能就一直不使用。
梦石
0
星屑
163
在线时间
73 小时
注册时间
2014-4-10
回帖
96
发表于 2015-7-2 08:16:15 | 显示全部楼层
你看这样行不行呀。
001.png
回复

使用道具 举报

梦石
0
星屑
50
在线时间
179 小时
注册时间
2013-12-8
回帖
91
发表于 2015-7-2 10:00:16 | 显示全部楼层
去在战斗事件里判定一个状态吧。如果在那个状态下,就开启开关。然后怪物的强击技能设定为“在开关X开启时”。注意判定开关的开和关,不然可能会有进入一次状态就一直可能用强击的困扰

全部RM技能点全都点到了做地图和写文本上了,别拦着我我准备去点那个专精点!(大义凛然状
回复

使用道具 举报

梦石
0
星屑
50
在线时间
4 小时
注册时间
2015-6-30
回帖
7
 楼主| 发表于 2015-7-2 10:39:06 | 显示全部楼层
我试试,谢谢
回复

使用道具 举报

梦石
0
星屑
166
在线时间
454 小时
注册时间
2015-2-25
回帖
358
发表于 2015-7-2 18:41:53 | 显示全部楼层
[pre lang="ruby"]class Game_Battler
  attr_accessor :target  
end

class Scene_Battle
  attr_reader :subject
end

class RPG::Enemy
  def 西蘭花(skill_id)
    /<#{skill_id}\s*(\d+)>/ =~ note ? $1.to_i : nil
  end  
end

class Game_Enemy
  alias baby_action_valid? action_valid?
  def action_valid?(action)
    if state_id = enemy.西蘭花(action.skill_id)
      targets = $game_party.battle_members.select {|actor| actor.state?(state_id)}
      return if targets.empty?
      self.target = random_target(targets)
    end
    baby_action_valid?(action)
  end  
  def tgr_sum(targets)
    targets.inject(0) {|r, target| r + target.tgr }
  end  
  def random_target(targets)
    tgr_rand = rand * tgr_sum(targets)
    targets.each do |target|
      tgr_rand -= target.tgr
      return target if tgr_rand < 0
    end
    targets[0]
  end   
end  
  
class Game_Action
  alias baby_make_targets make_targets
  def make_targets
    if target = SceneManager.scene.subject.target
      SceneManager.scene.subject.target = nil
      return [target]
    end      
    baby_make_targets
  end
end[/pre]

使用方法:
敵人備注欄寫上<技能id 狀態id>後
己方沒存活隊員有該狀態時敵人不會使用該技能
如果有的話也不一定會使用該技能,而是像一般情況一樣計算優先權(就是數據庫設置的)
多於一個隊員有該狀態的話,也會像一般情況一樣計算受攻擊率...
對了,技能會強制變成單體目標...(不清楚你的要求 就不改了)

点评

谢谢啦~~  发表于 2015-7-2 21:09

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 所以你起名都是啥习惯...

查看全部评分

回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2015-7-2 19:10:52 | 显示全部楼层
找敵人AI脚本
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部