Registrarse

[Duda Prof. Oak]

Estado
Cerrado para nuevas respuestas.

xXJurassXx

Técnico Informatico
Buenas, tengo una duda en FR (Fire Red), y es acerca de los pokemon iniciales que te da Oak, el caso es que quiero que por ejemplo llegues "tarde" y oak te diga que no quedan pokemons iniciales para el prota, pero que en cambio te de un eevee en vez de elegir entre Charmander, squirtle y bulbasaur... Como se haría eso en un script? Si alguien me ayudara se lo agradecería mucho.

No se si me vais a entender, pero espero que si xD, si no me entendéis preguntarme o decirme que lo explique algo mejor y lo intentare :)

Gracias de Antemano.

Att: xXJurassXx
 

Fuser

Spriter Cambiante
Pues según lo que yo entiendo de Scripting, lo que deberias hacer es un givepokemon, con una flag para que no se repita, y te de dos eevees.
#dynamic 0x800000
#include stdpoke.rbh

#org @start
lock
faceplayer
checkflag 0x200
if 0x1 goto @snippet1
msgbox @String1 MSG_NORMAL
givepokemon 0x85 0x14 0x0 0x0 0x0 0x0
msgbox @String2 MSG_NORMAL
fanfare 0x170
setflag 0x200
release
end

#org @snippet1
msgbox @String3 MSG_NORMAL
end

#org @String1
= Llegas tarde, eso no me gusta y me\nveo obligado a darte este Eevee.

#org @String2
= [player] ha obtenido a Eevee

#org @String3
= Perdona, querias algo?

Soy un manco con los Scripts, si alguien ve fallos, que los corrija por favor!:(
 

xXJurassXx

Técnico Informatico
Pues según lo que yo entiendo de Scripting, lo que deberias hacer es un givepokemon, con una flag para que no se repita, y te de dos eevees.
#dynamic 0x800000
#include stdpoke.rbh

#org @start
lock
faceplayer
checkflag 0x200
if 0x1 goto @snippet1
msgbox @String1 MSG_NORMAL
givepokemon 0x85 0x14 0x0 0x0 0x0 0x0
msgbox @String2 MSG_NORMAL
fanfare 0x170
setflag 0x200
release
end

#org @snippet1
msgbox @String3 MSG_NORMAL
end

#org @String1
= Llegas tarde, eso no me gusta y me\nveo obligado a darte este Eevee.

#org @String2
= [player] ha obtenido a Eevee

#org @String3
= Perdona, querias algo?

Soy un manco con los Scripts, si alguien ve fallos, que los corrija por favor!:(
Gracias, pero dices que me dará 2 eevee ._.?
con solo 1 eevee ya me valdría xD, y luego alguna forma de desactivar los tres iniciales para que no se puedan coger?

Att: xXJurassXx
 

Fuser

Spriter Cambiante
Gracias, pero dices que me dará 2 eevee ._.?
con solo 1 eevee ya me valdría xD, y luego alguna forma de desactivar los tres iniciales para que no se puedan coger?
Me refiero que con la flag, no te daran otro eevee. si quieres desactivar los iniciales, borralos del mapa y quitalos del script base de Oak.

Espero haberte ayudado :)
 

xXJurassXx

Técnico Informatico
Me refiero que con la flag, no te daran otro eevee. si quieres desactivar los iniciales, borralos del mapa y quitalos del script base de Oak.

Espero haberte ayudado :)
Gracias, si tengo algún problema mas, ya te avisare. :)

Gracias por la ayuda.

Att: xXJurassXx
 

H.B.P

Emperador Kaktiácero
Miembro de honor
Sé que la duda está prácticamente resuelta, pero quiero perfilar un poco el script que te ofrece PokeSwift por unas opciones un poco más sotisficadas, te dejaré las opciones posibles en dos spoilers:

En lugar de usar una flag (variable booleana), que vienen a ser escasas y de un único uso, podrías usar una variable normal, en el juego hay muchas disponibles y son altamente reutilizables. Te dejaré la estructura de cómo sería el script si empleas una variable para hacer la comprobación:

#dynamic 0x(offset)
#org @start
lock
faceplayer
compare 0x(variable) 0x(valor X)
if 0x4 goto @snippet1 '=> Si el valor a comparar es mayor o igual que el valor X, se produce la redirección.'
msgbox @String1 MSG_NORMAL
givepokemon 0x85 0x14 0x0 0x0 0x0 0x0
msgbox @String2 MSG_NORMAL
setvar 0x(variable) 0x(valor Y) '=> Estableces un valor Y (2, 3, 4, A, el que sea) a la variable que elijas.'
release
end

#org @snippet1
msgbox @String3 MSG_NORMAL
end

#org @String1
= Llegas tarde, eso no me gusta y me\nveo obligado a darte este Eevee.

#org @String2
= [player] ha obtenido a Eevee

#org @String3
= Perdona, querias algo?

En lugar de usar una flag normal y corriente, que son limitadas y pueden ser usadas para cosas más importantes, puedes usar la flag para activar el Menú Pokémon:

#dynamic 0x800000
#include stdpoke.rbh

#org @start
lock
faceplayer
checkflag 0x828
if 0x1 goto @snippet1
msgbox @String1 MSG_NORMAL
givepokemon 0x85 0x14 0x0 0x0 0x0 0x0
msgbox @String2 MSG_NORMAL
fanfare 0x170
setflag 0x828
release
end

#org @snippet1
msgbox @String3 MSG_NORMAL
end

#org @String1
= Llegas tarde, eso no me gusta y me\nveo obligado a darte este Eevee.

#org @String2
= [player] ha obtenido a Eevee

#org @String3
= Perdona, querias algo?
 

xXJurassXx

Técnico Informatico
George Boo♪;290547 dijo:
Sé que la duda está prácticamente resuelta, pero quiero perfilar un poco el script que te ofrece PokeSwift por unas opciones un poco más sotisficadas, te dejaré las opciones posibles en dos spoilers:

En lugar de usar una flag (variable booleana), que vienen a ser escasas y de un único uso, podrías usar una variable normal, en el juego hay muchas disponibles y son altamente reutilizables. Te dejaré la estructura de cómo sería el script si empleas una variable para hacer la comprobación:

#dynamic 0x(offset)
#org @start
lock
faceplayer
compare 0x(variable) 0x(valor X)
if 0x4 goto @snippet1 '=> Si el valor a comparar es mayor o igual que el valor X, se produce la redirección.'
msgbox @String 1 MSG_NORMAL
givepokemon 0x85 0x14 0x0 0x0 0x0 0x0
msgbox @String 2 MSG_NORMAL
setvar 0x(variable) 0x(valor Y) '=> Estableces un valor Y (2, 3, 4, A, el que sea) a la variable que elijas.'
release
end

#org @snippet1
msgbox @String 3 MSG_NORMAL
end

#org @String 1
= Llegas tarde, eso no me gusta y me\nveo obligado a darte este Eevee.

#org @String 2
= [player] ha obtenido a Eevee

#org @String 3
= Perdona, querias algo?

En lugar de usar una flag normal y corriente, que son limitadas y pueden ser usadas para cosas más importantes, puedes usar la flag para activar el Menú Pokémon:

#dynamic 0x800000
#include stdpoke.rbh

#org @start
lock
faceplayer
checkflag 0x828
if 0x1 goto @snippet1
msgbox @String1 MSG_NORMAL
givepokemon 0x85 0x14 0x0 0x0 0x0 0x0
msgbox @String2 MSG_NORMAL
fanfare 0x170
setflag 0x828
release
end

#org @snippet1
msgbox @String3 MSG_NORMAL
end

#org @String1
= Llegas tarde, eso no me gusta y me\nveo obligado a darte este Eevee.

#org @String2
= [player] ha obtenido a Eevee

#org @String3
= Perdona, querias algo?
Gracias jaja, si veo que tengo algún error o algo por el estilo ya te avisare por Skype :)

Att: xXJurassXx
 
Estado
Cerrado para nuevas respuestas.
Arriba