查看: 3382|回复: 2

[推荐问答] 跳过标题脚本和地图名显示脚本冲突

[复制链接]
梦石
0
星屑
50
在线时间
420 小时
注册时间
2011-3-13
回帖
185
发表于 2012-12-29 16:22:19 | 显示全部楼层 |阅读模式
悬赏1星屑已解决
本帖最后由 2000zs66rpg 于 2012-12-29 16:23 编辑

[pre lang="ruby" line="1"]# =============================================================================
# ■ Window_MapName
#  显示地图名字的窗口。
# =============================================================================
class Window_MapName < Window_Base

  # 暂时屏蔽用的开关

  SWITCH = 52
  
  # 设置字体

  FONT_NAME = (["隶书","楷体","黑体"])
  FONT_SIZE = 28  
  FONT_COLOR = Color.new(0, 255, 255, 255)

  # 窗口位置设定

  NAME_X = 16      # 矩形左上顶点X坐标

  NAME_Y = 16      # 矩形左上顶点Y坐标

  NAME_W = 220      # 矩形宽

  NAME_H = 60       # 矩形高
  
  # 显示时间设置

  SHOW_TIME_0 = 10  # 地图名出现前等待的帧数

  SHOW_TIME_1 = 10  # 地图名从不可见变成可见的帧数

  SHOW_TIME_2 = 30  # 地图名完全可见的帧数

  SHOW_TIME_3 = 10  # 地图名从可见变成不可见的帧数

  # 完全可见时的透明度设置

  OPACITY_1 = 255   # 边框

  OPACITY_2 = 255   # 背景

  OPACITY_3 = 255   # 文字
  

  

  #--------------------------------------------------------------------------

  # ● 初始化状态

  #--------------------------------------------------------------------------

  def initialize

    super(NAME_X , NAME_Y, NAME_W, NAME_H)

    # 初始化窗口透明度

    self.opacity = 0

    self.back_opacity = 0

    self.contents_opacity = 0

    self.contents = Bitmap.new(width - 32, height - 32)

    # 剩余帧数初始化

    @show_time = 0

  end

  #--------------------------------------------------------------------------

  # ● 输出文字

  #--------------------------------------------------------------------------

  def setname   

    unless $game_switches[SWITCH]==true

      # 获取地图ID

      newid = $game_map.map_id

      time = SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3  

      # 如果现在的地图的ID不是刚才显示的地图ID则开始显示

      if newid != @id

        @id = newid

        @show_time = SHOW_TIME_0 + SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3

      # 剩余帧数为0是时,全部窗口透明

      elsif @show_time < 1

        self.opacity = 0

        self.back_opacity = 0

        self.contents_opacity = 0

        return

      end      

      self.contents.clear

      # 描绘地图名

      self.contents.draw_text(4, 0 , width - 40, 32, $data_mapinfos[@id].name, 1)

      self.contents.font.size = FONT_SIZE
      
      self.contents.font.name = FONT_NAME
      
      self.contents.font.color = FONT_COLOR
      
      # 根本帧数设定窗口透明度

      if @show_time > (SHOW_TIME_2 + SHOW_TIME_3)

        self.opacity = @show_time < time ? (((OPACITY_1 / SHOW_TIME_1) * (time - @show_time)).to_i) : 0

        self.back_opacity = @show_time < time ? (((OPACITY_2 / SHOW_TIME_1 )* (time - @show_time)).to_i) : 0

        self.contents_opacity = @show_time < time ? (((OPACITY_3 / SHOW_TIME_1) * (time - @show_time)).to_i) : 0

      else

        self.opacity = @show_time < (SHOW_TIME_3 / 16 * 14) ? ((OPACITY_1 / SHOW_TIME_3) * @show_time).to_i : OPACITY_1

        self.back_opacity = @show_time < (SHOW_TIME_3 / 16 * 9) ? ((OPACITY_2 / SHOW_TIME_3) * @show_time).to_i : OPACITY_2

        self.contents_opacity = @show_time < SHOW_TIME_3 ? ((OPACITY_3 / SHOW_TIME_3)* @show_time).to_i : OPACITY_3

      end      

      @show_time -= 1

    end

  end

end



#==============================================================================

# ■ Scene_Map

#------------------------------------------------------------------------------

#  处理地图画面的类。(追加定义)

#==============================================================================



class Scene_Map

  alias smn_main main

  def main

    @mapname = Window_MapName.new

    smn_main

    @mapname.dispose

  end

  

  alias smn_update update

  def update

    @mapname.setname

    smn_update

  end

end



#==============================================================================

# ■ Scene_Title

#------------------------------------------------------------------------------

#  处理标题画面的类。(追加定义)

#==============================================================================



class Scene_Title

  alias smn_main main

  def main

    # 读取地图信息文件

    $data_mapinfos = load_data("Data/MapInfos.rxdata")

    smn_main

  end

end



#==============================================================================

# 本脚本来自www.66RPG.com,使用和转载请保留此信息

#============================================================================== [/pre]



下面是跳过标题脚本

[pre lang="ruby" line="1"]#==============================================================================

# 本脚本来自www.66RPG.com,使用和转载请保留此信息

#==============================================================================


class Scene_Title

  #==============================================================================

  # 脚本作者:朱仔メ龍 QQ:251724722

  # 脚本转载请保留以上信息

  #==============================================================================

  def main

    $data_actors        = load_data("Data/Actors.rxdata")

    $data_classes       = load_data("Data/Classes.rxdata")

    $data_skills        = load_data("Data/Skills.rxdata")

    $data_items         = load_data("Data/Items.rxdata")

    $data_weapons       = load_data("Data/Weapons.rxdata")

    $data_armors        = load_data("Data/Armors.rxdata")

    $data_enemies       = load_data("Data/Enemies.rxdata")

    $data_troops        = load_data("Data/Troops.rxdata")

    $data_states        = load_data("Data/States.rxdata")

    $data_animations    = load_data("Data/Animations.rxdata")

    $data_tilesets      = load_data("Data/Tilesets.rxdata")

    $data_common_events = load_data("Data/CommonEvents.rxdata")

    $data_system        = load_data("Data/System.rxdata")

    $game_system = Game_System.new

    Graphics.frame_count = 0

    $game_temp          = Game_Temp.new

    $game_system        = Game_System.new

    $game_switches      = Game_Switches.new

    $game_variables     = Game_Variables.new

    $game_self_switches = Game_SelfSwitches.new

    $game_screen        = Game_Screen.new

    $game_actors        = Game_Actors.new

    $game_party         = Game_Party.new

    $game_troop         = Game_Troop.new

    $game_map           = Game_Map.new

    $game_player        = Game_Player.new

    $game_party.setup_starting_members

    $game_map.setup($data_system.start_map_id)

    $game_player.moveto($data_system.start_x, $data_system.start_y)

    $game_player.refresh

    $game_map.autoplay

    $game_map.update

    $scene = Scene_Map.new

  end

end



#==============================================================================

# 本脚本来自www.66RPG.com,使用和转载请保留此信息

#==============================================================================

[/pre]







提示冲突,错误在地图名脚本116行




最佳答案

查看完整内容

跳过放前,地图名放后,我开工程测试并没有报错。
梦石
0
星屑
47
在线时间
976 小时
注册时间
2011-4-30
回帖
846
发表于 2012-12-29 16:22:20 | 显示全部楼层
跳过放前,地图名放后,我开工程测试并没有报错。
湿滑落式骑!
回复

使用道具 举报

梦石
0
星屑
161
在线时间
629 小时
注册时间
2012-6-9
回帖
1233
发表于 2013-1-9 18:29:44 | 显示全部楼层
同意楼上的.跳过放前,地图名放后
  1. #==============================================================================

  2. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息

  3. #==============================================================================


  4. class Scene_Title

  5.   #==============================================================================

  6.   # 脚本作者:朱仔メ龍 QQ:251724722

  7.   # 脚本转载请保留以上信息

  8.   #==============================================================================

  9.   def main

  10.     $data_actors        = load_data("Data/Actors.rxdata")

  11.     $data_classes       = load_data("Data/Classes.rxdata")

  12.     $data_skills        = load_data("Data/Skills.rxdata")

  13.     $data_items         = load_data("Data/Items.rxdata")

  14.     $data_weapons       = load_data("Data/Weapons.rxdata")

  15.     $data_armors        = load_data("Data/Armors.rxdata")

  16.     $data_enemies       = load_data("Data/Enemies.rxdata")

  17.     $data_troops        = load_data("Data/Troops.rxdata")

  18.     $data_states        = load_data("Data/States.rxdata")

  19.     $data_animations    = load_data("Data/Animations.rxdata")

  20.     $data_tilesets      = load_data("Data/Tilesets.rxdata")

  21.     $data_common_events = load_data("Data/CommonEvents.rxdata")

  22.     $data_system        = load_data("Data/System.rxdata")

  23.     $game_system = Game_System.new

  24.     Graphics.frame_count = 0

  25.     $game_temp          = Game_Temp.new

  26.     $game_system        = Game_System.new

  27.     $game_switches      = Game_Switches.new

  28.     $game_variables     = Game_Variables.new

  29.     $game_self_switches = Game_SelfSwitches.new

  30.     $game_screen        = Game_Screen.new

  31.     $game_actors        = Game_Actors.new

  32.     $game_party         = Game_Party.new

  33.     $game_troop         = Game_Troop.new

  34.     $game_map           = Game_Map.new

  35.     $game_player        = Game_Player.new

  36.     $game_party.setup_starting_members

  37.     $game_map.setup($data_system.start_map_id)

  38.     $game_player.moveto($data_system.start_x, $data_system.start_y)

  39.     $game_player.refresh

  40.     $game_map.autoplay

  41.     $game_map.update

  42.     $scene = Scene_Map.new

  43.   end

  44. end



  45. #==============================================================================

  46. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息

  47. #==============================================================================
复制代码
  1. # =============================================================================
  2. # ■ Window_MapName
  3. #  显示地图名字的窗口。
  4. # =============================================================================
  5. class Window_MapName < Window_Base

  6.   # 暂时屏蔽用的开关

  7.   SWITCH = 52

  8.   # 设置字体

  9.   FONT_NAME = (["隶书","楷体","黑体"])
  10.   FONT_SIZE = 28  
  11.   FONT_COLOR = Color.new(0, 255, 255, 255)

  12.   # 窗口位置设定

  13.   NAME_X = 16      # 矩形左上顶点X坐标

  14.   NAME_Y = 16      # 矩形左上顶点Y坐标

  15.   NAME_W = 220      # 矩形宽

  16.   NAME_H = 60       # 矩形高

  17.   # 显示时间设置

  18.   SHOW_TIME_0 = 10  # 地图名出现前等待的帧数

  19.   SHOW_TIME_1 = 10  # 地图名从不可见变成可见的帧数

  20.   SHOW_TIME_2 = 30  # 地图名完全可见的帧数

  21.   SHOW_TIME_3 = 10  # 地图名从可见变成不可见的帧数

  22.   # 完全可见时的透明度设置

  23.   OPACITY_1 = 255   # 边框

  24.   OPACITY_2 = 255   # 背景

  25.   OPACITY_3 = 255   # 文字




  26.   #--------------------------------------------------------------------------

  27.   # ● 初始化状态

  28.   #--------------------------------------------------------------------------

  29.   def initialize

  30.     super(NAME_X , NAME_Y, NAME_W, NAME_H)

  31.     # 初始化窗口透明度

  32.     self.opacity = 0

  33.     self.back_opacity = 0

  34.     self.contents_opacity = 0

  35.     self.contents = Bitmap.new(width - 32, height - 32)

  36.     # 剩余帧数初始化

  37.     @show_time = 0

  38.   end

  39.   #--------------------------------------------------------------------------

  40.   # ● 输出文字

  41.   #--------------------------------------------------------------------------

  42.   def setname   

  43.     unless $game_switches[SWITCH]==true

  44.       # 获取地图ID

  45.       newid = $game_map.map_id

  46.       time = SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3  

  47.       # 如果现在的地图的ID不是刚才显示的地图ID则开始显示

  48.       if newid != @id

  49.         @id = newid

  50.         @show_time = SHOW_TIME_0 + SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3

  51.       # 剩余帧数为0是时,全部窗口透明

  52.       elsif @show_time < 1

  53.         self.opacity = 0

  54.         self.back_opacity = 0

  55.         self.contents_opacity = 0

  56.         return

  57.       end      

  58.       self.contents.clear

  59.       # 描绘地图名

  60.       self.contents.draw_text(4, 0 , width - 40, 32, $data_mapinfos[@id].name, 1)

  61.       self.contents.font.size = FONT_SIZE

  62.       self.contents.font.name = FONT_NAME

  63.       self.contents.font.color = FONT_COLOR

  64.       # 根本帧数设定窗口透明度

  65.       if @show_time > (SHOW_TIME_2 + SHOW_TIME_3)

  66.         self.opacity = @show_time < time ? (((OPACITY_1 / SHOW_TIME_1) * (time - @show_time)).to_i) : 0

  67.         self.back_opacity = @show_time < time ? (((OPACITY_2 / SHOW_TIME_1 )* (time - @show_time)).to_i) : 0

  68.         self.contents_opacity = @show_time < time ? (((OPACITY_3 / SHOW_TIME_1) * (time - @show_time)).to_i) : 0

  69.       else

  70.         self.opacity = @show_time < (SHOW_TIME_3 / 16 * 14) ? ((OPACITY_1 / SHOW_TIME_3) * @show_time).to_i : OPACITY_1

  71.         self.back_opacity = @show_time < (SHOW_TIME_3 / 16 * 9) ? ((OPACITY_2 / SHOW_TIME_3) * @show_time).to_i : OPACITY_2

  72.         self.contents_opacity = @show_time < SHOW_TIME_3 ? ((OPACITY_3 / SHOW_TIME_3)* @show_time).to_i : OPACITY_3

  73.       end      

  74.       @show_time -= 1

  75.     end

  76.   end

  77. end



  78. #==============================================================================

  79. # ■ Scene_Map

  80. #------------------------------------------------------------------------------

  81. #  处理地图画面的类。(追加定义)

  82. #==============================================================================



  83. class Scene_Map

  84.   alias smn_main main

  85.   def main

  86.     @mapname = Window_MapName.new

  87.     smn_main

  88.     @mapname.dispose

  89.   end



  90.   alias smn_update update

  91.   def update

  92.     @mapname.setname

  93.     smn_update

  94.   end

  95. end



  96. #==============================================================================

  97. # ■ Scene_Title

  98. #------------------------------------------------------------------------------

  99. #  处理标题画面的类。(追加定义)

  100. #==============================================================================



  101. class Scene_Title

  102.   alias smn_main main

  103.   def main

  104.     # 读取地图信息文件

  105.     $data_mapinfos = load_data("Data/MapInfos.rxdata")

  106.     smn_main

  107.   end

  108. end



  109. #==============================================================================

  110. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息

  111. #==============================================================================
复制代码
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部