Project1

标题: 关于中立NPC的问题 [打印本页]

作者: Kingcreaft    时间: 2020-5-7 17:54
标题: 关于中立NPC的问题
大佬们,我想做一种中立的NPC,搭配XAS用的,可以对话接任务买东西的一个NPC,如果用XAS系统攻击他,NPC就会变成敌人,该怎么做呀?
是要再做一个和NPC一模一样的敌人,然后触发战斗么?但是怎么用XAS系统来做,我不想触发回合制战斗
我翻遍了帖子都没找到类似的解决方法,求解
作者: b200077    时间: 2020-5-7 18:14
感觉挺难做的,XAS是先判断事件是不是敌人,在进行攻击判定的
作者: Kingcreaft    时间: 2020-5-7 18:29
b200077 发表于 2020-5-7 18:14
感觉挺难做的,XAS是先判断事件是不是敌人,在进行攻击判定的

那要修改XAS的脚本吗?还是说再写一个脚本,让玩家触发XAS的攻击动作的时候增加变量值,变量值达到数量时就会触发敌人事件,类似仇恨值之类的
作者: Kingcreaft    时间: 2020-5-7 18:52
b200077 发表于 2020-5-7 18:14
感觉挺难做的,XAS是先判断事件是不是敌人,在进行攻击判定的

还是说搬XAS系统的攻击的代码出来再做一个脚本,先判定是不是事件,然后再增加变量值,再变成敌人
作者: PLeaseS    时间: 2020-5-7 19:17
什么中立npc
判断npc种类不是按事件id判断的吗
作者: Kingcreaft    时间: 2020-5-7 19:19
本帖最后由 Kingcreaft 于 2020-5-7 19:21 编辑
PLeaseS 发表于 2020-5-7 19:17
什么中立npc
判断npc种类不是按事件id判断的吗


我的意思是能让一个事件被XAS系统攻击的时候才转换为敌人才触发战斗,不然就是事件,二楼说了XAS系统是先判定事件是不是敌人,所以不知道该怎么弄
作者: b200077    时间: 2020-5-7 20:08
Kingcreaft 发表于 2020-5-7 19:19
我的意思是能让一个事件被XAS系统攻击的时候才转换为敌人才触发战斗,不然就是事件,二楼说了XAS系统是先 ...
  1. class Game_Event < Game_Character
  2. def battler
  3.     if self.name =~/<Neutral(\d+)>/i
  4.             @event.name = "<Enemy#{$1}>"
  5. @enemy_id = $1.to_i   
  6.          
  7.          @battler = Game_Enemy.new(1, @enemy_id)
  8.          self.force_update = true if self.battler.sensor_range >= 15      
  9.     end
  10.     return @battler
  11. end
  12. end
复制代码


大概就这样吧,只是把这个写在攻击判定里
作者: Kingcreaft    时间: 2020-5-8 00:43
b200077 发表于 2020-5-7 20:08
大概就这样吧,只是把这个写在攻击判定里


谢谢大佬,是把原来的
class Game_Event < Game_Character
  attr_accessor :target
  attr_reader   :name
  attr_accessor :collision_attack
替换成这个吗?还是在这里面添加一段进去




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1