Project1

标题: 根据职业限制能力值 [打印本页]

作者: Mr.Jin    时间: 2014-5-2 15:25
标题: 根据职业限制能力值
想做成类似以下效果:
2号职业的力量(str)上限为30
1号职业的力量上限为20
其余的职业力量上限为15
思路:
我想给每个Actor在Game_Actor里添加max_str这项,然后根据职业判断
就像这样:
  #--------------------------------------------------------------------------
  # ● 获取力量上限
  #--------------------------------------------------------------------------
  def max_str
    #根据职业----------------------------------------------------------------
    case @class_id
    when 2
    n = 30
    when 1
    n = 20
    else
    n = 15
    end
    #------------------------------------------------------------------------
    return [[n, 1].max, 999].min
  end
但是,如何用这个max_str去限制str呢?就像maxhp和hp的关系一样...怎么做?
作者: 芯☆淡茹水    时间: 2014-5-4 04:07
  1. #==============================================================================
  2. class Game_Actor < Game_Battler
  3.   #--------------------------------------------------------------------------
  4.   # ● 获取力量上限
  5.   #--------------------------------------------------------------------------
  6.   def max_str
  7.     case @class_id
  8.     when 2
  9.       n = 30
  10.     when 1
  11.       n = 20
  12.     else
  13.       n = 15
  14.     end
  15.     return n
  16.   end
  17. end
  18. #==============================================================================
  19. class Game_Battler
  20.   #--------------------------------------------------------------------------
  21.   # ● 获取力量
  22.   #--------------------------------------------------------------------------
  23.   def str
  24.     n = [[base_str + @str_plus, 1].max, 999].min
  25.     for i in @states
  26.       n *= $data_states[i].str_rate / 100.0
  27.     end
  28.     ms = self.is_a?(Game_Actor) ? max_str : 999  #****
  29.     n = [[Integer(n), 1].max, ms].min
  30.     return n
  31.   end
  32. end
  33. #===============================================================================
复制代码





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