Introduction This menu is a mixture of an editted moghunter menu and ForeverZer0's Journal script
Features Changes you menu to a format like Kingdom Hearts II. A journal system that can be updated like in the kingdom hearts series.
Script
Menu
CODE
#_______________________________________________________________________________ # MOG Main Menu V2.0 #_______________________________________________________________________________ # By Moghunter # http://www.atelier-rgss.com #_______________________________________________________________________________ module MOG #Tipo de fundo. # 0 = Imagens em movimento. # 1 = Mapa de fundo. MENU_BACKGROUND = 0 #Transition Time. MNTT = 10 #Transition Type (Name) MNTP = "006-Stripe02" #Velocidade do cursor CURSOR_SPEED = 15 end
#=============================================================================== # Game_Actor #=============================================================================== class Game_Actor < Game_Battler
#-------------------------------------------------------------------------- # Now Exp #-------------------------------------------------------------------------- def now_exp return @exp - @exp_list[@level] end #-------------------------------------------------------------------------- # Next Exp #-------------------------------------------------------------------------- def next_exp return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0 end end
#=============================================================================== # Game_Map #=============================================================================== class Game_Map attr_reader :map_id
#-------------------------------------------------------------------------- # Mpname #-------------------------------------------------------------------------- def mpname $mpname = load_data("Data/MapInfos.rxdata") $mpname[@map_id].name end end
#=============================================================================== # Window Base #===============================================================================
#-------------------------------------------------------------------------- # Update #-------------------------------------------------------------------------- def update cursor_update cursor_animation_update windows_slide_update @playtime_window.update if @command_window.active @command_window.update update_command return end if @status_window.active @status_window.update update_status return end end
#-------------------------------------------------------------------------- # Windows_slide_update #-------------------------------------------------------------------------- def windows_slide_update if MOG::MENU_BACKGROUND == 0 @mnback.oy += 1 @mnback.ox += 1 @mnback2.oy += 1 @mnback2.ox -= 1 end @mapname_window.contents_opacity += 15 @playtime_window.contents_opacity += 15 @gold_window.contents_opacity += 15 @playtime_window.contents_opacity += 15 if @status_window.x > 165 @status_window.x -= 10 @status_window.contents_opacity += 10 elsif @status_window.x <= 165 @status_window.x = 165 @status_window.contents_opacity = 255 end end #-------------------------------------------------------------------------- # Cursor_update #-------------------------------------------------------------------------- def cursor_update if @mnsel.x > @cursor_x @mnsel.x -= MOG::CURSOR_SPEED if @mnsel.x <= @cursor_x @mnsel.x = @cursor_x end elsif @mnsel.x < @cursor_x @mnsel.x += MOG::CURSOR_SPEED if @mnsel.x >= @cursor_x @mnsel.x = @cursor_x end end if @mnsel.y > @cursor_y @mnsel.y -= MOG::CURSOR_SPEED if @mnsel.y <= @cursor_y @mnsel.y = @cursor_y end elsif @mnsel.y < @cursor_y @mnsel.y += MOG::CURSOR_SPEED if @mnsel.y >= @cursor_y @mnsel.y = @cursor_y end end end #-------------------------------------------------------------------------- # Cursor_Animation #-------------------------------------------------------------------------- def cursor_animation_update if @mnsel.zoom_x <= 1.6 @mnsel.zoom_x += 0.03 @mnsel.opacity -= 10 elsif @mnsel.zoom_x > 1.6 @mnsel.zoom_x = 1.0 @mnsel.opacity = 255 end if @mnlay.x < 0 @mnlay.opacity += 25 @mnlay.x += 10 elsif @mnlay.x >= 0 @mnlay.opacity = 255 @mnlay.x = 0 end @mnop += 5 @mnop = 120 if @mnop >= 255 end
#-------------------------------------------------------------------------- # Update Command #-------------------------------------------------------------------------- def update_command cursor_position_update if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) $scene = Scene_Map.new return end if Input.trigger?(Input::C) if $game_party.actors.size == 0 and @command_window.index < 4 $game_system.se_play($data_system.buzzer_se) return end case @command_window.index when 0 $game_system.se_play($data_system.decision_se) $scene = Scene_Item.new when 1 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 2 $game_system.se_play($data_system.decision_se) @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 when 4 if $game_system.save_disabled $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Save.new when 5 $game_system.se_play($data_system.decision_se) $scene = Scene_End.new when 6 $game_system.se_play($data_system.decision_se) $scene = Scene_Journal.new end return end end #-------------------------------------------------------------------------- # cursor_position_update #-------------------------------------------------------------------------- def cursor_position_update case @command_window.index when 0 @cursor_x = 0 @cursor_y = 90 when 1 @cursor_x = 0 @cursor_y = 120 when 2 @cursor_x = 0 @cursor_y = 150 when 3 @cursor_x = 0 @cursor_y = 180 when 4 @cursor_x = 0 @cursor_y = 210 when 5 @cursor_x = 0 @cursor_y = 240 when 6 @cursor_x=0 @cursor_y=270 end end #-------------------------------------------------------------------------- # Cursor_st_postion_update #-------------------------------------------------------------------------- def cursor_st_postion_update case @status_window.index when 0 @cursor_x = 180 @cursor_y = 170 when 1 @cursor_x = 315 @cursor_y = 170 when 2 @cursor_x = 450 @cursor_y = 170 when 3 @cursor_x = 500 @cursor_y = 170 end end #-------------------------------------------------------------------------- # Update Status #-------------------------------------------------------------------------- def update_status cursor_st_postion_update if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.active = true @status_window.active = false @status_window.index = -1 return end if Input.trigger?(Input::C) case @command_window.index when 1 if $game_party.actors[@status_window.index].restriction >= 2 $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Skill.new(@status_window.index) when 2 $game_system.se_play($data_system.decision_se) $scene = Scene_Equip.new(@status_window.index) when 3 $game_system.se_play($data_system.decision_se) $scene = Scene_Status.new(@status_window.index) end return end end end