MOG Game Mode Screen [Fire Emblem Title Screen] V1.2

MOG Game Mode Screen ou Fire Emblem Title Screen é um script para RPG Maker XP que proporciona uma tela de seleção de modo semelhantes à do jogo Fire Emblem. Dá para adaptar para outras telas e funções.


26 de agosto de 2014

MOG Game Mode Screen ou Fire Emblem Title Screen é um script para ser usado em projetos e games do RPG Maker XP desenvolvido pelo Moghunter que proporciona uma tela de seleção de modo semelhante ao jogo Fire Emblem.

Se pode adaptar este script não apenas para tela de titulo, mas também para outras funções como Scene End, Scene Game Over etc.

Fire Emblem Title Screen

Para instalar, insira o código abaixo acima do main e dê uma olhada na demo para download, para pegar as imagens e ver direitinho como se faz.

#_______________________________________________________________________________
# FE Title Screen v1.2         
#_______________________________________________________________________________
# By Moghunter
# http://www.atelier-rgss.com
#_______________________________________________________________________________
module MOG
#Transition Time  
GMODETT = 50
#Transition Type
GMODETN = "004-Blind04"
end

#===============================================================================
# Scene_Title
#===============================================================================

class Scene_Title
#--------------------------------------------------------------------------
# Main
#--------------------------------------------------------------------------
  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
    @sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.title($data_system.title_name)
    s1 = "New Game"
    s2 = "Continue"
    s3 = "Shutdown"
    @ft_back = Plane.new
    @ft_back.bitmap = RPG::Cache.title("FT_Back")
    @ft_back.z = 10
    @ft_back.opacity = 80
    @ft_back.blend_type = 1
    @ft_back2 = Plane.new
    @ft_back2.bitmap = RPG::Cache.title("FT_Back")
    @ft_back2.z = 10
    @ft_back2.opacity = 80
    @ft_back2.blend_type = 1
    @ft_com1 = Sprite.new
    @ft_com1.bitmap = RPG::Cache.title("FT_Com01")
    @ft_com1.z = 100
    @ft_com1.x = -390
    @ft_com1.y = 100
    @ft_com2 = Sprite.new    
    @ft_com2.bitmap = RPG::Cache.title("FT_Com02b")
    @ft_com2.z = 100
    @ft_com2.x = 650
    @ft_com2.y = 210
    @ft_com3 = Sprite.new    
    @ft_com3.bitmap = RPG::Cache.title("FT_Com03b")
    @ft_com3.z = 100
    @ft_com3.x = -390
    @ft_com3.y = 320   
    @ft_opa = 100
    @command_window = Window_Command.new(192, [s1, s2, s3])
    @command_window.visible = 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
    $game_system.bgm_play($data_system.title_bgm)
    Audio.me_stop
    Audio.bgs_stop
    Graphics.transition(MOG::GMODETT, "Graphics/Transitions/" + MOG::GMODETN)
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    for i in 0..40
      @ft_com1.x += 20
      @ft_com2.x -= 20
      @ft_com3.x += 20
      @ft_com1.opacity -= 10
      @ft_com2.opacity -= 10
      @ft_com3.opacity -= 10     
      Graphics.update  
    end  
    Graphics.freeze
    @command_window.dispose
    @sprite.bitmap.dispose
    @ft_back.dispose
    @ft_back2.dispose
    @ft_com1.dispose
    @ft_com2.dispose
    @ft_com3.dispose
    @sprite.dispose
  end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------  
  def update
    if @ft_com1.x < 130 @ft_com1.x += 10 @ft_com3.x += 10 elsif @ft_com1.x >= 130  
      @ft_com1.x = 130
      @ft_com3.x = 130
    end
    if @ft_com2.x > 130
      @ft_com2.x -= 10
    elsif  @ft_com2.x <= 130 @ft_com2.x = 130 end @ft_back.ox += 1 @ft_back.oy += 2 @ft_back2.ox -= 1 @ft_back2.oy += 2 @ft_opa += 10 if @ft_opa > 255
      @ft_opa = 100
    end   
    case @command_window.index
    when 0
      @ft_com1.bitmap = RPG::Cache.title("FT_Com01")
      @ft_com2.bitmap = RPG::Cache.title("FT_Com02b")
      @ft_com3.bitmap = RPG::Cache.title("FT_Com03b")
      @ft_com1.opacity = @ft_opa
      @ft_com2.opacity = 255
      @ft_com3.opacity = 255  
    when 1
      @ft_com1.bitmap = RPG::Cache.title("FT_Com01b")
      @ft_com2.bitmap = RPG::Cache.title("FT_Com02")
      @ft_com3.bitmap = RPG::Cache.title("FT_Com03b")
      @ft_com1.opacity = 255
      @ft_com2.opacity = @ft_opa
      @ft_com3.opacity = 255  
    when 2
      @ft_com1.bitmap = RPG::Cache.title("FT_Com01b")
      @ft_com2.bitmap = RPG::Cache.title("FT_Com02b")
      @ft_com3.bitmap = RPG::Cache.title("FT_Com03")
      @ft_com1.opacity = 255
      @ft_com2.opacity = 255
      @ft_com3.opacity = @ft_opa      
    end      
    @command_window.update
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)      
      $scene = Scene_Title.new
    end  
    if Input.trigger?(Input::C)
    case @command_window.index
    when 0 
      for i in 0..30
        @ft_com1.opacity -= 7
        @ft_com1.zoom_x += 0.1
        @ft_com1.x -= 20
        Graphics.update  
      end  
      command_new_game
    when 1 
    if @continue_enabled == true
      for i in 0..30        
        @ft_com2.opacity -= 7
        @ft_com2.zoom_x += 0.1
        @ft_com2.x -= 20
        Graphics.update
      end
    end
    command_continue
    when 2          
      for i in 0..30        
        @ft_com3.opacity -= 7
        @ft_com3.zoom_x += 0.1
        @ft_com3.x -= 20
        Graphics.update
      end       
      command_shutdown
      end
    end
  end
#--------------------------------------------------------------------------
# Command_New_Game
#--------------------------------------------------------------------------  
  def command_new_game
    $game_system.se_play($data_system.decision_se)
    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
    $game_map.autoplay
    $game_map.update
    $scene = Scene_Map.new
  end
#--------------------------------------------------------------------------
# Command_Continue
#--------------------------------------------------------------------------  
  def command_continue
    unless @continue_enabled
    $game_system.se_play($data_system.buzzer_se)
    return
    end
    $game_system.se_play($data_system.decision_se)
    $scene = Scene_Load.new
  end
#--------------------------------------------------------------------------
# Command_Shutdown
#--------------------------------------------------------------------------  
  def command_shutdown
    $game_system.se_play($data_system.decision_se)
    Audio.bgm_fade(800)
    Audio.bgs_fade(800)
    Audio.me_fade(800)
    $scene = nil
  end
#--------------------------------------------------------------------------
# Battle_Test
#--------------------------------------------------------------------------  
  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
    $game_temp.battle_troop_id = $data_system.test_troop_id
    $game_temp.battle_can_escape = true
    $game_map.battleback_name = $data_system.battleback_name
    $game_system.se_play($data_system.battle_start_se)
    $game_system.bgm_play($game_system.battle_bgm)
    $scene = Scene_Battle.new
  end
end


$mog_rgss_FE_Title_Screen = true

Mais RPG Maker XP

Download e ficha técnica

  • Download (clique com o botão esquerdo do mouse ou toque no link)
  • Desenvolvedor, publisher e/ou distribuidor: Moghunter
  • SO: Windows 98/98SE/Me/2000/XP/Vista/7
  • Licença: Grátis
  • Categoria: Programação XP
  • Tag: RPG Maker XP
  • Adicionado por: LichKing
  • Acessos: 36

Observação: se você gostou deste post ou ele lhe foi útil de alguma forma, por favor considere apoiar financeiramente a Gaming Room. Fico feliz só de ajudar, mas a contribuição do visitante é muito importante para que este site continua existindo e para que eu possa continuar provendo este tipo de conteúdo e melhorar cada vez mais. Acesse aqui e saiba como. Obrigado!

Deixe um comentário

Inscreva-se na nossa newsletter!