1 Brekamp Menu 12/8/2012, 04:38
FrozenGraveyard
Membro Honorário I
por {Brekamp}
Introdução
É um menu que substitui a Scene_Menu padrão do RMXP
Características
Opção de load
Menu no centro da tela
Totalmente transparente
Mapa como fundo
Screenshots
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Como usar
Cole acima do main
Script
Perguntas Frequentes
Nenhuma por enquanto, mas para previnir:
Créditos e Agradecimentos
Feito por {Brekamp}
Introdução
É um menu que substitui a Scene_Menu padrão do RMXP
Características
Opção de load
Menu no centro da tela
Totalmente transparente
Mapa como fundo
Screenshots
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Como usar
Cole acima do main
Script
- Código:
#=============================================================
#=======================Brekamp Menu==========================
#======Criado por Brekamp=====================================
#=============================================================
#=============================================================
#=============================================================
class Window_MenuStatus
alias menu_initialize initialize
def initialize
super(0, 0, 64, 480)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
refresh
self.active = false
self.index = -1
self.opacity = 60
end
alias menu_refresh initialize
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 - 45, y + 80)
end
end
end
class Window_Gold
alias menu_initialize2 initialize
def initialize
super(0, 0, 160, 64)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
self.opacity=0
refresh
end
end
class Window_PlayTime
alias menu_initialize3 initialize
def initialize
super(0, 0, 160, 96)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
self.opacity = 0
refresh
end
end
class Scene_Menu
def initialize(menu_index = 0)
@menu_index = menu_index
end
def main
@map_spriteset = Spriteset_Map.new
s1 = $data_system.words.item
s2 = $data_system.words.skill
s3 = $data_system.words.equip
s4 = "Status"
s5 = "Salvar"
s6 = "Carregar jogo salvo"
s7 = "Fim de Jogo"
@command_window = Window_Command.new(400, [s1, s2, s3, s4, s5, s6, s7])
@command_window.index = @menu_index
@command_window.back_opacity = 0
@command_window.x = 320 - @command_window.width / 2
@command_window.y = 120
if $game_system.save_disabled
@command_window.disable_item(4)
@map_spriteset.dispose
end
@gold_window = Window_Gold.new
@gold_window.x = 450
@gold_window.y = 0
@status_window = Window_MenuStatus.new
@status_window.x = 0
@status_window.y = 0
@playtime_window = Window_PlayTime.new
@playtime_window.x = 320
@playtime_window.y = 0
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@command_window.dispose
@gold_window.dispose
@status_window.dispose
@playtime_window.dispose
end
def update
@command_window.update
@gold_window.update
@status_window.update
@playtime_window.update
if @command_window.active
update_command
return
end
if @status_window.active
update_status
return
end
end
def update_command
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_Load.new
when 6
$game_system.se_play($data_system.decision_se)
$scene = Scene_End.new
end
return
end
end
def update_status
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)
# 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
Perguntas Frequentes
Nenhuma por enquanto, mas para previnir:
NãoTem pra VX?
Créditos e Agradecimentos
Feito por {Brekamp}