Project1

标题: 有什么办法对一个中BOSS的敌人,下次遇到就会加强... [打印本页]

作者: 雷影    时间: 2015-11-2 02:04
标题: 有什么办法对一个中BOSS的敌人,下次遇到就会加强...
本帖最后由 雷影 于 2015-11-2 02:06 编辑

比如某次剧情战,干掉一个小怪后,小怪放下狠话“我还会回来的……”云云
再次遇到时小怪变强了,已经是小BOSS的难度
再再次遇到则是中BOSS的难度……

本来笨办法就是,设定成几个等级数据怪,都用同一个战斗图来表示。可是这样做在“怪物图鉴中”就也会显示出很多个这个怪的数据了,只想显示一个而已的!
后来想到加BUFF,设计多个加强能力的BUFF,能力提升一倍,二倍,三倍……开战前第一回合强行给怪上BUFF来表现怪变强了……

想问问还有有没有其他更方便的方式?
作者: 小小西    时间: 2015-11-2 08:48
RUBY 代码复制
  1. =begin
  2.  
  3. # 跟随主角成长的敌人,作者:66RPG的tan12345
  4.  
  5. # 功能:敌人的属性、经验、金钱跟随队伍领队的等级成长
  6.  
  7. #
  8. # 使用方法:将脚本插入到main上
  9.  
  10. #           在需要设定成长的敌人备注栏里填写<lv = leader>
  11.  
  12. #           设定跟随领队成长的敌人只需要在数据库里设定每级各属性成长率即可
  13.  
  14. #           比如1号敌人在备注栏里填写了<lv = leader>,
  15.  
  16. #           那么,如果他的物理伤害是1,领队等级10,战斗时,1号敌人的物理伤害就等于1*10
  17.  
  18. #
  19.  
  20. =end
  21.  
  22. module Tan_Enemy_lv_Set
  23.  
  24.   #敌人的成长等级取决因素
  25.  
  26.   #0 = 领队等级
  27.  
  28.   #1 = 队伍平均等级
  29.  
  30.   #2 = 队伍最高等级
  31.  
  32.   ENEMY_LV = 1
  33.  
  34. end
  35.  
  36. class Game_Enemy < Game_Battler
  37.  
  38.   attr_accessor :tan_enemy_rate                 # 属性、经验值、金钱比例
  39.  
  40.   #--------------------------------------------------------------------------
  41.  
  42.   # ● 初始化对象
  43.  
  44.   #--------------------------------------------------------------------------
  45.  
  46.   alias tan_enemy_lv_initialize initialize
  47.  
  48.   def initialize(index, enemy_id)
  49.  
  50.     tan_enemy_lv_initialize(index, enemy_id)
  51.  
  52.     @tan_enemy_rate = 1
  53.  
  54.     if enemy.note =~ /<lv = leader>/
  55.  
  56.       case Tan_Enemy_lv_Set::ENEMY_LV
  57.  
  58.       when 0
  59.  
  60.         @tan_enemy_rate = $game_party.leader.level
  61.  
  62.       when 1
  63.  
  64.         @tan_enemy_rate = 0
  65.  
  66.         $game_party.members.each {|actor|
  67.             @tan_enemy_rate += actor.level
  68.         }
  69.  
  70.         @tan_enemy_rate /= $game_party.members.size if @tan_enemy_rate != 0
  71.  
  72.       when 2
  73.  
  74.         @tan_enemy_rate = $game_party.highest_level
  75.  
  76.       else
  77.  
  78.       end
  79.  
  80.     end
  81.  
  82.     @hp = mhp
  83.  
  84.     @mp = mmp
  85.  
  86.   end
  87.  
  88.   #--------------------------------------------------------------------------
  89.  
  90.   # ● 获取普通能力的基础值
  91.  
  92.   #--------------------------------------------------------------------------
  93.  
  94.   alias tan_enemy_lv_param_base param_base
  95.  
  96.   def param_base(param_id)
  97.  
  98.     v = tan_enemy_lv_param_base(param_id)
  99.  
  100.     v *= @tan_enemy_rate.to_i
  101.  
  102.     return v.to_i
  103.  
  104.   end
  105.  
  106.   #--------------------------------------------------------------------------
  107.  
  108.   # ● 获取经验值
  109.  
  110.   #--------------------------------------------------------------------------
  111.  
  112.   alias tan_enemy_lv_exp exp
  113.  
  114.   def exp
  115.  
  116.     v = tan_enemy_lv_exp
  117.  
  118.     v *= @tan_enemy_rate.to_i
  119.  
  120.     return v.to_i
  121.  
  122.   end
  123.  
  124.   #--------------------------------------------------------------------------
  125.  
  126.   # ● 获取金钱
  127.  
  128.   #--------------------------------------------------------------------------
  129.  
  130.   alias tan_enemy_lv_gold gold
  131.  
  132.   def gold
  133.  
  134.     v = tan_enemy_lv_gold
  135.  
  136.     v *= @tan_enemy_rate.to_i
  137.  
  138.     return v.to_i
  139.  
  140.   end
  141.  
  142. end





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