Registrarse

[Scripts] test

Estado
Cerrado para nuevas respuestas.

Jordithc7

Usuario de platino
base: fire red
necesito un script de un test royo te gusta la montaña? si, no.. con varias preguntas y despues de esas preguntas segun las respuestas te de un huevo o otro huevo lo necesito para 3 huevos con 4 o 5 preguntas

para algunos no sera muy dificil pero yo me lio mucho con los setvar compare y todo eso y la acabo liando siempre. thanks!!
 

.Areku_Sama

Old school ROM-Hacker EST. 2006
Necesitas ser más específico con lo que planteas. ¿Por qué no dibujas un diagrama de flujo con todas las posibles situaciones para aclararte un poco el panorama.

Te comparto un script de Sí/No que yo mismo hice.


Código:
#org 0x9CE960
msgbox 0x89CE940 0x5 '"¿Deseas descansar?"
compare 0x800D 0x1
if 0x1 goto 0x89CEA11
msgbox 0x89CF240 0x6 '"Decidiste no descansar."
end

'---------------
#org 0x9CEA11
closeonkeypress
fanfare 0x100
fadescreen 0x1
special 0x0
pause 0x50
movesprite 0xFF 0x1 0x4
movesprite 0x7F 0xF 0x4
fadescreen 0x0
msgbox 0x89CF258 0x6 '"Qué sueño tan reparador."
releaseall
end


'---------
' Strings
'---------
#org 0x9CE940
= ¿Deseas descansar?

#org 0x9CF240
= Decidiste no descansar.

#org 0x9CF258
= Qué sueño tan reparador.
Compare 0x800D 0x1 no es otra cosa mas que. ¿El jugador dijo que sí?
if 0x1 goto 0x____ (Si el jugador dijo que SI) entonces ejecutarse otro script.

Para cuando el jugador dice que no puedes usar la siguiente línea.
Compare 0x800D 0x0
if 0x1 goto 0x<<Script donde el jugador dice que no>>

Pero en este script no fue necesario poner el if 0x0. Ya que si no se cumple la condición, automáticamente continúa el script y el resultado es el mismo en el juego.

EDIT:
En tu caso podrías hacer lo siguiente.

Código:
#dynamic 0x800000 (o donde quieras que empiece tu script para tomar espacio libre)

#org @inicio
msgbox 0x@Pregunta1 0x5 //El 0x5 es esencial para las preguntas de SI/NO
compare 0x800D 0x1 // Compara si dijo que sí
if 0x1 call @DijoQueSiPregunta1
if 0x0 call @DijoQueNoPregunta1
nop //el nop es un separador nada más xD
nop
nop 
msgbox 0x@Pregunta2 0x5 //El 0x5 es esencial para las preguntas de SI/NO
compare 0x800D 0x1 // Compara si dijo que sí.
if 0x1 call @DijoQueSiPregunta2
if 0x0 call @DijoQueNoPregunta2
nop
nop
nop
msgbox 0x@Pregunta3 0x5 //El 0x5 es esencial para las preguntas de SI/NO
compare 0x800D 0x1 // Compara si dijo que sí.
if 0x1 call @DijoQueSiPregunta3
if 0x0 call @DijoQueNoPregunta3
end
Ahora deberás programar cada script señalado con la arroba con la acción que desees realizar en cada resultado de Sí y
Quizá sumando 1 a una variable y comparar al final, la variable que sea mayor, dar el huevo.
Eso te lo dejo a tu criterio.

No, no olvides poner return en lugar de end en cada script secundario para que regrese al donde se quedó.

Quizá sea enredoso al inicio pero con la práctica se te hará divertido.
 
Última edición:
Estado
Cerrado para nuevas respuestas.
Arriba