Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #==============================================================================
- # KMM - Kingdom Main Menu
- # Por King Gerar
- #------------------------------------------------------------------------------
- # Este script permite modificar a tela inicial do menu, permitindo uma nova
- # disposição das informações, o uso de imagens ou windows, BGM de fundo, uma
- # unidade monetária ou de item extra, tempo de jogo,nome do mapa atual e ícones
- # nos comandos.
- #==============================================================================
- module KMM_Config
- #-------------------------------------------------------------------------------
- # Opções configuráveis.
- # Para habilitar uma opção coloque "true" em frente ao sinal de igual e
- # respeitando o espaçamento. Caso queira desabilitar o opção, coloque "false".
- #-------------------------------------------------------------------------------
- MenuImgMode = false # Usar menu por imagens
- PlayMenuBGM = true # Ativar BGM de fundo no menu
- ShowGameTime = true # Mostrar o tempo de jogo
- ShowExtraItem = true # Mostrar unidade monetária/item extra
- #-------------------------------------------------------------------------------
- # Definição das imagens utilizadas.
- # Estas imagens somente serão usadas se a opção "MenuImgMode", logo acima,
- # estiver habilitada.
- #-------------------------------------------------------------------------------
- ImgStatusBG = "KMM - MenuStatus" # Fundo dos status dos personagens
- ImgItens = "KMM - Itens" # Comando Itens
- ImgSkills = "KMM - Habilidades" # Comando Habilidades
- ImgEquips = "KMM - Equipamentos" # Comando Equipamentos
- ImgStatus = "KMM - Status" # Comando Status/Condições
- ImgFormation = "KMM - Formacao" # Comando Formação
- ImgSave = "KMM - Salvar" # Comando Salvar
- ImgQuit = "KMM - Sair" # Comando Sair
- ImgInfoMap = "KMM - InfoMapName" # Fundo da localização/mapa atual
- ImgInfoWdw = "KMM - InfoWdw" # Fundo das informações dinheiro, tempo
- # de jogo e unidade extra
- #-------------------------------------------------------------------------------
- # Definição dos ícones utilizados.
- # Alguns ícones somente serão utilizados se a opção "MenuImgMode", logo acima,
- # estiver desabilitada.
- #-------------------------------------------------------------------------------
- IconItens = 261 # Comando Itens
- IconSkills = 113 # Comando Habilidades
- IconEquips = 389 # Comando Equipamentos
- IconStatus = 121 # Comando Status/Condições
- IconFormtn = 233 # Comando Formação
- IconSave = 117 # Comando Salvar
- IconQuit = 229 # Comando Sair
- IconTime = 280 # Tempo de jogo
- IconExtra = 359 # Unidade monetária ou item extra
- IconGold = 361 # Dinheiro
- #-------------------------------------------------------------------------------
- # Definição das palavras/expressões utilizadas.
- #-------------------------------------------------------------------------------
- SystemFont = "Aardvark Cafe" # Fonte do menu
- FontSize = 18 # Tamanho da fonte
- VocTime = "Tempo de Jogo" # Tempo de jogo
- VocExtra = "Runas" # Nome da unidade monetária ou item extra
- VocExp = "Exp" # Sigla para barra de experiência
- MenuBGM = "Theme1" # BGM de fundo o menu
- ExpBarColor1 = 21 # Primeira cor da barra de experiência
- ExpBarColor2 = 17 # Segunda cor da barra de experiência
- ImgRecue = -48 # Recuo dos comandos do menu
- CmdSpacing = 32 # Espaçamento entre os comandos do menu
- ExtraUnit = 1 # Variével que irá mostrar o quanto da
- # unidade monetária/item extra possui.
- end
- #===============================================================================
- # Fim do módulo. Não modifique abaixo.
- #===============================================================================
- class Scene_Menu < Scene_MenuBase
- include KMM_Config
- #-----------------------------------------------------------------------------
- # Inicialização do processo
- #-----------------------------------------------------------------------------
- def start
- super
- create_command_window
- create_game_time_window if ShowGameTime
- create_extra_window if ShowExtraItem
- create_gold_window
- create_status_window
- create_namemap_window
- cmd_create
- Audio.bgm_play("Audio/BGM/#{MenuBGM}") if PlayMenuBGM
- end
- #-----------------------------------------------------------------------------
- # Finalização do processo
- #-----------------------------------------------------------------------------
- def terminate
- super
- Audio.bgm_stop if PlayMenuBGM
- end
- #-----------------------------------------------------------------------------
- # Atualização do processo
- #-----------------------------------------------------------------------------
- def update
- super
- if @command_window.index == 0 && @cmd_itens.x < 0
- @cmd_itens.x += 3
- elsif @command_window.index != 0 && @cmd_itens.x > ImgRecue
- @cmd_itens.x -= 3
- end
- if @command_window.index == 1 && @cmd_skills.x < 0
- @cmd_skills.x += 3
- elsif @command_window.index != 1 && @cmd_skills.x > ImgRecue
- @cmd_skills.x -= 3
- end
- if @command_window.index == 2 && @cmd_equips.x < 0
- @cmd_equips.x += 3
- elsif @command_window.index != 2 && @cmd_equips.x > ImgRecue
- @cmd_equips.x -= 3
- end
- if @command_window.index == 3 && @cmd_status.x < 0
- @cmd_status.x += 3
- elsif @command_window.index != 3 && @cmd_status.x > ImgRecue
- @cmd_status.x -= 3
- end
- if @command_window.index == 4 && @cmd_formation.x < 0
- @cmd_formation.x += 3
- elsif @command_window.index != 4 && @cmd_formation.x > ImgRecue
- @cmd_formation.x -= 3
- end
- if @command_window.index == 5 && @cmd_save.x < 0
- @cmd_save.x += 3
- elsif @command_window.index != 5 && @cmd_save.x > ImgRecue
- @cmd_save.x -= 3
- end
- if @command_window.index == 6 && @cmd_quit.x < 0
- @cmd_quit.x += 3
- elsif @command_window.index != 6 && @cmd_quit.x > ImgRecue
- @cmd_quit.x -= 3
- end
- end
- #--------------------------------------------------------------------------
- # Criação da janela de comando
- #--------------------------------------------------------------------------
- alias gerar_menu_create create_command_window
- def create_command_window
- gerar_menu_create
- @command_window.opacity = 0
- @command_window.contents_opacity = 0
- end
- #-----------------------------------------------------------------------------
- # Criação da janela de tempo
- #-----------------------------------------------------------------------------
- def create_game_time_window
- @game_time_window = Window_GameTime.new
- @game_time_window.opacity = 0 if MenuImgMode
- end
- #--------------------------------------------------------------------------
- # Criação da janela de elemento extra
- #--------------------------------------------------------------------------
- def create_extra_window
- @extra_window = Window_Extra.new
- @extra_window.opacity = 0 if MenuImgMode
- end
- #--------------------------------------------------------------------------
- # Criação da janela do nome do mapa
- #--------------------------------------------------------------------------
- def create_namemap_window
- @namemap_window = Window_NameMap.new
- @namemap_window.opacity = 0 if MenuImgMode
- end
- #--------------------------------------------------------------------------
- # Criação da janela de dinheiro
- #--------------------------------------------------------------------------
- def create_gold_window
- @gold_window = Window_MenuGold.new
- @gold_window.opacity = 0 if MenuImgMode
- end
- #--------------------------------------------------------------------------
- # Criação da janela de atributos
- #--------------------------------------------------------------------------
- def create_status_window
- @status_window = Window_MenuStatus.new(@command_window.width, 0)
- end
- #--------------------------------------------------------------------------
- # * Criação das imagens
- #--------------------------------------------------------------------------
- def cmd_create
- if MenuImgMode == true
- @status_background = Sprite.new
- @status_background.bitmap = Cache.system(ImgStatusBG)
- @status_background.x = 150
- @status_background.y = 0
- @cmd_itens = Sprite.new
- @cmd_itens.bitmap = Cache.system(ImgItens)
- @cmd_itens.x = ImgRecue
- @cmd_itens.y = 0
- @cmd_skills = Sprite.new
- @cmd_skills.bitmap = Cache.system(ImgSkills)
- @cmd_skills.x = ImgRecue
- @cmd_skills.y = @cmd_itens.y + CmdSpacing
- @cmd_equips = Sprite.new
- @cmd_equips.bitmap = Cache.system(ImgEquips)
- @cmd_equips.x = ImgRecue
- @cmd_equips.y = @cmd_skills.y + CmdSpacing
- @cmd_status = Sprite.new
- @cmd_status.bitmap = Cache.system(ImgStatus)
- @cmd_status.x = ImgRecue
- @cmd_status.y = @cmd_equips.y + CmdSpacing
- @cmd_formation = Sprite.new
- @cmd_formation.bitmap = Cache.system(ImgFormation)
- @cmd_formation.x = ImgRecue
- @cmd_formation.y = @cmd_status.y + CmdSpacing
- @cmd_save = Sprite.new
- @cmd_save.bitmap = Cache.system(ImgSave)
- @cmd_save.x = ImgRecue
- @cmd_save.y = @cmd_formation.y + CmdSpacing
- @cmd_quit = Sprite.new
- @cmd_quit.bitmap = Cache.system(ImgQuit)
- @cmd_quit.x = ImgRecue
- @cmd_quit.y = @cmd_save.y + CmdSpacing
- if ShowGameTime == true
- @img_gametime = Sprite.new
- @img_gametime.bitmap = Cache.system(ImgInfoWdw)
- @img_gametime.x = @game_time_window.x
- @img_gametime.y = @game_time_window.y
- end
- if ShowExtraItem == true
- @img_extra = Sprite.new
- @img_extra.bitmap = Cache.system(ImgInfoWdw)
- @img_extra.x = @extra_window.x
- @img_extra.y = @extra_window.y
- end
- @img_gold = Sprite.new
- @img_gold.bitmap = Cache.system(ImgInfoWdw)
- @img_gold.x = @gold_window.x
- @img_gold.y = @gold_window.y
- @img_mapname = Sprite.new
- @img_mapname.bitmap = Cache.system(ImgInfoMap)
- @img_mapname.x = @namemap_window.x
- @img_mapname.y = @namemap_window.y
- else
- @cmd_itens = Window_SingleCommand.new
- @cmd_itens.y = 0
- @cmd_itens.draw_icon(IconItens, 0, 0)
- @cmd_itens.draw_text( 42, 0, 140, 24, Vocab::item, 0)
- @cmd_skills = Window_SingleCommand.new
- @cmd_skills.y = @cmd_itens.y + CmdSpacing
- @cmd_skills.draw_icon(IconSkills, 0, 0)
- @cmd_skills.draw_text( 42, 0, 140, 24, Vocab::skill, 0)
- @cmd_equips = Window_SingleCommand.new
- @cmd_equips.y = @cmd_skills.y + CmdSpacing
- @cmd_equips.draw_icon(IconEquips, 0, 0)
- @cmd_equips.draw_text( 42, 0, 140, 24, Vocab::equip, 0)
- @cmd_status = Window_SingleCommand.new
- @cmd_status.y = @cmd_equips.y + CmdSpacing
- @cmd_status.draw_icon(IconStatus, 0, 0)
- @cmd_status.draw_text( 42, 0, 140, 24, Vocab::status, 0)
- @cmd_formation = Window_SingleCommand.new
- @cmd_formation.y = @cmd_status.y + CmdSpacing
- @cmd_formation.draw_icon(IconFormtn, 0, 0)
- @cmd_formation.draw_text( 42, 0, 140, 24, Vocab::formation, 0)
- @cmd_save = Window_SingleCommand.new
- @cmd_save.y = @cmd_formation.y + CmdSpacing
- @cmd_save.draw_icon(IconSave, 0, 0)
- @cmd_save.draw_text( 42, 0, 140, 24, Vocab::save, 0)
- @cmd_quit = Window_SingleCommand.new
- @cmd_quit.y = @cmd_save.y + CmdSpacing
- @cmd_quit.draw_icon(IconQuit, 0, 0)
- @cmd_quit.draw_text( 42, 0, 140, 24, Vocab::game_end, 0)
- end
- end
- end
- #===============================================================================
- # Window_GameTime
- #-------------------------------------------------------------------------------
- # Esta janela é responsável por mostrar o tempo de jogo no menu.
- #===============================================================================
- class Window_GameTime < Window_Base
- include KMM_Config
- def initialize
- super(0, 246, 150, 64)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- update
- end
- def start
- draw_icon(IconTime, 0, 10)
- draw_text( 28, 0, 140, line_height, VocTime, 0)
- draw_text( 28, 22, 130, line_height, $game_system.playtime_s, 0)
- end
- def update
- contents.clear
- start
- end
- end
- #===============================================================================
- # Window_Extra
- #-------------------------------------------------------------------------------
- # Esta janela é responsável por mostrar a quantidade da unidade monetária/item
- # extra que o jogador possui.
- #===============================================================================
- class Window_Extra < Window_Base
- include KMM_Config
- def initialize
- super(0, 299, 150, 64)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- start
- end
- def start
- draw_icon(IconExtra, 0, 10)
- draw_text( 28, 0, 140, line_height, VocExtra, 0)
- draw_text( 28, 22, 130, line_height, $game_variables[ExtraUnit], 0)
- end
- end
- #===============================================================================
- # Window_MenuGold
- #-------------------------------------------------------------------------------
- # Esta janela é responsável por mostrar a quantidade de dinheiro em posse na
- # tela do menu principal.
- #===============================================================================
- class Window_MenuGold < Window_Base
- include KMM_Config
- def initialize
- super(0, 352, 150, 64)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- start
- end
- def start
- draw_icon(IconGold, 0, 10)
- draw_text( 28, 0, 140, line_height, Vocab::currency_unit, 0)
- draw_text( 28, 22, 130, line_height, $game_party.gold, 0)
- end
- end
- #===============================================================================
- # Window_NameMap
- #-------------------------------------------------------------------------------
- # Esta janela é responsável por mostrar o nome do mapa atual, em que o
- # personagem está localizado.
- #===============================================================================
- class Window_NameMap < Window_Base
- def initialize
- super(150, 368, 394, 48)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- draw_text( 0, 0, 367, line_height, $game_map.display_name, 1)
- end
- end
- #==============================================================================
- # Window_MenuStatus
- #------------------------------------------------------------------------------
- # Esta janela exibe os parâmetros dos membros do grupo na tela de menu.
- #==============================================================================
- class Window_MenuStatus < Window_Selectable
- include KMM_Config
- #--------------------------------------------------------------------------
- # * Variáveis públicas
- #--------------------------------------------------------------------------
- attr_reader :pending_index # Manter a posição (para organizar)
- #--------------------------------------------------------------------------
- # * Inicialização do objeto
- # x : coordenada X
- # y : coordenada Y
- #--------------------------------------------------------------------------
- def initialize(x, y)
- super(150, 0, 394, 368)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- self.opacity = 0 if MenuImgMode
- @pending_index = -1
- refresh
- end
- def col_max
- return 2
- end
- def spacing
- return 0
- end
- #--------------------------------------------------------------------------
- # * Aquisição da largura da janela
- #--------------------------------------------------------------------------
- def window_width
- Graphics.width - 150
- end
- #--------------------------------------------------------------------------
- # * Aquisição da altura da janela
- #--------------------------------------------------------------------------
- def window_height
- Graphics.height - 48
- end
- #--------------------------------------------------------------------------
- # * Aquisição de altura do item
- #--------------------------------------------------------------------------
- def item_height
- (height - standard_padding * 2) / 2
- end
- end
- #==============================================================================
- # Window_Base
- #------------------------------------------------------------------------------
- # Esta é a superclasse para todas as janelas no jogo.
- #==============================================================================
- class Window_Base < Window
- include KMM_Config
- #--------------------------------------------------------------------------
- # * Desenho dos atributos básicos
- # actor : herói
- # x : coordenada X
- # y : coordenada Y
- #--------------------------------------------------------------------------
- def draw_actor_simple_status(actor, x, y)
- self.contents.font.size = FontSize + 4
- draw_actor_name(actor, x, y - 10)
- self.contents.font.size = FontSize + 2
- draw_actor_level(actor, x, y - 10 + line_height * 1)
- draw_actor_icons(actor, x, y - 10 + line_height * 2)
- draw_actor_class(actor, x, y - 10 + line_height * 3)
- self.contents.font.size = FontSize
- draw_actor_hp(actor, x - 100, y - 12 + line_height * 4)
- draw_actor_mp(actor, x - 80, y - 12 + line_height * 5)
- draw_actor_exp(actor, x - 60, y - 12 + line_height * 6)
- end
- def draw_actor_exp(actor, x, y, width = 124)
- draw_gauge(x, y, width, actor.exp.to_f / actor.next_level_exp.to_f, exp_gauge_color1, exp_gauge_color2)
- change_color(system_color)
- draw_text(x, y, 30, line_height, VocExp)
- draw_current_and_max_values(x, y, width, actor.exp, actor.next_level_exp,
- normal_color, normal_color)
- end
- def exp_gauge_color1
- text_color(ExpBarColor1)
- end
- def exp_gauge_color2
- text_color(ExpBarColor2)
- end
- end
- #===============================================================================
- # Window_SingleCommand
- #-------------------------------------------------------------------------------
- # Esta janela é responsável por criar as janelas dos comandos do menu principal.
- #===============================================================================
- class Window_SingleCommand < Window_Base
- include KMM_Config
- def initialize
- super(ImgRecue, 0, 150, 48)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement