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

Project1

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

[已经解决] RTAB战斗系统的伤害美化脚本和怪物多掉宝脚本有冲突,咋办?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
70
在线时间
3 小时
注册时间
2010-6-29
帖子
24
跳转到指定楼层
1
发表于 2010-7-27 14:04:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
就是如果在RTAB战斗系统里面加入怪物多掉宝脚本的话,人物升级的时候,获得技能的时候,   就没有提示了,这个要怎么解决啊?
莪看伤害美化脚本和多掉宝脚本好像都不算难,
拜托那个大大来帮莪修改一下啊...
跪求了,,,,,,,


莪把工程也贴上来好了,.

戰鬥效果整合系統.rar

958.1 KB, 下载次数: 133

点评

我已经帮你解决了,上线后来帖子看看,认可以后编辑帖子,把主题分类改为已经解决  发表于 2010-7-28 07:34

Lv1.梦旅人

垃圾死人

梦石
0
星屑
50
在线时间
285 小时
注册时间
2009-1-27
帖子
2420

贵宾

2
发表于 2010-7-27 14:14:56 | 只看该作者
RTAB战斗系统是非常好的。。。。但是也是和很多战斗类脚本有冲突最高的。。。。杯具
努力努力再努力
回复 支持 反对

使用道具 举报

Lv1.梦旅人

剑仙·影羽

梦石
0
星屑
172
在线时间
224 小时
注册时间
2010-3-20
帖子
1580
3
发表于 2010-7-27 16:52:15 | 只看该作者
LZ把那个掉宝的脚本传上来

点评

其实莪放上来的那个附件里面也有这个掉宝的脚本的, 只要有这个脚本在, 虽然不出错, 但是升级也不会提示了..  发表于 2010-7-28 04:47
我已经整合了很多了,再整合一个也无所谓拉  发表于 2010-7-27 16:54
PS:我来试着整合看看  发表于 2010-7-27 16:52

——至今为止,谁也没能分析出他们为什么会因为说了这些话而死。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
70
在线时间
3 小时
注册时间
2010-6-29
帖子
24
4
 楼主| 发表于 2010-7-28 04:45:36 | 只看该作者
#==============================================================================
# 本脚本来自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 = [30, 30, 15, 15, 10, 5, 2, 1]
         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,使用和转载请保留此信息
#=============================================================


以上是怪物多掉宝的脚本.!

点评

这几个脚本不要改动顺序而已,加入的话MAIN前面,有冲突的话放在RTAB的后面,没用的话 再来提问区发帖提问  发表于 2010-7-28 08:58
回复 支持 反对

使用道具 举报

Lv1.梦旅人

剑仙·影羽

梦石
0
星屑
172
在线时间
224 小时
注册时间
2010-3-20
帖子
1580
5
发表于 2010-7-28 06:42:54 | 只看该作者
本帖最后由 火ZHI意志 于 2010-7-28 09:02 编辑

来了,把四个掉宝的脚本放在RTAB的前面(前面是靠近MAIN)
经过我的总结,发现整合难度几乎为0………………
脚本太那个了,放在代码里显示起来很慢………………
所以只能用附件了,工程里的脚本编排顺序不要动
戰鬥效果整合系統.zip (1004.08 KB, 下载次数: 87)
  1. # 脚本使用说明:
  2. # 1.复制后插入到Main前面
  3. # 2.数据库设定额外掉宝的概率,在敌人名称那里
  4. #   格式: 敌人名称,宝物2,宝物3,宝物4
  5. #   宝物写法: (I|W|A)n 分别对应: n号道具,n号武器,n号防具 I W A必须大写
  6. #   例: Cockatrice,A5,I5,W3
  7. #       Fishman,I2,I3
  8. #   三栏中任一栏留空不写时,取前一格的设定,全都不写时,取默认宝物设定
  9. # 3.186行是四格概率比设定,在那里填上4个数字就可以更改概率了,该行内容:
  10. #         rarity = [178, 51, 15, 12]
复制代码

点评

还有個问题就是,,,, 你帮莪改的这个掉宝系统,, 咋设置掉宝概率=,=?  发表于 2010-7-28 09:00
这几个脚本不要改动顺序而已,加入的话MAIN前面,有冲突的话放在RTAB的后面,没用的话 再来提问区发帖提问  发表于 2010-7-28 08:58
啊,,3Q你啊,,, 不过莪还想问一个问题,, 不改动编排顺序的话, 如果莪还要在里面加其他的脚本的话,怎么办? 加在什么位置?  发表于 2010-7-28 08:55

评分

参与人数 1星屑 +400 收起 理由
「旅」 + 400 认可答案

查看全部评分


——至今为止,谁也没能分析出他们为什么会因为说了这些话而死。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-12-28 15:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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