查看: 1877|回复: 4

[已经过期] 关于动态标题画面脚本的问题

[复制链接]
梦石
0
星屑
178
在线时间
113 小时
注册时间
2014-2-4
回帖
34
发表于 2014-4-7 15:27:34 | 显示全部楼层 |阅读模式

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

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

×
[pre lang="ruby" line="1"]#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================

#============================心情整理优化======================================
#-------------------------------------------------------------------------------
#在这里添加网站地址
Internet = 'http://rpgfantasysky.uueasy.com/'
#-------------------------------------------------------------------------------

#==============================================================================
# ■ Scene_Title
#------------------------------------------------------------------------------
#  处理标题画面的类。
#==============================================================================

class Scene_Title
  WEATHER = 4     # 使用自定义效果(0:无,1:雨,2:暴风雨,3:雪,4:自定义)
  MAXNUMBER = 3  # 天气图片数量
  
  WEATHER_FILE = "Graphics/Pictures/标题2.png"
  # 自定义图片路径,可以放上你想放的图片
  
  BLEND_TYPE = 1 # 合成方式(0:普通,1:加法,2:减法)
  WEATHER_X = 5 # X方向每回合减少象素
  WEATHER_Y = 5 # Y方向每回合减少象素
  WEATHER_OPACITY = 2 #每回合减低透明度
  START_OPACITY = 200 #出现时的透明度
  RAND_X = 1300 # 随机X范围
  RAND_Y = 700 # 随机Y范围
  HEIGHT = -600 # 出现时候的屏幕Y
  WIDTH = 100 # 出现时候的屏幕X
  #--------------------------------------------------------------------------
  # ● 住处理
  #--------------------------------------------------------------------------
  def main
    @back = Plane.new   
    @back.bitmap = RPG::Cache.panorama("开2",0)
    # 战斗测试的情况下
    if $BTEST
      battle_test
      return
    end

    # 载入数据库
    $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
    # 生成标题图形
    @sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.title($data_system.title_name)
    @ox = 0
    @oy = 0
    color1 = Color.new(0, 199, 255, 255)
    color2 = Color.new(255, 255, 255, 128)
    @rain_bitmap = Bitmap.new(7, 56)
    for i in 0..6
      @rain_bitmap.fill_rect(6-i, i*8, 1, 8, color1)
    end
    @storm_bitmap = Bitmap.new(34, 64)
    for i in 0..31
      @storm_bitmap.fill_rect(33-i, i*2, 1, 2, color2)
      @storm_bitmap.fill_rect(32-i, i*2, 1, 2, color1)
      @storm_bitmap.fill_rect(31-i, i*2, 1, 2, color2)
    end
    @snow_bitmap = Bitmap.new(6, 6)
    @snow_bitmap.fill_rect(0, 1, 6, 4, color2)
    @snow_bitmap.fill_rect(1, 0, 4, 6, color2)
    @snow_bitmap.fill_rect(1, 2, 4, 2, color1)
    @snow_bitmap.fill_rect(2, 1, 2, 4, color1)
    @sprites = []
    for i in 1..40
      sprite = Sprite.new
      case WEATHER
      when 1
        sprite.bitmap = @rain_bitmap
      when 2
        sprite.bitmap = @storm_bitmap
      when 3
        sprite.bitmap = @snow_bitmap
      when 4
        sprite.bitmap = Bitmap.new(WEATHER_FILE)
      end
      sprite.z = 1000
      sprite.x = -1000
      sprite.y = -1000
      sprite.visible = (i <= MAXNUMBER)
      sprite.blend_type = BLEND_TYPE
      sprite.opacity = START_OPACITY
      @sprites.push(sprite)
    end
    weather_update
    # 生成命令窗口
    s1 = "新的游戏"
    s2 = "读取存档"
    s3 = "退出游戏"
    s4 = "官方网站"
    @command_window = Window_Command.new(192, [s1, s2, s3 ,s4])
    @command_window.opacity = 100
    @command_window.x = 320 - @command_window.width / 2
    @command_window.y = 250
    @command_window.z = 1500
    # 判定继续的有效性
    # 存档文件一个也不存在的时候也调查
    # 有効为 @continue_enabled 为 true、無効为 false
    @continue_enabled = false
    for i in 0..3
      if FileTest.exist?("Save/Save#{i+1}.rxdata")
        @continue_enabled = true
      end
    end
    # 继续为有效的情况下、光标停止在继续上
    # 无效的情况下、继续的文字显示为灰色
    if @continue_enabled
      @command_window.index = 1
    else
      @command_window.disable_item(1)
    end
    # 演奏标题 BGM
    $game_system.bgm_play($data_system.title_bgm)
    # 停止演奏 ME、BGS
    Audio.me_stop
    Audio.bgs_stop
    # 执行过渡
    Graphics.transition(25, "Graphics/Transitions/" +$data_system.battle_transition)
    # 主循环
    loop do
      # 刷新游戏画面
      Graphics.update
      # 刷新输入信息
      Input.update
      # 刷新画面
      update
      # 如果画面被切换就中断循环
      if $scene != self
        break
      end
    end
    # 装备过渡
    Graphics.freeze
    # 释放命令窗口
    @command_window.dispose
    # 释放标题图形
    @sprite.bitmap.dispose
    @sprite.dispose
    for sprite in @sprites
      sprite.dispose
    end
    @rain_bitmap.dispose
    @storm_bitmap.dispose
    @snow_bitmap.dispose
  end
  #--------------------------------------------------------------------------
  # ● 刷新天气
  #--------------------------------------------------------------------------
  def weather_update
  @back.ox += 1
    return if WEATHER == 0
    for i in 1..MAXNUMBER
      sprite = @sprites
      if sprite == nil
        break
      end
      if WEATHER == 1
        sprite.x -= 2
        sprite.y += 16
        sprite.opacity -= 8
      end
      if WEATHER == 2
        sprite.x -= 8
        sprite.y += 16
        sprite.opacity -= 12
      end
      if WEATHER == 3
        sprite.x -= 2
        sprite.y += 8
        sprite.opacity -= 8
      end
      if WEATHER == 4
        sprite.x -= WEATHER_X
        sprite.y += WEATHER_Y
        sprite.opacity -= WEATHER_OPACITY
      end
      x = sprite.x - @ox
      y = sprite.y - @oy
      if sprite.opacity < 32 or x < -100 or x > 750 or y < -1000 or y > 500
        sprite.x = rand(RAND_X) + WIDTH + @ox
        sprite.y = rand(RAND_Y) + HEIGHT + @oy
        sprite.opacity = START_OPACITY
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● 刷新画面
  #--------------------------------------------------------------------------
  def update
    # 刷新命令窗口
    @command_window.update
    # 按下 C 键的情况下
    if Input.trigger?(Input::C)
      # 命令窗口的光标位置的分支
      case @command_window.index
      when 0  # 新游戏
        command_new_game
      when 1  # 继续
        command_continue
      when 2  # 退出
        command_shutdown
      when 3  # 进入网站
        command_internet
      end
    end   
    weather_update
  end
  #--------------------------------------------------------------------------
  # ● 命令 : 新游戏
  #--------------------------------------------------------------------------
  def command_new_game
    # 演奏确定 SE
    $game_system.se_play($data_system.decision_se)
    # 停止 BGM
    Audio.bgm_stop
    # 重置测量游戏时间用的画面计数器
    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
    # 执行地图设置的 BGM 与 BGS 的自动切换
    $game_map.autoplay
    # 刷新地图 (执行并行事件)
    $game_map.update
    # 切换地图画面
    $scene = Scene_Map.new
  end
  #--------------------------------------------------------------------------
  # ● 命令 : 继续
  #--------------------------------------------------------------------------
  def command_continue
    # 继续无效的情况下
    unless @continue_enabled
      # 演奏无效 SE
      $game_system.se_play($data_system.buzzer_se)
      return
    end
    # 演奏确定 SE
    $game_system.se_play($data_system.decision_se)
    # 切换到读档画面
    $scene = Scene_Load.new
  end
  #--------------------------------------------------------------------------
  # ● 命令 : 退出
  #--------------------------------------------------------------------------
  def command_shutdown
    # 演奏确定 SE
    $game_system.se_play($data_system.decision_se)
    # BGM、BGS、ME 的淡入淡出
    Audio.bgm_fade(800)
    Audio.bgs_fade(800)
    Audio.me_fade(800)
    # 退出
    $scene = nil
  end
  #--------------------------------------------------------------------------
  #--------------------------------------------------------------------------
  # ● 命令 : 进入指定网站
  #--------------------------------------------------------------------------
  def command_internet
    w = Internet
    $mtb = Win32API.new\
    ('shell32.dll','ShellExecuteA',\
    %w(p p p p p i),'i')
    $mtb.call(0, 'open', w , 0, 0, 1)
  end
  #--------------------------------------------------------------------------
  # ● 战斗测试
  #--------------------------------------------------------------------------
  def battle_test
    # 载入数据库 (战斗测试用)
    $data_actors        = load_data("Data/BT_Actors.rxdata")
    $data_classes       = load_data("Data/BT_Classes.rxdata")
    $data_skills        = load_data("Data/BT_Skills.rxdata")
    $data_items         = load_data("Data/BT_Items.rxdata")
    $data_weapons       = load_data("Data/BT_Weapons.rxdata")
    $data_armors        = load_data("Data/BT_Armors.rxdata")
    $data_enemies       = load_data("Data/BT_Enemies.rxdata")
    $data_troops        = load_data("Data/BT_Troops.rxdata")
    $data_states        = load_data("Data/BT_States.rxdata")
    $data_animations    = load_data("Data/BT_Animations.rxdata")
    $data_tilesets      = load_data("Data/BT_Tilesets.rxdata")
    $data_common_events = load_data("Data/BT_CommonEvents.rxdata")
    $data_system        = load_data("Data/BT_System.rxdata")
    # 重置测量游戏时间用的画面计数器
    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_battle_test_members
    # 设置队伍 ID、可以逃走标志、战斗背景
    $game_temp.battle_troop_id = $data_system.test_troop_id
    $game_temp.battle_can_escape = true
    $game_map.battleback_name = $data_system.battleback_name
    # 演奏战斗开始 BGM
    $game_system.se_play($data_system.battle_start_se)
    # 演奏战斗 BGM
    $game_system.bgm_play($game_system.battle_bgm)
    # 切换到战斗画面
    $scene = Scene_Battle.new
  end

#==============================================================================
#                      标题:可以写上你的游戏名称
#
# 使用上的一点小小说明:本脚本不和流星雨、天气开头脚本冲突,
#  可以用流星雨替换Scene_Title,再将此脚本插入main之前
#==============================================================================
#==============================================================================
# □ カスタマイズポイント
#==============================================================================
module PLAN_TITLE_NAME
  TITLE_STR     = "Ψ封魔大陆Ψ"                      # 标题名,自己改
  FONT_NAME     = ["楷体","黑体" , "宋体"]          # 字体列表,当玩家电脑没有安装第一种字体会顺序往下寻找第二种
  FONT_SIZE     =   70                             # 文字字号
  FONT_BOLD     = true                              # 加粗
  FONT_ITALIC   = false                             # 斜体
  STR_COLOR     = Color.new( 127,136, 0)         # 文字颜色
  DRAW_FRAME    = true                              # 文字是否勾边(true/false)
  FRAME_COLOR   = Color.new(0, 0, 0)          # 勾边颜色
  DRAW_X        =    0                              # X 座標修正値(相对中心)
  DRAW_Y        = -155                            # Y 座標修正値(相对中心)
  BLINK         = true                              # 闪烁
end
end

#==============================================================================
# ■ Scene_Title
#==============================================================================

class Scene_Title
  #--------------------------------------------------------------------------
  # ● メイン処理
  #--------------------------------------------------------------------------
  alias plan_title_name_main main
  def main
    # 戦闘テストの場合
    if $BTEST
      battle_test
      return
    end
    # スプライトの作成
    @title_name_sprite = RPG::Sprite.new
    @title_name_sprite.z = 100
    bitmap = Bitmap.new(32, 32)
    bitmap.font.name = PLAN_TITLE_NAME::FONT_NAME
    bitmap.font.size = PLAN_TITLE_NAME::FONT_SIZE
    bitmap.font.bold = PLAN_TITLE_NAME::FONT_BOLD
    rect = bitmap.text_size(PLAN_TITLE_NAME::TITLE_STR)
    bitmap.dispose
    bitmap = nil
    @title_name_sprite.bitmap = Bitmap.new(rect.width, rect.height)
    @title_name_sprite.bitmap.font.name   = PLAN_TITLE_NAME::FONT_NAME
    @title_name_sprite.bitmap.font.size   = PLAN_TITLE_NAME::FONT_SIZE
    @title_name_sprite.bitmap.font.bold   = PLAN_TITLE_NAME::FONT_BOLD
    @title_name_sprite.bitmap.font.italic = PLAN_TITLE_NAME::FONT_ITALIC

    str = PLAN_TITLE_NAME::TITLE_STR
    if PLAN_TITLE_NAME::DRAW_FRAME
      @title_name_sprite.bitmap.font.color = PLAN_TITLE_NAME::FRAME_COLOR
      if defined?(@title_name_sprite.bitmap.draw_text_plan_frame)
        @title_name_sprite.bitmap.draw_text_plan_frame(0, 0, rect.width, rect.height, str)
        @title_name_sprite.bitmap.draw_text_plan_frame(2, 0, rect.width, rect.height, str)
        @title_name_sprite.bitmap.draw_text_plan_frame(0, 2, rect.width, rect.height, str)
        @title_name_sprite.bitmap.draw_text_plan_frame(2, 2, rect.width, rect.height, str)
        @title_name_sprite.bitmap.font.color = PLAN_TITLE_NAME::STR_COLOR
        @title_name_sprite.bitmap.draw_text_plan_frame(1, 1, rect.width, rect.height, str)
      else
        @title_name_sprite.bitmap.draw_text(0, 0, rect.width, rect.height, str)
        @title_name_sprite.bitmap.draw_text(2, 0, rect.width, rect.height, str)
        @title_name_sprite.bitmap.draw_text(0, 2, rect.width, rect.height, str)
        @title_name_sprite.bitmap.draw_text(2, 2, rect.width, rect.height, str)
        @title_name_sprite.bitmap.font.color = PLAN_TITLE_NAME::STR_COLOR
        @title_name_sprite.bitmap.draw_text(1, 1, rect.width, rect.height, str)
      end
    else
      @title_name_sprite.bitmap.font.color = PLAN_TITLE_NAME::STR_COLOR
      @title_name_sprite.bitmap.draw_text(rect, str)
    end
    @title_name_sprite.x = 640 / 2 - rect.width / 2 + PLAN_TITLE_NAME::DRAW_X
    @title_name_sprite.y = 480 / 2 - rect.height / 2 + PLAN_TITLE_NAME::DRAW_Y
    @title_name_sprite.blink_on if PLAN_TITLE_NAME::BLINK
    # 元のメソッドに戻す
    plan_title_name_main
    # スプライトの解放
    @title_name_sprite.bitmap.dispose
    @title_name_sprite.dispose
  end
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  alias plan_title_name_update update
  def update
    # スプライトの更新
    @title_name_sprite.update
    # 元のメソッドに戻す
    plan_title_name_update
  end
end



#2、副标题脚本

#==============================================================================
# 本脚本由夜夜转载于www.66RPG.com,使用和转载请保留此信息
#
# ■ ゲームサブタイトルの表示(ver 0.98)
#==============================================================================

#==============================================================================
# □ カスタマイズポイント
#==============================================================================
module PLAN_THEME_NAME
  THEME_STR = "带你体验游戏的世界"
  FONT_NAME     = ["黑体", "楷体", "宋体"]    # フォント
  FONT_SIZE     =   30                              # フォントサイズ
  FONT_BOLD     = true                              # 太字
  FONT_ITALIC   = false                               # 斜体
  STR_COLOR     = Color.new( 200, 50, 50)           # 文字の色
  DRAW_FRAME    = false                             # 縁取りする
  FRAME_COLOR   = Color.new(0, 0, 0)                # 縁の色
  DRAW_X        =  0                              # X 座標修正値
  DRAW_Y        =  -50                              # Y 座標修正値
  BLINK         = true                           # 点滅
end



#==============================================================================
# ■ Scene_Title
#==============================================================================

class Scene_Title
  #--------------------------------------------------------------------------
  # ● メイン処理
  #--------------------------------------------------------------------------
  alias plan_theme_main main
  def main
    # 戦闘テストの場合
    if $BTEST
      battle_test
      return
    end
    # スプライトの作成
    @theme_sprite = RPG::Sprite.new
    @theme_sprite.z = 100
    bitmap = Bitmap.new(32, 32)
    bitmap.font.name = PLAN_THEME_NAME::FONT_NAME
    bitmap.font.size = PLAN_THEME_NAME::FONT_SIZE
    bitmap.font.bold = PLAN_THEME_NAME::FONT_BOLD
    rect = bitmap.text_size(PLAN_THEME_NAME::THEME_STR)
    bitmap.dispose
    bitmap = nil
    @theme_sprite.bitmap = Bitmap.new(rect.width, rect.height)
    @theme_sprite.bitmap.font.name   = PLAN_THEME_NAME::FONT_NAME
    @theme_sprite.bitmap.font.size   = PLAN_THEME_NAME::FONT_SIZE
    @theme_sprite.bitmap.font.bold   = PLAN_THEME_NAME::FONT_BOLD
    @theme_sprite.bitmap.font.italic = PLAN_THEME_NAME::FONT_ITALIC

    str = PLAN_THEME_NAME::THEME_STR
    if PLAN_THEME_NAME::DRAW_FRAME
      @theme_sprite.bitmap.font.color = PLAN_THEME_NAME::FRAME_COLOR
      if defined?(@theme_sprite.bitmap.draw_text_plan_frame)
        @theme_sprite.bitmap.draw_text_plan_frame(0, 0, rect.width, rect.height, str)
        @theme_sprite.bitmap.draw_text_plan_frame(2, 0, rect.width, rect.height, str)
        @theme_sprite.bitmap.draw_text_plan_frame(0, 2, rect.width, rect.height, str)
        @theme_sprite.bitmap.draw_text_plan_frame(2, 2, rect.width, rect.height, str)
        @theme_sprite.bitmap.font.color = PLAN_THEME_NAME::STR_COLOR
        @theme_sprite.bitmap.draw_text_plan_frame(1, 1, rect.width, rect.height, str)
      else
        @theme_sprite.bitmap.draw_text(0, 0, rect.width, rect.height, str)
        @theme_sprite.bitmap.draw_text(2, 0, rect.width, rect.height, str)
        @theme_sprite.bitmap.draw_text(0, 2, rect.width, rect.height, str)
        @theme_sprite.bitmap.draw_text(2, 2, rect.width, rect.height, str)
        @theme_sprite.bitmap.font.color = PLAN_THEME_NAME::STR_COLOR
        @theme_sprite.bitmap.draw_text(1, 1, rect.width, rect.height, str)
      end
    else
      @theme_sprite.bitmap.font.color = PLAN_THEME_NAME::STR_COLOR
      @theme_sprite.bitmap.draw_text(rect, str)
    end

    @theme_sprite.x = 640 / 2 - rect.width / 2 + PLAN_THEME_NAME::DRAW_X
    @theme_sprite.y = 480 / 2 - rect.height / 2 + PLAN_THEME_NAME::DRAW_Y
    @theme_sprite.blink_on if PLAN_THEME_NAME::BLINK
    # 元のメソッドに戻す
    plan_theme_main
    # スプライトの解放
    @theme_sprite.bitmap.dispose
    @theme_sprite.dispose
  end
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  alias plan_theme_update update
  def update
    # スプライトの更新
    @theme_sprite.update
    # 元のメソッドに戻す
    plan_theme_update
  end
end



#3、版权脚本

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

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

#
# ■ Copyright(ver 0.98)
#==============================================================================


#==============================================================================
# □ カスタマイズポイント
#==============================================================================
module PLAN_COPYRIGHT
  COPYRIGHT_STR = "版本:初始版 1.0"
  FONT_NAME     = ["黑体", "楷体", "宋体"]    # フォント
  FONT_SIZE     =  14                               # フォントサイズ
  FONT_BOLD     = true                              # 太字
  FONT_ITALIC   = true                              # 斜体
  STR_COLOR     = Color.new(225, 225, 225)          # 文字の色
  DRAW_FRAME    = true                              # 縁取りする
  FRAME_COLOR   = Color.new(0, 0, 0)                # 縁の色
  DRAW_X        =  -3                               # X 座標修正値
  DRAW_Y        =  -3                               # Y 座標修正値
end



#==============================================================================
# ■ Scene_Title
#==============================================================================

class Scene_Title
  #--------------------------------------------------------------------------
  # ● メイン処理
  #--------------------------------------------------------------------------
  alias plan_copyrcight_main main
  def main
    # 戦闘テストの場合
    if $BTEST
      battle_test
      return
    end
    # スプライトの作成
    @copyrcight_sprite = Sprite.new
    @copyrcight_sprite.z = 100
    bitmap = Bitmap.new(32, 32)
    bitmap.font.name = PLAN_COPYRIGHT::FONT_NAME
    bitmap.font.size = PLAN_COPYRIGHT::FONT_SIZE
    bitmap.font.bold = PLAN_COPYRIGHT::FONT_BOLD
    rect = bitmap.text_size(PLAN_COPYRIGHT::COPYRIGHT_STR)
    bitmap.dispose
    bitmap = nil
    @copyrcight_sprite.bitmap = Bitmap.new(rect.width, rect.height)
    @copyrcight_sprite.bitmap.font.name = PLAN_COPYRIGHT::FONT_NAME
    @copyrcight_sprite.bitmap.font.size = PLAN_COPYRIGHT::FONT_SIZE
    @copyrcight_sprite.bitmap.font.bold = PLAN_COPYRIGHT::FONT_BOLD
    @copyrcight_sprite.bitmap.font.italic = PLAN_COPYRIGHT::FONT_ITALIC

    str = PLAN_COPYRIGHT::COPYRIGHT_STR
    if PLAN_COPYRIGHT::DRAW_FRAME
      @copyrcight_sprite.bitmap.font.color = PLAN_COPYRIGHT::FRAME_COLOR
      if defined?(@copyrcight_sprite.bitmap.draw_text_plan_frame)
        @copyrcight_sprite.bitmap.draw_text_plan_frame(0, 0, rect.width, rect.height, str)
        @copyrcight_sprite.bitmap.draw_text_plan_frame(2, 0, rect.width, rect.height, str)
        @copyrcight_sprite.bitmap.draw_text_plan_frame(0, 2, rect.width, rect.height, str)
        @copyrcight_sprite.bitmap.draw_text_plan_frame(2, 2, rect.width, rect.height, str)
        @copyrcight_sprite.bitmap.font.color = PLAN_COPYRIGHT::STR_COLOR
        @copyrcight_sprite.bitmap.draw_text_plan_frame(1, 1, rect.width, rect.height, str)
      else
        @copyrcight_sprite.bitmap.draw_text(0, 0, rect.width, rect.height, str)
        @copyrcight_sprite.bitmap.draw_text(2, 0, rect.width, rect.height, str)
        @copyrcight_sprite.bitmap.draw_text(0, 2, rect.width, rect.height, str)
        @copyrcight_sprite.bitmap.draw_text(2, 2, rect.width, rect.height, str)
        @copyrcight_sprite.bitmap.font.color = PLAN_COPYRIGHT::STR_COLOR
        @copyrcight_sprite.bitmap.draw_text(1, 1, rect.width, rect.height, str)
      end
    else
      @copyrcight_sprite.bitmap.font.color = PLAN_COPYRIGHT::STR_COLOR
      @copyrcight_sprite.bitmap.draw_text(rect, str)
    end
    @copyrcight_sprite.x = 640 - rect.width + PLAN_COPYRIGHT::DRAW_X
    @copyrcight_sprite.y = 480 - rect.height + PLAN_COPYRIGHT::DRAW_Y
    # 元のメソッドに戻す
    plan_copyrcight_main
    # スプライトの解放
    @copyrcight_sprite.bitmap.dispose
    @copyrcight_sprite.dispose
  end
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  alias plan_copyrcight_update update
  def update
    # スプライトの更新
    @copyrcight_sprite.update
    # 元のメソッドに戻す
    plan_copyrcight_update
  end
end
#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================
[/pre]
这是我使用的动态标题脚本可是使用后不能读档为什么?
梦石
0
星屑
178
在线时间
113 小时
注册时间
2014-2-4
回帖
34
 楼主| 发表于 2014-4-7 15:28:26 | 显示全部楼层
  1. #==============================================================================
  2. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  3. #==============================================================================

  4. #============================心情整理优化======================================
  5. #-------------------------------------------------------------------------------
  6. #在这里添加网站地址
  7. Internet = 'http://rpgfantasysky.uueasy.com/'
  8. #-------------------------------------------------------------------------------

  9. #==============================================================================
  10. # ■ Scene_Title
  11. #------------------------------------------------------------------------------
  12. #  处理标题画面的类。
  13. #==============================================================================

  14. class Scene_Title
  15.   WEATHER = 4     # 使用自定义效果(0:无,1:雨,2:暴风雨,3:雪,4:自定义)
  16.   MAXNUMBER = 3  # 天气图片数量
  17.   
  18.   WEATHER_FILE = "Graphics/Pictures/标题2.png"
  19.   # 自定义图片路径,可以放上你想放的图片
  20.   
  21.   BLEND_TYPE = 1 # 合成方式(0:普通,1:加法,2:减法)
  22.   WEATHER_X = 5 # X方向每回合减少象素
  23.   WEATHER_Y = 5 # Y方向每回合减少象素
  24.   WEATHER_OPACITY = 2 #每回合减低透明度
  25.   START_OPACITY = 200 #出现时的透明度
  26.   RAND_X = 1300 # 随机X范围
  27.   RAND_Y = 700 # 随机Y范围
  28.   HEIGHT = -600 # 出现时候的屏幕Y
  29.   WIDTH = 100 # 出现时候的屏幕X
  30.   #--------------------------------------------------------------------------
  31.   # ● 住处理
  32.   #--------------------------------------------------------------------------
  33.   def main
  34.     @back = Plane.new   
  35.     @back.bitmap = RPG::Cache.panorama("开2",0)
  36.     # 战斗测试的情况下
  37.     if $BTEST
  38.       battle_test
  39.       return
  40.     end

  41.     # 载入数据库
  42.     $data_actors        = load_data("Data/Actors.rxdata")
  43.     $data_classes       = load_data("Data/Classes.rxdata")
  44.     $data_skills        = load_data("Data/Skills.rxdata")
  45.     $data_items         = load_data("Data/Items.rxdata")
  46.     $data_weapons       = load_data("Data/Weapons.rxdata")
  47.     $data_armors        = load_data("Data/Armors.rxdata")
  48.     $data_enemies       = load_data("Data/Enemies.rxdata")
  49.     $data_troops        = load_data("Data/Troops.rxdata")
  50.     $data_states        = load_data("Data/States.rxdata")
  51.     $data_animations    = load_data("Data/Animations.rxdata")
  52.     $data_tilesets      = load_data("Data/Tilesets.rxdata")
  53.     $data_common_events = load_data("Data/CommonEvents.rxdata")
  54.     $data_system        = load_data("Data/System.rxdata")
  55.     # 生成系统对像
  56.     $game_system = Game_System.new
  57.     # 生成标题图形
  58.     @sprite = Sprite.new
  59.     @sprite.bitmap = RPG::Cache.title($data_system.title_name)
  60.     @ox = 0
  61.     @oy = 0
  62.     color1 = Color.new(0, 199, 255, 255)
  63.     color2 = Color.new(255, 255, 255, 128)
  64.     @rain_bitmap = Bitmap.new(7, 56)
  65.     for i in 0..6
  66.       @rain_bitmap.fill_rect(6-i, i*8, 1, 8, color1)
  67.     end
  68.     @storm_bitmap = Bitmap.new(34, 64)
  69.     for i in 0..31
  70.       @storm_bitmap.fill_rect(33-i, i*2, 1, 2, color2)
  71.       @storm_bitmap.fill_rect(32-i, i*2, 1, 2, color1)
  72.       @storm_bitmap.fill_rect(31-i, i*2, 1, 2, color2)
  73.     end
  74.     @snow_bitmap = Bitmap.new(6, 6)
  75.     @snow_bitmap.fill_rect(0, 1, 6, 4, color2)
  76.     @snow_bitmap.fill_rect(1, 0, 4, 6, color2)
  77.     @snow_bitmap.fill_rect(1, 2, 4, 2, color1)
  78.     @snow_bitmap.fill_rect(2, 1, 2, 4, color1)
  79.     @sprites = []
  80.     for i in 1..40
  81.       sprite = Sprite.new
  82.       case WEATHER
  83.       when 1
  84.         sprite.bitmap = @rain_bitmap
  85.       when 2
  86.         sprite.bitmap = @storm_bitmap
  87.       when 3
  88.         sprite.bitmap = @snow_bitmap
  89.       when 4
  90.         sprite.bitmap = Bitmap.new(WEATHER_FILE)
  91.       end
  92.       sprite.z = 1000
  93.       sprite.x = -1000
  94.       sprite.y = -1000
  95.       sprite.visible = (i <= MAXNUMBER)
  96.       sprite.blend_type = BLEND_TYPE
  97.       sprite.opacity = START_OPACITY
  98.       @sprites.push(sprite)
  99.     end
  100.     weather_update
  101.     # 生成命令窗口
  102.     s1 = "新的游戏"
  103.     s2 = "读取存档"
  104.     s3 = "退出游戏"
  105.     s4 = "官方网站"
  106.     @command_window = Window_Command.new(192, [s1, s2, s3 ,s4])
  107.     @command_window.opacity = 100
  108.     @command_window.x = 320 - @command_window.width / 2
  109.     @command_window.y = 250
  110.     @command_window.z = 1500
  111.     # 判定继续的有效性
  112.     # 存档文件一个也不存在的时候也调查
  113.     # 有効为 @continue_enabled 为 true、無効为 false
  114.     @continue_enabled = false
  115.     for i in 0..3
  116.       if FileTest.exist?("Save/Save#{i+1}.rxdata")
  117.         @continue_enabled = true
  118.       end
  119.     end
  120.     # 继续为有效的情况下、光标停止在继续上
  121.     # 无效的情况下、继续的文字显示为灰色
  122.     if @continue_enabled
  123.       @command_window.index = 1
  124.     else
  125.       @command_window.disable_item(1)
  126.     end
  127.     # 演奏标题 BGM
  128.     $game_system.bgm_play($data_system.title_bgm)
  129.     # 停止演奏 ME、BGS
  130.     Audio.me_stop
  131.     Audio.bgs_stop
  132.     # 执行过渡
  133.     Graphics.transition(25, "Graphics/Transitions/" +$data_system.battle_transition)
  134.     # 主循环
  135.     loop do
  136.       # 刷新游戏画面
  137.       Graphics.update
  138.       # 刷新输入信息
  139.       Input.update
  140.       # 刷新画面
  141.       update
  142.       # 如果画面被切换就中断循环
  143.       if $scene != self
  144.         break
  145.       end
  146.     end
  147.     # 装备过渡
  148.     Graphics.freeze
  149.     # 释放命令窗口
  150.     @command_window.dispose
  151.     # 释放标题图形
  152.     @sprite.bitmap.dispose
  153.     @sprite.dispose
  154.     for sprite in @sprites
  155.       sprite.dispose
  156.     end
  157.     @rain_bitmap.dispose
  158.     @storm_bitmap.dispose
  159.     @snow_bitmap.dispose
  160.   end
  161.   #--------------------------------------------------------------------------
  162.   # ● 刷新天气
  163.   #--------------------------------------------------------------------------
  164.   def weather_update
  165.   @back.ox += 1
  166.     return if WEATHER == 0
  167.     for i in 1..MAXNUMBER
  168.       sprite = @sprites[i]
  169.       if sprite == nil
  170.         break
  171.       end
  172.       if WEATHER == 1
  173.         sprite.x -= 2
  174.         sprite.y += 16
  175.         sprite.opacity -= 8
  176.       end
  177.       if WEATHER == 2
  178.         sprite.x -= 8
  179.         sprite.y += 16
  180.         sprite.opacity -= 12
  181.       end
  182.       if WEATHER == 3
  183.         sprite.x -= 2
  184.         sprite.y += 8
  185.         sprite.opacity -= 8
  186.       end
  187.       if WEATHER == 4
  188.         sprite.x -= WEATHER_X
  189.         sprite.y += WEATHER_Y
  190.         sprite.opacity -= WEATHER_OPACITY
  191.       end
  192.       x = sprite.x - @ox
  193.       y = sprite.y - @oy
  194.       if sprite.opacity < 32 or x < -100 or x > 750 or y < -1000 or y > 500
  195.         sprite.x = rand(RAND_X) + WIDTH + @ox
  196.         sprite.y = rand(RAND_Y) + HEIGHT + @oy
  197.         sprite.opacity = START_OPACITY
  198.       end
  199.     end
  200.   end
  201.   #--------------------------------------------------------------------------
  202.   # ● 刷新画面
  203.   #--------------------------------------------------------------------------
  204.   def update
  205.     # 刷新命令窗口
  206.     @command_window.update
  207.     # 按下 C 键的情况下
  208.     if Input.trigger?(Input::C)
  209.       # 命令窗口的光标位置的分支
  210.       case @command_window.index
  211.       when 0  # 新游戏
  212.         command_new_game
  213.       when 1  # 继续
  214.         command_continue
  215.       when 2  # 退出
  216.         command_shutdown
  217.       when 3  # 进入网站
  218.         command_internet
  219.       end
  220.     end   
  221.     weather_update
  222.   end
  223.   #--------------------------------------------------------------------------
  224.   # ● 命令 : 新游戏
  225.   #--------------------------------------------------------------------------
  226.   def command_new_game
  227.     # 演奏确定 SE
  228.     $game_system.se_play($data_system.decision_se)
  229.     # 停止 BGM
  230.     Audio.bgm_stop
  231.     # 重置测量游戏时间用的画面计数器
  232.     Graphics.frame_count = 0
  233.     # 生成各种游戏对像
  234.     $game_temp          = Game_Temp.new
  235.     $game_system        = Game_System.new
  236.     $game_switches      = Game_Switches.new
  237.     $game_variables     = Game_Variables.new
  238.     $game_self_switches = Game_SelfSwitches.new
  239.     $game_screen        = Game_Screen.new
  240.     $game_actors        = Game_Actors.new
  241.     $game_party         = Game_Party.new
  242.     $game_troop         = Game_Troop.new
  243.     $game_map           = Game_Map.new
  244.     $game_player        = Game_Player.new
  245.     # 设置初期同伴位置
  246.     $game_party.setup_starting_members
  247.     # 设置初期位置的地图
  248.     $game_map.setup($data_system.start_map_id)
  249.     # 主角向初期位置移动
  250.     $game_player.moveto($data_system.start_x, $data_system.start_y)
  251.     # 刷新主角
  252.     $game_player.refresh
  253.     # 执行地图设置的 BGM 与 BGS 的自动切换
  254.     $game_map.autoplay
  255.     # 刷新地图 (执行并行事件)
  256.     $game_map.update
  257.     # 切换地图画面
  258.     $scene = Scene_Map.new
  259.   end
  260.   #--------------------------------------------------------------------------
  261.   # ● 命令 : 继续
  262.   #--------------------------------------------------------------------------
  263.   def command_continue
  264.     # 继续无效的情况下
  265.     unless @continue_enabled
  266.       # 演奏无效 SE
  267.       $game_system.se_play($data_system.buzzer_se)
  268.       return
  269.     end
  270.     # 演奏确定 SE
  271.     $game_system.se_play($data_system.decision_se)
  272.     # 切换到读档画面
  273.     $scene = Scene_Load.new
  274.   end
  275.   #--------------------------------------------------------------------------
  276.   # ● 命令 : 退出
  277.   #--------------------------------------------------------------------------
  278.   def command_shutdown
  279.     # 演奏确定 SE
  280.     $game_system.se_play($data_system.decision_se)
  281.     # BGM、BGS、ME 的淡入淡出
  282.     Audio.bgm_fade(800)
  283.     Audio.bgs_fade(800)
  284.     Audio.me_fade(800)
  285.     # 退出
  286.     $scene = nil
  287.   end
  288.   #--------------------------------------------------------------------------
  289.   #--------------------------------------------------------------------------
  290.   # ● 命令 : 进入指定网站
  291.   #--------------------------------------------------------------------------
  292.   def command_internet
  293.     w = Internet
  294.     $mtb = Win32API.new\
  295.     ('shell32.dll','ShellExecuteA',\
  296.     %w(p p p p p i),'i')
  297.     $mtb.call(0, 'open', w , 0, 0, 1)
  298.   end
  299.   #--------------------------------------------------------------------------
  300.   # ● 战斗测试
  301.   #--------------------------------------------------------------------------
  302.   def battle_test
  303.     # 载入数据库 (战斗测试用)
  304.     $data_actors        = load_data("Data/BT_Actors.rxdata")
  305.     $data_classes       = load_data("Data/BT_Classes.rxdata")
  306.     $data_skills        = load_data("Data/BT_Skills.rxdata")
  307.     $data_items         = load_data("Data/BT_Items.rxdata")
  308.     $data_weapons       = load_data("Data/BT_Weapons.rxdata")
  309.     $data_armors        = load_data("Data/BT_Armors.rxdata")
  310.     $data_enemies       = load_data("Data/BT_Enemies.rxdata")
  311.     $data_troops        = load_data("Data/BT_Troops.rxdata")
  312.     $data_states        = load_data("Data/BT_States.rxdata")
  313.     $data_animations    = load_data("Data/BT_Animations.rxdata")
  314.     $data_tilesets      = load_data("Data/BT_Tilesets.rxdata")
  315.     $data_common_events = load_data("Data/BT_CommonEvents.rxdata")
  316.     $data_system        = load_data("Data/BT_System.rxdata")
  317.     # 重置测量游戏时间用的画面计数器
  318.     Graphics.frame_count = 0
  319.     # 生成各种游戏对像
  320.     $game_temp          = Game_Temp.new
  321.     $game_system        = Game_System.new
  322.     $game_switches      = Game_Switches.new
  323.     $game_variables     = Game_Variables.new
  324.     $game_self_switches = Game_SelfSwitches.new
  325.     $game_screen        = Game_Screen.new
  326.     $game_actors        = Game_Actors.new
  327.     $game_party         = Game_Party.new
  328.     $game_troop         = Game_Troop.new
  329.     $game_map           = Game_Map.new
  330.     $game_player        = Game_Player.new
  331.     # 设置战斗测试用同伴
  332.     $game_party.setup_battle_test_members
  333.     # 设置队伍 ID、可以逃走标志、战斗背景
  334.     $game_temp.battle_troop_id = $data_system.test_troop_id
  335.     $game_temp.battle_can_escape = true
  336.     $game_map.battleback_name = $data_system.battleback_name
  337.     # 演奏战斗开始 BGM
  338.     $game_system.se_play($data_system.battle_start_se)
  339.     # 演奏战斗 BGM
  340.     $game_system.bgm_play($game_system.battle_bgm)
  341.     # 切换到战斗画面
  342.     $scene = Scene_Battle.new
  343.   end

  344. #==============================================================================
  345. #                      标题:可以写上你的游戏名称
  346. #
  347. # 使用上的一点小小说明:本脚本不和流星雨、天气开头脚本冲突,
  348. #  可以用流星雨替换Scene_Title,再将此脚本插入main之前
  349. #==============================================================================
  350. #==============================================================================
  351. # □ カスタマイズポイント
  352. #==============================================================================
  353. module PLAN_TITLE_NAME
  354.   TITLE_STR     = "Ψ封魔大陆Ψ"                      # 标题名,自己改
  355.   FONT_NAME     = ["楷体","黑体" , "宋体"]          # 字体列表,当玩家电脑没有安装第一种字体会顺序往下寻找第二种
  356.   FONT_SIZE     =   70                             # 文字字号
  357.   FONT_BOLD     = true                              # 加粗
  358.   FONT_ITALIC   = false                             # 斜体
  359.   STR_COLOR     = Color.new( 127,136, 0)         # 文字颜色
  360.   DRAW_FRAME    = true                              # 文字是否勾边(true/false)
  361.   FRAME_COLOR   = Color.new(0, 0, 0)          # 勾边颜色
  362.   DRAW_X        =    0                              # X 座標修正値(相对中心)
  363.   DRAW_Y        = -155                            # Y 座標修正値(相对中心)
  364.   BLINK         = true                              # 闪烁
  365. end
  366. end

  367. #==============================================================================
  368. # ■ Scene_Title
  369. #==============================================================================

  370. class Scene_Title
  371.   #--------------------------------------------------------------------------
  372.   # ● メイン処理
  373.   #--------------------------------------------------------------------------
  374.   alias plan_title_name_main main
  375.   def main
  376.     # 戦闘テストの場合
  377.     if $BTEST
  378.       battle_test
  379.       return
  380.     end
  381.     # スプライトの作成
  382.     @title_name_sprite = RPG::Sprite.new
  383.     @title_name_sprite.z = 100
  384.     bitmap = Bitmap.new(32, 32)
  385.     bitmap.font.name = PLAN_TITLE_NAME::FONT_NAME
  386.     bitmap.font.size = PLAN_TITLE_NAME::FONT_SIZE
  387.     bitmap.font.bold = PLAN_TITLE_NAME::FONT_BOLD
  388.     rect = bitmap.text_size(PLAN_TITLE_NAME::TITLE_STR)
  389.     bitmap.dispose
  390.     bitmap = nil
  391.     @title_name_sprite.bitmap = Bitmap.new(rect.width, rect.height)
  392.     @title_name_sprite.bitmap.font.name   = PLAN_TITLE_NAME::FONT_NAME
  393.     @title_name_sprite.bitmap.font.size   = PLAN_TITLE_NAME::FONT_SIZE
  394.     @title_name_sprite.bitmap.font.bold   = PLAN_TITLE_NAME::FONT_BOLD
  395.     @title_name_sprite.bitmap.font.italic = PLAN_TITLE_NAME::FONT_ITALIC

  396.     str = PLAN_TITLE_NAME::TITLE_STR
  397.     if PLAN_TITLE_NAME::DRAW_FRAME
  398.       @title_name_sprite.bitmap.font.color = PLAN_TITLE_NAME::FRAME_COLOR
  399.       if defined?(@title_name_sprite.bitmap.draw_text_plan_frame)
  400.         @title_name_sprite.bitmap.draw_text_plan_frame(0, 0, rect.width, rect.height, str)
  401.         @title_name_sprite.bitmap.draw_text_plan_frame(2, 0, rect.width, rect.height, str)
  402.         @title_name_sprite.bitmap.draw_text_plan_frame(0, 2, rect.width, rect.height, str)
  403.         @title_name_sprite.bitmap.draw_text_plan_frame(2, 2, rect.width, rect.height, str)
  404.         @title_name_sprite.bitmap.font.color = PLAN_TITLE_NAME::STR_COLOR
  405.         @title_name_sprite.bitmap.draw_text_plan_frame(1, 1, rect.width, rect.height, str)
  406.       else
  407.         @title_name_sprite.bitmap.draw_text(0, 0, rect.width, rect.height, str)
  408.         @title_name_sprite.bitmap.draw_text(2, 0, rect.width, rect.height, str)
  409.         @title_name_sprite.bitmap.draw_text(0, 2, rect.width, rect.height, str)
  410.         @title_name_sprite.bitmap.draw_text(2, 2, rect.width, rect.height, str)
  411.         @title_name_sprite.bitmap.font.color = PLAN_TITLE_NAME::STR_COLOR
  412.         @title_name_sprite.bitmap.draw_text(1, 1, rect.width, rect.height, str)
  413.       end
  414.     else
  415.       @title_name_sprite.bitmap.font.color = PLAN_TITLE_NAME::STR_COLOR
  416.       @title_name_sprite.bitmap.draw_text(rect, str)
  417.     end
  418.     @title_name_sprite.x = 640 / 2 - rect.width / 2 + PLAN_TITLE_NAME::DRAW_X
  419.     @title_name_sprite.y = 480 / 2 - rect.height / 2 + PLAN_TITLE_NAME::DRAW_Y
  420.     @title_name_sprite.blink_on if PLAN_TITLE_NAME::BLINK
  421.     # 元のメソッドに戻す
  422.     plan_title_name_main
  423.     # スプライトの解放
  424.     @title_name_sprite.bitmap.dispose
  425.     @title_name_sprite.dispose
  426.   end
  427.   #--------------------------------------------------------------------------
  428.   # ● フレーム更新
  429.   #--------------------------------------------------------------------------
  430.   alias plan_title_name_update update
  431.   def update
  432.     # スプライトの更新
  433.     @title_name_sprite.update
  434.     # 元のメソッドに戻す
  435.     plan_title_name_update
  436.   end
  437. end



  438. #2、副标题脚本

  439. #==============================================================================
  440. # 本脚本由夜夜转载于www.66RPG.com,使用和转载请保留此信息
  441. #
  442. # ■ ゲームサブタイトルの表示(ver 0.98)
  443. #==============================================================================

  444. #==============================================================================
  445. # □ カスタマイズポイント
  446. #==============================================================================
  447. module PLAN_THEME_NAME
  448.   THEME_STR = "带你体验游戏的世界"
  449.   FONT_NAME     = ["黑体", "楷体", "宋体"]    # フォント
  450.   FONT_SIZE     =   30                              # フォントサイズ
  451.   FONT_BOLD     = true                              # 太字
  452.   FONT_ITALIC   = false                               # 斜体
  453.   STR_COLOR     = Color.new( 200, 50, 50)           # 文字の色
  454.   DRAW_FRAME    = false                             # 縁取りする
  455.   FRAME_COLOR   = Color.new(0, 0, 0)                # 縁の色
  456.   DRAW_X        =  0                              # X 座標修正値
  457.   DRAW_Y        =  -50                              # Y 座標修正値
  458.   BLINK         = true                           # 点滅
  459. end



  460. #==============================================================================
  461. # ■ Scene_Title
  462. #==============================================================================

  463. class Scene_Title
  464.   #--------------------------------------------------------------------------
  465.   # ● メイン処理
  466.   #--------------------------------------------------------------------------
  467.   alias plan_theme_main main
  468.   def main
  469.     # 戦闘テストの場合
  470.     if $BTEST
  471.       battle_test
  472.       return
  473.     end
  474.     # スプライトの作成
  475.     @theme_sprite = RPG::Sprite.new
  476.     @theme_sprite.z = 100
  477.     bitmap = Bitmap.new(32, 32)
  478.     bitmap.font.name = PLAN_THEME_NAME::FONT_NAME
  479.     bitmap.font.size = PLAN_THEME_NAME::FONT_SIZE
  480.     bitmap.font.bold = PLAN_THEME_NAME::FONT_BOLD
  481.     rect = bitmap.text_size(PLAN_THEME_NAME::THEME_STR)
  482.     bitmap.dispose
  483.     bitmap = nil
  484.     @theme_sprite.bitmap = Bitmap.new(rect.width, rect.height)
  485.     @theme_sprite.bitmap.font.name   = PLAN_THEME_NAME::FONT_NAME
  486.     @theme_sprite.bitmap.font.size   = PLAN_THEME_NAME::FONT_SIZE
  487.     @theme_sprite.bitmap.font.bold   = PLAN_THEME_NAME::FONT_BOLD
  488.     @theme_sprite.bitmap.font.italic = PLAN_THEME_NAME::FONT_ITALIC

  489.     str = PLAN_THEME_NAME::THEME_STR
  490.     if PLAN_THEME_NAME::DRAW_FRAME
  491.       @theme_sprite.bitmap.font.color = PLAN_THEME_NAME::FRAME_COLOR
  492.       if defined?(@theme_sprite.bitmap.draw_text_plan_frame)
  493.         @theme_sprite.bitmap.draw_text_plan_frame(0, 0, rect.width, rect.height, str)
  494.         @theme_sprite.bitmap.draw_text_plan_frame(2, 0, rect.width, rect.height, str)
  495.         @theme_sprite.bitmap.draw_text_plan_frame(0, 2, rect.width, rect.height, str)
  496.         @theme_sprite.bitmap.draw_text_plan_frame(2, 2, rect.width, rect.height, str)
  497.         @theme_sprite.bitmap.font.color = PLAN_THEME_NAME::STR_COLOR
  498.         @theme_sprite.bitmap.draw_text_plan_frame(1, 1, rect.width, rect.height, str)
  499.       else
  500.         @theme_sprite.bitmap.draw_text(0, 0, rect.width, rect.height, str)
  501.         @theme_sprite.bitmap.draw_text(2, 0, rect.width, rect.height, str)
  502.         @theme_sprite.bitmap.draw_text(0, 2, rect.width, rect.height, str)
  503.         @theme_sprite.bitmap.draw_text(2, 2, rect.width, rect.height, str)
  504.         @theme_sprite.bitmap.font.color = PLAN_THEME_NAME::STR_COLOR
  505.         @theme_sprite.bitmap.draw_text(1, 1, rect.width, rect.height, str)
  506.       end
  507.     else
  508.       @theme_sprite.bitmap.font.color = PLAN_THEME_NAME::STR_COLOR
  509.       @theme_sprite.bitmap.draw_text(rect, str)
  510.     end

  511.     @theme_sprite.x = 640 / 2 - rect.width / 2 + PLAN_THEME_NAME::DRAW_X
  512.     @theme_sprite.y = 480 / 2 - rect.height / 2 + PLAN_THEME_NAME::DRAW_Y
  513.     @theme_sprite.blink_on if PLAN_THEME_NAME::BLINK
  514.     # 元のメソッドに戻す
  515.     plan_theme_main
  516.     # スプライトの解放
  517.     @theme_sprite.bitmap.dispose
  518.     @theme_sprite.dispose
  519.   end
  520.   #--------------------------------------------------------------------------
  521.   # ● フレーム更新
  522.   #--------------------------------------------------------------------------
  523.   alias plan_theme_update update
  524.   def update
  525.     # スプライトの更新
  526.     @theme_sprite.update
  527.     # 元のメソッドに戻す
  528.     plan_theme_update
  529.   end
  530. end



  531. #3、版权脚本

  532. #==============================================================================

  533. # 本脚本由夜夜转载于www.66RPG.com,使用和转载请保留此信息

  534. #
  535. # ■ Copyright(ver 0.98)
  536. #==============================================================================


  537. #==============================================================================
  538. # □ カスタマイズポイント
  539. #==============================================================================
  540. module PLAN_COPYRIGHT
  541.   COPYRIGHT_STR = "版本:初始版 1.0"
  542.   FONT_NAME     = ["黑体", "楷体", "宋体"]    # フォント
  543.   FONT_SIZE     =  14                               # フォントサイズ
  544.   FONT_BOLD     = true                              # 太字
  545.   FONT_ITALIC   = true                              # 斜体
  546.   STR_COLOR     = Color.new(225, 225, 225)          # 文字の色
  547.   DRAW_FRAME    = true                              # 縁取りする
  548.   FRAME_COLOR   = Color.new(0, 0, 0)                # 縁の色
  549.   DRAW_X        =  -3                               # X 座標修正値
  550.   DRAW_Y        =  -3                               # Y 座標修正値
  551. end



  552. #==============================================================================
  553. # ■ Scene_Title
  554. #==============================================================================

  555. class Scene_Title
  556.   #--------------------------------------------------------------------------
  557.   # ● メイン処理
  558.   #--------------------------------------------------------------------------
  559.   alias plan_copyrcight_main main
  560.   def main
  561.     # 戦闘テストの場合
  562.     if $BTEST
  563.       battle_test
  564.       return
  565.     end
  566.     # スプライトの作成
  567.     @copyrcight_sprite = Sprite.new
  568.     @copyrcight_sprite.z = 100
  569.     bitmap = Bitmap.new(32, 32)
  570.     bitmap.font.name = PLAN_COPYRIGHT::FONT_NAME
  571.     bitmap.font.size = PLAN_COPYRIGHT::FONT_SIZE
  572.     bitmap.font.bold = PLAN_COPYRIGHT::FONT_BOLD
  573.     rect = bitmap.text_size(PLAN_COPYRIGHT::COPYRIGHT_STR)
  574.     bitmap.dispose
  575.     bitmap = nil
  576.     @copyrcight_sprite.bitmap = Bitmap.new(rect.width, rect.height)
  577.     @copyrcight_sprite.bitmap.font.name = PLAN_COPYRIGHT::FONT_NAME
  578.     @copyrcight_sprite.bitmap.font.size = PLAN_COPYRIGHT::FONT_SIZE
  579.     @copyrcight_sprite.bitmap.font.bold = PLAN_COPYRIGHT::FONT_BOLD
  580.     @copyrcight_sprite.bitmap.font.italic = PLAN_COPYRIGHT::FONT_ITALIC

  581.     str = PLAN_COPYRIGHT::COPYRIGHT_STR
  582.     if PLAN_COPYRIGHT::DRAW_FRAME
  583.       @copyrcight_sprite.bitmap.font.color = PLAN_COPYRIGHT::FRAME_COLOR
  584.       if defined?(@copyrcight_sprite.bitmap.draw_text_plan_frame)
  585.         @copyrcight_sprite.bitmap.draw_text_plan_frame(0, 0, rect.width, rect.height, str)
  586.         @copyrcight_sprite.bitmap.draw_text_plan_frame(2, 0, rect.width, rect.height, str)
  587.         @copyrcight_sprite.bitmap.draw_text_plan_frame(0, 2, rect.width, rect.height, str)
  588.         @copyrcight_sprite.bitmap.draw_text_plan_frame(2, 2, rect.width, rect.height, str)
  589.         @copyrcight_sprite.bitmap.font.color = PLAN_COPYRIGHT::STR_COLOR
  590.         @copyrcight_sprite.bitmap.draw_text_plan_frame(1, 1, rect.width, rect.height, str)
  591.       else
  592.         @copyrcight_sprite.bitmap.draw_text(0, 0, rect.width, rect.height, str)
  593.         @copyrcight_sprite.bitmap.draw_text(2, 0, rect.width, rect.height, str)
  594.         @copyrcight_sprite.bitmap.draw_text(0, 2, rect.width, rect.height, str)
  595.         @copyrcight_sprite.bitmap.draw_text(2, 2, rect.width, rect.height, str)
  596.         @copyrcight_sprite.bitmap.font.color = PLAN_COPYRIGHT::STR_COLOR
  597.         @copyrcight_sprite.bitmap.draw_text(1, 1, rect.width, rect.height, str)
  598.       end
  599.     else
  600.       @copyrcight_sprite.bitmap.font.color = PLAN_COPYRIGHT::STR_COLOR
  601.       @copyrcight_sprite.bitmap.draw_text(rect, str)
  602.     end
  603.     @copyrcight_sprite.x = 640 - rect.width + PLAN_COPYRIGHT::DRAW_X
  604.     @copyrcight_sprite.y = 480 - rect.height + PLAN_COPYRIGHT::DRAW_Y
  605.     # 元のメソッドに戻す
  606.     plan_copyrcight_main
  607.     # スプライトの解放
  608.     @copyrcight_sprite.bitmap.dispose
  609.     @copyrcight_sprite.dispose
  610.   end
  611.   #--------------------------------------------------------------------------
  612.   # ● フレーム更新
  613.   #--------------------------------------------------------------------------
  614.   alias plan_copyrcight_update update
  615.   def update
  616.     # スプライトの更新
  617.     @copyrcight_sprite.update
  618.     # 元のメソッドに戻す
  619.     plan_copyrcight_update
  620.   end
  621. end
  622. #==============================================================================
  623. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  624. #==============================================================================
复制代码
回复

使用道具 举报

梦石
0
星屑
50
在线时间
192 小时
注册时间
2010-8-23
回帖
140
发表于 2014-4-7 20:50:06 | 显示全部楼层
脚本这东西这么多行……要找出问题很费劲的
推荐去看下癫狂侠客的标题界面教程
http://bbs.rgss.cn/forum.php?mod=viewthread&tid=10256
60分钟就可以学会制作标题了
其实我是个三流的画师  ←_←
回复

使用道具 举报

梦石
0
星屑
178
在线时间
113 小时
注册时间
2014-2-4
回帖
34
 楼主| 发表于 2014-4-7 21:02:54 | 显示全部楼层
512195574 发表于 2014-4-7 20:50
脚本这东西这么多行……要找出问题很费劲的
推荐去看下癫狂侠客的标题界面教程
http://bbs.rgss.cn/forum.p ...

没有时间啊!!

点评

1.请勿连帖,善用编辑。2.显示标题的脚本我有,改天用台式机上发给你。  发表于 2014-4-9 20:45
存档的话我有啊  发表于 2014-4-8 12:24
其实第一讲只需要17分钟……  发表于 2014-4-7 21:17
脚本没问题的话,可能是你没有存档,自然不能读档。其实看下教程很快的,真要制作游戏不差这点时间  发表于 2014-4-7 21:15
回复

使用道具 举报

梦石
0
星屑
178
在线时间
113 小时
注册时间
2014-2-4
回帖
34
 楼主| 发表于 2014-4-9 20:16:58 | 显示全部楼层
那请问有没有可以显示游戏标题的脚本!!
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部