crhonos_menu(modificado)
2 participantes
Página 1 de 1
crhonos_menu(modificado)
Menu feito por Crhronos_GX e Modificado por Glucas.
(reino rpg)
Coloque esse Script acima de Main.
(reino rpg)
Coloque esse Script acima de Main.
- Spoiler:
#============================================================================== # Crhonos_Menu #creditos a: mim(Crhonos) #modificado por: mim(glucastorres) #------------------------------------------------------------------- #Fim das dedicatorias #------------------------------------------------------------------------------ # Esta classe processa a Tela de Menu #============================================================================== class Scene_Menu #-------------------------------------------------------------------------- # - Inicialização dos Objetos # # menu_index : posição inicial do cursor de comando #-------------------------------------------------------------------------- def initialize(menu_index = 0) @menu_index = menu_index end #-------------------------------------------------------------------------- # - Processamento Principal #-------------------------------------------------------------------------- def main @spriteset = Spriteset_Map.new # Criar janela de comando s1 = $data_system.words.item s2 = $data_system.words.skill s3 = $data_system.words.equip s4 = "Status" s5 = "Salvar" s6 = "Fim de Jogo" @command_window = Window_Command2.new(160, [s1, s2, s3, s4, s5, s6]) @command_window.index = @menu_index # Se o níºmero de membros do Grupo de Heróis for 0 if $game_party.actors.size == 0 # Desabilar as janelas de Item, Habilidades, Equipamento e Status @command_window.disable_item(0) @command_window.disable_item(1) @command_window.disable_item(2) end # Se Salvar for Proibido if $game_system.save_disabled # Desabilitar Salvar @command_window.disable_item(4) end # Criar janela de Tempo de Jogo @playtime_window = Window_PlayTime.new @playtime_window.x = 205 + 30 @playtime_window.y = 416 # Criar janela de Níºmero Passos @steps_window = Window_Steps.new @steps_window.x = 350 + 30 @steps_window.y = 416 # Criar janela de Dinheiro @gold_window = Window_Gold.new @gold_window.x = 510 @gold_window.y = 416 # Criar janela de Status @status_window = Window_MenuStatus.new @status_window.x = 80 @status_window.y = 0 # Criar Janela de Map Name @map_window = Window_Mapname.new @map_window.x = 0 @map_window.y = 416 # Executar transição Graphics.transition # Loop principal loop do # Atualizar a tela de jogo Graphics.update # Atualizar a entrada de informaçíµes Input.update # Atualizar Frame update # Abortar loop se a tela for alterada if $scene != self break end end # Preparar para transiçíµa Graphics.freeze # Exibição das janelas @command_window.dispose @playtime_window.dispose @steps_window.dispose @gold_window.dispose @status_window.dispose @spriteset.dispose @map_window.dispose end #-------------------------------------------------------------------------- # - Atualização do Frame #-------------------------------------------------------------------------- def update # Atualizar janelas $game_map.update @command_window.update @playtime_window.update @steps_window.update @gold_window.update $game_system.map_interpreter.update @map_window.update # Atualizar tela de sistema $game_system.update $game_screen.update # Atualizar Spriteset @spriteset.update # Se a janela de comandos estiver ativo: chamar update_command if @command_window.active update_command return end # Se a janela de Status estiver ativa: call update_status if @status_window.active update_status return end end #-------------------------------------------------------------------------- # - Atualização do Frame (Quando a janela de Comandos estiver Ativa) #-------------------------------------------------------------------------- def update_command # Se o botão B for pressionado if Input.trigger?(Input::B) # Reproduzir SE de cancelamento $game_system.se_play($data_system.cancel_se) # Alternar para a tela do mapa $scene = Scene_Map.new return end # Se o botão C for pressionado if Input.trigger?(Input::C) # Se o comando for outro senão Salvar, Fim de Jogo e o níºmero de Heróis no # Grupo for 0 if $game_party.actors.size == 0 and @command_window.index < 4 # Reproduzir SE de erro $game_system.se_play($data_system.buzzer_se) return end # Ramificação por posição do cursor na janela de comandos case @command_window.index when 0 # Itens # Reproduzir SE de OK $game_system.se_play($data_system.decision_se) # Alternar para a tela de Itens $scene = Scene_Item.new when 1 # Habilidades # Play decision SE $game_system.se_play($data_system.decision_se) # Ativar o status da janela @command_window.active = false @status_window.active = true @status_window.index = 0 when 2 # Equipamentos # Reproduzir SE de OK $game_system.se_play($data_system.decision_se) # Ativar o status da janela @command_window.active = false @status_window.active = true @status_window.index = 0 when 3 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 $scene = Scene_Upgrade.new when 4 # Salvar # Se Salvar for proibido if $game_system.save_disabled # Reproduzir SE de erro $game_system.se_play($data_system.buzzer_se) return end # Reproduzir SE de OK $game_system.se_play($data_system.decision_se) # Alternar para a tela de save $scene = Scene_Save.new when 5 # Fim de Jogo # Reproduzir SE de OK $game_system.se_play($data_system.decision_se) # Alternar para a tela de Fim de Jogo $scene = Scene_End.new end return end end #-------------------------------------------------------------------------- # - Atualização do Frame (Quando o status da Janela estiver Ativo) #-------------------------------------------------------------------------- def update_status # Se o botão B for pressionado if Input.trigger?(Input::B) # Reproduzir SE de cancelamento $game_system.se_play($data_system.cancel_se) # Torna a janela de comandos ativa @command_window.active = true @status_window.active = false @status_window.index = -1 return end # Se o botão C for pressionado if Input.trigger?(Input::C) # Ramificação por posição do cursor na janela de comandos case @command_window.index when 1 # Habilidades # Se o limite de ação deste Herói for de 2 ou mais if $game_party.actors[@status_window.index].restriction >= 2 # Reproduzir SE de erro $game_system.se_play($data_system.buzzer_se) return end # Reproduzir SE de OK $game_system.se_play($data_system.decision_se) # Alternar para a tela de Habilidades $scene = Scene_Skill.new(@status_window.index) when 2 # Equipamento # Reproduzir SE de OK $game_system.se_play($data_system.decision_se) # Alternar para a tela de Equipamento $scene = Scene_Equip.new(@status_window.index) when 3 # Status # Reproduzir SE de OK $game_system.se_play($data_system.decision_se) # Alternar para a tela de Status $scene = Scene_Status.new(@status_window.index) end return end end end #============================================================================== #jANELA DE COMANDOS #------------------------------------------------------------------------------ # Esta é a janela que exibe as escolhas. #============================================================================== class Window_Command2 < Window_Selectable #-------------------------------------------------------------------------- # - Inicialização dos Objetos # # width : largura da janela # commands : ordem dos comandos #-------------------------------------------------------------------------- def initialize(width, commands) # Aqui é calculada a altura da janela em relação ao níºmero de escolhas super(240, 140, width, commands.size * 32 + 32) @item_max = commands.size @commands = commands self.contents = Bitmap.new(width - 32, @item_max * 32) refresh self.index = 0 end #-------------------------------------------------------------------------- # - Atualização #-------------------------------------------------------------------------- def refresh self.contents.clear for i in 0...@item_max draw_item(i, normal_color) end end #-------------------------------------------------------------------------- # - Desenhar Item # # index : índice # color : cor do texto #-------------------------------------------------------------------------- def draw_item(index, color) self.contents.font.color = color rect = Rect.new(4, 32 * index, self.contents.width - 8, 32) self.contents.fill_rect(rect, Color.new(0, 0, 0, 0)) self.contents.draw_text(rect, @commands[index]) end #-------------------------------------------------------------------------- # - Desabitar Item # # index : índice #-------------------------------------------------------------------------- def disable_item(index) draw_item(index, disabled_color) end end #============================================================================== #FIM DA CLASSE JANELA DE COMANDOS #!!!!!!!!===========!!!!!!!!!==========!!!!!!!!!!============!!!!!!!!!!======== #============================================================================== # ** Window_MenuStatus #------------------------------------------------------------------------------ # This window displays party member status on the menu screen. #============================================================================== class Window_MenuStatus < Window_Selectable attr_accessor :character # character attr_accessor :netid #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize(character = nil) super(0, 0, 480, 129) self.contents = Bitmap.new(width - 32, height - 32) refresh self.active = false self.index = -1 end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear @item_max = $game_party.actors.size for i in 0...$game_party.actors.size x = 64 y = i * 116 actor = $game_party.actors[i] draw_actor_graphic(actor, x - 40, y + 80) draw_username(x, y) draw_actor_class(actor, x + 144, y) draw_actor_level(actor, x, y + 32) draw_actor_state(actor, x + 90, y + 32) draw_actor_exp(actor, x, y + 64) draw_actor_hp(actor, x + 236, y + 32) draw_actor_sp(actor, x + 236, y + 64) end end #-------------------------------------------------------------------------- # * Cursor Rectangle Update #-------------------------------------------------------------------------- def update_cursor_rect if @index < 0 self.cursor_rect.empty else self.cursor_rect.set(0, @index * 116, self.width - 32, 96) end end end class Window_Base < Window def draw_username(x, y) self.contents.font.color = normal_color self.contents.draw_text(x, y, 120, 32, Network::Main.name) end end #============================================================================== # ** Window_Steps #------------------------------------------------------------------------------ # This window displays step count on the menu screen. #============================================================================== class Window_Steps < Window_Base #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(0, 0, 130, 65) self.contents = Bitmap.new(width - 32, height - 32) refresh end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear self.contents.font.color = system_color self.contents.draw_text(4, - 10, 120, 32, "Passos") self.contents.font.color = normal_color self.contents.draw_text(-40, 10, 120, 32, $game_party.steps.to_s, 2) end end #============================================================================== # ** Window_PlayTime #------------------------------------------------------------------------------ # This window displays play time on the menu screen. #============================================================================== class Window_PlayTime < Window_Base #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(0, 0, 145, 65) self.contents = Bitmap.new(width - 32, height - 32) refresh end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear self.contents.font.color = system_color self.contents.draw_text(0, -10, 120, 32, "Tempo no Jogo") @total_sec = Graphics.frame_count / Graphics.frame_rate hour = @total_sec / 60 / 60 min = @total_sec / 60 % 60 sec = @total_sec % 60 text = sprintf("%02d:%02d:%02d", hour, min, sec) self.contents.font.color = normal_color self.contents.draw_text(-10, 10, 120, 32, text, 2) end #-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update super if Graphics.frame_count / Graphics.frame_rate != @total_sec refresh end end end #============================================================================== # ** Window_Gold #------------------------------------------------------------------------------ # This window displays amount of gold. #============================================================================== class Window_Gold < Window_Base #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(0, 0, 130, 64) self.contents = Bitmap.new(width - 32, height - 32) refresh end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear cx = contents.text_size($data_system.words.gold).width self.contents.font.color = normal_color self.contents.draw_text(-40, 0, 120-cx-2, 32, $game_party.gold.to_s, 2) self.contents.font.color = system_color self.contents.draw_text(86-cx, 0, cx, 32, $data_system.words.gold, 2) end end #========================================================================== #Map Name #============================================================================= class Game_Map def name $map_infos[@map_id] end end class Scene_Title $map_infos = load_data("Data/MapInfos.rxdata") for key in $map_infos.keys $map_infos[key] = $map_infos[key].name end end #=========================================================================== #Window Map Name #=========================================================================== class Window_Mapname < Window_Base def initialize super(0, 0, 235, 65) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = 24 refresh end def refresh self.contents.clear self.contents.draw_text(- 230, 0, 608, 32, $game_map.name.to_s, 1) end end[/img]
[img]https://2img.net/r/ihimizer/img249/7800/imagemxv1.jpg
Última edição por roberto em Dom Mar 14, 2010 11:27 am, editado 1 vez(es)
UOU
Eu quero mas poe entre spoilers fika muito ruim assim /s
ah e gostei do forum ta manerin /s eu postei alguns topicos la malz se ja tiverem os scripts xD
sou meio preguiçoza ^^
de resto ajeita esse topico ae /plz
ah e gostei do forum ta manerin /s eu postei alguns topicos la malz se ja tiverem os scripts xD
sou meio preguiçoza ^^
de resto ajeita esse topico ae /plz
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|