Project1

标题: 精英敌人脚本问题 [打印本页]

作者: 347780682    时间: 2015-11-4 19:23
标题: 精英敌人脚本问题
求各位大大帮把这个改为变量控制精英出现几率{:2_280:}




RUBY 代码复制
  1. =begin
  2. # 精英敌人,作者:66RPG的tan12345
  3. # 功能:遇敌时,敌人有一定几率(可设定)变成精英,精英怪比普通怪属性有加成(可修改),
  4. #       当然了,精英怪的经验、金钱、掉落率也同样有加成。
  5. #       也可以设定指定的敌人不会变成精英(比如BOSS)
  6. #
  7. # 使用方法:将脚本插入到main上
  8. #
  9. =end
  10.  
  11. module Tan_by_enemy_set
  12.   #精英怪出现几率,30代表30%
  13.   Tan_enemy_by = 30
  14.   #精英怪属性加成比例(同时也是经验、金钱、掉落率加成比例),1.3代表属性是普通怪的1.3倍
  15.   Tan_enemy_by_num = 2
  16.   #不会成为精英的敌人
  17.   NO_BY_ENEMY = [2,3]#表示2号和3号敌人不会变成精英,适合设定BOSS
  18. end
  19. class Game_Enemy < Game_Battler
  20.  
  21.   attr_reader   :is_by  # 是否精英
  22.  
  23.   #--------------------------------------------------------------------------
  24.   # ● 精英初始化
  25.   #--------------------------------------------------------------------------
  26.   def init_by_enemy
  27.     @is_by = false
  28.     @is_by = true if rand(100) <= Tan_by_enemy_set::Tan_enemy_by && !Tan_by_enemy_set::NO_BY_ENEMY.include?(enemy_id)
  29.     @original_name = @original_name + "(精英)" if @is_by == true
  30.     @hp = mhp
  31.     @mp = mmp
  32.   end
  33.   #--------------------------------------------------------------------------
  34.   # ● 是否精英
  35.   #--------------------------------------------------------------------------
  36.   def is_by?
  37.     return true if @is_by
  38.     return false
  39.   end
  40.  
  41.   #--------------------------------------------------------------------------
  42.   # ● 初始化对象
  43.   #--------------------------------------------------------------------------
  44.   alias tan_by_enemy_initialize initialize
  45.   def initialize(index, enemy_id)
  46.     tan_by_enemy_initialize(index, enemy_id)
  47.     init_by_enemy
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   # ● 获取普通能力的基础值
  51.   #--------------------------------------------------------------------------
  52.   alias tan_by_enemy_param_base param_base
  53.   def param_base(param_id)
  54.     v = tan_by_enemy_param_base(param_id)
  55.     v *= Tan_by_enemy_set::Tan_enemy_by_num if is_by?
  56.     return v.to_i
  57.   end
  58.   #--------------------------------------------------------------------------
  59.   # ● 获取经验值
  60.   #--------------------------------------------------------------------------
  61.   alias tan_by_enemy_exp exp
  62.   def exp
  63.     v = tan_by_enemy_exp
  64.     v *= Tan_by_enemy_set::Tan_enemy_by_num if is_by?
  65.     return v.to_i
  66.   end
  67.   #--------------------------------------------------------------------------
  68.   # ● 获取金钱
  69.   #--------------------------------------------------------------------------
  70.   alias tan_by_enemy_gold gold
  71.   def gold
  72.     v = tan_by_enemy_gold
  73.     v *= Tan_by_enemy_set::Tan_enemy_by_num if is_by?
  74.     return v.to_i
  75.   end
  76.   #--------------------------------------------------------------------------
  77.   # ● 获取物品掉率的倍率
  78.   #--------------------------------------------------------------------------
  79.   alias tan_by_enemy_drop_item_rate drop_item_rate
  80.   def drop_item_rate
  81.     v = tan_by_enemy_drop_item_rate
  82.     v *= Tan_by_enemy_set::Tan_enemy_by_num if is_by?
  83.     return v
  84.   end
  85. end

作者: david_ng223    时间: 2015-11-4 21:50
提示: 作者被禁止或删除 内容自动屏蔽
作者: 347780682    时间: 2015-11-4 22:03
david_ng223 发表于 2015-11-4 21:50
Tan_enemy_by = $game_variables[1]
-改完-

额 按照你说的改了但是跳出了这个
作者: david_ng223    时间: 2015-11-5 09:11
提示: 作者被禁止或删除 内容自动屏蔽




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