查看: 2226|回复: 2

[已经解决] 我要制作一个类似减缓毒素的技能

[复制链接]
梦石
0
星屑
50
在线时间
186 小时
注册时间
2014-6-14
回帖
184
发表于 2014-7-24 12:42:43 | 显示全部楼层 |阅读模式

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

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

×
就是,我设定一个技能,先将解除一个不是自动解除的状态(没有此状态时技能无法使用),经过XX回合数后,此状态又添加上去。
请脚本大神帮帮忙。

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2014-7-24 12:48:48 | 显示全部楼层
本帖最后由 taroxd 于 2014-7-24 12:55 编辑

如何在每次状态A消失后自动附加状态B?

[pre lang="ruby" line="1"]class Game_Battler
  # 下面常量和方法别名的起名很随意、容易重名。
  # 请不要模仿这样随意的起名,而应该尽可能起独特的名字来防止重名。
  STATE_A = 26  # 状态A的ID
  STATE_B = 27  # 状态B的ID
  alias original_remove_state remove_state
  def remove_state(state_id)
    add_state(STATE_B) if state_id == STATE_A && state?(STATE_A)
    original_remove_state(state_id)
  end

  alias scm_20140724? skill_conditions_met?
  def skill_conditions_met?(skill)
    return false unless scm_20140724?(skill)
    return true unless skill.id == 30 # 30 号技能
    state?(STATE_B)
  end
end[/pre]

假设B为毒素
技能添加状态A,并解除毒素

这个脚本的作用是:状态A消失时自动附加状态B,并且没有状态B时无法使用30号技能。应该符合你的要求了。
后半段未测试。

点评

提问区有你就够了!  发表于 2014-7-24 16:41
要不要这么快  发表于 2014-7-24 12:49

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 秒杀题。

查看全部评分

回复

使用道具 举报

梦石
0
星屑
50
在线时间
186 小时
注册时间
2014-6-14
回帖
184
 楼主| 发表于 2014-7-24 17:48:38 | 显示全部楼层
哇,真管用,谢谢你。
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部