| 赞 | 0  | 
 
| VIP | 0 | 
 
| 好人卡 | 0 | 
 
| 积分 | 1 | 
 
| 经验 | 4260 | 
 
| 最后登录 | 2017-3-21 | 
 
| 在线时间 | 110 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 50 
 
        - 在线时间
 - 110 小时
 
        - 注册时间
 - 2010-7-28
 
        - 帖子
 - 30
 
 
 
 | 
	
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员  
 
x
 
下載了四格掉寶設定, 但解決不了幾個使用上的問題, 望知道的人幫忙解問一下,感謝! 
例子:除了原先掉落的物品,另加入掉落物品33的設定,  這樣不知是否正確 ? 
 
 
 
 
 
戰鬥結束後出現了error 
 
 
 
之後嘗試將這段放到Game_Troop之下, 
 
 
戰鬥結束後的error消失了, 但掉寶的種類沒有增加 
 
最後嘗試改這個概率比设定, 但沒有弄懂... 
"186行是四格概率比设定,在那里填上4个数字就可以更改概率了,该行内容: 
#         rarity = [178, 51, 15, 12] " 
 
如果我想設定物品33的掉落機率為100, 該什樣填? 
rarity = [100, 100, 100, 100]  
rarity = [400, 100, 100, 100] 
試了這2組設定都無效 
 
謝謝各位幫忙~ 
 
http://rpg.blue/htm/Topic_398.htm 
 
#============================================================================== 
# 本脚本来自www.66RPG.com,使用和转载请保留此信息 
#==============================================================================  
 
# ============================================================================ 
# 四格掉宝设定 by SailCat 
# ============================================================================ 
# 脚本使用说明: 
# 1.复制后插入到Main前面 
# 2.数据库设定额外掉宝的概率,在敌人名称那里 
#   格式: 敌人名称,宝物2,宝物3,宝物4 
#   宝物写法: (I|W|A)n 分别对应: n号道具,n号武器,n号防具 I W A必须大写 
#   例: Cockatrice,A5,I5,W3 
#       Fishman,I2,I3 
#   三栏中任一栏留空不写时,取前一格的设定,全都不写时,取默认宝物设定 
# 3.186行是四格概率比设定,在那里填上4个数字就可以更改概率了,该行内容: 
#         rarity = [178, 51, 15, 12] 
# ============================================================================ 
 
#-------------------------------------------------------------------------- 
# □ RPG::Enemy 
#-------------------------------------------------------------------------- 
module RPG 
 class Enemy 
   def name 
     name = @name.split(/,/)[0] 
     return name != nil ? name : "" 
   end 
   def treasure2 
     treasure = @name.split(/,/)[1] 
     return treasure.to_s 
   end 
   def treasure3 
     treasure = @name.split(/,/)[2] 
     return treasure.to_s 
   end 
   def treasure4 
     treasure = @name.split(/,/)[3] 
     return treasure.to_s 
   end 
 end 
end 
 
#============================================================================== 
# ■ Game_Enemy 
#------------------------------------------------------------------------------ 
#  处理敌人的类。本类在 Game_Troop 类 ($game_troop) 的 
# 内部使用。 
#============================================================================== 
class Game_Enemy < Game_Battler 
 #-------------------------------------------------------------------------- 
 # ● 获取物品 ID2 
 #-------------------------------------------------------------------------- 
 def item2_id 
   if $data_enemies[@enemy_id].treasure2 == "" 
     return item_id 
   elsif $data_enemies[@enemy_id].treasure2[0,1] != "I" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure2[/[0-9]+/].to_i 
   end 
 end 
 #-------------------------------------------------------------------------- 
 # ● 获取武器 ID2 
 #-------------------------------------------------------------------------- 
 def weapon2_id 
   if $data_enemies[@enemy_id].treasure2 == "" 
     return weapon_id 
   elsif $data_enemies[@enemy_id].treasure2[0,1] != "W" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure2[/[0-9]+/].to_i 
   end 
 end 
 #-------------------------------------------------------------------------- 
 # ● 获取防具 ID2 
 #-------------------------------------------------------------------------- 
 def armor2_id 
   if $data_enemies[@enemy_id].treasure2 == "" 
     return armor_id 
   elsif $data_enemies[@enemy_id].treasure2[0,1] != "A" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure2[/[0-9]+/].to_i 
   end 
 end 
 #-------------------------------------------------------------------------- 
 # ● 获取物品 ID3 
 #-------------------------------------------------------------------------- 
 def item3_id 
   if $data_enemies[@enemy_id].treasure3 == "" 
     return item2_id 
   elsif $data_enemies[@enemy_id].treasure3[0,1] != "I" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure3[/[0-9]+/].to_i 
   end 
 end 
 #-------------------------------------------------------------------------- 
 # ● 获取武器 ID3 
 #-------------------------------------------------------------------------- 
 def weapon3_id 
   if $data_enemies[@enemy_id].treasure3 == "" 
     return weapon2_id 
   elsif $data_enemies[@enemy_id].treasure3[0,1] != "W" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure3[/[0-9]+/].to_i 
   end 
 end 
 #-------------------------------------------------------------------------- 
 # ● 获取防具 ID3 
 #-------------------------------------------------------------------------- 
 def armor3_id 
   if $data_enemies[@enemy_id].treasure3 == "" 
     return armor2_id 
   elsif $data_enemies[@enemy_id].treasure3[0,1] != "A" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure3[/[0-9]+/].to_i 
   end 
 end 
 #-------------------------------------------------------------------------- 
 # ● 获取物品 ID4 
 #-------------------------------------------------------------------------- 
 def item4_id 
   if $data_enemies[@enemy_id].treasure4 == "" 
     return item3_id 
   elsif $data_enemies[@enemy_id].treasure4[0,1] != "I" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure4[/[0-9]+/].to_i 
   end 
 end 
 #-------------------------------------------------------------------------- 
 # ● 获取武器 ID4 
 #-------------------------------------------------------------------------- 
 def weapon4_id 
   if $data_enemies[@enemy_id].treasure4 == "" 
     return weapon3_id 
   elsif $data_enemies[@enemy_id].treasure4[0,1] != "W" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure4[/[0-9]+/].to_i 
   end 
 end 
 #-------------------------------------------------------------------------- 
 # ● 获取防具 ID4 
 #-------------------------------------------------------------------------- 
 def armor4_id 
   if $data_enemies[@enemy_id].treasure4 == "" 
     return armor3_id 
   elsif $data_enemies[@enemy_id].treasure4[0,1] != "A" 
     return 0 
   else 
     return $data_enemies[@enemy_id].treasure4[/[0-9]+/].to_i 
   end 
 end 
end 
 
#============================================================================== 
# ■ Scene_Battle 
#------------------------------------------------------------------------------ 
#  处理战斗画面的类。 
#============================================================================== 
class Scene_Battle 
 #-------------------------------------------------------------------------- 
 # ● 开始结束战斗回合 
 #-------------------------------------------------------------------------- 
 def start_phase5 
   # 转移到回合 5 
   @phase = 5 
   # 演奏战斗结束 ME 
   $game_system.me_play($game_system.battle_end_me) 
   # 还原为战斗开始前的 BGM 
   $game_system.bgm_play($game_temp.map_bgm) 
   # 初始化 EXP、金钱、宝物 
   exp = 0 
   gold = 0 
   treasures = [] 
   # 循环 
   for enemy in $game_troop.enemies 
     # 敌人不是隐藏状态的情况下 
     unless enemy.hidden 
       # 获得 EXP、增加金钱 
       exp += enemy.exp 
       gold += enemy.gold 
       # 出现宝物判定 
       if rand(100) < enemy.treasure_prob 
         rarity = [178, 51, 15, 12] 
         case rand(rarity[0] + rarity[1] + rarity[2] + rarity[3]) 
         when 0..rarity[0] - 1 
           if enemy.item_id > 0 
             treasures.push($data_items[enemy.item_id]) 
           end 
           if enemy.weapon_id > 0 
            treasures.push($data_weapons[enemy.weapon_id]) 
           end 
           if enemy.armor_id > 0 
             treasures.push($data_armors[enemy.armor_id]) 
           end 
         when rarity[0]..rarity[0] + rarity[1] - 1 
           if enemy.item2_id > 0 
             treasures.push($data_items[enemy.item2_id]) 
           end 
           if enemy.weapon2_id > 0 
            treasures.push($data_weapons[enemy.weapon2_id]) 
           end 
           if enemy.armor2_id > 0 
             treasures.push($data_armors[enemy.armor2_id]) 
           end 
         when rarity[0] + rarity[1]..rarity[0] + rarity[1] + rarity[2] - 1 
           if enemy.item3_id > 0 
             treasures.push($data_items[enemy.item3_id]) 
           end 
           if enemy.weapon3_id > 0 
            treasures.push($data_weapons[enemy.weapon3_id]) 
           end 
           if enemy.armor3_id > 0 
             treasures.push($data_armors[enemy.armor3_id]) 
           end 
         else 
           if enemy.item4_id > 0 
             treasures.push($data_items[enemy.item4_id]) 
           end 
           if enemy.weapon4_id > 0 
            treasures.push($data_weapons[enemy.weapon4_id]) 
           end 
           if enemy.armor4_id > 0 
             treasures.push($data_armors[enemy.armor4_id]) 
           end 
         end 
       end 
     end 
   end 
   # 限制宝物数为 8 个 
   treasures = treasures[0..7] 
   # 获得 EXP 
   for i in 0...$game_party.actors.size 
     actor = $game_party.actors 
     if actor.cant_get_exp? == false 
       last_level = actor.level 
       actor.exp += exp 
       if actor.level > last_level 
         @status_window.level_up(i) 
       end 
     end 
   end 
   # 获得金钱 
   $game_party.gain_gold(gold) 
   # 获得宝物 
   for item in treasures 
     case item 
     when RPG::Item 
       $game_party.gain_item(item.id, 1) 
     when RPG::Weapon 
       $game_party.gain_weapon(item.id, 1) 
     when RPG::Armor 
       $game_party.gain_armor(item.id, 1) 
     end 
   end 
   # 生成战斗结果窗口 
   @result_window = Window_BattleResult.new(exp, gold, treasures) 
   # 设置等待计数 
   @phase5_wait_count = 100 
 end 
end 
 
 
#============================================================================== 
# 本脚本来自www.66RPG.com,使用和转载请保留此信息 
#==============================================================================  
  |   
 
 
 
 |