Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #===============================================================================
- # Kingdom Main Manu II
- # Por King Gerar
- #-------------------------------------------------------------------------------
- # Este script permite modificar a tela inicial do menu, permitindo uma nova
- # disposição das informações, o uso de um gráfico de window diferente para o
- # menu principal, a utilização de uma unidade monetária extra, uma janela com
- # as informações do progress do jogo e número de missões completas ou não,
- # utilização de ícones, nome do mapa, tempo de jogo, configuração da fonte,
- # cor dos degradês e a visualização dos status de somente um personagem por vez.
- #===============================================================================
- module KMM2_Config
- #-------------------------------------------------------------------------------
- # GRÁFICOS
- #-------------------------------------------------------------------------------
- Wdw_Standard = "Window" # Gráfico da janela normal.
- #-------------------------------------------------------------------------------
- # ÍCONES
- #-------------------------------------------------------------------------------
- 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
- IconGold = 361 # Dinheiro
- IconExtra = 358 # Item Extra
- IconMap = 231 # Mapa
- #-------------------------------------------------------------------------------
- # PALAVRAS / EXPRESÕES
- #-------------------------------------------------------------------------------
- SystemFont = "Candara" # Fonte do menu.
- FontSize = 18 # Tamanho da fonte.
- VocProgress = "Progresso Total" # Progresso total no jogo.
- VocQuests = "Quests Completas" # Quantidade de missões completas.
- VocGameTime = "Tempo de Jogo" # Tempo de jogo.
- VocExp = "Exp" # Sigla para barra de experiência.
- VocExtra = "Rubys" # Nome do item extra.
- VocClass = "Classe" # Definição de Classe.
- VocStatus = "Condição" # Definição de Condições.
- #-------------------------------------------------------------------------------
- # VARIÁVIES
- # Indique o ID
- #-------------------------------------------------------------------------------
- # ExtraUnit é a variável que indica a quantidade do item extra em posse.
- #-------------------------------------------------------------------------------
- ExtraUnit = 1
- #-------------------------------------------------------------------------------
- # GameProgress é a variável que indica a quantidade de progresso que o jogador
- # completou do jogo, lembrando que o valor máximo para perfeito funcionamento
- # é 100, visto que corresponde aos 100%(cem porcento) de progresso.
- #-------------------------------------------------------------------------------
- GameProgress = 2
- #-------------------------------------------------------------------------------
- # CurrentQuests é a variável que indica o número de missões que você já
- # completou. Para o perfeito funcionamento, a variável CurrentQuests tem que
- # ter valor menor ou igual à variável MaxQuests, que indica o número máximo
- # de missões a serem completadas.
- #-------------------------------------------------------------------------------
- CurrentQuests = 3
- MaxQuests = 4
- NoMaxQuests = 30 # Defina o número máximo de missões.
- #-------------------------------------------------------------------------------
- # CORES
- #-------------------------------------------------------------------------------
- # Cor dos textos.
- #-------------------------------------------------------------------------------
- Clr2_Command = Color.new(255, 255, 0, 255) # Valores Principais
- Clr1_Command = Color.new(255, 255, 255, 255) # Valores Normais
- Clr1_Progress = Color.new(150, 150, 0, 255) # Cor 1 da barra de progresso.
- Clr2_Progress = Color.new(255, 255, 0, 255) # Cor 2 da barra de progresso.
- Clr1_Quests = Color.new(165, 135, 0, 255) # Cor 1 da barra de missões.
- Clr2_Quests = Color.new(255, 220, 0, 255) # Cor 2 da barra de missões.
- Clr1_ExpBar = Color.new(150, 150, 0, 255) # Cor 1 da barra de experiência.
- Clr2_ExpBar = Color.new(255, 220, 0, 255) # Cor 2 da barra de experiência.
- end
- #===============================================================================
- # FIM DO MÓDULO. NÃO MODIFIQUE ABAIXO
- #===============================================================================
- class Scene_Menu < Scene_MenuBase
- include KMM2_Config
- #-----------------------------------------------------------------------------
- # * Inicialização do processo
- #-----------------------------------------------------------------------------
- def start
- super
- create_command_window
- create_gamedata_window
- create_mapname_window
- create_status_window
- create_extraitem_window
- create_goldgame_window
- create_commands
- end
- #-----------------------------------------------------------------------------
- # * Criação da janela de comando
- #-----------------------------------------------------------------------------
- alias create_menu_cmd_window create_command_window
- def create_command_window
- create_menu_cmd_window
- @command_window = Window_MenuCommand.new
- @command_window.set_handler(:item, method(:command_item))
- @command_window.set_handler(:skill, method(:command_personal))
- @command_window.set_handler(:equip, method(:command_personal))
- @command_window.set_handler(:status, method(:command_personal))
- @command_window.set_handler(:formation, method(:command_formation))
- @command_window.set_handler(:save, method(:command_save))
- @command_window.set_handler(:game_end, method(:command_game_end))
- @command_window.set_handler(:cancel, method(:return_scene))
- @command_window.opacity = 0
- @command_window.contents_opacity = 0
- end
- #-----------------------------------------------------------------------------
- # Criação da janela de dados do jogo.
- #-----------------------------------------------------------------------------
- def create_gamedata_window
- @gamedata_window = Window_GameData.new
- end
- #-----------------------------------------------------------------------------
- # Criação da janela de exibição do dinheiro em posse.
- #-----------------------------------------------------------------------------
- def create_goldgame_window
- @goldgame_window = Window_MenuGold.new
- end
- #-----------------------------------------------------------------------------
- # Criação da janela de exibição do item extra.
- #-----------------------------------------------------------------------------
- def create_extraitem_window
- @extraitem_window = Window_Extra.new
- end
- #-----------------------------------------------------------------------------
- # Criação da janela que exibe o nome do mapa.
- #-----------------------------------------------------------------------------
- def create_mapname_window
- @gold_window = Window_NameMap.new
- end
- #-----------------------------------------------------------------------------
- # Criação das janelas dos comandos.
- #-----------------------------------------------------------------------------
- def create_commands
- @total_x = 2
- #---------------------------------------------------------------------------
- @cmd_itens = Window_CommandBox.new
- @cmd_itens.x = @total_x
- @cmd_itens.y = 0
- @cmd_itens.draw_icon(IconItens, (((@cmd_itens.width - 20) / 2) - 12), -2)
- @cmd_itens.draw_text( 0, 20, (@cmd_itens.width - 20), 24, Vocab::item, 1)
- #---------------------------------------------------------------------------
- @total_x += @cmd_itens.width
- @cmd_skills = Window_CommandBox.new
- @cmd_skills.x = @total_x
- @cmd_skills.y = 0
- @cmd_skills.draw_icon(IconSkills, (((@cmd_skills.width - 20) / 2) - 12), -2)
- @cmd_skills.draw_text( 0, 20, (@cmd_skills.width - 20), 24, Vocab::skill, 1)
- #---------------------------------------------------------------------------
- @total_x += @cmd_skills.width
- @cmd_equips = Window_CommandBox.new
- @cmd_equips.x = @total_x
- @cmd_equips.y = 0
- @cmd_equips.draw_icon(IconEquips, (((@cmd_equips.width - 20) / 2) - 12), -2)
- @cmd_equips.draw_text( 0, 20, (@cmd_equips.width - 20), 24, Vocab::equip, 1)
- #---------------------------------------------------------------------------
- @total_x += @cmd_equips.width
- @cmd_status = Window_CommandBox.new
- @cmd_status.x = @total_x
- @cmd_status.y = 0
- @cmd_status.draw_icon(IconStatus, (((@cmd_status.width - 20) / 2) - 12), -2)
- @cmd_status.draw_text( 0, 20, (@cmd_status.width - 20), 24, Vocab::status, 1)
- #---------------------------------------------------------------------------
- @total_x += @cmd_status.width
- @cmd_formation = Window_CommandBox.new
- @cmd_formation.x = @total_x
- @cmd_formation.y = 0
- @cmd_formation.draw_icon(IconFormtn, (((@cmd_formation.width - 20) / 2) - 12), -2)
- @cmd_formation.draw_text( 0, 20, (@cmd_formation.width - 20), 24, Vocab::formation, 1)
- #---------------------------------------------------------------------------
- @total_x += @cmd_formation.width
- @cmd_save = Window_CommandBox.new
- @cmd_save.x = @total_x
- @cmd_save.y = 0
- @cmd_save.draw_icon(IconSave, (((@cmd_save.width - 20) / 2) - 12), -2)
- @cmd_save.draw_text( 0, 20, (@cmd_save.width - 20), 24, Vocab::save, 1)
- #---------------------------------------------------------------------------
- @total_x += @cmd_save.width
- @cmd_quit = Window_CommandBox.new
- @cmd_quit.x = @total_x
- @cmd_quit.y = 0
- @cmd_quit.draw_icon(IconQuit, (((@cmd_quit.width - 20) / 2) - 12), -2)
- @cmd_quit.draw_text( 0, 20, (@cmd_quit.width - 20), 24, Vocab::game_end, 1)
- end
- #-----------------------------------------------------------------------------
- # Atualização das janelas dos comandos.
- #-----------------------------------------------------------------------------
- def update
- super
- if Input.trigger?(:RIGHT)
- @command_window.index += 1
- @command_window.index = 0 if @command_window.index > 6
- end
- if Input.trigger?(:LEFT)
- @command_window.index -= 1
- @command_window.index = 6 if @command_window.index < 0
- end
- if @command_window.index == 0 && @cmd_itens.y < 16
- @cmd_itens.y += 3
- elsif @command_window.index != 0 && @cmd_itens.y > 0
- @cmd_itens.y -= 3
- end
- if @command_window.index == 1 && @cmd_skills.y < 16
- @cmd_skills.y += 3
- elsif @command_window.index != 1 && @cmd_skills.y > 0
- @cmd_skills.y -= 3
- end
- if @command_window.index == 2 && @cmd_equips.y < 16
- @cmd_equips.y += 3
- elsif @command_window.index != 2 && @cmd_equips.y > 0
- @cmd_equips.y -= 3
- end
- if @command_window.index == 3 && @cmd_status.y < 16
- @cmd_status.y += 3
- elsif @command_window.index != 3 && @cmd_status.y > 0
- @cmd_status.y -= 3
- end
- if @command_window.index == 4 && @cmd_formation.y < 16
- @cmd_formation.y += 3
- elsif @command_window.index != 4 && @cmd_formation.y > 0
- @cmd_formation.y -= 3
- end
- if @command_window.index == 5 && @cmd_save.y < 16
- @cmd_save.y += 3
- elsif @command_window.index != 5 && @cmd_save.y > 0
- @cmd_save.y -= 3
- end
- if @command_window.index == 6 && @cmd_quit.y < 16
- @cmd_quit.y += 3
- elsif @command_window.index != 6 && @cmd_quit.y > 0
- @cmd_quit.y -= 3
- end
- end
- end
- #===============================================================================
- # Window_GameData
- #-------------------------------------------------------------------------------
- # Esta janela é responsável por mostrar os progressos do jogo.
- #===============================================================================
- class Window_GameData < Window_Base
- include KMM2_Config
- def initialize
- super(0, 100, 160, 252)
- self.windowskin = Cache.system(Wdw_Standard)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- $game_variables[MaxQuests] = NoMaxQuests
- update
- end
- def start
- # Mostrar textos principais
- change_color(Clr2_Command)
- draw_text( 0, 8, 136, line_height, VocProgress, 1)
- draw_text( 0, 88, 136, line_height, VocQuests, 1)
- draw_text( 0, 170, 136, line_height, VocGameTime, 1)
- # Mostrar ícones
- draw_icon(IconTime, 4, 196)
- # Mostrar textos dos valores
- change_color(Clr1_Command)
- draw_text( 0, 53, 60, line_height, $game_variables[GameProgress], 2)
- draw_text( 0, 53, 136, line_height, "/", 1)
- draw_text( 76, 53, 60, line_height, "100", 0)
- draw_text( 0, 134, 60, line_height, $game_variables[CurrentQuests], 2)
- draw_text( 0, 134, 136, line_height, "/", 1)
- draw_text( 76, 134, 60, line_height, $game_variables[MaxQuests], 0)
- draw_text( 0, 196, 130, line_height, $game_system.playtime_s, 2)
- # Mostrar barras
- draw_gauge( 16, 24, 104, $game_variables[GameProgress].to_f / 100.000, Clr1_Progress, Clr2_Progress)
- draw_gauge( 16, 103, 104, $game_variables[CurrentQuests].to_f / $game_variables[MaxQuests].to_f, Clr1_Quests, Clr2_Quests)
- 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 KMM2_Config
- def initialize
- super(224, 352, 160, 64)
- self.windowskin = Cache.system(Wdw_Standard)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- start
- end
- def start
- draw_icon(IconExtra, 4, 7)
- change_color(Clr1_Command)
- draw_text( 0, 8, 80, line_height, $game_variables[ExtraUnit], 2)
- change_color(Clr2_Command)
- draw_text( 0, 8, 128, line_height, VocExtra, 2)
- 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 KMM2_Config
- def initialize
- super(384, 352, 160, 64)
- self.windowskin = Cache.system(Wdw_Standard)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- start
- end
- def start
- draw_icon(IconGold, 4, 7)
- change_color(Clr1_Command)
- draw_text( 0, 8, 72, line_height, $game_party.gold, 2)
- change_color(Clr2_Command)
- draw_text( 0, 8, 128, line_height, Vocab::currency_unit, 2)
- 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
- include KMM2_Config
- def initialize
- super(0, 352, 224, 64)
- self.windowskin = Cache.system(Wdw_Standard)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- draw_icon(IconMap, 4, 7)
- change_color(Clr2_Command)
- draw_text( 0, 8, 192, line_height, $game_map.display_name, 2)
- end
- end
- #===============================================================================
- # Window_CommandBox
- #-------------------------------------------------------------------------------
- # Esta janela é responsável pela inserção dos comandos do menu principal.
- #===============================================================================
- class Window_CommandBox < Window_Base
- include KMM2_Config
- def initialize
- super(0, 0, 77, 64)
- self.windowskin = Cache.system(Wdw_Standard)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- change_color(Clr2_Command)
- end
- end
- #===============================================================================
- # Window_MenuStatus
- #-------------------------------------------------------------------------------
- # Esta janela exibe os parâmetros dos membros do grupo na tela de menu.
- #===============================================================================
- class Window_MenuStatus < Window_Selectable
- include KMM2_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(200, 100, 344, 252)
- self.windowskin = Cache.system(Wdw_Standard)
- self.contents.font.name = SystemFont
- self.contents.font.size = FontSize
- @pending_index = -1
- refresh
- end
- def col_max
- return 1
- end
- def spacing
- return 0
- end
- #-----------------------------------------------------------------------------
- # * Aquisição de altura do item
- #-----------------------------------------------------------------------------
- def item_height
- (height - standard_padding * 2)
- end
- #-----------------------------------------------------------------------------
- # Desenho dos status de um personagem no menu.
- #-----------------------------------------------------------------------------
- def draw_item(index)
- actor = $game_party.members[index]
- enabled = $game_party.battle_members.include?(actor)
- rect = item_rect(index)
- draw_item_background(index)
- draw_actor_face(actor, rect.x + 1, rect.y + 1, enabled)
- draw_actor_advanced_status(actor, rect.x + 108, rect.y + line_height / 2)
- end
- #-----------------------------------------------------------------------------
- # Desenho dos atributos de status do personagem.
- #-----------------------------------------------------------------------------
- def draw_actor_advanced_status(actor, x, y)
- self.contents.font.size = FontSize + 8
- draw_actor_name(actor, x, y)
- self.contents.font.size = FontSize + 4
- draw_text(x, y + 10 + line_height * 1, 120, line_height, VocClass, 0)
- draw_actor_class(actor, x + 100, y + 10 + line_height * 1)
- self.contents.font.size = FontSize + 2
- draw_actor_level(actor, x, y + 10 + line_height * 2)
- draw_text(x - 100, y + line_height * 4, 100, line_height, VocStatus, 0)
- draw_actor_icons(actor, x, y + line_height * 4)
- draw_actor_hp(actor, x - 100, y + line_height * 5)
- draw_actor_mp(actor, x - 100, y + line_height * 6)
- draw_actor_exp(actor, x - 100, y + line_height * 7)
- end
- #-----------------------------------------------------------------------------
- # Desenho da barra de Hp.
- #-----------------------------------------------------------------------------
- def draw_actor_hp(actor, x, y, width = 300)
- draw_gauge(x, y, width, actor.hp_rate, hp_gauge_color1, hp_gauge_color2)
- change_color(system_color)
- draw_text(x, y, 30, line_height, Vocab::hp_a)
- draw_current_and_max_values(x, y, width, actor.hp, actor.mhp,
- hp_color(actor), normal_color)
- end
- #-----------------------------------------------------------------------------
- # Desenho da barra de Mp.
- #-----------------------------------------------------------------------------
- def draw_actor_mp(actor, x, y, width = 300)
- draw_gauge(x, y, width, actor.mp_rate, mp_gauge_color1, mp_gauge_color2)
- change_color(system_color)
- draw_text(x, y, 30, line_height, Vocab::mp_a)
- draw_current_and_max_values(x, y, width, actor.mp, actor.mmp,
- mp_color(actor), normal_color)
- end
- #-----------------------------------------------------------------------------
- # Desenho da barra de experiência.
- #-----------------------------------------------------------------------------
- def draw_actor_exp(actor, x, y, width = 300)
- draw_gauge(x, y, width, actor.exp.to_f / actor.next_level_exp.to_f, Clr1_ExpBar, Clr2_ExpBar)
- 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
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement