Gabriel_Nascimento

** Esteem - Menu Hotkey

Jun 16th, 2018
106
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #==============================================================================
  2. #  ** Esteem - Menu HotKey
  3. #==============================================================================
  4. # ► Script por: Skyloftian
  5. #------------------------------------------------------------------------------
  6. # ► Atualizações: 16/06/18 - v1.0 - Código finalizado e revisado
  7. #==============================================================================
  8. # ► Descrição: Possibilita chamar as cenas do menu através de hotkeys.
  9. #==============================================================================
  10. # ► Comandos: Existem dois comandos para ativar ou desativar as hotkeys.
  11. #
  12. #             esteem_enable_scene(:symbol)     - Ativa a HotKey
  13. #             esteem_disable_scene(:symbol)    - Desativa a Hotkey
  14. #
  15. # * Exemplos de Uso: esteem_enable_scene(:item)
  16. #                    esteem_enable_scene(:equip, :save, :exit)
  17. #                    esteem_disable_scene(:item, skill)
  18. #
  19. # * OBSERVAÇÃO: Estes comandos devem ser usados através do comando de evento
  20. #               Chamar Script / Script Call.
  21. #==============================================================================
  22. # * Para configurar vide a área configurável abaixo.
  23. #==============================================================================
  24. module Esteem
  25.   module MenuHotkey
  26. #==============================================================================
  27. # ► Configurações
  28. #==============================================================================
  29.   HOTKEYS = { # Não apague!
  30.    #===========================================================================
  31.    # ► Definição dsa HotKeys
  32.    #===========================================================================
  33.    # * Configure as teclas de cada atalho e suas respectivas cenas.
  34.    #---------------------------------------------------------------------------
  35.    # :simbolo = [:tecla, Scene_Name]
  36.    #
  37.    # :simbolo   | É a forma de identificar os comandos. Pode ser qualquer coisa.
  38.    # :tecla     | É a tecla utilizada para a hotkey.
  39.    # Scene_Name | É o nome da classe responsável por processar a cena desejada.
  40.    #===========================================================================
  41.      :item     => [:L, Scene_Item],
  42.      :skill    => [:R, Scene_Skill],
  43.      :equip    => [:X, Scene_Equip],
  44.      :save     => [:Y, Scene_Save],
  45.      :exit     => [:B, Scene_End],
  46.      :custom1  => [:Z, Scene_Menu]
  47.    #===========================================================================
  48.    # * Fim das Configurações
  49.    #===========================================================================
  50.            } # Não apague!
  51.   end # MenuHotkey
  52. end # Esteem
  53. #==============================================================================
  54. # ► Início do Código | Não mude nada caso não entenda
  55. #==============================================================================
  56. class Scene_Map < Scene_Base
  57.  
  58.   def call_menu(scene)
  59.     Sound.play_ok
  60.     SceneManager.call(scene)
  61.   end
  62.  
  63.   def update_call_menu
  64.     Esteem::MenuHotkey::HOTKEYS.each do |scene, key|
  65.       if Input.trigger?(key[0])
  66.         if $game_system.enabled_scenes[scene]
  67.           case scene
  68.           when scene
  69.             call_menu(key[1])
  70.           end
  71.         end
  72.       end
  73.     end
  74.   end
  75.  
  76. end # Scene_Map
  77. class Game_System
  78.  
  79.   attr_accessor :enabled_scenes
  80.  
  81.   alias :esteem_mh_gs_init :initialize
  82.   def initialize
  83.     esteem_mh_gs_init
  84.     @enabled_scenes = {}
  85.   end
  86.  
  87. end # Game_System
  88. class Game_Interpreter
  89.  
  90.   def esteem_enable_scene(*scene_symbol)
  91.     for scene in scene_symbol
  92.       $game_system.enabled_scenes[scene] = true
  93.     end
  94.   end
  95.  
  96.   def esteem_disable_scene(*scene_symbol)
  97.     for scene in scene_symbol
  98.       $game_system.enabled_scenes[scene] = false
  99.     end
  100.   end
  101.  
  102. end # Game_Interpreter
RAW Paste Data