Silentwalker
Member
SilentSteps Menu System
Version: 1.0
Introduction
Hi everyone, first of all, i'm from argentina, and i dont speak english very well, i hope everyone can understand a word of what i say':|
This is my first post, so i hope i do this right-_-
Well, i made a menu system and i like to share it with you. (this is my first script so dont expect much
)
Heres is a screen of it
Anyway, if you know a little about rgss you can obtain this
Script
Heres the code
Instructions
Just put it above Main and run the game^_^
To add a number to the game completion window, make a variable operation and put the number to the variable numer 10.
FAQ
None yet.
Compatibility
It should work with everything, if you find any problem, please post it.
Credits and Thanks
I'm not asking for credits, but you cant say you made the script:-/
Author's Notes
Please tell what you think about it:thumb:
Terms and Conditions
You can freely use this menu system:yes:
Goodbye and goodluck
Version: 1.0
Introduction
Hi everyone, first of all, i'm from argentina, and i dont speak english very well, i hope everyone can understand a word of what i say':|
This is my first post, so i hope i do this right-_-
Well, i made a menu system and i like to share it with you. (this is my first script so dont expect much
Heres is a screen of it

Anyway, if you know a little about rgss you can obtain this

Script
Heres the code
Code:
#==============================================================================
# ** SilentMenu
# Version: 1.0
# Thanks to Rudy Guillan, Sayonara-P, TDS, Le?n y Soramaro.
#------------------------------------------------------------------------------
# CMS fully animated, transparent windows, map background, transition
# between scenes and game completion window.
#==============================================================================
#==============================================================================
# ** Window_Completado
#------------------------------------------------------------------------------
# Esta es la ventana que muestra el porcentaje completo del juego.
#==============================================================================
class Window_Completado < Window_Base
#--------------------------------------------------------------------------
# * Inicializacion de objetos
#--------------------------------------------------------------------------
def initialize
super(0, 0, 160, 64)
self.contents = Bitmap.new(width - 32, height - 32)
refresh
end
#--------------------------------------------------------------------------
# * Refresco
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.name = "Tahoma"
self.contents.font.size = 14
self.contents.font.color = system_color
self.contents.draw_text(0, 0, 80, 32, "Completado ")
self.contents.font.color = normal_color
#================#Define aqui la variable#================#
self.contents.draw_text(106, 0, 60, 32, $game_variables[10].to_s + "%")
#================#Por defecto es la N. 10#================#
end
end
#==============================================================================
# ** Window_Oro
#------------------------------------------------------------------------------
# Esta ventana muestra el oro del grupo.
#==============================================================================
class Window_Oro < Window_Base
#--------------------------------------------------------------------------
# * Inicializacion de objetos
#--------------------------------------------------------------------------
def initialize
super(0, 0, 160, 64)
self.contents = Bitmap.new(width - 32, height - 32)
refresh
end
#--------------------------------------------------------------------------
# * Actualizacion
#--------------------------------------------------------------------------
def refresh
self.contents.clear
cx = contents.text_size($data_system.words.gold).width
self.contents.font.color = normal_color
self.contents.draw_text(4, 0, 120-cx-2, 32, $game_party.gold.to_s, 2)
self.contents.font.color = system_color
self.contents.draw_text(124-cx, 0, cx, 32, $data_system.words.gold, 2)
end
end
#==============================================================================
# ** Window_Localizaci?n
#------------------------------------------------------------------------------
# Esta es la ventana que muestra el nombre del mapa
#==============================================================================
class Window_Localizacion< Window_Base
#--------------------------------------------------------------------------
# * Inicializacion de objetos
#--------------------------------------------------------------------------
def initialize
super(0, 0, 480, 64)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Tahoma"
self.contents.font.size = 18
refresh
end
#--------------------------------------------------------------------------
# * Actualizacion
#--------------------------------------------------------------------------
def refresh
self.contents.clear
data = load_data("Data/MapInfos.rxdata")
self.contents.font.color = system_color
self.contents.draw_text(0, 0, 248, 32, "Localizaci?n:")
self.contents.font.color = normal_color
self.contents.draw_text(90, 0, 208, 32, data[$game_map.map_id].name, 2)
end
end
#==============================================================================
# ** Window_MenuStatus
#------------------------------------------------------------------------------
# Esta es la ventana que muestra a los miembros del grupo.
#==============================================================================
class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# * Inicializacion de objetos
#--------------------------------------------------------------------------
def initialize
super(0, 0, 480, 296)
self.contents = Bitmap.new(width - 32, height - 32)
refresh
self.active = false
self.index = -1
end
#--------------------------------------------------------------------------
# * Actualizacion
#--------------------------------------------------------------------------
def refresh
self.contents.font.name = "Tahoma"
self.contents.font.size = 18
self.contents.clear
@item_max = $game_party.actors.size
for i in 0...$game_party.actors.size
x = 64
y = i * 64
actor = $game_party.actors[i]
draw_actor_graphic(actor, 32, y + 60)
draw_actor_name(actor, x, y)
draw_actor_class(actor, x + 144, y)
draw_actor_level(actor, x, y + 16)
draw_actor_state(actor, x + 90, y + 16)
draw_actor_exp(actor, x, y + 32)
draw_actor_hp(actor, 32+230, y+16)
draw_actor_sp(actor, 32+230, y+32)
end
end
#--------------------------------------------------------------------------
# * Renovacion del rectangulo de cursor
#--------------------------------------------------------------------------
def update_cursor_rect
if @index < 0
self.cursor_rect.empty
else
self.cursor_rect.set(0, @index * 64, self.width - 32, 64)
end
end
end
#==============================================================================
# ** Window_Ayuda
#------------------------------------------------------------------------------
# Esta es la ventana que muestra la ayuda sobre cada comando.
#==============================================================================
class Window_Ayuda < Window_Base
#--------------------------------------------------------------------------
# * Inicializacion de objetos
#--------------------------------------------------------------------------
def initialize
super(0, 0, 480, 64)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.name = "Tahoma"
self.contents.font.size = 18
end
#--------------------------------------------------------------------------
# * Actualizacion
#--------------------------------------------------------------------------
def update(help_text)
self.contents.clear
self.contents.draw_text(0, 0, 440, 32, help_text)
end
end
#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
# Esta es la escena del menu.
#==============================================================================
class Scene_Menu
#--------------------------------------------------------------------------
# * Inicializacion de objetos
#--------------------------------------------------------------------------
def initialize(menu_index = 0)
@menu_index = menu_index
end
#--------------------------------------------------------------------------
# * Metodo principal
#--------------------------------------------------------------------------
def main
@spriteset = Spriteset_Map.new
viewport = Viewport.new(0, 0, 640, 480)
viewport.tone = Tone.new(0, 0, 0,166)
#--------------------------------------------------------------------------
# * Llamado a las ventanas del menu
#--------------------------------------------------------------------------
@window_Completado = Window_Completado.new
@window_Completado.back_opacity = 130
@window_Completado.x = 480 + 160
@window_Completado.y = 392
@window_Oro = Window_Oro.new
@window_Oro.back_opacity = 130
@window_Oro.x = 480 + 160
@window_Oro.y = 30
@window_Localizacion = Window_Localizacion.new
@window_Localizacion.back_opacity = 130
@window_Localizacion.y = 392 + 190
@status_window = Window_MenuStatus.new
@status_window.back_opacity = 130
@status_window.x = -480
@status_window.y = 95
@window_Ayuda = Window_Ayuda.new
@window_Ayuda.back_opacity = 130
@window_Ayuda.y = -80
@window_Ayuda.update(" ")
#--------------------------------------------------------------------------
# * Creaci?n de la ventana de comandos
#--------------------------------------------------------------------------
s1 = $data_system.words.item
s2 = $data_system.words.skill
s3 = $data_system.words.equip
s4 = "Estado"
s5 = "Guardar"
s6 = "Salir"
@command_window = Window_Command.new(160, [s1,s2,s3,s4,s5,s6])
@command_window.x = 480 + 160
@command_window.y = 95
@command_window.height = 296
@command_window.index = @menu_index
@command_window.back_opacity = 130
#--------------------------------------------------------------------------
# * Transici?n
#--------------------------------------------------------------------------
Graphics.transition(8, "Graphics/Transitions/004-Blind04")
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@spriteset.dispose
viewport.dispose
@window_Oro.dispose
@window_Completado.dispose
@window_Localizacion.dispose
@status_window.dispose
@command_window.dispose
@window_Ayuda.dispose
end
#--------------------------------------------------------------------------
# * Animacio?n de Entrada
#--------------------------------------------------------------------------
def animacion_entrada
@command_window.x -= 10 if @command_window.x > 480
@window_Completado.x -= 10 if @window_Completado.x > 480
@window_Localizacion.y -= 10 if @window_Localizacion.y > 392
@window_Oro.x -= 10 if @window_Oro.x > 480
@status_window.x += 20 if @status_window.x < 0
@window_Ayuda.y += 10 if @window_Ayuda.y < 30
end
#--------------------------------------------------------------------------
# * Animaci?n de Salida
#--------------------------------------------------------------------------
def animacion_salida
@command_window.x += 10 if @command_window.x < 640
@window_Completado.x += 10 if @window_Completado.x < 640
@window_Localizacion.y += 10 if @window_Localizacion.y < 480
@window_Oro.x += 10 if @window_Oro.x < 640
@status_window.x -= 20 if @status_window.x > -480
@window_Ayuda.y -= 10 if @window_Ayuda.y > -64
if @status_window.x <= -480
$scene = Scene_Map.new
$game_map.autoplay
return
end
end
#--------------------------------------------------------------------------
# * Actualizacion de Frames
#--------------------------------------------------------------------------
def update
if @intro == nil
animacion_entrada
end
if @salida == true
animacion_salida
@intro = false
end
@status_window.update
@window_Localizacion.update
@window_Oro.update
@window_Completado.update
@command_window.update
case @command_window.index
when 0
@window_Ayuda.update("Observa y administra los objetos que tiene tu grupo.")
when 1
@window_Ayuda.update("Observa las habilidades de cada uno de tus personajes.")
when 2
@window_Ayuda.update("Observa y administra el equipamiento de cada personaje.")
when 3
@window_Ayuda.update("Obten informaci?n detallada sobre personaje.")
when 4
@window_Ayuda.update("Guarda tu partida actual para continuar mas tarde.")
when 5
@window_Ayuda.update("Abre el menu de fin del juego y selecciona una opcion.")
end
if @command_window.active
update_command
return
end
if @status_window.active
update_status
return
end
#-----------------------------------#
end# fin del update
#-----------------------------------#
def update_command
if Input.trigger?(Input::C)
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
end
end
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
@salida = true
return
end
end
#==#Fin de la Scene#==#
end
#==#Fin de la Scene#==#
Instructions
Just put it above Main and run the game^_^
To add a number to the game completion window, make a variable operation and put the number to the variable numer 10.
FAQ
None yet.
Compatibility
It should work with everything, if you find any problem, please post it.
Credits and Thanks
I'm not asking for credits, but you cant say you made the script:-/
Author's Notes
Please tell what you think about it:thumb:
Terms and Conditions
You can freely use this menu system:yes:
Goodbye and goodluck