Gabriel_Nascimento

** Esteem [Código Rápido] - Menu BGM

May 23rd, 2018
126
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #==============================================================================
  2. # ** Esteem [Código Rápido] - Menu BGM
  3. #------------------------------------------------------------------------------
  4. # Script por: Skyloftian
  5. #==============================================================================
  6. # Esse é um código simples para executar uma BGM no menu.
  7. #------------------------------------------------------------------------------
  8. # Atualizações: 23/05/18 v1.0 Concluído
  9. #==============================================================================
  10. module Esteem
  11.   module Menu_BGM
  12.   #============================================================================
  13.   # ► Configurações
  14.   #============================================================================
  15.     BGM_NAME = "Field3"  # Nome da BGM
  16.     BGM_VOL   = 100      # Volume da BGM
  17.     BGM_PITCH = 100      # Pitch da BGM
  18.   #============================================================================
  19.   # ► Fim das Configurações | Não mude mais nada caso não entenda
  20.   #============================================================================
  21.     def self.save_bgm_and_bgs
  22.       @map_bgm = RPG::BGM.last
  23.       @map_bgs = RPG::BGS.last
  24.     end
  25.    
  26.     def self.replay_bgm_and_bgs
  27.       @map_bgm.replay unless $BTEST
  28.       @map_bgs.replay unless $BTEST
  29.     end
  30.    
  31.     def self.return_bgm
  32.       return @map_bgm
  33.     end
  34.    
  35.     def self.return_bgs
  36.       return @map_bgs
  37.     end
  38.    
  39.   end # Menu_BGM
  40. end # Esteem
  41. class Scene_Menu < Scene_MenuBase
  42.  
  43.   def pre_terminate
  44.     super
  45.     Esteem::Menu_BGM.replay_bgm_and_bgs if SceneManager.scene_is?(Scene_Map)
  46.   end
  47.  
  48. end # Scene_Menu
  49. class Scene_Map < Scene_Base
  50.  
  51.   alias :mbgm_sm_pre_terminate :pre_terminate
  52.   def pre_terminate
  53.     mbgm_sm_pre_terminate
  54.     pre_menu_scene if SceneManager.scene_is?(Scene_Menu)
  55.   end
  56.  
  57.   def pre_menu_scene
  58.     Esteem::Menu_BGM.save_bgm_and_bgs
  59.     bgm_name  = Esteem::Menu_BGM::BGM_NAME
  60.     bgm_vol   = Esteem::Menu_BGM::BGM_VOL
  61.     bgm_pitch = Esteem::Menu_BGM::BGM_PITCH
  62.     RPG::BGM.new(bgm_name, bgm_vol, bgm_pitch).play
  63.     RPG::BGS.stop
  64.   end
  65.  
  66. end # Scene_Map
  67. class Game_System
  68.  
  69.   def on_before_save
  70.     @save_count += 1
  71.     @version_id = $data_system.version_id
  72.     @frames_on_save = Graphics.frame_count
  73.     @bgm_on_save = Esteem::Menu_BGM.return_bgm
  74.     @bgs_on_save = Esteem::Menu_BGM.return_bgs
  75.   end
  76.  
  77. end # Game_System
RAW Paste Data