Project1

标题: 如何禁止玩家在战斗中使用防御,道具和回复魔法特技。 [打印本页]

作者: 歌莉·萌露    时间: 2018-1-2 20:03
标题: 如何禁止玩家在战斗中使用防御,道具和回复魔法特技。
在一场特别的战斗里需要。就是让玩家只能攻击和使用攻击魔法特技行动,以免玩家用非伤害的指令浪费回合。
作者: 魔法丶小肉包    时间: 2018-1-2 23:35
提供一下思路
1.禁用防御
关闭1号开关时禁用防御
RUBY 代码复制
  1. def guard_usable?
  2.     usable?($data_skills[guard_skill_id]) and $game_switches[1]
  3. end

2.禁用道具
关闭2号开关时禁用道具
RUBY 代码复制
  1. def add_item_command
  2.     add_command(Vocab::item, :item , @actor.item_usable?)
  3. end

RUBY 代码复制
  1. def item_usable?
  2.     $game_switches[2]
  3. end

3.禁用回复技能
我觉得的话其实禁用回复技能差不多等于目标不为我方(总不可能对敌方进行回复吧?)
所以在skill_conditions_met?(skill)方法里加个u_s?(skill)
然后定义一下u_s?(skill)
RUBY 代码复制
  1. def u_s?(item)
  2.     if $game_switches[3]
  3.       if item.for_friend?
  4.         return false
  5.       else
  6.         return true
  7.       end
  8.     end
  9.     return true
  10. end

正常情况下直接返回true,当打开3号开关的时候才会进行判断:目标为我方的技能禁用

以上只是提供思路给楼主作为参考用
作者: 歌莉·萌露    时间: 2018-1-3 08:30
魔法丶小肉包 发表于 2018-1-2 23:35
提供一下思路
1.禁用防御
关闭1号开关时禁用防御

感谢,大致改出了需要的效果了。感谢提供地思路。




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