Project1

标题: 状态结束后触发脚本 [打印本页]

作者: 工藤~新一じ    时间: 2016-4-16 19:52
标题: 状态结束后触发脚本
今天凌晨开了请教贴,但没有自己想要的效果于是再来伸手(其实这就是伸手嘛)
我想做到4号状态自然结束后,当前结束的那位角色(或者敌人),HP等于1
于是我把脚本改成这样
  # ● 状态自然解除 (回合改变时调用)
  #--------------------------------------------------------------------------
  def remove_states_auto
    for i in @states_turn.keys.clone
      if @states_turn[i] > 0
        @states_turn[i] -= 1
      elsif rand(100) < $data_states[i].auto_release_prob
       if state?(4)
         @hp = 1
       end
      remove_state(i)
      end
    end
  end
虽然能做到预想的效果。可是也有bug。bug就是有4号状态时,自然结束任何状态,都会让hp等于1。
通过凌晨的那张贴把这个情况分析出来了,真心求帮忙!
作者: 工藤~新一じ    时间: 2016-4-16 20:01
是不是这样写就可以了
        if i == 142
          @hp = 1
        end
作者: 夜狠简单    时间: 2016-4-16 20:46
状态解除


结束状态有几种情况
● 解除战斗用状态 (战斗结束时调用)
● 状态自然解除 (回合改变时调用) 上面的脚本只在这个执行A脚本
● 状态攻击解除 (受到物理伤害时调用)
● 状态变化 (-) 的使用





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