查看: 2617|回复: 2

[已经解决] 战斗前总是先出现菜单页面的背景图案???

[复制链接]
梦石
0
星屑
50
在线时间
130 小时
注册时间
2016-1-14
回帖
106
发表于 2016-6-20 11:41:18 | 显示全部楼层 |阅读模式

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

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

×
如题,我在主菜单页面添加了背景UI,但不知什么原因,在战斗开始时总会先出现这张UI背景图,然后才进入战斗流程。
所以在此想请教下有没有人知道这是什么原因?

具体脚本贴在下面(请各位高手不吝赐教){:2_284:} :
[pre lang="ruby"]#encoding:utf-8
#==============================================================================
# ■ Scene_Menu
#------------------------------------------------------------------------------
#  菜单画面
#==============================================================================

class Scene_Menu < Scene_MenuBase
  #--------------------------------------------------------------------------
  # ● 开始处理
  #--------------------------------------------------------------------------
  def start
    super
    create_command_window
    create_gold_window
    create_status_window
    create_item_bg
  end
  #--------------------------------------------------------------------------
  # ☆ 生背景图形
  #--------------------------------------------------------------------------
  def create_item_bg
    @menuback_sprite = Sprite.new
    @menuback_sprite.bitmap = Cache.system("男主_back")
  end
  #--------------------------------------------------------------------------
  # ● 生成指令窗口
  #--------------------------------------------------------------------------
  def create_command_window
    @command_window = Window_MenuCommand.new
    @command_window.set_handler(:item,      method(:command_item))
    @command_window.set_handler(:skill,     method(:command_skill))
    @command_window.set_handler(:equip,     method(:command_equip))
    @command_window.set_handler(:status,    method(:command_status))
#    @command_window.set_handler(:formation, method(:command_formation))
    @command_window.set_handler(:save,      method(:command_save))
    @command_window.set_handler(:game_end,  method(:command_game_end))
    @command_window.set_handler(:cancel,    method(:return_scene))
  end
  #--------------------------------------------------------------------------
  # ● 生成金钱窗口
  #--------------------------------------------------------------------------
  def create_gold_window
    @gold_window = Window_Gold.new
    @gold_window.x = 42
    @gold_window.y = Graphics.height - @gold_window.height - 312
    @gold_window.opacity = 0
  end
  #--------------------------------------------------------------------------
  # ● 生成状态窗口
  #--------------------------------------------------------------------------
  def create_status_window
    @status_window = Window_MenuStatus.new(160,0)#@command_window.y, 0)
    @status_window.opacity = 0
    @command_window.x = 40      #主页选项框X
    @command_window.y = 180      #主页选项框Y
  end
  #--------------------------------------------------------------------------
  # ● 指令“物品”
  #--------------------------------------------------------------------------
  def command_item
    SceneManager.call(Scene_Item)
  end
  #--------------------------------------------------------------------------
  # ● 指令“技能”
  #--------------------------------------------------------------------------
  def command_skill
    SceneManager.call(Scene_Skill)
  end
  #--------------------------------------------------------------------------
  # ● 指令“装备”
  #--------------------------------------------------------------------------
  def command_equip
    SceneManager.call(Scene_Equip)
  end
  #--------------------------------------------------------------------------
  # ● 指令“状态”
  #--------------------------------------------------------------------------
  def command_status
    SceneManager.call(Scene_Status)
  end
  #--------------------------------------------------------------------------
  # ● 指令“技能”“装备”“状态”
  #--------------------------------------------------------------------------
# def command_personal
#   @status_window.select_last
#   @status_window.activate
  #  @status_window.set_handler(:ok,     method(:on_personal_ok))
#   @status_window.set_handler(:cancel, method(:on_personal_cancel))
# end
  #--------------------------------------------------------------------------
  # ● 指令“整队”
  #--------------------------------------------------------------------------
# def command_formation
#   @status_window.select_last
#   @status_window.activate
#   @status_window.set_handler(:ok,     method(:on_formation_ok))
#   @status_window.set_handler(:cancel, method(:on_formation_cancel))
# end
  #--------------------------------------------------------------------------
  # ● 指令“存档”
  #--------------------------------------------------------------------------
  def command_save
    SceneManager.call(Scene_Save)
  end
  #--------------------------------------------------------------------------
  # ● 指令“结束游戏”
  #--------------------------------------------------------------------------
  def command_game_end
    SceneManager.call(Scene_End)
  end
  #--------------------------------------------------------------------------
  # ● 个人指令“确定”
  #--------------------------------------------------------------------------
  def on_personal_ok
    case @command_window.current_symbol
    when :skill
      SceneManager.call(Scene_Skill)
    when :equip
      SceneManager.call(Scene_Equip)
   when :status
      SceneManager.call(Scene_Status)
    end
  end
  #--------------------------------------------------------------------------
  # ● 个人指令“取消”
  #--------------------------------------------------------------------------
  def on_personal_cancel
    @status_window.unselect
    @command_window.activate
  end
  #--------------------------------------------------------------------------
  # ☆ 刷新
  #--------------------------------------------------------------------------
  def update
    if @command_window.x <= 0
       @command_window.x += 2
    end
    super
  end
  #GSR 1.5
  alias gsr_terminate terminate
  def terminate
      super
      $menuback_sprite.dispose if $menuback_sprite
  end
end

  #--------------------------------------------------------------------------
  # ● 整队“确定”
  #--------------------------------------------------------------------------
# def on_formation_ok
#   if @status_window.pending_index >= 0
#     $game_party.swap_order(@status_window.index,
#                            @status_window.pending_index)
  #    @status_window.pending_index = -1
  #    @status_window.redraw_item(@status_window.index)
  #  else
  #    @status_window.pending_index = @status_window.index
#   end
  #  @status_window.activate
# end
  #--------------------------------------------------------------------------
  # ● 整队“取消”
  #--------------------------------------------------------------------------
#  def on_formation_cancel
#   if @status_window.pending_index >= 0
#     @status_window.pending_index = -1
  #    @status_window.activate
  #  else
#     @status_window.unselect
#     @command_window.activate
#   end
# end
#end
[/pre]

梦石
1
星屑
23246
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2016-6-24 09:21:43 | 显示全部楼层
释放的时候要释放的是 @menuback_sprite
不是 $menuback_sprite

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
50
在线时间
130 小时
注册时间
2016-1-14
回帖
106
 楼主| 发表于 2016-6-24 17:18:30 | 显示全部楼层
喵呜喵5 发表于 2016-6-24 09:21
释放的时候要释放的是 @menuback_sprite
不是 $menuback_sprite

哈哈,完美解决,谢谢大大啦!!!
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部