Menú Rápido

El Menú Rápido (Ready Menu) permite al jugador acceder rápidamente a objetos registrados sin necesidad de abrir la mochila. Se activa con un botón dedicado (por defecto Z o F5) y muestra los objetos clave que el jugador ha registrado para uso rápido.

Cómo funciona

El sistema de menú rápido permite registrar ciertos objetos clave (Key Items) para acceder a ellos directamente. Los objetos que se pueden registrar son aquellos marcados con la propiedad "is_registerable" en su definición.

Flujo del menú rápido

  1. El jugador pulsa el botón de menú rápido en el mapa.
  2. Si solo hay un objeto registrado, se usa inmediatamente.
  3. Si hay varios objetos registrados, se muestra una lista para elegir.
  4. El efecto del objeto se ejecuta como si se hubiera usado desde la mochila.

Registrar objetos

Los objetos se registran desde la mochila seleccionando la opción "Registrar":

Desde la mochila (jugador)

Cuando el jugador selecciona un objeto clave que es registrable, aparece la opción "Registrar" en el menú contextual. Al seleccionarla, el objeto se añade al menú rápido.

Registrar un objeto por script

# Registrar un objeto en el menú rápido
$bag.register_item(:BICYCLE)

# Desregistrar un objeto del menú rápido
$bag.unregister_item(:BICYCLE)

# Verificar si un objeto está registrado
if $bag.registered?(:BICYCLE)
  pbMessage(_INTL("La Bicicleta está registrada."))
end

Objetos registrables por defecto

Los siguientes objetos clave se pueden registrar de forma predeterminada:

Objeto ID Interno Efecto al usar
Bicicleta :BICYCLE Monta/desmonta la bicicleta
Caña Vieja :OLDROD Permite pescar Pokémon (nivel básico)
Caña Buena :GOODROD Permite pescar Pokémon (nivel intermedio)
Supercaña :SUPERROD Permite pescar Pokémon (nivel avanzado)
Zahorí :DOWSINGMACHINE Busca objetos ocultos en el mapa
Pokéradar :POKERADAR Activa cadenas de encuentros para buscar Pokémon
Vs. Seeker :VSSEEKER Busca entrenadores que quieran revancha

Hacer un objeto registrable

Para que un objeto clave se pueda registrar, asegúrate de definirlo correctamente en el archivo PBS items.txt:

# En PBS/items.txt
[MYITEM]
Name = Mi Objeto
NamePlural = Mis Objetos
Pocket = 8
Price = 0
FieldUse = Direct
Flags = KeyItem,RegisterableKeyItem
Description = Un objeto especial que se puede registrar.

La flag RegisterableKeyItem es la que permite que el objeto aparezca con la opción "Registrar" en la mochila.

Comportamiento en el mapa vs. combate

El menú rápido solo funciona en el mapa del mundo (overworld). En combate, los objetos se usan desde la mochila directamente.

Contexto Menú Rápido Notas
Mapa (caminando) Disponible Funciona normalmente con el botón de acceso rápido
Mapa (bicicleta) Disponible Permite desmontar la bicicleta o usar otros objetos
Mapa (surf) Limitado Algunos objetos como la bicicleta no se pueden usar en el agua
Combate No disponible Se usa la mochila del combate
Interior/Edificio Disponible Algunos objetos como la bicicleta pueden estar restringidos según el mapa

La Bicicleta

La bicicleta es el objeto registrable más común. Permite al jugador desplazarse más rápido por el mapa:

# Dar la bicicleta al jugador
$bag.add(:BICYCLE)

# Montar/desmontar la bicicleta por script
pbToggleBicycle

# Verificar si el jugador está en bicicleta
if $PokemonGlobal.bicycle
  pbMessage(_INTL("Estás montado en la bicicleta."))
end

# La bicicleta se puede restringir en ciertos mapas
# usando los metadatos del mapa:
# Bicycle = false   (en map_metadata.txt)

Objetos alternables (toggleables)

Algunos objetos funcionan como interruptores: se activan al usarlos y se desactivan al usarlos de nuevo. La bicicleta es el ejemplo más claro:

Objeto Estado 1 Estado 2
Bicicleta Caminando (desmontado) En bicicleta (montado)
Zahorí Apagado Buscando objetos (emite sonido al acercarse)
Repelente Inactivo Activo (no hay encuentros salvajes)

Crear un objeto registrable personalizado

Ejemplo completo de un objeto registrable personalizado:

1. Definir el objeto en PBS

# PBS/items.txt
[FLASHLIGHT]
Name = Linterna
NamePlural = Linternas
Pocket = 8
Price = 0
FieldUse = Direct
Flags = KeyItem,RegisterableKeyItem
Description = Ilumina las cuevas oscuras. Se puede registrar.

2. Definir el efecto del objeto

# En un script o plugin
ItemHandlers::UseFromBag.add(:FLASHLIGHT, proc { |item|
  if $game_map.metadata&.dark_cave
    $PokemonGlobal.flashUsed = !$PokemonGlobal.flashUsed
    if $PokemonGlobal.flashUsed
      pbMessage(_INTL("¡La Linterna ilumina la cueva!"))
    else
      pbMessage(_INTL("Apagaste la Linterna."))
    end
    next 1  # 1 = usado con éxito, cerrar la mochila
  else
    pbMessage(_INTL("No tiene sentido usar esto aquí."))
    next 0  # 0 = no se usó
  end
})

Configurar el botón de acceso rápido

El botón de acceso rápido se puede configurar en los ajustes de controles del juego. Por defecto:

Acción Tecla por defecto
Menú Rápido Z o F5
Consejo: Si el jugador registra muchos objetos, considera implementar un sistema de "favoritos" o limitar el número de objetos registrables para mantener el menú rápido ágil y fácil de usar.