Project1

标题: 如何讓雙手武器角色在戰鬥中攻擊力自動減半? [打印本页]

作者: 冷徹心扉    时间: 2012-12-1 11:52
标题: 如何讓雙手武器角色在戰鬥中攻擊力自動減半?
如題
雙手武器是為了增添角色特色
但又不希望因此攻擊力過強而失衡
希望能在戰鬥中、或該角色攻擊力計算方式自動減半
該從哪裡下手呢?
作者: Password    时间: 2012-12-1 12:30
把二刀流人物攻击力调制你现在的一半

如果二刀流的武器是特定的,把武器增加的攻击力调整为目前的一半

↑以上均在数据库……
作者: 怪蜀黍    时间: 2012-12-1 14:05
找到def make_attack_damage_value(attacker),自己写公式即可!
two_swords_style是二刀流的标识,用if来判断就可以了。
作者: a364774426    时间: 2012-12-1 18:55
本帖最后由 a364774426 于 2012-12-1 18:56 编辑

如果是横版的话,脚本起始部分就能设置二刀流物理攻击的百分比伤害了,
如果按照P叔的办法也可以的,不过你判定的方法不对,所以出错了,
应该是"if attacker.two_swords_style"
如果是技能的话,attacker变为user
作者: 冷徹心扉    时间: 2012-12-1 22:47
a364774426 发表于 2012-12-1 18:55
如果是横版的话,脚本起始部分就能设置二刀流物理攻击的百分比伤害了,
如果按照P叔的办法也可以的,不过你 ...

出了一點問題
物理攻擊運行正常
但技能方面報錯?
  1. def make_obj_damage_value(user, obj)
  2.   damage = obj.base_damage                          # 獲取基本傷害
  3.     if damage > 0                                                   # 正數?
  4. #█████████████████████████████████████ 技能傷害公式 █████████████████████████████████████      
  5.     damage += (user.atk * 2 - self.def  * 1) * obj.atk_f  / 100   #物理技能
  6.           if user.two_swords_style               #雙手武器傷害減半 <-------------------------------此行報錯
  7.           damage += ((user.atk * 2 - self.def  * 1) * obj.atk_f / 100 )*0.5
  8.           end     
  9.     damage += (user.spi * 2 - self.spi * 1) * obj.spi_f / 100      #魔法技能
复制代码
錯誤內容
?本 'Game_Battler' 的第 691 行發生了 NoMethodError .
undefined method `two_swords_style' for #<Game_Enemy:0x2ae4720>


作者: a364774426    时间: 2012-12-1 23:26
冷徹心扉 发表于 2012-12-1 22:47
出了一點問題
物理攻擊運行正常
但技能方面報錯?錯誤內容

我觉得技能不需要这么弄了,完全可以通过攻击关系度平衡回来,如果要这样子的话,
敌人是没有二刀流的,所以要多加一个判定
if user.is_a?(Game_Actor)  and user.two_swords_style  
end
作者: 怪蜀黍    时间: 2012-12-1 23:30
a364774426 发表于 2012-12-1 23:26
我觉得技能不需要这么弄了,完全可以通过攻击关系度平衡回来,如果要这样子的话,
敌人是没有二刀流的, ...

这样是敌人还是会出错的,是敌人还是会判断user.two_swords_style  。
应该
  1. if user.is_a?(Game_Actor)
  2.   if user.two_swords_style  
  3.     # 写公式
  4.   end
  5. end
复制代码





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