Project1

标题: 【队伍掉率扩展】 [打印本页]

作者: VIPArcher    时间: 2014-11-3 19:32
标题: 【队伍掉率扩展】
RUBY 代码复制
  1. #===============================================================================
  2. # ■ 队伍掉率扩展
  3. # By :VIPArcher
  4. #  -- 本脚本来自 https://rpg.blue 使用或转载请保留以上信息。
  5. #==============================================================================
  6. # ■ 通过备注改变队伍能力的掉落率,由于是直接覆盖了原方法,
  7. # 所以特性里的双倍掉率,双倍金钱无效了。这点请注意
  8. # 使用说明:
  9. #   在角色|职业|装备|状态的备注栏备注上对应的信息
  10. #   改变物品掉率备注<物品掉率:X%> X为概率 可为负数、小数
  11. #   改变金钱掉率备注<金钱掉率:X%> X为概率 可为负数、小数
  12. #   同时存在多个备注可叠加,最终的掉率为(100 + 总的掉率改变量)%
  13. #==============================================================================
  14. $VIPArcherScript ||= {};$VIPArcherScript[:exdrop_rate] = 20141103
  15. #==============================================================================
  16. #  $game_enemy
  17. #==============================================================================
  18. class Game_Enemy < Game_Battler
  19.   #--------------------------------------------------------------------------
  20.   # ● 获取物品掉率的倍率
  21.   #--------------------------------------------------------------------------
  22.   def drop_item_rate
  23.     return $game_party.party_drop_rate
  24.   end
  25. end
  26. #==============================================================================
  27. #  $game_troop 。
  28. #==============================================================================
  29. class Game_Troop < Game_Unit
  30.   #--------------------------------------------------------------------------
  31.   # ● 获取金钱的倍率
  32.   #--------------------------------------------------------------------------
  33.   def gold_rate
  34.     return $game_party.gold_drop_rate
  35.   end
  36. end
  37. #==============================================================================
  38. #  $game_party 。
  39. #==============================================================================
  40. class Game_Party < Game_Unit
  41.   #--------------------------------------------------------------------------
  42.   # ● 获取全队伍物品掉率总值
  43.   #--------------------------------------------------------------------------
  44.   def party_drop_rate
  45.     drop_rate = 100
  46.     battle_members.each {|actor| actor.feature_objects.each {|obj|
  47.     drop_rate += $1.to_f if obj.note =~ /<物品掉率:\s*([0-9+.-]+)%>/}}
  48.     return drop_rate / 100
  49.   end
  50.   #--------------------------------------------------------------------------
  51.   # ● 获取全队伍金钱掉率总值
  52.   #--------------------------------------------------------------------------
  53.   def gold_drop_rate
  54.     gold_rate = 100
  55.     battle_members.each {|actor| actor.feature_objects.each {|obj|
  56.     gold_rate += $1.to_f if obj.note =~ /<金钱掉率:\s*([0-9+.-]+)%>/}}
  57.     return gold_rate / 100
  58.   end
  59. end





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