Registrarse

[RH - Scripting] [ESCUELA DE SCRIPTS] Compilación / Evitar errores / msgbox

Estado
Cerrado para nuevas respuestas.

Xabier2012

Usuario mítico


Primero, os daré un pack de herramientas completo posteado en su momento por Ángel Asakura que os servirá para esta escuela: Pack de herramientas

En él, vamos a necesitar concretamente:
-Advanced Map 1.95 (Editor de mapas y eventos entre otras cosas)
-XSE 1.1 (Editor de scripts)

*Si utilizáis Esmeralda es recomendable usar Advanced Map 1.92. Aunque nuestras explicaciones y gráficos se basarán en la versión 1.95

También necesitaremos nuestra Rom base limpia. Esta la deberíais tener vosotros ya. Yo trabajaré en Fire red, os la pongo por si acaso:
Fire Red

¡Empecemos!




¿Cómo enlazo XSE a Advance Map?

Al enlazar nuestro XSE con nuestro Advanced map podremos abrir scripts directamente en nuestro XSE desde Advanced map. De esta forma nos será más fácil editar y acceder al XSE.

Para enlazar nuestro XSE al AM (Advanced Map) nos vamos a Settings, luego seleccionamos Choose script editor, y entonces vamos a la carpeta donde tenemos nuestro XSE y seleccionamos la aplicación para cargarla.


Estructura de los Scripts

Un script es un conjunto de código que se ejecuta en cascada. Esto quiero decir que el juego leerá el primer comando de nuestro código y lo ejecutará, cuando acabe ejecutará el que está por debajo y así de forma continua.

Lógicamente si un comando ordena ir a otro comando/dirección, el juego irá a la dirección mandada en vez de seguir con el comando siguiente.

Los comandos de los scripts se guardan en offsets. Un offset es como una caja de datos, puesto que un comando también está compuesto por datos, se podría decir que un offset es una caja que almacena datos.

El offset está representado por números en hexadecimal. Por ejemplo "800000" sería un offset, pero en XSE nuestros números hexadecimales tienen que ir precedidos por un "0x". Por lo tanto un offset sería "0x800000".

En un offset guardaremos nuestros datos de texto de minisprites, movimientos de minisprites, otras direcciones para que se ejecuten otras partes del código, etc.


Estructura del XSE


1-Indica la ruta de lo que hemos abierto. Cuando queramos hacer un script tendremos que abrir nuestro Rom en la opción Archivo

2-Botón de compilar. Compilar significa guardar nuestro script/(código que forma el script) en los datos del nuestra Rom. Como ya hemos dicho antes, estos datos se almacenan en offsets, entonces al compilar, lo que estamos haciendo es asignar los datos de nuestro código a offsets. A este botón le tendremos que dar cuando escribamos todo el código de un script.

3-Botón de descompilar. Si escribimos nuestro offset (teniendo cargada la rom) en el hueco de la izquierda y le damos al botón de descompilar, aparecerá el código almacenado en dicho offset. Luego nosotros podremos modificar ese código y volverlo a compilar. Aun que esto puede tener inconvenientes que ya veremos más adelante.

4-Calculadora. Si queremos pasar por ejemplo de numeros normales (decimal) a hexadecimal, escribimos nuestro número con el botón en dec. Luego pulsamos el botón "Hex" y nuestro número pasará a hexadecimal automáticamente. Esto nos será de utilidad más adelante.

5-Código de nuestro script.


Estructura del AM


1-Offset de nuestro script. Aquí pondremos el offset principal de nuestro script. IMPORTANTE: SE TIENEN QUE DEJAR LOS DOS PRIMEROS CEROS COMO ESTÁN Y PONER NUESTRO OFFSET DESPUÉS. Por ejemplo si nosotros tenemos el offset "0x8B0000", el script offsets quedaría así: "$008B0000". Cuando hablemos con un minisprite se ejecutará el script que pongamos en esta casilla.

2-Aquí se ponen flags, las cuales daremos más adelante. Solo recordar que en esta casilla se ponen flags y al poner flags podemos hacer desaparecer el mini, por ejemplo. Pero esto lo daremos en otra clase.

3-Normalmente cuando es un entrenador Pokémon se pune el numero 11. Puede estar a cero perfectamente, tampoco tengo mucha conciencia de para que sirve, no es de mucha utilidad.

4-Será 01 si es un entrenador estándar y 00 si no lo es.

5-Si es un entrenador marca la distancia a la cual te ve para retarte.

6-Cuando ponemos un offset en nuestro Script offset, y tenemos enlazado nuestro XSE al AM, podremos darle a Open script para abrir nuestro script directamente en el XSE.

7-Marca las coordenadas del evento.

8-Marca las coordenadas de donde se ponga el ratón

9-Nos lleva al cabezal del mapa. Lo utilizaremos para ver como se hacen los Scripts de nivel dentro de bastantes lecciones.


Empezando nuestro script

Bien. Carguemos nuestra Rom con el XSE y empezamos a escribir comandos.(Escribiré los comando la estructura "CODE" que proporciona el foro. Pero lo que escriba es como si lo escribiéramos en el XSE)

Código:
#dynamic 0x800000
Con este comando empezaremos todos nuestros scripts. Lo que hace es buscar offsets libres de datos para que se guarden los nuestros. Esos offsets los buscará a partir del numero 800000 porque así lo hemos puesto en dynamic. En Fire Red podéis poner 0x700000 ya que desde este offset hay muchos que están libres y podemos usar.

Cuando ponemos #dynamic 0x800000 sustituirá las palabras que empiecen por "@" por un offset libre. Por ejemplo:

Código:
#dynamic 0x800000

#org @inicio
Cuando compilemos nuestro script gracias al #dynamic se sustituirá el "@inicio" por un offset libre. Cuando cuando abramos nuestro script desde el AM veremos que se ha convertido en esto:

Código:
#org 0x800000
El #dynamic 0x800000 desaparecerá y el @inicio se ha sustituido por 0x800000 porque este offset está libre. IMPORTANTE: DESPUÉS DEL @ PONER UNA PALABRA COMPLETA. NO SE PUEDEN PONER DOS PALABRAS SEPARADAS POR UN ESPACIO PORQUE DARÁ ERROR.

¿Qué es el #org?

El #org indica que este offset en una dirección. Siempre que queramos escribir una dirección offset pondremos un #org antes. El funcionamiento de este #org se entenderá mejor cuando veas en esta lección como funciona.

Bueno, ahora ya sabemos como encontrar offset libres y como tiene que empezar nuestro script. Todos los comandos que se pongan después del #org (offset) son aquellos que nuestro ejecutará.

Podemos entender el #org como la dirección de nuestra casa, y que esa dirección estará asociada al offset que viene después. El primero #org con offset que se ponga es la dirección principal, y es la que tendremos que poner en el script offset de nuestro mini para que ejecute el código.



Comando Faceplayer

Este comando sirve para que cuando interactuemos con el mini del script, este, mira al jugador.

¿Cuándo no lo utilizaremos?

Pues por ejemplo si queremos simular que el minisprite está hablando solo y no se entera de que el jugador está cerca de él.

Vamos a implementarlo en nuestro código.

Código:
#dynamic 0x800000

#org @inicio
faceplayer

Comandos Lock y lockall

Con el comando lock se consigue que nuestro player no se mueva mientras se ejecuta el script.

El lockall tiene la misma función pero en vez de hacer efecto solo sobre nosotros, también afectará a todos los minis del mapa. De esta forma ninguno se moverá aunque tengan algún movimiento configurado por el AM.

Entonces nuestro código quedaría tal que así:

Código:
#dynamic 0x800000

#org @inicio
faceplayer
lock


msgbox

Con el comando msgbox abriremos nuestra caja de texto y podremos escribir frases para que se reproduzcan al ejecutase el comando.

El comando msgbox se compone así:

msgbox (offset) (tipo de mensaje)

Lo explico:

msgbox indica que se va abrir la caja de texto para un mensaje.

offset en el número offset el cual contendrá el texto de nuestro mensaje. Como tenemos el #dynamic, para buscar un offset libre ya dijimos que utilizaríamos un @ seguido de una palabra cualquiera. Entonces nuestro comando de momento quedaría así:

msgbox @texto (tipo de mensaje)


El tipo de mensaje es lo que su nombre indica. Es un número el cual le dice al juego el tipo de mensaje que se va a ejecutar. Estos son los tipos:

0x2 Se utiliza para textos normales. Si ponemos 0x2 no nos hará falta poner el faceplayer y el lock, puesto que este tipo de mensaje digamos que lo tiene incorporado.

0x3 Se utiliza para postes. Lo veremos en profundidad en la siguiente lección.

0x4 Es un mensaje normal pero este no se cerrará hasta que no pongamos el comando "closeonkeypress"

0x5 Este después de escribir el texto correspondiente abre la caja de texto del si/no. Entraremos en profundidad con esto en la siguiente lección.

0x6 Mensaje normal


Bueno nosotros queremos un mensaje normal, así que utilizaremos el 0x6, y entonces nos quedará de esta forma.

Código:
#dynamic 0x800000

#org @inicio
faceplayer
lock
msgbox @texto 0x6
¿Y nuestro mensaje?

Nuestro mensaje estará en el offset que se creará en @texto. Entonces ahora tendremos que crear la dirección en nuestro script y poner el texto que queramos. Como ya he dicho, lo que marca el comienzo de en un offset para que se ejecute es el #org. En el msgbox hacemos referencia a un offset que es donde estará nuestro texto. Entonces tenemos que poner un #org, nuestro offset y a continuación nuestro texto.

Código:
#dynamic 0x800000

#org @inicio
faceplayer
lock
msgbox @texto 0x6

#org @texto
= Hola
Vamos a explicar lo que acabo de escribir.
El #org lo pongo porque es una dirección offset, entonces cada vez que en uno de nuestros comandos pongamos un @ que haga referencia a un offset. Tenemos que crear aparte otro #org junto con el offset referenciado y luego escribir la información que se va a guardar. En este caso, texto.

¿Por qué ponemos @texto? Para que cuando se generen nuestros offsets el @texto se sustituirá por el mismo offset. Si no no tendría ningñun sentido llamar a un offset que está vacío. Si ponemos @ con palabras igual generará el mismo offset sino serán distintos offset.

Luego de crear la dirección offset, en la siguiente línea ponemos un = y con un espacio de margen el texto que queramos que se muestre.

El XSE tiene parámetros especiales para el texto, pero si pulsamos ctr+T abriremos una caja donde podremos introducir nuestro texto y lo convertirá e insertará automáticamente. Por ejemplo vamos a convertir esta frase y la vamos a insertar:

"Hola a todos. En un principio parece difícil pero con práctica todo es fácil"

Quedaría así:

Código:
#dynamic 0x800000

#org @inicio
faceplayer
lock
msgbox @texto 0x6

#org @texto
= Hola a todos. En un principio\nparece difícil pero con práctica\ltodo es fácil
Pese a los /n y /l que nos encontremos, en el juego se verá bien.
También hay comandos especiales que puedes introducir manualmente:

[player] Dirá tu nombre
[rival] dirá el nombre de tu rival

Colores: (Los pones antes del texto)

White - [white_fr]
Black - [black_fr]
Gray - [grey_fr]
Red - [red_fr]
Orange - [orange_fr]
Green - [green_fr]
Light Green - [lightgreen_fr]
Blue - [blue_fr]
Light Blue - [lightblue_fr]
Light Blue 2 - [lightblue2_fr]
Cyan - [cyan_fr]
Light Blue 3 - [lightblue3_fr]
Navy Blue - [navyblue_fr]
Dark Navy Blue - [darknavyblue_fr]

White - [white_fr]
Black - [black_fr]
Gray - [grey_fr]
Red - [red_fr]
Orange - [orange_fr]
Green - [green_fr]
Light Green - [lightgreen_fr]
Blue - [blue_fr]
Light Blue - [lightblue_fr]
Light Blue 2 - [lightblue2_fr]
Cyan - [cyan_fr]
Light Blue 3 - [lightblue3_fr]
Navy Blue - [navyblue_fr]
Dark Navy Blue - [darknavyblue_fr]

Entonces si queremos que nos pregunten por nuestro nombre, y el texto queremos que sea rojo, tendríamos que hacer esto:

Código:
#dynamic 0x800000

#org @inicio
faceplayer
lock
msgbox @texto 0x6

#org @texto
= [red_fr]¿Eres [player]?
Una vez que tenemos nuestro texto listo, ya nos podemos olvidar de nuestro #org de texto y volver a nuestro #org del offset principal.


waitmsg

waitmsg es un comando que hará que no se ejcuten las siguientes lineas de código hasta que no cierren el texbox de nuestro msg.

Este comando no tiene utilizar para textos simples, pero si por ejemplo alguien dice un texto y luego hay comandos para que ese mini se mueva, el mini se moverá mientras dice el texto. Para que primero diga el texto y luego se mueva, ponemos después del comando del mensaje un waitmsg.


Release y end

release es un comando que se debe de poner para que el mini deje de estar en "lock" y vuelva a su movimiento natural. Este comando lo pondremos justo antes de finalizar el script. Si ponemos un lock y no ponemos un release, el jugador se quedará bloqueada y no se podrá continuar el juego.

¿Y si he puesto lockall? Entonces tendrás que poner releaseall en vez de release.

Y en comando end es el que indica que nuestro código a terminado y que el jugador vuelve a ser libre.

Sabiendo esto nuestro codigo tiene que quedar así:

Código:
#dynamic 0x800000

#org @inicio
faceplayer
lock
msgbox @texto 0x6
release
end

#org @texto
= [red_fr]¿Eres [player]?
Aunque si utilizamos el tipo de mensaje 0x2, el código puede quedar así:

Código:
#dynamic 0x800000

#org @inicio
msgbox @texto 0x2
end

#org @texto
= [red_fr]¿Eres [player]?

Compilar

Hemos finalizado nuestro script. Ahora le daremos al botón de compilar y nos saldrá un cuadro como este:



El cuadro nos indica que offset libre fué asignado a cada @.
Nos vendrá marcado el offset principal (El del primer #org), y le tendremos que dar a copiar. Ahora pegamos nuestro offset en el cuadro "Script offset"
de nuestro mini en AM y ya lo tendremos.

A mí me ha quedado tal que así:



Preguntas frecuentes

¿Por qué mi jugador se queda bloqueado?

Posiblemente te falte el comando release o no has puesto el comando end

He compilado bien el script pero no me funciona

Asegúrate que dejas los dos primeros ceros como ceros en la casilla "script offset" del AM.

El mini me dice cosas que no le he puesto

Posiblemente se hayan asignado offset erróneos o tu mini está bugeado.
Asegúrate de que tienes #dynamic 0x800000 bien puesto. En caso de que persista el bug, borra el mini y crea otro, poniéndole el mismo offset principal.

He compilado, he abierto el script, lo he modificado y vuelto a compilar y ahora tengo bugs

Cuando abres un script compilado, le añades comandos y lo vuelves a compilar estás provocando que el offset almacene más datos de los que en un principio le fueron asignados, y esto causa bugs no solo en tu script sino en otros scripts con offsets de números cercanos.

Cuando se modifica y es para sustituir comando del miso tamaño o para cambiar un número o una letra no importa que compilemos tal cual. Pero si lo que quieres es añadir nuevos comandos, lo que tienes que hacer es asignar nuevos offsets. Para esto volverás a escribir arriba del todo #dynamic 0x800000 y sustituirás los offsets por nombre con @, (como si estuvieras haciendo un script desde el principio). De esta forma generarás nuevos offsets para el script y no bugearás el script ni otros scripts.

Algunos mensajes me salen de un color que no he puesto

Al menos en Fire Red, algunos minis con los que interaccionamos tienen un color de texto predeterminado. Si quieres poner otro color simplemente pon el comando especial correspondiente al color que quieras antes del texto.

Mi advanced map 1.95 en español tiene bugs

El AM 1.95 es español suele tener algunos bugs de texto, lo mejor instalarlo en lenguaje inglés, de esta forma no te dará ningún problema.


TAREA

tendréis que entregar un script donde habléis con un minisprite y os pregunte sobre vuestro rival. Luego en texto de color amarillo/naranja preguntará sobre el estado de salud de vuestra madre

Código:
#dynamic 0x800000

'---------------
#org @start
faceplayer
lock
msgbox @texto 0x6
release
end

#org @texto
= Niña: Hola, qué tal te encuentras?\nSe te ha pasado ya el enfado\lcon [rival]?\l[player]: Prefiero no hablar de ese\ltema...\l[orange_fr]Niña: Y qué tal se encuentra tu\lmadre? Le ha bajado la fiebre?

*Plazo de entrega máximo para el martes, este día incluido

@Tervaxx @Toni @Neon Skylar @AwesomeCS @Jaizu @RafaSc3 @~Nozz~ @LluviaElemental @AlexanderWWE @AlejoCr @Luna @Axnez @wenston91 @KaycerWolf @jfem
 
Última edición:
Usuario:AlexanderWWE
Rom Base:Pokemon FireRed
Lección:Compilación / Evitar errores / msgbox
Scripts:
Código:
#dynamic 0x800000

#org @texto
msgbox @texto 0x2
end

#org @texto
=¿odias a [rival]?\n  [orange_fr]¿como se\lsiente tu madre?

Código:
[IMG]http://imgur.com/eWguwwq.png[/IMG] [IMG]http://imgur.com/vZ2CeA7.png[/IMG]
 
Última edición:

NozZ C

Ando activo
Pues aqui mi tarea SENSEI

Usuario:Nozz
Rom Base:Ruby [USA]
Lección:Compilación / Evitar errores / msgbox
Scripts:
Código:
#dynamic 0x800000

'---------------
#org 0x800000
msgbox 0x880000A MSG_FACE '"Como vas con [rival]?\p[yellow_rs]..."
end


'---------
' Strings
'---------
#org 0x80000A
= Como vas con [rival]?\p[yellow_rs] y como ha estado la salud de tu madre?

Imágenes


 
Última edición:

Zeon

Haters gonna Hate.
Usuario:wenston91
Rom Base:FireRed
Lección:Evitar errores, msgbox, compilación
Scripts:
Código:
#dynamic 0x800000

'---------------
#org @start
faceplayer
lock
msgbox @texto 0x6
release
end

#org @texto
= Niña: Hola, qué tal te encuentras?\nSe te ha pasado ya el enfado\lcon [rival]?\l[player]: Prefiero no hablar de ese\ltema...\l[orange_fr]Niña: Y qué tal se encuentra tu\lmadre? Le ha bajado la fiebre?

Video

Si en el video les da error, o esperen media hora (segun google) o denle a este link: VIDEO
 
Última edición:

Jaizu

Usuario mítico
Usuario: Jaizu
Rom Base: Ruby
Lección: Compilación / Evitar errores / msgbox
Scripts:
Código:
'---------------
#org 0x800010
msgbox 0x880001A MSG_FACE '"¿Qué tal está tu rival España?\n[y..."
end


'---------
' Strings
'---------
#org 0x80001A
= ¿Qué tal está tu rival España?\n[yellow_rs]¿Qué tal tu madre?

Imágenes
 
Usuario:JFEM
Rom Base:Fire Red USA
Lección:Compilación / Evitar errores / msgbox
Scripts:
Código:
#dynamic 0x800000

#org @inicio
lock
faceplayer
msgbox @text 0x6
release
end

#org @text
= [red_fr]Desconocido:[black_fr]¡Hey!\n[player],¿Has visto a [green_fr][rival][black_fr]?\lPor cierto, [orange_fr]¿Cómo está tu\lmadre?\l[black_fr]Dale un saludo de mi parte.



Imágenes


 

Toni

Leyenda de WaH
Usuario:Toni
Rom Base:FR
Lección:Compilación / Evitar errores / msgbox
Scripts:
Código:
#dynamic 0x800000

#org @inicio
lock
faceplayer 
msgbox @texto1 0x6
release
end

#org @texto1
= Ayer ví a tu rival gary,\nIba muy enfadado por\lel combate de ayer.\lPor cierto,\l[orange_fr]¿Cómo está tu madre?


Imágenes
 
Última edición:

KevinXDE

Usuario mítico
Usuario: Tervaxx
Rom Base: Fire Red
Lección: Compilación / Evitar errores / Msgbox
Scripts:
Código:
#dynamic 0x700000

'---------------
#org @start
faceplayer
lock
msgbox [MENTION=29127]String[/MENTION]1 MSG_NORMAL '"[blue_fr]Lance[black_fr]: Ei, ¡[re..."
release
end


'---------
' Strings
'---------
#org [MENTION=29127]String[/MENTION]1
= [blue_fr]Lance[black_fr]: Ei, ¡[red_fr][player][black_fr]! ¡Me vienes de\nperlas! ¿No habrás visto a [green_fr][rival][black_fr]\lcerca?\p[blue_fr]Lance[black_fr]: Después de que ganaras la\nLiga salió corriendo. Y como tu\lrenunciaste al título de campeón,\lel Alto Mando queríamos dárselo\lde nuevo.\p[blue_fr]Lance[black_fr]: En fin... Deberíais limar\nasperezas. Ya sabes que [green_fr][rival][black_fr] es \lmuy competitivo y que cuando\lpierde...\p[blue_fr]Lance[black_fr]: [orange_fr]A todo esto, ¿cómo se\nencuentra tu madre? ¿Todo bien?\pAh, si mi madre siguiera viva...\nCuida de ella, [red_fr][player][orange_fr].\p[blue_fr]Lance[black_fr]: Voy a seguir por aquí, a ver\nsi veo a [green_fr][rival][black_fr]. Un placer, [red_fr][player][black_fr].

Video
 
Usuario:RafaSc3
Rom Base:FR
Lección:Compilación / Evitar errores / msgbox
Scripts:
Código:
'---------------
#org 0x800101
faceplayer
lock
msgbox 0x880010E 0x6 '"¿Qué tal está [rival]? Le noto mu ..."
release
end


'---------
' Strings
'---------
#org 0x80010E
= ¿Qué tal está [rival]? Le noto mu raro\nultimamente.\l[orange_fr]¿Y que tal se encuentra tu madre\ldespues de la operación?
 
Última edición:

Luna

Goody Two Shoes
Usuario:Luna
Rom Base:FR
Lección:Compilación / Evitar errores / msgbox
Scripts:

Código:
#dynamic 0x800000

'---------------
#org @start
faceplayer
lock
msgbox [MENTION=29127]String[/MENTION]1 MSG_NORMAL '" Hola [player] he estado observan..."
release
end


'---------
' Strings
'---------
#org [MENTION=29127]String[/MENTION]1
= Hola [player] he estado observando a\n[rival] al parecer disfruta de los\lvideojuegos de texto,¿lo sabias?\l[orange_fr]Por cierto, escuche que tu madre\lha estado preparando una fiesta\lpara el profesor, no me la\lperdería  por nada del mundo

 

rdoble

Gente legal... ¿o no?
Usuario: rdoble
Rom Base: Fire Red
Lección: Compilación / Evitar errores / msgbox
Scripts:
Código:
'---------------
#org 0x800000
faceplayer
lock
msgbox 0x880000D 0x6 '"Oye, hace tiempo que no veo a\n[ri..."
release
end


'---------
' Strings
'---------
#org 0x80000D
= Oye, hace tiempo que no veo a\n[rival]. Me pregunto qué tal le\lirá con sus estudios...[orange_fr]Por\lcierto, ¿qué tal se encuentra tu\lmadre? La última vez que la vi,\ltenía una fiebre...
Imágenes:


 

Axnez

El que te trasnocha :v
Código PHP:
Usuario:Axnez
Rom Base:FR
Lección:Compilación / Evitar errores / msgbox
Scripts:
Código:
dynamic 0x800000

#org @inicio
faceplayer
lock
msgbox @texto 0x6
release
end

#org @texto
= ¿[RIVAL] todavia sigue molesto por\nla derrota? bueno, ya se le pasara...\l[orange_fr] por cierto ¿como esta tu mama?

Imágenes

 
Usuario:LluviaELemental
Rom Base:Fire Red
Lección:Compilación / Evitar errores / msgbox
Scripts:
Código:
#dynamic 0x800000

'---------------
#org @start
faceplayer
lock
msgbox  [MENTION=29127]String[/MENTION]1 MSG_NORMAL '"Amy: ¿Sigues enfadado con [rival]?..."
release
end


'---------
' Strings
'---------
#org  [MENTION=29127]String[/MENTION]1
= Amy: ¿Sigues enfadado con [rival]?\n[orange_fr] Y por cierto ¿como se\lencuentra tu madre?


Imágenes

 
Última edición:

Neon Skylar

Rojo Fuego User
Usuario:Neon Skylar
Rom Base:Fire Red
Lección:Compilación / Evitar Errores / Msgbox

#dynamic 0x800000

'---------------
#org @start
faceplayer
lock
msgbox @String1 MSG_NORMAL '"[red_fr]Hola [player], [rival] me ..."
release
end


'---------
' Strings
'---------
#org @String1
= [red_fr]Hola [player], [rival] me dijo que te\nestaba esperando en el\llaboratorio,[orange_fr] por cierto, como\lha estado la salud de tu madre\ldespues de la Operacion?
 
Usuario:KaycerWolf
Rom Base:pokemon FireRed
Lección:Compilación / Evitar errores / msgbox
Scripts:
Código:
#dynamic 0x800000

'---------------
#org @start
faceplayer
lock
msgbox      [MENTION=29127]String[/MENTION]1 
release
end


'---------

'---------
#org @texto
= [blue_fr]se que quieres ser le mejor\nKaycer pero todo a su\ltiempo...[orange_fr]quizas deberias ver a\ltu madre)

:
: [/SPOILER]:
 
Última edición por un moderador:
Usuario: AwesomeCS
Rom Base: Fire red
Lección: 1 (Compilación / Evitar errores / msgbox
Scripts:
Código:
#dynamic 0x800000

'---------------
#org @start
faceplayer
lock
msgbox [MENTION=29127]String[/MENTION]1 MSG_NORMAL '"Hola [player], ¿has visto a [rival..."

'---------
' Strings
'---------
#org [MENTION=29127]String[/MENTION]1
= Hola [player], ¿has visto a [rival]?\nHay una orden de búsqueda en el\lcuartel. Al parecer desapareció\layer.\l orange FR Por cierto, ¿cómo está tu madre?\lEspero que se recupere pronto.

Imágenes



 
Estado
Cerrado para nuevas respuestas.
Arriba