Traduction de Scene Title Screen Miria V1.0

Introduction

Auteur : Moghunter - http://www.atelier-rgss.com

Traducteur : Thérapie

Description : Ce script permet d'obtenir un écran de titre animé. Pour se faire créer le dossier Title dans Graphics comme dans la démo. Placez y les images suivantes (ou prenez les images de la démo puis arrangez les à votre guise).   

   ATTENTION


La partie à modifier, si besoin est, se situe de PROGRAMMATION à FIN PROGRAMMATION ne touchez pas au reste du script (séparation ajoutée par Thérapie).

Copier/coller le script au-dessus de main et ajustez les options comme vous le souhaitez (dans la partie PROGRAMMATION du script).

La démo

Voilà le lien vers la démo :

Lien ICI !

Les ressources

Les images peuvent bien entendu être modifié. Il est même déconseillé de les utiliser.

Script

Code:

#################################################
# Scene Title Screen Miria V1.0                                    #
##################################################
# Auteru : Moghunter
# http://www.atelier-rgss.com
#Traduit et organisé par Thérapie
##################################################
                              ##################################################
                              #                                          INTRO                                                          #
                              ##################################################
#Ce script permet d'obtenir un écran de titre animé. Pour se faire créée le dossier Title
#dans Graphics comme dans la démo. Placez  y les images suivantes (ou prennez les
#images de la démo puis arrangez les à votre guise).
#                                                                        ATTENTION
#La partie a modifié si besoin est se situe de PROGRAMMATION à FIN PROGRAMMATION
#ne touchez au reste du script (séparation ajoutée par Thérapie)
#
#
# Title          #Image où est écrit le titre
# Transition    #Image qui transite entre le noir et l'écran du titre.
# Plane1        #Image de fond en mouvement, programmable dans PROGRAMMATION
# Plane2        #Image en mouvement, programmable dans PROGRAMMATION
# Plane3        #Image en mouvement, programmable dans PROGRAMMATION
# Com_01      #Image activant NEW GAME
# Com_02      #Image activant CONTINUER
# Com_03      #Imagem activant EXIT
#
#-------------------------------------------------
                              ####################
                              #  PROGRAMMATION      #
                              ####################
module MOG_VX01
#Mettre en pleine écran.  [Attention cette donnée ne changera rien dans la démo car Main a été modifié.]
# (true = Activé ou false = Desactivé)
FULL_SCREEN = false
# Durée de la transition.
TT = 165
#Activé l'ondulation du titre
# (true = Activé ou false = Desactivé)
TWAVE = true
#Opacité de Plane1
TPLANE1_OPA = 255
#Opacité de Plane2
TPLANE2_OPA = 200
#Opacité de Plane3
TPLANE3_OPA = 170
# Déplacement  horizontal de Plane1
TPLANE1_X = 0
# Déplacement  vertical de Plane1
TPLANE1_Y = 0
# Déplacement  horizontal de Plane2
TPLANE2_X = 2
# Déplacement  vertical de Plane2
TPLANE2_Y = 0
# Déplacement  horizontal de Plane3
TPLANE3_X = 4
# Déplacement  vertical de Plane3
TPLANE3_Y = 0
end
#-------------------------------------------------
$mogscript = {} if $mogscript == nil
$mogscript["title_miria"] = true
#-------------------------------------------------
                              #####################
                              # FIN PROGRAMMATION #
                              #####################
                              ###############
                              # Module Cache #
                              ###############
module Cache
  def self.title(filename)
    load_bitmap("Graphics/Title/", filename)
  end
end
                              #############
                              # Scene_Title #
                              #############
$full_screen = 0
class Scene_Title
include  MOG_VX01
    def main
    if $BTEST                     
      battle_test                   
    return
    end     
    $full_screen += 1
    if MOG_VX01::FULL_SCREEN == true and $full_screen == 1
    $showm = Win32API.new 'user32', 'keybd_event', %w(l l l l), ' '
    $showm.call(18,0,0,0)
    $showm.call(13,0,0,0)
    $showm.call(13,0,2,0)
    $showm.call(18,0,2,0)
    end   
    start                       
    perform_transition         
    post_start                   
    Input.update               
    loop do
      Graphics.update           
      Input.update               
      update                     
      break if $scene != self   
    end
    Graphics.update
    pre_terminate               
    Graphics.freeze             
    terminate                   
  end
  def start
    load_database                   
    create_game_objects           
    check_continue                   
    create_title_graphic           
    create_command_window       
    play_title_music               
  end
  def perform_transition
    Graphics.transition(TT , "Graphics/Title/Transition")
  end
  def post_start
    open_command_window
  end
  def pre_terminate
    close_command_window
  end
  def terminate
    dispose_command_window
    snapshot_for_background
    dispose_title_graphic
  end
  def update
    @command_window.update
    case @command_window.index
    when 0
    @com.bitmap = Cache.title("Com_01")
    when 1
    @com.bitmap = Cache.title("Com_02") 
    when 2
    @com.bitmap = Cache.title("Com_03")
  end     
    @sprite_title.opacity += 2
    @com.opacity += 2 if @sprite_title.opacity > 150
    @sprite.ox += TPLANE1_X
    @sprite.oy += TPLANE1_Y
    @sprite2.ox += TPLANE2_X
    @sprite2.oy += TPLANE2_Y
    @sprite3.ox += TPLANE3_X
    @sprite3.oy += TPLANE3_Y
    @sprite_title.update if TWAVE == true
    if Input.trigger?(Input::C)
      case @command_window.index
      when 0 
        command_new_game
      when 1 
        command_continue
      when 2 
        command_shutdown
      end
    end
  end
  def update_slide
    @sprite.ox += TPLANE1_X
    @sprite.oy += TPLANE1_Y
    @sprite2.ox += TPLANE2_X
    @sprite2.oy += TPLANE2_Y
    @sprite3.ox += TPLANE3_X
    @sprite3.oy += TPLANE3_Y
    @sprite_title.update if TWAVE == true   
  end
  def load_database
    $data_actors        = load_data("Data/Actors.rvdata")
    $data_classes      = load_data("Data/Classes.rvdata")
    $data_skills        = load_data("Data/Skills.rvdata")
    $data_items        = load_data("Data/Items.rvdata")
    $data_weapons      = load_data("Data/Weapons.rvdata")
    $data_armors        = load_data("Data/Armors.rvdata")
    $data_enemies      = load_data("Data/Enemies.rvdata")
    $data_troops        = load_data("Data/Troops.rvdata")
    $data_states        = load_data("Data/States.rvdata")
    $data_animations    = load_data("Data/Animations.rvdata")
    $data_common_events = load_data("Data/CommonEvents.rvdata")
    $data_system        = load_data("Data/System.rvdata")
    $data_areas        = load_data("Data/Areas.rvdata")
  end
  def load_bt_database
    $data_actors        = load_data("Data/BT_Actors.rvdata")
    $data_classes      = load_data("Data/BT_Classes.rvdata")
    $data_skills        = load_data("Data/BT_Skills.rvdata")
    $data_items        = load_data("Data/BT_Items.rvdata")
    $data_weapons      = load_data("Data/BT_Weapons.rvdata")
    $data_armors        = load_data("Data/BT_Armors.rvdata")
    $data_enemies      = load_data("Data/BT_Enemies.rvdata")
    $data_troops        = load_data("Data/BT_Troops.rvdata")
    $data_states        = load_data("Data/BT_States.rvdata")
    $data_animations    = load_data("Data/BT_Animations.rvdata")
    $data_common_events = load_data("Data/BT_CommonEvents.rvdata")
    $data_system        = load_data("Data/BT_System.rvdata")
  end
  def create_game_objects
    $game_temp          = Game_Temp.new
    $game_message      = Game_Message.new
    $game_system        = Game_System.new
    $game_switches      = Game_Switches.new
    $game_variables    = Game_Variables.new
    $game_self_switches = Game_SelfSwitches.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
  end
  def check_continue
    @continue_enabled = (Dir.glob('Save*.rvdata').size > 0)
  end
  def create_title_graphic
    @sprite_title = Sprite.new   
    @sprite_title.bitmap = Cache.title("Title") 
    @sprite_title.opacity = 0
    @com = Sprite.new
    @com.bitmap = Cache.title("Com_01") 
    @com.opacity = 0
    @sprite = Plane.new   
    @sprite.bitmap = Cache.title("Plane1")
    @sprite2 = Plane.new
    @sprite2.bitmap = Cache.title("Plane2")
    @sprite3 = Plane.new   
    @sprite3.bitmap = Cache.title("Plane3")
    @sprite.opacity = TPLANE1_OPA
    @sprite2.opacity = TPLANE2_OPA   
    @sprite3.opacity = TPLANE3_OPA   
    @sprite.z  = 1
    @sprite2.z = 2
    @sprite3.z = 3
    @com.z = 4
    @sprite_title.z = 5   
  if TWAVE == true
    @sprite_title.wave_amp = 8
    @sprite_title.wave_length = 240
    @sprite_title.wave_speed = 320
  end
    end
  def dispose_title_graphic
    @sprite.bitmap.dispose
    @sprite2.bitmap.dispose
    @sprite3.bitmap.dispose   
    @com.bitmap.dispose   
    @sprite_title.bitmap.dispose
    @sprite.dispose
    @sprite2.dispose
    @sprite3.dispose
    @com.dispose   
    @sprite_title.dispose
  end
  def create_command_window
    s1 = Vocab::new_game
    s2 = Vocab::continue
    s3 = Vocab::shutdown
    @command_window = Window_Command.new(172, [s1, s2, s3])
    @command_window.opacity = 0
    @command_window.contents_opacity = 0
    if @continue_enabled                 
      @command_window.index = 1           
    else                             
      @command_window.draw_item(1, false) 
    end
  end
  def title_fade
  if TWAVE == true   
    @sprite_title.wave_amp = 34
    @sprite_title.wave_length =120
    @sprite_title.wave_speed = 800
    end   
    for i in 0..120
    @sprite_title.opacity -= 3   
    @sprite_title.update if TWAVE == true   
    @com.opacity -= 3
    case @command_window.index
    when 0   
    @sprite.zoom_x += 0.01
    @sprite.zoom_y += 0.01 
    @sprite2.zoom_x += 0.01
    @sprite2.zoom_y += 0.01     
    @sprite3.zoom_x += 0.01
    @sprite3.zoom_y += 0.01     
    @sprite.ox += 2
    @sprite.oy += 2
    @sprite2.ox += 2
    @sprite2.oy += 2
    @sprite3.ox += 2
    @sprite3.oy += 2   
    end
    update_slide
    Graphics.update 
    end       
  end 
  def dispose_command_window
    @command_window.dispose
  end
  def open_command_window
    @command_window.open
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 255
  end
  def close_command_window
    @command_window.close
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 0
  end
  def play_title_music
    $data_system.title_bgm.play
    RPG::BGS.stop
    RPG::ME.stop
  end
  def confirm_player_location
    if $data_system.start_map_id == 0
      print "プレイヤーの初期位置が設定されていません。"
      exit
    end
  end
  def command_new_game
    confirm_player_location
    Sound.play_decision
    title_fade
    $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
    $scene = Scene_Map.new
    RPG::BGM.fade(1500)
    close_command_window
    Graphics.fadeout(60)
    Graphics.wait(40)
    Graphics.frame_count = 0
    RPG::BGM.stop
    $game_map.autoplay
  end
  def command_continue
    if @continue_enabled
      Sound.play_decision
      title_fade
      $scene = Scene_File.new(false, true, false)
    else
      Sound.play_buzzer
    end
  end
  def command_shutdown   
    Sound.play_decision
    title_fade
    RPG::BGM.fade(800)
    RPG::BGS.fade(800)
    RPG::ME.fade(800)
    $scene = nil
  end
  def battle_test
    load_bt_database             
    create_game_objects       
    Graphics.frame_count = 0         
    $game_party.setup_battle_test_members
    $game_troop.setup($data_system.test_troop_id)
    $game_troop.can_escape = true
    $game_system.battle_bgm.play
    snapshot_for_background
    $scene = Scene_Battle.new
  end
  def snapshot_for_background
    $game_temp.background_bitmap.dispose
    $game_temp.background_bitmap = Graphics.snap_to_bitmap
    $game_temp.background_bitmap.blur
  end
  end