正好做过这个,当然因为是脚本小白,所以步骤有些繁琐
1,打开脚本编辑器,找到Game_Battler 3
在
# ● 可以使用特技的判定 # skill_id : 特技 ID #-------------------------------------------------------------------------- def skill_can_use?(skill_id) # SP 不足的情况下不能使用 if $data_skills[skill_id].sp_cost > self.sp return false end # 战斗不能的情况下不能使用 if dead? return false end # 沉默状态的情况下、物理特技以外的特技不能使用 if $data_skills[skill_id].atk_f == 0 and self.restriction == 1 return false end
# ● 可以使用特技的判定
# skill_id : 特技 ID
#--------------------------------------------------------------------------
def skill_can_use?(skill_id)
# SP 不足的情况下不能使用
if $data_skills[skill_id].sp_cost > self.sp
return false
end
# 战斗不能的情况下不能使用
if dead?
return false
end
# 沉默状态的情况下、物理特技以外的特技不能使用
if $data_skills[skill_id].atk_f == 0 and self.restriction == 1
return false
end
的下面插入
if skill_id == 92 and self.states.include?(44) #状态存在时,技能无法使用 return false end
if skill_id == 92 and self.states.include?(44)
#状态存在时,技能无法使用
return false
end
(前面是技能ID,后面是状态ID)
2,技能关联公共事件,施展后为该角色赋予一个状态,需要冷却几回合该状态就设定几回合解除,这样的话甚至想要每场战斗只能使用一次的技能也是可以做到的
记得把该状态的定量设为0,这样就不会有渲染文字了
这个方法除了可以做到需要冷却的技能外,也可以做到持有某些物品的才能使用的消耗物品技能与消耗HP技能,原理上都差不多
|