De Whack a Hack Wiki!
(Los Script permiten programar eventos de forma rápida y sencilla, haciendo uso de una lista de comandos pre-programados dentro del juego. En decompilación de GBA (ruby, firered y emerald) se tienen los siguientes comandos:) |
|||
Línea 1: | Línea 1: | ||
+ | Los Script permiten programar eventos de forma rápida y sencilla, haciendo uso de una lista de comandos pre-programados dentro del juego. En decompilación de GBA (ruby, firered y emerald) se tienen los siguientes comandos: | ||
+ | |||
== '''Lista de Comandos para Scripts''' == | == '''Lista de Comandos para Scripts''' == | ||
Revisión del 20:34 13 dic 2019
Los Script permiten programar eventos de forma rápida y sencilla, haciendo uso de una lista de comandos pre-programados dentro del juego. En decompilación de GBA (ruby, firered y emerald) se tienen los siguientes comandos:
Lista de Comandos para Scripts
ID | Comando | Parámetros | Descripción | Plataforma |
---|---|---|---|---|
0x00 | nop | - | Comando vacío. No hace nada. | R-FR-E |
0x01 | nop1 | - | Comando vacío. No hace nada. | R-FR-E |
0x02 | end | - | Finaliza la ejecución del script. | R-FR-E |
0x03 | return | - | Vuelve a la línea siguiente al último comando 'call' ejecutado. | R-FR-E |
0x04 | call | [script] | Ejecuta el script pasado como argumento. Permite la vuelta mediante 'return' | R-FR-E |
0x05 | goto | [script] | Continua la ejecución en el script pasado como argumento | R-FR-E |
0x06 | goto_if | [condición] [script] | Continua la ejecución en el script pasado como argumento, siempre que se cumpla la condición. | R-FR-E |
0x07 | call_if | [condición] [script] | Similar a 'goto_if', pero permite la vuelta al script original usando 'return'. | R-FR-E |
0x08 | gotostd | [función standard] | Permite ejecutar una de las funciones standard del juego. Uso anecdótico. | R-FR-E |
0x09 | callstd | [función standard] | Similar a 'gotostd', pero permite volver desde un 'return'. Uso anecdótico. | R-FR-E |
0x0A | gotostd_if | [condicion] [función standard] | Ejecuta una de las funciones standard, siempre que se cumpla la condición. Uso anecdótico. | R-FR-E |
0x0B | callstd_if | [condición] [función standard] | Similar a gotostd_if, pero permite volver desde un 'return'. Uso anecdótico. | R-FR-E |
0x0C | returnram | - | Ejecuta el script cuyo puntero esté almacenado dinámicamente en gUnknown_020375C0. Uso anecdótico. | E |
0x0C | gotoram | - | Es igual a returnram, pero en pokefirered y pokeruby. | R-FR |
0x0D | killscript | - | Finaliza la ejecución del script reseteando completamente la RAM de scripts. | R-FR-E |
0x0E | setmysteryeventstatus | [estado] | Modifica un valor relacionado con el evento misterioso. Utilizado únicamente en Ruby, y como herramienta de Debug. | R-FR-E |
0x0F | loadword | [buffer_id] [2 bytes] | Almacena un valor de 2 bytes (u16) en el buffer de scripts especificado | R-FR-E |
0x10 | loadbyte | [buffer_id] [byte] | Almacena un valor de 1 byte (u8) en el buffer de scripts especificado. | R-FR-E |
0x11 | writebytetoaddr | [byte] [dirección RAM] | Almacena un valor de 1 byte (u8) en la dirección RAM especificada. | R-FR-E |
0x12 | loadbytefromaddr | [buffer_id] [dirección RAM] | Almacena en el buffer seleccionado el valor contenido en la dirección RAM especificada (1 byte). | R-FR-E |
0x13 | setptrbyte | [buffer_id] [dirección RAM] | Almacena en la dirección RAM especificada el valor (1 byte) del buffer seleccionado. | R-FR-E |
0x14 | copylocal | [buffer_id destino] [buffer_id origen] | Copia el valor del buffer seleccionado como origen en el buffer seleccionado como destino. | R-FR-E |
0x15 | copybyte | [RAM destino] [RAM origen] | Copia el valor (1 byte) de la dirección RAM marcada como origen en la dirección RAM de destino. | R-FR-E |
0x16 | setvar | [var_id] [valor] | Establece el valor indicado para la variable seleccionada. | R-FR-E |
0x17 | addvar | [var_id] [valor] | Añade el valor indicado al valor actual de la variable seleccionada. | R-FR-E |
0x18 | subvar | [var_id] [valor] | Resta el valor indicado al valor actual de la variable seleccionada. | R-FR-E |
0x19 | copyvar | [var_id destino] [var_id origen] | Copia el valor de la variable origen en la variable destino. | R-FR-E |
0x1A | setorcopyvar | [var_id destino] [origen] | Si el origen es una variable, actuará como 'copyvar'. En caso contrario será como 'setvar'. | R-FR-E |
0x1B | compare_local_to_local | [buffer_id1] [buffer_id2] | Compara el valor de dos buffers de scripts. | R-FR-E |
0x1C | compare_local_to_value | [buffer_id] [byte] | Compara el valor de un buffer con el valor indicado. | R-FR-E |
0x1D | compare_local_to_addr | [buffer_id] [dirección RAM] | Compara el valor de un buffer con el valor almacenado en la dirección RAM indicada. | R-FR-E |
0x1E | compare_addr_to_local | [dirección RAM] [buffer_id] | Compara el valor almacenado en una dirección RAM con el valor del buffer indicado. | R-FR-E |
0x1F | compare_addr_to_value | [dirección RAM] [byte] | Compara el valor almacenado en una dirección RAM con el valor indicado. | R-FR-E |
0x20 | compare_addr_to_addr | [dirección RAM 1] [dirección RAM 2] | Compara el valor almacenado en una dirección RAM con el de otra dirección RAM. | R-FR-E |
0x21 | compare_var_to_value | [var_id] [byte] | Compara el valor de una variable con el valor indicado. | R-FR-E |
0x22 | compare_var_to_var | [var_id1] [var_id2] | Compara el valor de una variable con el de otra variable. | R-FR-E |
0xFF | R-FR-E |
Funciones Standard
Las funciones standard, son una serie de funcionalidades básicas utilizadas por los scripts de los juegos de tercera generación. En total son 11, y están contenidos dentro de gStdScripts en "./data/event_scripts.s".
Función Standard | Descripción |
---|---|
Std_ObtainItem | Mensaje de texto por defecto la obtener un objeto. |
Std_FindItem | Mensaje de texto por defecto al encontrar un objeto. |
Std_MsgboxNPC | Cuadro de texto mostrado al hablar con un npc. |
Std_MsgboxSign | Cuadro de texto mostrado al hablar con un poste. |
Std_MsgboxDefault | Cuadro de texto mostrado por defecto. |
Std_MsgboxYesNo | Cuadro de texto con opciones "Sí/No" |
Std_MsgboxAutoclose | Cuadro de texto que se cierra automáticamente |
Std_ObtainDecoration | Mensaje de texto mostrado por defecto al obtener una decoración de la base secreta. |
Std_RegisteredInMatchCall | Mensaje de texto mostrado por defecto al registrar alguien en el pokenav (solo ruby y emerald) |
Std_MsgboxGetPoints | Mensaje por defecto mostrado al recibir puntos de la torre batalla. |
Std_10 | Mensaje relacionado con el Pokenav. |