设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2223|回复: 0
打印 上一主题 下一主题

能够加强属性伤害的状态

[复制链接]

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

跳转到指定楼层
1
发表于 2014-5-21 15:32:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 taroxd 于 2014-11-23 16:32 编辑

RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2. # ● require Taroxd基础设置
  3. #    使用方法:在角色/职业/技能/装备/敌人/状态上备注<element id rate>,
  4. #             表示该角色/该职业/习得技能后/装上装备后/该敌人/获得状态后,
  5. #             战斗者使用第 id 号属性的技能时,效果乘以 rate
  6. #--------------------------------------------------------------------------
  7.  
  8. class RPG::BaseItem
  9.   #--------------------------------------------------------------------------
  10.   # ● 获取属性效果构成的 Hash,属性ID => 效果
  11.   #--------------------------------------------------------------------------
  12.   def element_effect
  13.     @element_effect ||= @note.scan(/<ELEMENT\s+(\d+)\s+(\d+(?:\.\d+)?)>/i)
  14.       .each_with_object(Hash.new(1.0)) {|(id, rate), hash|
  15.         hash[id.to_i] *= rate.to_f }
  16.   end
  17. end
  18.  
  19. class Game_Battler < Game_BattlerBase
  20.   #--------------------------------------------------------------------------
  21.   # ● 获取属性效果构成的 Hash,属性ID => 效果
  22.   #--------------------------------------------------------------------------
  23.   def element_effect
  24.     note_objects.each_with_object(Hash.new(1.0)) do |e, h|
  25.       h.merge!(e.element_effect) {|_, r1, r2| r1 * r2 }
  26.     end
  27.   end
  28.   #--------------------------------------------------------------------------
  29.   # ● 获取技能/物品的属性修正值
  30.   #--------------------------------------------------------------------------
  31.   calc_new_rate = lambda do |old, user, item|
  32.     if item.damage.element_id < 0
  33.       user.atk_elements.pi(old) {|id| user.element_effect[id] }
  34.     else
  35.       old * user.element_effect[item.damage.element_id]
  36.     end
  37.   end
  38.   def_with :item_element_rate, calc_new_rate
  39. end
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-7 05:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表