Project1

标题: 橫板如何做到被敵人攻擊後回MP? [打印本页]

作者: 冷徹心扉    时间: 2012-12-15 19:29
标题: 橫板如何做到被敵人攻擊後回MP?
本帖最后由 冷徹心扉 于 2012-12-15 23:13 编辑

如主題,類似於蓄氣的概念
遭受敵人攻擊後,回復一些MP
若能夠依照損傷比例回復MP會更有意思些
作者: a364774426    时间: 2012-12-15 19:55
这个倒很简单, 在Game_Battler脚本中计算伤害的地方,
  1. if self.state?(X) #X为该状态的ID  
  2. self.mp += damage/Y #damage就是伤害,
  3. end
复制代码

作者: a364774426    时间: 2012-12-15 21:35
既然是角色的特性,那么就是这样:
  1.     if self.is_a?(Game_Actor) and self.id == 1  #1号角色具有该特性
  2.       self.mp +=damage/Y if damage > 0
  3.     end
复制代码
在计算普通攻击和技能攻击的地方都添加进去就行了。
作者: 冷徹心扉    时间: 2012-12-15 22:33
本帖最后由 冷徹心扉 于 2012-12-15 23:13 编辑

如果不做角色編號判定的話,確實有回復MP的效果
不過問題來了,MP會出現小數點{:2_270:}

  def make_attack_damage_value(attacker)
    damage = (attacker.atk * 1 - self.def  * 0.7) + 1       # 物理攻擊      
      self.mp +=damage/10 if damage > 0        
    end
    end   


解決了
我自己加了個取整
      self.mp = self.mp.round         
就搞定了,非常感謝!




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