幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1542|回复: 8

好难。。。求助

[复制链接]

2

主题

17

帖子

149

积分

③业余

积分
149
QQ
发表于 2009-1-24 20:56:31 | 显示全部楼层 |阅读模式
脚本冲突有办法处理吗???
封神笔论。。。
回复

使用道具 举报

550

主题

9117

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-1-24 22:10:26 | 显示全部楼层
1。你提问的不具体,这让人没有办法回答。。。脚本冲突多种多样,你应该把自己用了什么脚本导致了什么错误说明一下

2。LZ你发错区了。。。。。这应该放到RM提问区
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

2

主题

17

帖子

149

积分

③业余

积分
149
QQ
 楼主| 发表于 2009-1-26 16:41:10 | 显示全部楼层

好难。。。求助

哦~~我知道了,谢谢。。。虽然用RM已经很长时间了,但我还是第一次进论坛呀!!!请多多包函...
封神笔论。。。
回复 支持 反对

使用道具 举报

550

主题

9117

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-1-26 21:52:23 | 显示全部楼层
包涵谈不到吧。。就是提醒了一下。。。另外,建议把问题说得清楚这样才会让人明白你是什么问题
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

2

主题

17

帖子

149

积分

③业余

积分
149
QQ
 楼主| 发表于 2009-1-27 11:45:16 | 显示全部楼层
我用了一些物品的分类脚本和RTAB战斗系统,还用了一个战斗结束动态增加EXP条,结果那个EXP条就不动了,我都是按说明来弄的,但也提示有可能会发生冲突,这个可以避免吗???
封神笔论。。。
回复 支持 反对

使用道具 举报

550

主题

9117

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-1-27 13:41:46 | 显示全部楼层
RTAB战斗系统....战斗结束动态增加EXP条...都是战斗的阿。冲突的可能性比较大。。你的给我看看是什么脚本才行啊。。。要不我不知道是什么啊。。。。。。
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

2

主题

17

帖子

149

积分

③业余

积分
149
QQ
 楼主| 发表于 2009-2-1 15:43:37 | 显示全部楼层

战斗结束动态增加EXP条。。。

以下是战斗结束动态增加EXP条:
据作者介绍,这个可以使战斗结束栏变得有观感...


#==============================================================================
#  战斗结束动态增加EXP条 v0.1    作者:灯笼菜刀王
#==============================================================================
class Window_BattleResult < Window_Base
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #     exp       : EXP
  #     gold      : 金钱
  #     treasures : 宝物
  #--------------------------------------------------------------------------
  def initialize(exp, gold, treasures)
    @exp = exp
    @gold = gold
    @treasures = treasures
    @expup = []
    @expnow = []
    for i in 0...$game_party.actors.size
     actor = $game_party.actors
     now = actor.now_exp
     max = actor.next_exp
     now = now > max ? max : now
     @expnow = max != 0 ? 98 * now / max.to_f : 0
      now2 = actor.now_exp - @exp
      now2 = now2 > max ? max : now2
     @expup = max != 0 ? 98 * now2 / max.to_f : 0
    end
    super(140, 0, 400, 8 * 32 + 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.y = 160 - height / 2
    self.back_opacity = 160
    self.visible = false
    refresh
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    x = 6
    self.contents.font.color = normal_color
    cx = contents.text_size(@exp.to_s).width
    self.contents.draw_text(x, 0, cx, 32, @exp.to_s)
    x += cx + 4
    self.contents.font.color = system_color
    cx = contents.text_size("EXP").width
    self.contents.draw_text(x, 0, 64, 32, "EXP")
    x += cx + 16
    self.contents.font.color = normal_color
    cx = contents.text_size(@gold.to_s).width
    self.contents.draw_text(x, 0, cx, 32, @gold.to_s)
    x += cx + 4
    self.contents.font.color = system_color
    self.contents.draw_text(x, 0, 128, 32, $data_system.words.gold)
    cx = contents.text_size($data_system.words.gold).width
    self.contents.draw_text(208,0,128,32,"战利品")
    for i in 0...$game_party.actors.size
      actor = $game_party.actors
      draw_actor_graphic(actor, 20, i*60+92)
      draw_actor_name(actor, 34, i*60+42)
      self.contents.fill_rect(26, i*60+76, 100, 8,Color.new(192,192,192,255))
      self.contents.fill_rect(28, i*60+78, 96, 4, Color.new(128,128,128,128))
      now = actor.now_exp - @exp
      max = actor.next_exp
      now = now > max ? max : now
      a = max != 0 ? 78 * now / max.to_f : 0
      self.contents.fill_rect(27, i*60+77, @expup, 6, Color.new(150, 255, 150, 255))
    end
    y = 32
    for item in @treasures
      draw_item_name(item, 180, y)
      y += 32
    end
  end
def update
   for i in 0...$game_party.actors.size
     if @expup < @expnow
       @expup += 1
     end
   end
   refresh
end
end
class Game_Actor < Game_Battler
  def now_exp
   return @exp - @exp_list[@level]
  end
  def next_exp
   return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
  end
end
class Scene_Battle
  def update
    # 执行战斗事件中的情况下
    if $game_system.battle_interpreter.running?
      # 刷新解释器
      $game_system.battle_interpreter.update
      # 强制行动的战斗者不存在的情况下
      if $game_temp.forcing_battler == nil
        # 执行战斗事件结束的情况下
        unless $game_system.battle_interpreter.running?
          # 继续战斗的情况下、再执行战斗事件的设置
          unless judge
            setup_battle_event
          end
        end
        # 如果不是结束战斗回合的情况下
        if @phase != 5
          # 刷新状态窗口
          @status_window.refresh
        end
      end
    end
    # 系统 (计时器)、刷新画面
    $game_system.update
    $game_screen.update
    # 计时器为 0 的情况下
    if $game_system.timer_working and $game_system.timer == 0
      # 中断战斗
      $game_temp.battle_abort = true
    end
    # 刷新窗口
    @help_window.update
    @party_command_window.update
    @actor_command_window.update
    @status_window.update
    @message_window.update
    #####菜刀王到此一游################
    if @result_window != nil
      @result_window.update
    end
    ###################################
    # 刷新活动块
    @spriteset.update
    # 处理过渡中的情况下
    if $game_temp.transition_processing
      # 清除处理过渡中标志
      $game_temp.transition_processing = false
      # 执行过渡
      if $game_temp.transition_name == ""
        Graphics.transition(20)
      else
        Graphics.transition(40, "Graphics/Transitions/" +
          $game_temp.transition_name)
      end
    end
    # 显示信息窗口中的情况下
    if $game_temp.message_window_showing
      return
    end
    # 显示效果中的情况下
    if @spriteset.effect?
      return
    end
    # 游戏结束的情况下
    if $game_temp.gameover
      # 切换到游戏结束画面
      $scene = Scene_Gameover.new
      return
    end
    # 返回标题画面的情况下
    if $game_temp.to_title
      # 切换到标题画面
      $scene = Scene_Title.new
      return
    end
    # 中断战斗的情况下
    if $game_temp.battle_abort
      # 还原为战斗前的 BGM
      $game_system.bgm_play($game_temp.map_bgm)
      # 战斗结束
      battle_end(1)
      return
    end
    # 等待中的情况下
    if @wait_count > 0
      # 减少等待计数
      @wait_count -= 1
      return
    end
    # 强制行动的角色存在、
    # 并且战斗事件正在执行的情况下
    if $game_temp.forcing_battler == nil and
       $game_system.battle_interpreter.running?
      return
    end
    # 回合分支
    case @phase
    when 1  # 自由战斗回合
      update_phase1
    when 2  # 同伴命令回合
      update_phase2
    when 3  # 角色命令回合
      update_phase3
    when 4  # 主回合
      update_phase4
    when 5  # 战斗结束回合
      update_phase5
    end
  end
  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
          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
        end
      end
    end
    # 限制宝物数为 6 个
    treasures = treasures[0..5]
    # 获得 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)
    ######菜刀王到此一游###############
    @result_window.visible = true
    ###################################
    # 设置等待计数
    @phase5_wait_count = 100
  end
end
封神笔论。。。
回复 支持 反对

使用道具 举报

2

主题

17

帖子

149

积分

③业余

积分
149
QQ
 楼主| 发表于 2009-2-1 16:02:42 | 显示全部楼层

回答我的谢谢!!!路过的参考。。。

至于那个RTAB战斗系统太长了,还要伴随着一些脚本才能使用,在此我就不发了,战斗系统就是66RPG站长柳柳发布的《大富翁·勇者斗恶龙》的那个游戏的战斗系统,我把RTAB战斗系统和战斗结束动态增加EXP条都用在脚本里,都是按正确的方法弄的,(比如以上那个脚本名字必须带有MAIN,并且还要在Main上面),可是我在测试时,发现EXP条不动,而且也不变,等下一场战斗结束后,显示的是上一次应该增长的经验。。。 就是这个问题啦~


在此补充:
柳柳是我的偶像哦!!!我特别爱玩他的游戏,特别是《黑暗圣剑传说》,非常好玩,游戏做工如此完美。。。值得我学习,在此建议大家玩一玩 。。。
封神笔论。。。
回复 支持 反对

使用道具 举报

550

主题

9117

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-3-5 06:13:00 | 显示全部楼层
为什么没人专区。。。。人家2月1回帖,我今天才看到。。。。OTL
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2025-6-19 18:28 , Processed in 0.014427 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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