Advertisement
DaxSoft

Resume Menu

Dec 9th, 2016
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.47 KB | None | 0 0
  1. #==============================================================================
  2. # • Resume Menu
  3. #==============================================================================
  4. # Autor: Dax
  5. # Versão: 1.0
  6. # Site: www.dax-soft.weebly.com
  7. # Requerimento: Dax Core
  8. #==============================================================================
  9. # • Descrição:
  10. #------------------------------------------------------------------------------
  11. # O sistem de Resume apresenta uma janela com três opções básicas:
  12. # Retornar : Voltar ao jogo.
  13. # Tela de Título : Voltar ao título.
  14. # Sair : Sair do Jogo.
  15. # Ele se abre ao apertar 'ENTER' que pode se mudar..
  16. #==============================================================================
  17. Dax.register(:resume_menu, "Dax", 1.0) {
  18. #==============================================================================
  19. # • Resume Module.
  20. #==============================================================================
  21. module ResumeMenu
  22. #----------------------------------------------------------------------------
  23. # • Configuração.
  24. #----------------------------------------------------------------------------
  25. def self.r # resume
  26. return {
  27. # Botão que ao apertar irá para o Resume Menu.
  28. button: :ENTER,
  29. # Nome das opções..
  30. vocab: [
  31. "Resume", # Opção para retornar ao Mapa.
  32. "Scene Title", # Opção para voltar a tela de título.
  33. "Shutdown", # Opção para sair do jogo.
  34. ],
  35. # Salvar ao sair do jogo com a opção 'Sair'
  36. save: true, # true - Sim | false - Não.
  37. # Index do arquivo que irá ser salvo.
  38. save_index: 0,
  39. }
  40. end
  41. end
  42. #==============================================================================
  43. # • Estilo da Janela.
  44. #==============================================================================
  45. class Resume_Window < Window_Command
  46. #----------------------------------------------------------------------------
  47. # • Inicialização dos objetos.
  48. #----------------------------------------------------------------------------
  49. def initialize
  50. super(0, 0)
  51. self.x = (Graphics.width - self.width) / 2
  52. self.y = (Graphics.height - self.height) / 2
  53. self.openness = 255
  54. end
  55. #----------------------------------------------------------------------------
  56. # • Aquisição da largura da janela
  57. #----------------------------------------------------------------------------
  58. def window_width
  59. return 160
  60. end
  61. #----------------------------------------------------------------------------
  62. # • Criação da lista de comandos
  63. #----------------------------------------------------------------------------
  64. def make_command_list
  65. [:a, :b, :c].each_with_index { |k,i| add_command(ResumeMenu.r[:vocab][i], k)}
  66. end
  67. end
  68. #==============================================================================
  69. # • Cena que irá executar o Resume Menu.
  70. #==============================================================================
  71. Dax.remove(:Scene_Menu)
  72. class Scene_Menu < Scene_MenuBase
  73. #----------------------------------------------------------------------------
  74. # • Inicialização dos objetos.
  75. #----------------------------------------------------------------------------
  76. def start
  77. super
  78. @menu = Resume_Window.new
  79. [:a, :b, :c].each { |key| @menu.set_handler(key, method(key))}
  80. end
  81. #----------------------------------------------------------------------------
  82. # • Renovação dos objetos.
  83. #----------------------------------------------------------------------------
  84. def terminate
  85. super
  86. @menu.dispose
  87. end
  88.  
  89. def update
  90. super
  91. trigger?(0x02) { a }
  92. end
  93. #----------------------------------------------------------------------------
  94. # • Retornar.
  95. #----------------------------------------------------------------------------
  96. def a
  97. return_scene
  98. end
  99. #--------------------------------------------------------------------------
  100. # • Comando [Para o Título]
  101. #--------------------------------------------------------------------------
  102. def b
  103. fadeout_all
  104. SceneManager.goto(Scene_Title)
  105. end
  106. #--------------------------------------------------------------------------
  107. # • Comando [Sair]
  108. #--------------------------------------------------------------------------
  109. def c
  110. DataManager.save_game(ResumeMenu.r[:save_index]) if ResumeMenu.r[:save]
  111. fadeout_all
  112. SceneManager.exit
  113. end
  114. end
  115. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement