Apresentação e de bonus,um Title iraduh!

Fórum para a postagem de tutoriais e dúvidas de Rpg Maker 2000 e 2003.
Responder
lucas09
Membro (Recruta)
Mensagens: 33
Registrado em: Qui Nov 16, 2006 8:19 pm
Maker Preferido: Rpg Maker 2003
Localização: Fortaleza-CE

Apresentação e de bonus,um Title iraduh!

Mensagem por lucas09 » Qua Nov 22, 2006 9:38 pm

Bem,vou postar o Script que uso no meu game,a apresentação antes do title.Qualque duvida,poste.
Tutorial:
Crie um mapa todo preto.Veja o id do mapa e edite isso:

Código: Selecionar todos

DEMO_MAP = 5               # Qual é o ID do Mapa demo?  
Edite o numero 5 para o ID do mapa.
Nesse mapa faça sua apresentação,quando acabar,selecione "chamar script" e digite:

Código: Selecionar todos

title_demo_end
Quando isso acontecer,oevento abrirá 2 imagens.Para selecionar,edite essas linhas:

Código: Selecionar todos

R_SS = ["SS1","SS2"]       # Quais são os nomes dos arquivos? 
  R_SS_BGM = "MIDI - TITLE"# A música que ira acompanhar as fotos. 
  R_NEXT_SS = 220            # Tempo de espera entre as fotos. 
Depois de editadas,apareceram as fotos escolhidas e depois o title.
Agora edite estas linhas:

Código: Selecionar todos

  TITLE_MAIN = true          # Vai apresentar o Texto do titulo? 
  MAIN_NAME = "Kingdom Hearts"#Nome do titulo 
  MAIN_SIZE = 80             # Tamanho da fonteLetra) 
  MAIN_FONT = "Papyrus"        # Tipo de Fonte 
  M_COLOR = [253, 28, 2]      # Cor da fonte 
Primeiro,defina se vai querer um titulo(aparecera um nome,em cima da img de title de acordo com as configs).
Agora edite estas:

Código: Selecionar todos

######SUBTITULO###############  
  TITLE_SUB = true        #Subtitulo Ativo? 
  SUB_NAME = "The New Adventure" #Nome do subtitulo 
  SUB_SIZE = 35           #Tamanho da fonte do subtitulo    
  SUB_FONT = "Arial"      #Tipo de Fonte 
  S_COLOR = [238, 108, 13] #Cor do subtitulo 
Defina se ira aparecer subtitulo(Trocando o true por false).
Agora mude as confings.
Pronto!Você tem sua propria apresentação!
Antes de tudo coloque esse script:

Código: Selecionar todos

#################################################################
############### SCRIPT criado por Claimh ########################
#################################################################
#O script permite adicionar a apresentação em seu jogo          #
#################################################################
class Scene_Title
 #Qual a apresentação ira mostrar primeiro 0 >Fotos  1 > Mapa  
  DEMO_PRIORITY = 0 
  TITLE_SKIP_ALL = false
  TITLE_SKIP_COM = false     # O jogo começara do continue
  LOGO = true                # Vai apresentar o Logotipo?
  LOGO_GRAPHIC = "logo"      # Nome do Logotipo
  LOGO_ME = "003-victory03"  # Nome da Música
  RANDUM_SS = true          # Vai apresentar as fotos na apresentação
  R_SS = ["SS1","SS2"]       # Quais são os nomes dos arquivos?
  R_SS_BGM = "MIDI - TITLE"# A música que ira acompanhar as fotos.
  R_NEXT_SS = 220            # Tempo de espera entre as fotos. 
  DEMO = true                # Vai ativar a apresentação de mapa?
  DEMO_MAP = 5               # Qual é o ID do Mapa demo?  
  DEMO_PARTY_PLACE = [01, 14]# Posição do heroi no mapa demo.
  FADE_IN = true             # Ativar o Fade?
  FADE_TITLE_ORDER = 0       # Ordem do Fade
  TITLE_MAIN = true          # Vai apresentar o Texto do titulo?
  MAIN_NAME = "Kingdom Hearts"#Nome do titulo
  MAIN_SIZE = 80             # Tamanho da fonteLetra) 
  MAIN_FONT = "Papyrus"        # Tipo de Fonte
  M_COLOR = [253, 28, 2]      # Cor da fonte 
#Posição do texto
  MAIN_ALIGN = 1          
  MAIN_X = 0              
  MAIN_Y = -50
  MAIN_EFFECT = true                
  MAIN_EFFECT_X = [10, 10, 0]      
  MAIN_EFFECT_Y = [0, 0, 0]        
  MAIN_OPACITY = [5, 5, 0]
######SUBTITULO###############  
  TITLE_SUB = true        #Subtitulo Ativo?
  SUB_NAME = "The New Adventure" #Nome do subtitulo
  SUB_SIZE = 35           #Tamanho da fonte do subtitulo   
  SUB_FONT = "Arial"      #Tipo de Fonte 
  S_COLOR = [238, 108, 13] #Cor do subtitulo
  SUB_ALIGN = 1          
#Posição do texto
  SUB_X = 0              
  SUB_Y = 0
  SUB_EFFECT = true               
  SUB_EFFECT_X = [10, 10, 0]    
  SUB_EFFECT_Y = [0, 0, 0]       
  SUB_OPACITY = [5, 5, 0]        
  COMMAND_NEWGAME = "Novo jogo"
  COMMAND_CONTINUE = "Continuar"
  COMMAND_SHUTDOWN = "Sair"
  COMMAND_BACK = 160        
  COMMAND_X = 0
  COMMAND_Y = 0
  COMMAND_EFFECT = true             
  COMMAND_EFFECT_X = [0, 0, 0]     
  COMMAND_EFFECT_Y = [10, 10, 0]   
  COMMAND_OPACITY = [5, 5, 0]     
  BACK_EFFECT = true            # エフェクトなしならfalse
  BACK_EFFECT_X = [0, 0, 0]     # 横方向にずらす幅
  BACK_EFFECT_Y = [0, 0, 0]     # 縦方向にずらす幅
  BACK_ZOOM_X = [0.1, 0.1, 0]   # 横方向ズーム
  BACK_ZOOM_Y = [0.1, 0.1, 0]   # 縦方向ズーム
  BACK_OPACITY = [0, 0, 0]      # フェードアウト調整
  BACK_ANGLE = [0, 0, 0]        # タイトルバック回転
  BACK_TONE_RED = [0, 0, 0]     # トーン変調(赤)
  BACK_TONE_GREEN = [0, 0, 0]   # トーン変調(緑)
  BACK_TONE_BLUE = [0, 0, 0]    # トーン変調(青)
  BACK_TONE_GRAY = [0, 0, 0]    # トーン変調(灰色)
  RANDUM_BACK = true
  R_BACK = ["TITLE"] #Nome da picture do titulo
  TIMEOUT = true               # 不要ならfalse
  TITLE_TIMEOUT = 10
  TIMEOUT_NEXT = 1
  ANOTHER_OP = true           # 不要ならfalse
  AOP_SW = 10                 # 発動条件となるスイッチ(スイッチON時に発動)
    AOP_DEMO_PRIORITY = 0           # 0:ランダムスクショの前
    AOP_LOGO = true                   # 不要ならfalse
    AOP_LOGO_GRAPHIC = "logo"         # ロゴグラ(Graphics/Picture)
    AOP_LOGO_ME = "007-fanfare01"     # ロゴ時のME(Audio/ME)
    AOP_RANDUM_SS = true              # 不要ならfalse
    AOP_R_SS = ["SS1","SS2"] 
    AOP_R_SS_BGM = "034-heaven01"
    AOP_R_NEXT_SS = 240
    AOP_DEMO = true                 # 不要ならfalse
    AOP_DEMO_MAP = 2
    AOP_DEMO_PARTY_PLACE = [16,49]
    AOP_FADE_IN = true              # 不要ならfalse
    AOP_FADE_TITLE_ORDER = 0        # フェードインの順番
    AOP_TITLE_MAIN = true       # タイトル不要ならfalse
    AOP_MAIN_NAME = "Kingdom Hearts"
    AOP_MAIN_SIZE = 70
    AOP_MAIN_FONT = "Papyrus"
    AOP_M_COLOR = [0, 0, 255]
    AOP_MAIN_ALIGN = 1          # 左揃え:0 中央:1 右揃え:2
    AOP_MAIN_X = 0              # 中央揃えなら0とする
    AOP_MAIN_Y = -50
    AOP_MAIN_EFFECT = true               # エフェクトなしならfalse
    AOP_MAIN_EFFECT_X = [10, 10, 0]      # 横方向にずらす幅
    AOP_MAIN_EFFECT_Y = [0, 0, 0]        # 縦方向にずらす幅
    AOP_MAIN_OPACITY = [5, 5, 0]         # フェードアウト調整
    AOP_TITLE_SUB = true       # タイトル不要ならfalse
    AOP_SUB_NAME = "The New Adventure"
    AOP_SUB_SIZE = 30
    AOP_SUB_FONT = "Arial"
    AOP_S_COLOR = [255, 128, 128]
    AOP_SUB_ALIGN = 1          # 左揃え:0 中央:1 右揃え:2
    AOP_SUB_X = 0              # 中央揃えなら0
    AOP_SUB_Y = 0
    AOP_SUB_EFFECT = true               # エフェクトなしならfalse
    AOP_SUB_EFFECT_X = [10, 10, 0]      # 横方向にずらす幅
    AOP_SUB_EFFECT_Y = [0, 0, 0]        # 縦方向にずらす幅
    AOP_SUB_OPACITY = [5, 5, 0]         # フェードアウト調整
    AOP_COMMAND_NEWGAME = "Novo Jogo"
    AOP_COMMAND_CONTINUE = "Continuar"
    AOP_COMMAND_SHUTDOWN = "Sair"
    AOP_COMMAND_BACK = 160        # 透明にするなら0
    AOP_COMMAND_X = 0
    AOP_COMMAND_Y = 0
    AOP_COMMAND_EFFECT = true             # エフェクトなしならfalse
    AOP_COMMAND_EFFECT_X = [0, 0, 0]      # 横方向にずらす幅
    AOP_COMMAND_EFFECT_Y = [10, 10, 0]    # 縦方向にずらす幅
    AOP_COMMAND_OPACITY = [5, 5, 0]       # フェードアウト調整
    AOP_BACK_EFFECT = true            # エフェクトなしならfalse
    AOP_BACK_EFFECT_X = [0, 0, 0]     # 横方向にずらす幅
    AOP_BACK_EFFECT_Y = [0, 0, 0]     # 縦方向にずらす幅
    AOP_BACK_ZOOM_X = [0.1, 0.1, 0]   # 横方向ズーム
    AOP_BACK_ZOOM_Y = [0.1, 0.1, 0]   # 縦方向ズーム
    AOP_BACK_OPACITY = [0, 0, 0]      # フェードアウト調整
    AOP_BACK_ANGLE = [0, 0, 0]        # タイトルバック回転
    AOP_BACK_TONE_RED = [0, 0, 0]     # トーン変調(赤)
    AOP_BACK_TONE_GREEN = [0, 0, 0]   # トーン変調(緑)
    AOP_BACK_TONE_BLUE = [0, 0, 0]    # トーン変調(青)
    AOP_BACK_TONE_GRAY = [0, 0, 0]    # トーン変調(灰色)
    AOP_RANDUM_BACK = true
    AOP_R_BACK = ["TITLE"]
    AOP_TIMEOUT = true               # 不要ならfalse
    AOP_TITLE_TIMEOUT = 10
    AOP_TIMEOUT_NEXT = 1

#----------------------------------------------------------------------------
#   カスタマイズEND
#----------------------------------------------------------------------------

  $logo_skip = false        # ロゴのスキップ
  $demo_skip = false        # デモのスキップ
  $all_skip = false         # 全部スキップ
  #--------------------------------------------------------------------------
  # ● メイン処理
  #--------------------------------------------------------------------------
  def main
    # 戦闘テストの場合
    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
#--ここ追加---------------------------------------------------------------
    # タイトルスキップ(ニューゲーム)
    if TITLE_SKIP_ALL
      command_new_game
      return
    end
    @another_op = false
    @title_skip_continue = false
    for i in 0..3
      if FileTest.exist?("Save#{i+1}.rxdata")
        if TITLE_SKIP_COM
          @title_skip_continue = true
          break
        end
        file = File.open("Save#{i+1}.rxdata", "rb")
        characters = Marshal.load(file)
        # プレイ時間計測用のフレームカウントを読み込む
        Graphics.frame_count = Marshal.load(file)
        # 各種ゲームオブジェクトを読み込む
        $game_system        = Marshal.load(file)
        $game_switches      = Marshal.load(file)
        if $game_switches[AOP_SW]
          @another_op = true
          break
        end
      end
    end
    # タイトルスキップ(コンティニュー)
    if TITLE_SKIP_COM
      if @title_skip_continue
        @continue_enabled = true
        command_continue
      else
        command_new_game
      end
      return
    end
    @exit_logo = false
    if !ANOTHER_OP or !@another_op
      if LOGO and !$logo_skip and !$all_skip
        logo
      end
      if DEMO_PRIORITY == 0 and !@exit_logo and !$all_skip
        $demo_rss = true
        if DEMO and !$demo_skip and (TIMEOUT_NEXT != 3 or $demo_go)
          demo_show
          return
        end
        if RANDUM_SS and $demo_rss and !$rss_skip and (TIMEOUT_NEXT != 2 or $rss_go)
          $demo_rss = false
          $rss_go = false
          randum_ss
        end
      elsif DEMO_PRIORITY == 1 and !@exit_logo and !$all_skip and !$demo_skip
        if RANDUM_SS and !$rss_skip and (TIMEOUT_NEXT != 2 or $rss_go)
          randum_ss
        end
        if DEMO and (TIMEOUT_NEXT != 3 or $demo_go)
          demo_show
          return
        end
      end
    elsif ANOTHER_OP and @another_op
      if AOP_LOGO and !$logo_skip and !$all_skip
        aop_logo
      end
      if AOP_DEMO_PRIORITY == 0 and !@exit_logo and !$all_skip
        $demo_rss = true
        if AOP_DEMO and !$demo_skip and (AOP_TIMEOUT_NEXT != 3 or $demo_go)
          aop_demo_show
          return
        end
        if AOP_RANDUM_SS and $demo_rss and !$rss_skip and (AOP_TIMEOUT_NEXT != 2 or $rss_go)
          $demo_rss = false
          $rss_go = false
          aop_randum_ss
        end
      elsif AOP_DEMO_PRIORITY == 1 and !@exit_logo and !$all_skip and !$demo_skip
        if AOP_RANDUM_SS and !$rss_skip and (AOP_TIMEOUT_NEXT != 2 or $rss_go)
          aop_randum_ss
        end
        if AOP_DEMO and (AOP_TIMEOUT_NEXT != 3 or $demo_go)
          aop_demo_show
          return
        end
      end
    end
#-------------------------------------------------------------------------
    # タイトルグラフィックを作成
    @sprite = Sprite.new
#--修正-------------------------------------------------------------------
    if !ANOTHER_OP or !@another_op
      if RANDUM_BACK
        title = R_BACK[rand(R_BACK.size - 1)]
        @sprite.bitmap = RPG::Cache.title(title)
      else
        @sprite.bitmap = RPG::Cache.title($data_system.title_name)
      end
    elsif ANOTHER_OP and @another_op
      if AOP_RANDUM_BACK
        title = AOP_R_BACK[rand(AOP_R_BACK.size - 1)]
        @sprite.bitmap = RPG::Cache.title(title)
      else
        @sprite.bitmap = RPG::Cache.title($data_system.title_name)
      end
    end
#-------------------------------------------------------------------------
#--ここ追加---------------------------------------------------------------
    if !ANOTHER_OP or !@another_op
      if TITLE_MAIN
        main_title_effect
      end
      if TITLE_SUB
        sub_title_effect
      end
    elsif ANOTHER_OP and @another_op
      if AOP_TITLE_MAIN
        aop_main_title_effect
      end
      if AOP_TITLE_SUB
        aop_sub_title_effect
      end
    end
#-------------------------------------------------------------------------
#--修正-------------------------------------------------------------------
    # コマンドウィンドウを作成
    if !ANOTHER_OP or !@another_op
      s1 = COMMAND_NEWGAME
      s2 = COMMAND_CONTINUE
      s3 = COMMAND_SHUTDOWN
    elsif ANOTHER_OP and @another_op
      s1 = AOP_COMMAND_NEWGAME
      s2 = AOP_COMMAND_CONTINUE
      s3 = AOP_COMMAND_SHUTDOWN
    end
#-------------------------------------------------------------------------
    @command_window = Window_Command.new(192, [s1, s2, s3])
#--修正-------------------------------------------------------------------
    if !ANOTHER_OP or !@another_op
      if !FADE_IN
        @command_window.back_opacity = COMMAND_BACK
      else
        @command_window.opacity = 0
        @command_window.back_opacity = 0
        @command_window.contents_opacity = 0
      end
      @command_window.x = 750 - @command_window.width / 2 - COMMAND_X
      @command_window.y = 288 - COMMAND_Y
    elsif ANOTHER_OP and @another_op
      if !AOP_FADE_IN
        @command_window.back_opacity = AOP_COMMAND_BACK
      else
        @command_window.opacity = 0
        @command_window.back_opacity = 0
        @command_window.contents_opacity = 0
      end
      @command_window.x = 750 - @command_window.width / 2 - AOP_COMMAND_X
      @command_window.y = 288 - AOP_COMMAND_Y
    end
#-------------------------------------------------------------------------
    # コンティニュー有効判定
    # セーブファイルがひとつでも存在するかどうかを調べる
    # 有効なら @continue_enabled を true、無効なら false にする
    @continue_enabled = false
    for i in 0..3
      if FileTest.exist?("Save#{i+1}.rxdata")
        @continue_enabled = true
      end
    end
    # コンティニューが有効な場合、カーソルをコンティニューに合わせる
    # 無効な場合、コンティニューの文字をグレー表示にする
    if @continue_enabled
      @command_window.index = 1
    else
      @command_window.disable_item(1)
    end
#--修正-------------------------------------------------------------------
    if !ANOTHER_OP or !@another_op
      if !FADE_IN
        # タイトル BGM を演奏
        $game_system.bgm_play($data_system.title_bgm)
      end
    elsif ANOTHER_OP and @another_op
      if !AOP_FADE_IN
        # タイトル BGM を演奏
        $game_system.bgm_play($data_system.title_bgm)
      end
    end
#-------------------------------------------------------------------------
    # ME、BGS の演奏を停止
    Audio.me_stop
    Audio.bgs_stop
    # トランジション実行
    Graphics.transition
#--ここ追加---------------------------------------------------------------
    if !ANOTHER_OP or !@another_op
      if FADE_IN
        $game_system.bgm_play($data_system.title_bgm)
        title_fade_in
      end
    elsif ANOTHER_OP and @another_op
      if AOP_FADE_IN
        $game_system.bgm_play($data_system.title_bgm)
        aop_title_fade_in
      end
    end
    $all_skip = false
    if TIMEOUT or AOP_TIMEOUT
      time = Time.now
      min = time.min
      min *= 60
      @title_time = min + time.sec
    end
#-------------------------------------------------------------------------
    # メインループ
    loop do
      # ゲーム画面を更新
      Graphics.update
      if @command_window.x > 240
      @command_window.x -= 15
      end   
      Input.update
      update
      # 画面が切り替わったらループを中断
      if $scene != self
        break
      end
    end
    # トランジション準備
     for i in 0..10
      @command_window.x -= 64
      Graphics.update
    end
    Graphics.freeze
    # コマンドウィンドウを解放
    @command_window.dispose
#--ここ追加---------------------------------------------------------------
    if !ANOTHER_OP or !@another_op
      if TITLE_MAIN
        @main_title.dispose
      end
      if TITLE_SUB
        @sub_title.dispose
      end
    elsif ANOTHER_OP or @another_op
      if AOP_TITLE_MAIN
        @main_title.dispose
      end
      if AOP_TITLE_SUB
        @sub_title.dispose
      end
    end
#-------------------------------------------------------------------------
    # タイトルグラフィックを解放
    @sprite.bitmap.dispose
    @sprite.dispose
  end
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  alias title_update update
  def update
    title_update
    if !ANOTHER_OP or !@another_op
      if TIMEOUT
        time = Time.now
        min = time.min
        min *= 60
        current_time = min + time.sec
        diff = current_time - @title_time
        if diff > TITLE_TIMEOUT
          case TIMEOUT_NEXT
          when 0
            $logo_skip = false
            $demo_skip = false
            $rss_skip = false
          when 1
            $logo_skip = true
            $demo_skip = false
            $rss_skip = false
          when 2
            $logo_skip = true
            $demo_skip = true
            $rss_go = true
          when 3
            $logo_skip = true
            $demo_skip = false
            $rss_skip = true
            $demo_go = true
          end
          $scene = Scene_Title.new
          return
        elsif Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN)
          @title_time = current_time
        end
      end
    elsif ANOTHER_OP and @another_op
      if AOP_TIMEOUT
        time = Time.now
        min = time.min
        min *= 60
        current_time = min + time.sec
        diff = current_time - @title_time
        if diff > AOP_TITLE_TIMEOUT
          case AOP_TIMEOUT_NEXT
          when 0
            $logo_skip = false
            $demo_skip = false
            $rss_skip = false
          when 1
            $logo_skip = true
            $demo_skip = false
            $rss_skip = false
          when 2
            $logo_skip = true
            $demo_skip = true
            $rss_go = true
          when 3
            $logo_skip = true
            $demo_skip = false
            $rss_skip = true
            $demo_go = true
          end
          $scene = Scene_Title.new
          return
        elsif Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN)
          @title_time = current_time
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● コマンド : ニューゲーム
  #--------------------------------------------------------------------------
  def command_new_game
#-------------------------------------------------------------------------
    # タイトルスキップしたときはエフェクトなし
    if TITLE_SKIP_ALL and TITLE_SKIP_COM
      # 決定 SE を演奏
      $game_system.se_play($data_system.decision_se)
      if !ANOTHER_OP or !@another_op
        title_effect(0)
      elsif ANOTHER_OP and @another_op
        aop_title_effect(0)
      end
    end
#-------------------------------------------------------------------------
    # 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
#-------------------------------------------------------------------------
    # タイトルスキップしたときはエフェクトなし
    if !TITLE_SKIP_COM
      # 決定 SE を演奏
      $game_system.se_play($data_system.decision_se)
      # タイトルエフェクト
      if !ANOTHER_OP or !@another_op
        title_effect(1)
      elsif ANOTHER_OP and @another_op
        aop_title_effect(1)
      end
    end
#-------------------------------------------------------------------------
    # ロード画面に切り替え
    $scene = Scene_Load.new
  end

  #--------------------------------------------------------------------------
  # ● コマンド : シャットダウン
  #--------------------------------------------------------------------------
  def command_shutdown
    # 決定 SE を演奏
    $game_system.se_play($data_system.decision_se)
#--ここ追加---------------------------------------------------------------
    if !ANOTHER_OP or !@another_op
      title_effect(2)
    elsif ANOTHER_OP and @another_op
      aop_title_effect(2)
    end
#-------------------------------------------------------------------------
    # BGMフェードアウト
    Audio.bgm_fade(2000)
    # BGM、BGS、ME をフェードアウト
    Audio.bgm_fade(800)
    Audio.bgs_fade(800)
    Audio.me_fade(800)
    # シャットダウン
    $scene = nil
  end



#-------------------------------------------------------------------------
#   ★ 追加定義
#-------------------------------------------------------------------------
  #--------------------------------------------------------------------------
  # ● ロゴ
  #--------------------------------------------------------------------------
  def logo
    @logo = Sprite.new
    @logo.bitmap = RPG::Cache.picture(LOGO_GRAPHIC)
    if LOGO_ME != nil
      Audio.me_play("Audio/ME/" + LOGO_ME)
    end
    @logo.x = (640 - @logo.bitmap.width)/2
    @logo.y = (480 - @logo.bitmap.height)/2
    Graphics.transition(10)
    for i in 0..120
      Graphics.update
      Input.update
      if Input.trigger?(Input::C) or Input.trigger?(Input::B)
        @exit_logo = true
        break
      end
    end
    Audio.me_fade(500)
    Graphics.freeze
    @logo.bitmap.dispose
    @logo.dispose
    Graphics.transition(10)
    Graphics.freeze
  end

  #--------------------------------------------------------------------------
  # ● ランダムスクリーンショット
  #--------------------------------------------------------------------------
  def randum_ss
    exit_ss = false
    Audio.bgm_play("Audio/BGM/" + R_SS_BGM)
    for i in 0..5
      Graphics.update
    end
    copy_ss = R_SS.dup
    total = R_SS.size
    for i in 0..total-1
      next_num = rand(copy_ss.size - 1)
      next_ss = copy_ss[next_num]
      copy_ss.delete(next_ss)
      @ss = Sprite.new
      @ss.bitmap = RPG::Cache.picture(next_ss)
      @ss.x = (640 - @ss.bitmap.width)/2
      @ss.y = (480 - @ss.bitmap.height)/2
      Graphics.transition(10)
      for i in 0..R_NEXT_SS
        Graphics.update
        Input.update
        if Input.trigger?(Input::C) or Input.trigger?(Input::B)
          $demo_skip = true
          exit_ss = true
          break
        end
      end
      Graphics.freeze
      @ss.bitmap.dispose
      @ss.dispose
      Graphics.transition(10)
      Graphics.freeze
      if exit_ss
        Audio.bgm_fade(1000)
        break
      end
    end
  end

  #--------------------------------------------------------------------------
  # ● デモ演出
  #--------------------------------------------------------------------------
  def demo_show
    Graphics.freeze
    Graphics.transition(10)
    Graphics.freeze
    $demo_playing = true
    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(DEMO_MAP)
    $game_player.moveto(DEMO_PARTY_PLACE[0], DEMO_PARTY_PLACE[1])
    $game_player.refresh
    $game_map.autoplay
    $scene = Scene_Map.new
  end

  #--------------------------------------------------------------------------
  # ● メインタイトル
  #--------------------------------------------------------------------------
  def main_title_effect
    @main_title = Window_Base.new(0,0,640,300)
    @main_title.opacity = 0
    w = @main_title.width
    h = @main_title.height
    @main_title.contents = Bitmap.new(w-32, h-32)
    @main_title.contents.font.size = MAIN_SIZE
    @main_title.contents.font.name = [MAIN_FONT, "MS Pゴシック"]
    @main_title.contents.font.color.set(M_COLOR[0], M_COLOR[1], M_COLOR[2])
    if FADE_IN
      @main_title.contents_opacity = 0
    end
    @main_title.contents.draw_text(MAIN_X,MAIN_Y,w,h,MAIN_NAME,MAIN_ALIGN)
  end

  #--------------------------------------------------------------------------
  # ● サブタイトル
  #--------------------------------------------------------------------------
  def sub_title_effect
    @sub_title = Window_Base.new(0,0,640,300)
    @sub_title.opacity = 0
    w = @sub_title.width
    h = @sub_title.height
    @sub_title.contents = Bitmap.new(w-32, h-32)
    @sub_title.contents.font.size = SUB_SIZE
    @sub_title.contents.font.name = [SUB_FONT, "MS Pゴシック"]
    @sub_title.contents.font.color.set(S_COLOR[0], S_COLOR[1], S_COLOR[2])
    if FADE_IN
      @sub_title.contents_opacity = 0
    end
    @sub_title.contents.draw_text(SUB_X,SUB_Y,w,h,SUB_NAME,SUB_ALIGN)
  end

  #--------------------------------------------------------------------------
  # ● フェードイン
  #--------------------------------------------------------------------------
  def title_fade_in
    case FADE_TITLE_ORDER
    when 0
      for i in 0..60
        if TITLE_MAIN
          @main_title.contents_opacity += 255/60
        end
        if TITLE_SUB
          @sub_title.contents_opacity += 255/60
        end
        Graphics.update
      end
    when 1
      for i in 0..60
        if TITLE_MAIN
          @main_title.contents_opacity += 255/60
          Graphics.update
        end
      end
      Graphics.update
      for i in 0..60
        if TITLE_SUB
          @sub_title.contents_opacity += 255/60
          Graphics.update
        end
      end
    end
    for i in 0..60
      @command_window.opacity += 255/60
      @command_window.back_opacity += COMMAND_BACK
      @command_window.contents_opacity += 255/60
    end
  end

  #--------------------------------------------------------------------------
  # ● フェードアウト
  #--------------------------------------------------------------------------
  def title_effect(index)
    Audio.bgm_fade(6000)
    for i in 0..60
      if TITLE_MAIN and MAIN_EFFECT
        @main_title.x += MAIN_EFFECT_X[index]
        @main_title.y += MAIN_EFFECT_Y[index]
        @main_title.opacity -= MAIN_OPACITY[index]
      end
      if TITLE_SUB and SUB_EFFECT
        @sub_title.x += SUB_EFFECT_X[index]
        @sub_title.y += SUB_EFFECT_Y[index]
        @sub_title.opacity -= SUB_OPACITY[index]
      end
      if COMMAND_EFFECT
        @command_window.x += COMMAND_EFFECT_X[index]
        @command_window.y += COMMAND_EFFECT_Y[index]
        @command_window.opacity -= COMMAND_OPACITY[index]
      end
      if BACK_EFFECT
        @sprite.x -= BACK_EFFECT_X[index]
        @sprite.y -= BACK_EFFECT_Y[index]
        @sprite.zoom_x += BACK_ZOOM_X[index]
        @sprite.zoom_y += BACK_ZOOM_Y[index]
        @sprite.opacity -= BACK_OPACITY[index]
        @sprite.angle += BACK_ANGLE[index]
        @sprite.tone.red += BACK_TONE_RED[index]
        @sprite.tone.green += BACK_TONE_GREEN[index]
        @sprite.tone.blue += BACK_TONE_BLUE[index]
        @sprite.tone.gray += BACK_TONE_GRAY[index]
      end
      Graphics.update
    end
  end


#==============================================================================
# ■ アナザーOP用
#==============================================================================
  #--------------------------------------------------------------------------
  # ● ロゴ
  #--------------------------------------------------------------------------
  def aop_logo
    @logo = Sprite.new
    @logo.bitmap = RPG::Cache.picture(AOP_LOGO_GRAPHIC)
    if AOP_LOGO_ME != nil
      Audio.me_play("Audio/ME/" + AOP_LOGO_ME)
    end
    @logo.x = (640 - @logo.bitmap.width)/2
    @logo.y = (480 - @logo.bitmap.height)/2
    Graphics.transition(10)
    for i in 0..120
      Graphics.update
      Input.update
      if Input.trigger?(Input::C) or Input.trigger?(Input::B)
        @exit_logo = true
        break
      end
    end
    Audio.me_fade(500)
    Graphics.freeze
    @logo.bitmap.dispose
    @logo.dispose
    Graphics.transition(10)
    Graphics.freeze
  end

  #--------------------------------------------------------------------------
  # ● ランダムスクリーンショット
  #--------------------------------------------------------------------------
  def aop_randum_ss
    exit_ss = false
    Audio.bgm_play("Audio/BGM/" + AOP_R_SS_BGM)
    for i in 0..5
      Graphics.update
    end
    copy_ss = AOP_R_SS.dup
    total = AOP_R_SS.size
    for i in 0..total-1
      next_num = rand(copy_ss.size - 1)
      next_ss = copy_ss[next_num]
      copy_ss.delete(next_ss)
      @ss = Sprite.new
      @ss.bitmap = RPG::Cache.picture(next_ss)
      @ss.x = (640 - @ss.bitmap.width)/2
      @ss.y = (480 - @ss.bitmap.height)/2
      Graphics.transition(10)
      for i in 0..AOP_R_NEXT_SS
        Graphics.update
        Input.update
        if Input.trigger?(Input::C) or Input.trigger?(Input::B)
          $demo_skip = true
          exit_ss = true
          break
        end
      end
      Graphics.freeze
      @ss.bitmap.dispose
      @ss.dispose
      Graphics.transition(10)
      Graphics.freeze
      if exit_ss
        Audio.bgm_fade(1000)
        break
      end
    end
  end

  #--------------------------------------------------------------------------
  # ● デモ演出
  #--------------------------------------------------------------------------
  def aop_demo_show
    Graphics.freeze
    Graphics.transition(10)
    Graphics.freeze
    $demo_playing = true
    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(AOP_DEMO_MAP)
    $game_player.moveto(AOP_DEMO_PARTY_PLACE[0], AOP_DEMO_PARTY_PLACE[1])
    $game_player.refresh
    $game_map.autoplay
    $scene = Scene_Map.new
  end

  #--------------------------------------------------------------------------
  # ● メインタイトル
  #--------------------------------------------------------------------------
  def aop_main_title_effect
    @main_title = Window_Base.new(0,0,640,300)
    @main_title.opacity = 0
    w = @main_title.width
    h = @main_title.height
    @main_title.contents = Bitmap.new(w-32, h-32)
    @main_title.contents.font.size = AOP_MAIN_SIZE
    @main_title.contents.font.name = [AOP_MAIN_FONT, "MS Pゴシック"]
    @main_title.contents.font.color.set(AOP_M_COLOR[0], AOP_M_COLOR[1],AOP_M_COLOR[2])
    if AOP_FADE_IN
      @main_title.contents_opacity = 0
    end
    @main_title.contents.draw_text(AOP_MAIN_X,AOP_MAIN_Y,w,h,AOP_MAIN_NAME,AOP_MAIN_ALIGN)
  end

  #--------------------------------------------------------------------------
  # ● サブタイトル
  #--------------------------------------------------------------------------
  def aop_sub_title_effect
    @sub_title = Window_Base.new(0,0,640,300)
    @sub_title.opacity = 0
    w = @sub_title.width
    h = @sub_title.height
    @sub_title.contents = Bitmap.new(w-32, h-32)
    @sub_title.contents.font.size = AOP_SUB_SIZE
    @sub_title.contents.font.name = [AOP_SUB_FONT, "MS Pゴシック"]
    @sub_title.contents.font.color.set(AOP_S_COLOR[0], AOP_S_COLOR[1], AOP_S_COLOR[2])
    if AOP_FADE_IN
      @sub_title.contents_opacity = 0
    end
    @sub_title.contents.draw_text(AOP_SUB_X,AOP_SUB_Y,w,h,AOP_SUB_NAME,AOP_SUB_ALIGN)
  end

  #--------------------------------------------------------------------------
  # ● フェードイン
  #--------------------------------------------------------------------------
  def aop_title_fade_in
    case AOP_FADE_TITLE_ORDER
    when 0
      for i in 0..60
        if AOP_TITLE_MAIN
          @main_title.contents_opacity += 255/60
        end
        if AOP_TITLE_SUB
          @sub_title.contents_opacity += 255/60
        end
        Graphics.update
      end
    when 1
      for i in 0..60
        if AOP_TITLE_MAIN
          @main_title.contents_opacity += 255/60
          Graphics.update
        end
      end
      Graphics.update
      for i in 0..60
        if AOP_TITLE_SUB
          @sub_title.contents_opacity += 255/60
          Graphics.update
        end
      end
    end
    for i in 0..60
      @command_window.opacity += 255/60
      @command_window.back_opacity += AOP_COMMAND_BACK
      @command_window.contents_opacity += 255/60
    end
  end

  #--------------------------------------------------------------------------
  # ● フェードアウト
  #--------------------------------------------------------------------------
  def aop_title_effect(index)
    Audio.bgm_fade(6000)
    for i in 0..60
      if TITLE_MAIN and AOP_MAIN_EFFECT
        @main_title.x += AOP_MAIN_EFFECT_X[index]
        @main_title.y += AOP_MAIN_EFFECT_Y[index]
        @main_title.opacity -= AOP_MAIN_OPACITY[index]
      end
      if AOP_TITLE_SUB and AOP_SUB_EFFECT
        @sub_title.x += AOP_SUB_EFFECT_X[index]
        @sub_title.y += AOP_SUB_EFFECT_Y[index]
        @sub_title.opacity -= AOP_SUB_OPACITY[index]
      end
      if AOP_COMMAND_EFFECT
        @command_window.x += AOP_COMMAND_EFFECT_X[index]
        @command_window.y += AOP_COMMAND_EFFECT_Y[index]
        @command_window.opacity -= AOP_COMMAND_OPACITY[index]
      end
      if AOP_BACK_EFFECT
        @sprite.x -= AOP_BACK_EFFECT_X[index]
        @sprite.y -= AOP_BACK_EFFECT_Y[index]
        @sprite.zoom_x += AOP_BACK_ZOOM_X[index]
        @sprite.zoom_y += AOP_BACK_ZOOM_Y[index]
        @sprite.opacity -= AOP_BACK_OPACITY[index]
        @sprite.angle += AOP_BACK_ANGLE[index]
        @sprite.tone.red += AOP_BACK_TONE_RED[index]
        @sprite.tone.green += AOP_BACK_TONE_GREEN[index]
        @sprite.tone.blue += AOP_BACK_TONE_BLUE[index]
        @sprite.tone.gray += AOP_BACK_TONE_GRAY[index]
      end
      Graphics.update
    end
  end
end

#==============================================================================
# ■ Scene_End
#------------------------------------------------------------------------------
#  コマンド [タイトルへ] 選択時にはロゴ、デモ、ランダムスクショ表示はなし
#==============================================================================
class Scene_End
  alias command_to_title_logo_skip command_to_title
  def command_to_title
    command_to_title_logo_skip
    $all_skip = true
  end
end


#==============================================================================
# ■ Window_Message
#------------------------------------------------------------------------------
#  デモ演出時はタイトル画面へのスキップ機能を付属
#==============================================================================

class Window_Message < Window_Selectable
  alias demo_message_update update
  def update
    if $demo_playing
      if Input.trigger?(Input::B)
        $demo_playing = false
        $all_skip = true
        $scene = Scene_Title.new
      else
        demo_message_update
      end
    else
      demo_message_update
    end
  end
end


class Interpreter
  #--------------------------------------------------------------------------
  # ● タイトルデモの終了
  #--------------------------------------------------------------------------
  def title_demo_end
    $logo_skip = true
    $demo_skip = true
    $demo_playing = false
    $scene = Scene_Title.new
  end
end

Solid Snake
Super Membro
Mensagens: 389
Registrado em: Sáb Nov 26, 2005 10:10 pm
Maker Preferido: Rpg Maker 2003
Localização: Curitiba-PR
Contato:

Mensagem por Solid Snake » Qua Nov 22, 2006 11:32 pm

Outro script que tava nos meus planos de colocar aqui o Apresentação EX do Moghunter
Tinha este script no Combo Pack do mog não me lembro onde baixei mais é muito bom,o Mog que é na minha opinião o melhor Scripter do Brasil mais em fim se você puder colocar aqueles scripts do pack dele eu agradeceria pouparia meu trabalho e me deicharia ir procurar coisas novas ^^
Mais uma vez obrigado :oops:
Todos os Dias após a meia-noite no canal IRC visitem: #casadomaker

Imagem

Responder