Project1

标题: 战斗开始时,若角色拥有某技能,则自动附加某状态 [打印本页]

作者: 黯淡的流星    时间: 2018-1-19 16:36
标题: 战斗开始时,若角色拥有某技能,则自动附加某状态
如何实现这样的效果:战斗开始时,若角色A已经习得B号技能,则自动为角色A附加C号状态
作者: king    时间: 2018-1-19 17:18
在系统——战群
选择需要的战群在下面的方框写上
条件分歧——第2页——角色XX技能XX
更加状态C
作者: 黯淡的流星    时间: 2018-1-19 18:26
king 发表于 2018-1-19 17:18
在系统——战群
选择需要的战群在下面的方框写上
条件分歧——第2页——角色XX技能XX

有大量这样的被动技能需要设置,而且适用于任何战斗,任何角色,这个事件方法只适用于在特定战斗中判定某个特定角色是否习得某个技能来附加状态。这个方法想过,但对于我来说太麻烦了,我是希望通过修改预置脚本来实现这个效果
作者: crow2006    时间: 2018-1-20 22:30
本帖最后由 crow2006 于 2018-1-20 22:37 编辑

class Scene_Battle < Scene_Base
def start
  ******
  $game_temp.in_battle = true
  #此行后开始加入
  for member in $game_party.members
   if member.skill_learn?($data_skills[B])  #如果玩家角色习得B技能
    $game_party.members[0].add_state(C) #附加C状态给该角色
   end
  end
end
end

当然这样弄起来还是比较麻烦的,
还有个更省事的办法:
class Game_Actor < Game_Battler
def jnfyzt
  n = [[100,100],[101,103]]
  return n
end
end

class Scene_Battle < Scene_Base
def start
  ******
  $game_temp.in_battle = true
  #此行后开始加入
  for member in $game_party.members
   for i in member.jnfyzt
    if member.skill_learn?(i[0])
      member.add_state(i[1])
    end
   end
  end
  #结束
end
end
然后你要做的就是在def jnfyzt这里设置即可。前面是技能编号,后面是状态编号。




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