Project1

标题: 被动技能 [打印本页]

作者: timothyshen1    时间: 2016-9-7 20:37
标题: 被动技能
我想问一下关于被动技能的问题,双手持的触发条件是当角色没有盾牌时,效果是增加30%的攻击和减少10%的防御,应该如何做,我试过用事件可是事件不能输入小数。
作者: 枫の叶    时间: 2016-9-8 08:51
把下面这个贴在你脚本main前面就可以了。

  1. #==============================================================================
  2. class Game_Actor < Game_Battler
  3.   #--------------------------------------------------------------------------
  4.   # ● 获取基本攻击力
  5.   #--------------------------------------------------------------------------
  6.   def base_atk
  7.     weapon = $data_weapons[@weapon_id]
  8.     ba = weapon != nil ? weapon.atk : 0
  9.     buff = @armor1_id == 0 ? 3 : 0
  10.     return ba + ba * 3 / 10
  11.   end
  12.   #--------------------------------------------------------------------------
  13.   # ● 获取基本物理防御
  14.   #--------------------------------------------------------------------------
  15.   def base_pdef
  16.     weapon = $data_weapons[@weapon_id]
  17.     armor1 = $data_armors[@armor1_id]
  18.     armor2 = $data_armors[@armor2_id]
  19.     armor3 = $data_armors[@armor3_id]
  20.     armor4 = $data_armors[@armor4_id]
  21.     pdef1 = weapon != nil ? weapon.pdef : 0
  22.     pdef2 = armor1 != nil ? armor1.pdef : 0
  23.     pdef3 = armor2 != nil ? armor2.pdef : 0
  24.     pdef4 = armor3 != nil ? armor3.pdef : 0
  25.     pdef5 = armor4 != nil ? armor4.pdef : 0
  26.     bp = pdef1 + pdef2 + pdef3 + pdef4 + pdef5
  27.     buff = @armor1_id == 0 ? 1 : 0
  28.     return bp - bp * buff / 10
  29.   end
  30.   #--------------------------------------------------------------------------
  31.   # ● 获取基本魔法防御
  32.   #--------------------------------------------------------------------------
  33.   def base_mdef
  34.     weapon = $data_weapons[@weapon_id]
  35.     armor1 = $data_armors[@armor1_id]
  36.     armor2 = $data_armors[@armor2_id]
  37.     armor3 = $data_armors[@armor3_id]
  38.     armor4 = $data_armors[@armor4_id]
  39.     mdef1 = weapon != nil ? weapon.mdef : 0
  40.     mdef2 = armor1 != nil ? armor1.mdef : 0
  41.     mdef3 = armor2 != nil ? armor2.mdef : 0
  42.     mdef4 = armor3 != nil ? armor3.mdef : 0
  43.     mdef5 = armor4 != nil ? armor4.mdef : 0
  44.     bm = mdef1 + mdef2 + mdef3 + mdef4 + mdef5
  45.     buff = @armor1_id == 0 ? 1 : 0
  46.     return bm - bm * buff / 10
  47.   end
  48. end
复制代码

作者: timothyshen1    时间: 2016-9-9 03:09
枫の叶 发表于 2016-9-8 08:51
把下面这个贴在你脚本main前面就可以了。

能说下原理吗谢谢,还有如何使用




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