De Whack a Hack Wiki!
(Añadidos más comandos 0x50-0x70) |
(Añadidos comandos 0x70-0x80) |
||
Línea 694: | Línea 694: | ||
| R-FR-E | | R-FR-E | ||
|- | |- | ||
+ | | 0x71 | ||
+ | | multichoicegrid | ||
+ | | [pos_x] [pos_y] [multichoice_id] [por_fila] [permitir_b] | ||
+ | | Es igual a 'multichoice', pero permite seleccionar el número de opciones por fila. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x72 | ||
+ | | drawbox | ||
+ | | [pos_x] [pos_y] [ancho] [alto] | ||
+ | | Dibuja una caja vacía (window) en la posición y con las dimensiones indicadas. | ||
+ | | R-FR | ||
+ | |- | ||
+ | | 0x73 | ||
+ | | erasebox | ||
+ | | [pos_x] [pos_y] [ancho] [alto] | ||
+ | | Borra los tiles de caja (window) que haya en las posiciones indicadas. | ||
+ | | R-FR | ||
+ | |- | ||
+ | | 0x74 | ||
+ | | drawboxtext | ||
+ | | [byte] [byte] [byte] [byte] | ||
+ | | | ||
+ | | R-FR | ||
+ | |- | ||
+ | | 0x75 | ||
+ | | showmonpic | ||
+ | | [especie] [pos_x] [pos_y] | ||
+ | | Muestra un cuadro con el front sprite del pokémon seleccionado | ||
+ | | FR-E | ||
+ | |- | ||
+ | | 0x75 | ||
+ | | drawmonpic | ||
+ | | [especie] [pos_x] [pos_y] | ||
+ | | Muestra un cuadro con el front sprite del pokémon seleccionado | ||
+ | | R | ||
+ | |- | ||
+ | | 0x76 | ||
+ | | hidemonpic | ||
+ | | - | ||
+ | | Oculta todos los cuadros mostrados con 'showmonpic' | ||
+ | | FR-E | ||
+ | |- | ||
+ | | 0x76 | ||
+ | | erasemonpic | ||
+ | | - | ||
+ | | Oculta todos los cuadros mostrados con 'showmonpic' | ||
+ | | R | ||
+ | |- | ||
+ | | 0x77 | ||
+ | | showcontestwinner | ||
+ | | [id_ganador] | ||
+ | | Muestra el ganador del concurso pokémon | ||
+ | | R-E | ||
+ | |- | ||
+ | | 0x77 | ||
+ | | drawcontestwinner | ||
+ | | [id_ganador] | ||
+ | | Muestra el ganador del concurso pokémon | ||
+ | | R | ||
+ | |- | ||
+ | | 0x78 | ||
+ | | braillemessage | ||
+ | | [texto] | ||
+ | | Muestra un cuadro de texto braille. [texto] debe ser un puntero al propio texto. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x79 | ||
+ | | givemon | ||
+ | | [especie_id] [nivel] [objeto_id] | ||
+ | | Da al jugador el Pokémon con el nivel y el objeto seleccionados. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x7A | ||
+ | | giveegg | ||
+ | | [especie_id] | ||
+ | | Da al jugador un huevo del Pokémon elegido. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x7B | ||
+ | | setmonmove | ||
+ | | [posición_pokemon] [casilla_movimiento] [ataque_id] | ||
+ | | Modifica el movimiento seleccionado de un Pokémon del equipo. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x7C | ||
+ | | checkpartymove | ||
+ | | [ataque_id] | ||
+ | | Comprueba si al menos un Pokémon en el equipo conoce el ataque seleccionado. En LASTRESULT se almacena la posición del Pokémon que lo conoce (6, si no lo tiene ninguno) y 0x8004 almacena la especie de dicho Pokémon. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x7D | ||
+ | | bufferspeciesname | ||
+ | | [buffer_id] [especie_id] | ||
+ | | Almacena el nombre de la especie Pokémon seleccionada en un buffer. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x7E | ||
+ | | bufferleadmonspeciesname | ||
+ | | [buffer_id] | ||
+ | | Almacena el nombre de la especie del Pokémon en el primer lugar del equipo. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x7F | ||
+ | | bufferpartymonnick | ||
+ | | [buffer_id] [posición] | ||
+ | | Almacena el nombre o mote de un Pokémon del equipo en un buffer. | ||
+ | | R-FR-E | ||
+ | |- | ||
+ | | 0x80 | ||
+ | | bufferitemname | ||
+ | | [buffer_id] [item_id] | ||
+ | | Almacena el nombre del objeto indicado en un buffer. | ||
+ | | R-FR-E | ||
+ | |- | ||
| 0xFF | | 0xFF | ||
| | | |
Revisión del 22:58 14 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:
Sumario
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 |
0x23 | callnative | [función] | Ejecuta una función nativa en C/ASM, continua con la ejecución del script al terminar la función. | R-FR-E |
0x24 | gotonative | [función] | Ejecuta una función nativa en C/ASM, termina la ejecución del script. | R-FR-E |
0x25 | special | [special_id] | Ejecuta la función special indicada. | R-FR-E |
0x26 | specialvar | [var_id] [special_id] | Ejecuta la función special indicada. Si la función devuelve algún valor, lo almacena en la variable especificada. | R-FR-E |
0x27 | waitstate | - | Bloquea la ejecución del escript hasta que una función nativa o una función special lo desbloqueen explícitamente. | R-FR-E |
0x28 | delay | [cantidad (4 bytes)] | Pausa la ejecución del script durante el número indicado de ciclos (~60 ciclos/s) | R-FR-E |
0x29 | setflag | [flag_id] | Establece el valor del flag indicado en 1 (activado). | R-FR-E |
0x2A | clearflag | [flag_id] | Establece el valor del flag indicado en 0 (desactivado). | R-FR-E |
0x2B | checkflag | [flag_id] | Comprueba el valor del flag indicado. | R-FR-E |
0x2C | initclock | [hora] [minuto] | Inicializa el reloj local del juego en la hora y el minuto marcados. | R-E |
0x2D | dotimebasedevents | - | Ejecuta los eventos diarios. | R-E |
0x2E | gettime | - | Escribe en las variables 0x8000, 0x8001 y 0x8002 el tiempo del reloj en horas, minutos y segundos. | R-E |
0x2F | playse | [sonido_id] | Reproduce el sonido indicado. Solo uno de forma simultánea. | R-FR-E |
0x30 | waitse | - | Pausa la ejecución del script hasta que termina la reproducción del efecto sonoro. | R-FR-E |
0x31 | playfanfare | [melodía_id] | Reproduce la melodía indicada. | R-FR-E |
0x32 | waitfanfare | - | Detiene la ejecución del script hasta que finaliza la melodía. | R-FR-E |
0x33 | playbgm | [canción_id] [0x00] | Reproduce la canción indicada. Segundo parámetro desconocido, siempre es 0x00. | R-FR-E |
0x34 | savebgm | [canción_id] | Guarda el id de la canción indicada para reproducirla más tarde. | R-FR-E |
0x35 | fadedefaultbgm | - | Desvanece la canción que se reproduce actualmente hasta la canción por defecto del mapa. | R-FR-E |
0x36 | fadenewbgm | [canción_id] | Desvanece la canción que se reproduce actualmente hasta la canción indicada. | R-FR-E |
0x37 | fadeoutbgm | [velocidad] | Desvanece la canción que se reproduce hasta que desaparece. | R-FR-E |
0x38 | fadeinbgm | [velocidad] | Hace sonar gradualmente la canción que se reproduce actualmente (desde mute a volúmen completo) | R-FR-E |
0x39 | warp | [mapa] [warp_id] [pos_x] [pos_y] | Transporta al jugador al mapa y warp escogidos. Si el warp_id es 0xFF, el jugador será transportado a las coordenadas X e Y dadas. | R-FR-E |
0x3A | warpsilent | [mapa] [warp_id] [pos_x] [pos_y] | Exactamente igual a warp. No aplica el sonido del warp. | R-FR-E |
0x3B | warpdoor | [mapa] [warp_id] [pos_x] [pos_y] | Exactamente igual a warp. Reproduce el sonido y la animación de una puerta. | R-FR-E |
0x3C | warphole | [mapa] | Teletransporta al jugador al mapa indicado con la animación de un agujero. | R-FR-E |
0x3D | warpteleport | [mapa] [warp_id] [pos_x] [pos_y] | Exactamente igual a warp. Aplica una animación de teletransporte. | R-FR-E |
0x3E | setwarp | [mapa] [warp_id] [pos_x] [pos_y] | Guarda un destino de teletransporte para ser usado más tarde. | R-FR-E |
0x3F | setdynamicwarp | [mapa] [warp_id] [pos_x] [pos_y] | Establece el destino del warp dinámico del mapa. (Para hacer un warp dinámico, este debe ir al warp 127 del mapa 127.127). | R-FR-E |
0x40 | setdivewarp | [mapa] [warp_id] [pos_x] [pos_y] | Establece el lugar de salida del buceo. | R-FR-E |
0x41 | setholewarp | [mapa] [warp_id] [pos_x] [pos_y] | Establece el destino del jugador cuando sufra un 'warphole'. | R-FR-E |
0x42 | getplayerxy | [variable_id1] [variable_id2] | Guarda en las variables indicadas las posiciones X e Y del jugador dentro del mapa actual. | R-FR-E |
0x43 | getpartysize | - | Guarda el número de Pokémon en el equipo del jugador en la variable 0x800D (LASTRESULT). | R-FR-E |
0x44 | giveitem | [item_id] [cantidad] | Intenta añadir la cantidad del objeto indicado a la mochila. Si lo consigue LASTRESULT será 1, en caso contrario LASTRESULT será 0. | R-FR-E |
0x45 | takeitem | [item_id] [cantidad] | Elimina la cantidad del objeto indicado de la mochila del jugador. | R-FR-E |
0x46 | checkitemspace | [item_id] [cantidad] | Comprueba si hay espacio suficiente en la mochila para los objetos indicados. Si hay espacio (LASTRESULT = 1), si no lo hay (LASTRESULT = 0) | R-FR-E |
0x47 | checkitem | [item_id] [cantidad] | Comprueba si en la mochila hay la cantidad indicada (o más) del objeto escogido. En caso afirmativo (LASTRESULT = 1), si no (LASTRESULT = 0) | R-FR-E |
0x48 | checkitemtype | [item_id] | Almacena el tipo de objeto (curativo, ball, etc) del objeto indicado en LASTRESULT. Es usado internamente al dar objetos con 'callstd Std_ObtainItem' | R-FR-E |
0x49 | givepcitem | [item_id] [cantidad] | Almacena en el pc la cantidad y el objeto indicados. En este caso los parámetros pueden ser variables. | R-FR-E |
0x4A | checkpcitem | [item_id] [cantidad] | Similar a 'checkitem', pero hace las comprobaciones dentro del pc en lugar de en la mochila. | R-FR-E |
0x4B | givedecoration | [decoración_id] | Añade el objeto decorativo indicado al pc del jugador. | R-E |
0x4C | takedecoration | [decoración_id] | Elimina el objeto decorativo indicado del pc del jugador. | R-E |
0x4D | checkdecor | [decoración_id] | Comprueba si el jugador posee el objeto decorativo indicado. | R-E |
0x4E | checkdecorspace | - | Comprueba si el jugador posee espacio suficiente en el pc para más objetos decorativos. En caso afirmativo (LASTRESULT = 1), si no (LASTRESULT = 0). | R-E |
0x4F | applymovement | [objeto_id] [movimientos] | Aplica los movimientos indicados en el objeto (overworld) deseado. | R-FR-E |
0x50 | applymovement | [objeto_id] [movimientos] [mapa] | En el 'applymovement' se puede indicar el mapa del que se cogerá el objeto (para coger un mini de otro mapa) | R-FR-E |
0x51 | waitmovement | [objeto_id] | Pausa el script hasta que finaliza el movimiento del objeto indicado | R-FR-E |
0x52 | waitmovement | [objeto_id] [mapa] | Al igual que en 'applymovement', se puede especificar el mapa del que se cogerá el objeto a mover. | R-FR-E |
0x53 | removeobject | [objeto_id] | Oculta el objeto indicado, activando la flag de visibilidad asignada a dicho objeto (si no la tiene, no hará nada) | R-FR-E |
0x54 | removeobject | [objeto_id] [mapa] | Se puede especificar el mapa del objeto a ocultar. | R-FR-E |
0x55 | addobject | [objeto_id] | Limpia el flag de visibilidad del objeto indicado, mostrándolo (si no hay flag asignado, no hará nada) | R-FR-E |
0x56 | addobject | [objeto_id] [mapa] | Se puede especificar el mapa en el que se encuentra el objeto. | R-FR-E |
0x57 | setobjectxy | [objeto_id] [pos_x] [pos_y] | Establece la posición del objeto en las coordenadas X e Y indicadas. | R-FR-E |
0x58 | showobjectat | [objeto_id] [map] | Activa la visibilidad del objeto seleccionado dando el id y el mapa. | R-FR-E |
0x59 | hideobjectat | [objeto_id] [map] | Desactiva la visibilidad del objeto seleccionado dando el id y el mapa. | R-FR-E |
0x5A | faceplayer | - | Si el script fue llamado por un objeto, este se orientará mirando al jugador. | R-FR-E |
0x5B | turnobject | [objeto_id] [dirección] | Orienta el objeto seleccionado en la dirección indicada. | R-FR-E |
0x5C | trainerbattle | [tipo_combate] [entrenador_id] [arg0] [arg1] [arg2] [arg3] [arg4] | Configura el combate contra un entrenador con varios parámetros que se almacenan en RAM. | R-FR-E |
0x5D | trainerbattlebegin | - | Comienza el combate contra un entrenador usando los datos almacenados en RAM. | R-FR-E |
0x5E | gotopostbattlescript | - | Continua con el script después del combate. Llamado internamente en 'battle_setup.c' | R-FR-E |
0x5F | gotobeatenscript | Ejecuta el script correspondiente tras una derrota. Llamado internamente en 'battle_setup.c' | R-FR-E | |
0x60 | checktrainerflag | [entrenador_id] | Comprueba el valor del flag del entrenador indicado (si el valor es 1, el entrenador está marcado como derrotado) | R-FR-E |
0x61 | settrainerflag | [entrenador_id] | Establece un entrenador como derrotado. | R-FR-E |
0x62 | cleartrainerflag | [entrenador_id] | Establece un entrenador como NO derrotado. | R-FR-E |
0x63 | setobjectxyperm | [objeto_id] [pos_x] [pos_y] | Establece la posición de un objeto de forma 'permanente' (hasta que se cambia del mapa, en otros comandos solo se mantiene hasta que sale de pantalla) | R-FR-E |
0x64 | copyobjectxytoperm | [objeto_id] | Establece la posición actual de un objeto como su posición 'permanente'. Esta 'permanencia' es igual a la de 'setobjectxyperm' | R-FR-E |
0x65 | setobjectmovementtype | [4 bytes] [byte] | R-FR-E | |
0x66 | waitmessage | - | Pausa la ejecución del script hasta que termina de dibujarse el texto y/o el cuadro de texto. | R-FR-E |
0x67 | message | [texto] | Muestra un texto en un cuadro de texto por defecto. El 'texto' debe ser un pointer al propio texto. | R-FR-E |
0x68 | closemessage | - | Cierra la ventana de texto que se está mostrando actualmente | R-FR-E |
0x69 | lockall | - | Bloquea el movimiento de todos los objetos en pantalla | R-FR-E |
0x6A | lock | - | Si el script fue llamado por un objeto, bloquea el movimiento de dicho objeto | R-FR-E |
0x6B | releaseall | - | Libera todos los objetos cuyo movimiento ha sido bloqueado | R-FR-E |
0x6C | release | - | Si el script fue llamado por un objeto, desbloquea el movimiento de dicho objeto. | R-FR-E |
0x6D | waitbuttonpress | - | Detiene la ejecución del script hasta que el jugador presiona una tecla. | R-FR-E |
0x6E | yesnobox | [pos_x] [pos_y] | Muestra un cuadro de texto "Sí/No" en las coordenadas X e Y indicadas y bloquea la ejecución hasta que se seleccione una de las opciones. (las coordenadas son en tiles de 8x8) | R-FR-E |
0x6F | multichoice | [pos_x] [post_y] [multichoice_id] [permitir_b] | Muestra un cuadro de selección de opción múltiple en las coordenadas X e Y marcadas. [permitir_b] puede ser 0 o 1, y permitirá o bloqueará la opción de cancelar el botón multichoice con el botón 'B' | R-FR-E |
0x70 | multichoicedefault | [pos_x] [pos_y] [multichoice_id] [por_defecto] [permitir_b] | Es igual a 'multichoice', pero permite seleccionar la opción marcada por defecto con [por_defecto] | R-FR-E |
0x71 | multichoicegrid | [pos_x] [pos_y] [multichoice_id] [por_fila] [permitir_b] | Es igual a 'multichoice', pero permite seleccionar el número de opciones por fila. | R-FR-E |
0x72 | drawbox | [pos_x] [pos_y] [ancho] [alto] | Dibuja una caja vacía (window) en la posición y con las dimensiones indicadas. | R-FR |
0x73 | erasebox | [pos_x] [pos_y] [ancho] [alto] | Borra los tiles de caja (window) que haya en las posiciones indicadas. | R-FR |
0x74 | drawboxtext | [byte] [byte] [byte] [byte] | R-FR | |
0x75 | showmonpic | [especie] [pos_x] [pos_y] | Muestra un cuadro con el front sprite del pokémon seleccionado | FR-E |
0x75 | drawmonpic | [especie] [pos_x] [pos_y] | Muestra un cuadro con el front sprite del pokémon seleccionado | R |
0x76 | hidemonpic | - | Oculta todos los cuadros mostrados con 'showmonpic' | FR-E |
0x76 | erasemonpic | - | Oculta todos los cuadros mostrados con 'showmonpic' | R |
0x77 | showcontestwinner | [id_ganador] | Muestra el ganador del concurso pokémon | R-E |
0x77 | drawcontestwinner | [id_ganador] | Muestra el ganador del concurso pokémon | R |
0x78 | braillemessage | [texto] | Muestra un cuadro de texto braille. [texto] debe ser un puntero al propio texto. | R-FR-E |
0x79 | givemon | [especie_id] [nivel] [objeto_id] | Da al jugador el Pokémon con el nivel y el objeto seleccionados. | R-FR-E |
0x7A | giveegg | [especie_id] | Da al jugador un huevo del Pokémon elegido. | R-FR-E |
0x7B | setmonmove | [posición_pokemon] [casilla_movimiento] [ataque_id] | Modifica el movimiento seleccionado de un Pokémon del equipo. | R-FR-E |
0x7C | checkpartymove | [ataque_id] | Comprueba si al menos un Pokémon en el equipo conoce el ataque seleccionado. En LASTRESULT se almacena la posición del Pokémon que lo conoce (6, si no lo tiene ninguno) y 0x8004 almacena la especie de dicho Pokémon. | R-FR-E |
0x7D | bufferspeciesname | [buffer_id] [especie_id] | Almacena el nombre de la especie Pokémon seleccionada en un buffer. | R-FR-E |
0x7E | bufferleadmonspeciesname | [buffer_id] | Almacena el nombre de la especie del Pokémon en el primer lugar del equipo. | R-FR-E |
0x7F | bufferpartymonnick | [buffer_id] [posición] | Almacena el nombre o mote de un Pokémon del equipo en un buffer. | R-FR-E |
0x80 | bufferitemname | [buffer_id] [item_id] | Almacena el nombre del objeto indicado en un buffer. | 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. |
Funciones Special
Las funciones special, son una serie de "funciones especiales" que pueden ser llamadas en los scripts. Existen cerca de 500 special diferentes, contenidos en gSpecials, situado en './data/specials.inc'. Las funciones son diferentes dependiendo de la plataforma.
Movimientos
Existe una lista de movimientos que pueden llevarse acabo con los comandos 'applymovement'. Pueden ser consultados en la siguiente tabla. Información obtenida de './asm/macros/movements.inc'
Movimiento | Efecto |
---|---|
face_down | Mira hacia abajo |
face_up | Mira hacia arriba |
face_left | Mira hacia la izquierda |
face_right | Mira hacia la derecha |
walk_slow_down | Camina hacia abajo (despacio) |
walk_slow_up | Camina hacia arriba (despacio) |
walk_slow_left | Camina hacia la izquierda (despacio) |
walk_slow_right | Camina hacia la derecha (despacio) |
walk_down | Camina hacia abajo |
walk_up | Camina hacia arriba |
walk_left | Camina hacia la izquierda |
walk_right | Camina hacia la derecha |
jump_2_down | Salta hacia abajo |
jump_2_up | Salta hacia arriba |
jump_2_left | Salta hacia la izquierda |
jump_2_right | Salta hacia la derecha |
delay_1 | Pausa el movimiento (1 unidad) |
delay_2 | Pausa el movimiento (2 unidades) |
delay_4 | Pausa el movimiento (4 unidades) |
delay_8 | Pausa el movimiento (8 unidades) |
delay_16 | Pausa el movimiento (16 unidades) |
walk_fast_down | Camina hacia abajo (deprisa) |
walk_fast_up | Camina hacia arriba (deprisa) |
walk_fast_left | Camina hacia la izquierda (deprisa) |
walk_fast_right | Camina hacia la derecha (deprisa) |
walk_in_place_slow_down | Camina en el sitio hacia abajo (despacio) |
walk_in_place_slow_up | Camina en el sitio hacia arriba (despacio) |
walk_in_place_slow_left | Camina en el sitio hacia la izquierda (despacio) |
walk_in_place_slow_right | Camina en el sitio hacia la derecha (despacio) |
walk_in_place_down | Camina en el sitio hacia abajo |
walk_in_place_up | Camina en el sitio hacia arriba |
walk_in_place_left | Camina en el sitio hacia la izquierda |
walk_in_place_right | Camina en el sitio hacia la derecha |
walk_in_place_fast_down | Camina en el sitio hacia abajo (rápido) |
walk_in_place_fast_up | Camina en el sitio hacia arriba (rápido) |
walk_in_place_fast_left | Camina en el sitio hacia la izquierda (rápido) |
walk_in_place_fast_right | Camina en el sitio hacia la derecha (rápido) |
walk_in_place_fastest_down | Camina en el sitio hacia abajo (muy rápido) |
walk_in_place_fastest_up | Camina en el sitio hacia arriba (muy rápido) |
walk_in_place_fastest_left | Camina en el sitio hacia la izquierda (muy rápido) |
walk_in_place_fastest_right | Camina en el sitio hacia la derecha (muy rápido) |
ride_water_current_down | |
ride_water_current_up | |
ride_water_current_left | |
ride_water_current_right | |
walk_fastest_down | Camina hacia abajo (muy rápido) |
walk_fastest_up | Camina hacia arriba (muy rápido) |
walk_fastest_left | Camina hacia la izquierda (muy rápido) |
walk_fastest_right | Camina hacia la derecha (muy rápido) |
slide_down | Se desliza hacia abajo |
slide_up | Se desliza hacia arriba |
slide_left | Se desliza hacia la izquierda |
slide_right | Se desliza hacia la derecha |
player_run_down | Corre hacia abajo (con las botas) |
player_run_up | Corre hacia arriba (con las botas) |
player_run_left | Corre hacia la izquierda (con las botas) |
player_run_right | Corre hacia la derecha (con las botas) |
start_anim_in_direction | |
jump_special_down | |
jump_special_up | |
jump_special_left | |
jump_special_right | |
face_player | Se coloca mirando al jugador |
face_away_player | Se coloca de espaldas al jugador |
lock_facing_direction | Bloquea la dirección en la que mira |
unlock_facing_direction | Desbloquea la dirección en la que mira |
jump_down | Salta hacia abajo (1 cuadro) |
jump_up | Salta hacia arriba (1 cuadro) |
jump_left | Salta hacia la izquierda (1 cuadro) |
jump_right | Salta hacia la derecha (1 cuadro) |
jump_in_place_down | Salta en el sitio, mirando hacia abajo |
jump_in_place_up | Salta en el sitio, mirando hacia arriba |
jump_in_place_left | Salta en el sitio, mirando hacia la izquierda |
jump_in_place_right | Salta en el sitio, mirando hacia la derecha |
jump_in_place_down_up | Salta en el sitio, de abajo a arriba |
jump_in_place_up_down | Salta en el sitio, de arriba a abajo |
jump_in_place_left_right | Salta en el sitio, de izquierda a derecha |
jump_in_place_right_left | Salta en el sitio, de derecha a izquierda |
face_original_direction | Mira en la dirección original (establecida dentro del mapa) |
nurse_joy_bow | |
enable_jump_landing_ground_effect | |
disable_jump_landing_ground_effect | |
disable_anim | Bloquea las animaciones del objeto |
restore_anim | Desbloquea las animaciones del objeto |
set_invisible | Hace desaparecer el objeto |
set_visible | Hace que el objeto aparezca, si es invisible |
emote_exclamation_mark | Muestra el cuadro de exclamación |
emote_question_mark | Muestra el cuadro de interrogación |
emote_heart | Muestra el cuadro con un corazón. |
reveal_trainer | |
rock_smash_break | Animación de romper una piedra con golpe roca |
cut_tree | Animación de eliminar un árbol con corte |
set_fixed_priority | Modifica la prioridad del objeto (que se muestra encima de que) |
clear_fixed_priority | Resetea la prioridad del objeto |
init_affine_anim | Inicia la tabla de animaciones afines asignada al objeto |
clear_affine_anim | Resetea la tabla de animaciones afines asignada al objeto |
hide_reflection | Oculta el reflejo del objeto (en el agua u otras superficies) |
show_reflection | Muestra el reflejo del objeto (en el agua u otras superficies) |
walk_down_start_affine | Camina hacia abajo, comienza la animación afín asignada al objeto |
walk_down_affine | Camina hacia abajo mientras reproduce la animación afín. |
walk_diag_northwest | Camina diagonalmente (arriba + izquierda) |
walk_diag_northeast | Camina diagonalmente (arriba + derecha) |
walk_diag_southwest | Camina diagonalmente (abajo + izquierda) |
walk_diag_southeast | Camina diagonalmente (abajo + derecha) |
walk_slow_diag_northwest | Camina diagonalmente (arriba + izquierda) (despacio) |
walk_slow_diag_northeast | Camina diagonalmente (arriba + derecha) (despacio) |
walk_slow_diag_southwest | Camina diagonalmente (abajo+ izquierda) (despacio) |
walk_slow_diag_southeast | Camina diagonalmente (abajo+ derecha) (despacio) |
store_lock_anim | |
free_unlock_anim | |
walk_left_affine | |
walk_right_affine | |
levitate | Eleva el objeto, haciéndolo "levitar" |
stop_levitate | Detiene el efecto del movimiento 'levitate' |
destroy_extra_task | |
figure_8 | |
fly_up | Eleva el objeto, haciéndolo "volar" |
fly_down | Detiene el efecto del movimiento 'fly_up' |
step_end | Finaliza la cadena de movimientos. Es necesario ponerlo al final. |
Multichoice
Los multichoice permiten al jugador elegir una opción entre varias. Existen varias decenas de multichoice predeterminados, y estos varían de un juego a otro. Para ver los diferentes multichoice, consultar sMultichoiceLists, en './data/script_menu.h'.