Texto con Colores + Flags . PokeScript
Para este tutorial ire por partes. Asi que primero hare la parte de las Flags (Ya veran luego porque primero esta parte).
Flags
Pues, primero que nada, seguro muchos se preguntaran : Que #@:?! es una FLAG!? xD.
Bueno, una flag es un numero que su objetivo es revisar o checkear si es que algo ya paso, y si ese "algo" ya paso, que otra
cosa suceda. Asi de simple. Bueno, ahora el ejemplo para que entiendan mejor.
Las flags en un juego NO son infinitas, de hecho, hay muchisimas utilisadas durante el Ruby o el FireRed. Estas son algunas
flags libres: 0x200 - 0x2FF, 0x500 - 0x7FF, y 0x1000 – 0x10FF (obviamente, que el guion (-) significa A - B -> Desde A hasta B)
Código:
#org $inicio
lock
faceplayer
checkflag 0x200
if b_true goto $hecho
message $color
$color 1 = \c\h01\h08Esta es la clase de colores!
boxset 6
setflag 0x200
release
end
#org $hecho
lock
message $nuevo
$nuevo 1 = Hola \v\h01!\pQuieres que te repita la clase?
boxset 5
compare LASTRESULT 1
if 1 goto $acuerdo
message $ok
$ok 1 = Bueno, si no quieres...\nNo voy a insistir\pen repetirte la clase xD
boxset 6
release
end
#org $acuerdo
lock
message $quieres
$quieres 1 = Asi que si quieres...\nMejor preguntamelo en un rato\paver si me dan ganas.
boxset 6
clearflag 0x200
release
end
Pues, ahora a explicar todo, lo de "lock" y "faceplayer" ya lo he tocado antes, igualmente los messages asi que no hablare
de eso en lo absoluto.
El script es algo simple si lo lees bien xD Comenzaremos en orden.
checkflag 0x200
if b_true goto $hecho
Lo que hace alli es simplemente checkear, revisar la flag 0x200 , si ya ha sido activada.
El if b_true goto $hecho se parece a lo de la caja YES/NO, asi que eso lo deben entender facilmente, si ha sido activada
ira al pointer $hecho.
Eso es simple, y pues, si no esta activada, continuara con el script.
$color 1 = \c\h01\h08Esta es la clase de colores!
Eso es un texto simple, solo que vean esto:
\c\h01\h08 Eso quiere decir que el texto va a salir azul. Pueden poner otros codigos
para que salga de colores xD (estan mas abajo)
Ahora, terminando la parte del texto, sale lo siguiente ->
setflag 0x200 <- Eso quiere decir que ya esta activando la flag 200,
osea, que si le volvemos a hablar al tipo este en vez de continuar con el script, se va a ir al offset $hecho.
En $hecho es un script simple, ustedes lo conocen, es de boxset 5, te pregunta si quieres que repita la clase, si pones
NO te va a salir un texto y te deja ir. Pero si le vuelves a hablar te va a seguir preguntanto.
Por otro lado, si pones YES, va a pasar que te va a decir que vuelvas mas tarde aver si tiene ganas de decirtelo xD haha
Pero, bueno, eso lo puse a proposito, porque, mas adelante hay otro comando nuevo
clearflag 0x200. Lo que hace
este comando es desactivar la flag 200. Osea, que si le vuelves a hablar, ya la flag no va a estar checkeada y por
consiguiente, va a continuar con el script que sale con color azul.
Aqui hay una lista de colores:
Para FireRed y LeafGreen:
White - \c\h01\h00
Black - \c\h01\h02
Grey - \c\h01\h03
Red - \c\h01\h04
Orange - \c\h01\h05
Dark Green - \c\h01\h06
Cyan - \c\h01\h07
Blue - \c\h01\h08
Light Blue - \c\h01\h09
Y para Ruby/Zafiro
(no probado en Emerald)
White - \c\h01\h01
Red - \c\h01\h02
Grey - \c\h01\h03
Blue - \c\h01\h04
Black - \c\h01\h09
Pink - \c\h01\h0C
Brown - \c\h01\h0D
Texto con Colores + Flags . XSE
Hare el mismo script, pero para XSE.
Código:
#dynamic 0x800000
#org @start
lock
faceplayer
checkflag 0x200
if 0x0 goto @hecho
textcolor 0x00
msgbox @color 0x6
setflag 0x200
release
end
#org @hecho
lock
msgbox @nuevo 0x5
if 0x1 goto @acuerdo
msgbox $ok 0x6
release
end
#org @acuerdo
lock
msgbox @quieres 0x6
clearflag 0x200
release
end
#org @color
= Esta es la clase de colores!
#org @nuevo
= Hola \v\h01!\pQuieres que te repita la clase?
#org @ok
= Bueno, si no quieres...\nNo voy a insistir\pen repetirte la clase xD
#org @quieres
= Asi que si quieres...\nMejor preguntamelo en un rato\paver si me dan ganas.
Aca es practicamente lo mismo al PokeScript. Lo unico diferente es:
textcolor 0x00 -> Eso indica que el texto es azul.
Ahora la diferencia del Message Box es esta: msgbox @quieres 0x6 . Pues como se dan cuenta, ya no se
pone "callstd 0x6" si no, al costado pones 0x6 que es lo mismo
Luego lo demas es practicamente lo mismo.
Algunos colores:
* Blue = 0x00
* Red = 0x01
* Black = 0x02
Aun no hay muchos, pero es cuestion de que ustedes investiguen algunos otros colores. ^^
Tarea:
Hagan 2 scripts, que AMBOS incluyan esto : que incluya textos con 0x6 y 0x5 (yes/no), que incluya flags. (Lo de
clearflag pueden NO usarlo ^^) y tambien que incluya COLORES. Eso es todo.
No crean que soy malo por dejar todo esto, es facil la tarea xD Ademas, la proxima tarea no se cuando la pondre, y ademas
ya mañana se acaba el 2008 xD Y por eso mismo dejo una tarea que incluyan TODO lo enseñado hasta ahora ^^
Posteado por Derv1205
La tarea es hacer DOS SCRIPTS. Y los DOS SCRIPTS tienen
que tener TODO LO APRENDIDO HASTA AHORA. Esa es la tercera tarea.