Error con mensaje yes/no

Avisos


Like Tree8Gracias
Tema cerrado
 
Herramientas Desplegado
  #1  
08/06/2016
Predeterminado Error con mensaje yes/no
Hola, bueno, tengo un problema con ciertos scripts que incluyen las cajas de texto. Lo que sucede es que tengo un script donde a partir de un yes/no me dan cierto item.
El problema está en que cuando asigno una flag al mini, efectivamente me da el item, pero al entrar a una casa y volver a salir, este mini desaparece. Me ha pasado con todos los scripts a los que les asigno una flag. ¿Qué puede estar mal?

Código:
#dynamic 0x800000
#org @inicio
lock
faceplayer
checkflag 0x1233
if 0x1 goto @fin
msgbox @mensaje1 0x5
compare LASTRESULT 0x1
if 0x1 goto @inicio2
if 0x0 goto @inicio3
end

#org @mensaje1
= ¿Que chinge a su madre el AMERICA?

#org @inicio2
msgbox @frase 0x2
giveitem 0x2 0x1 0x0
setflag 0x1233
end

#org @inicio3
msgbox @fraseno 0x2

#org @frase
= Lo sabia

#org @fraseno
= Pues vete

#org @fin
release
end
Gracias: Rubire4
  #2  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
Claro. Si le asignas una flag a un mini, éste no se ve al estar activada ¿Para qué quieres asignársela?
Gracias: Rubire4

¡Jarcors!

  #3  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
@Laquin Supongo que la querrá para que cuando vuelvas a hablar con el te diga que no te va a dar más objetos o algo así.
  #4  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
Dicho por Rubire4 Ver mensaje
@Laquin Supongo que la querrá para que cuando vuelvas a hablar con el te diga que no te va a dar más objetos o algo así.
Para eso no hace falta asignarle nada, simplemente con un checkflag se puede, ¿no?(corregidme si me equivoco)

¡Jarcors!

  #5  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
@Laquin Él, al principio del script puso:
Código:
checkflag 0x1233
if 0x1 goto @fin
Lo cual llevaría a:
Código:
#org @fin
release
end
Debería haber puesto en @fin:
Código:
#org @fin
msgbox @texto3 0x6
release
end
Lo cual llevaría a:
Código:
#org @texto3
= No te voy a dar más
¿O no es así?
  #6  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
Dicho por MarySmile Ver mensaje
Hola, bueno, tengo un problema con ciertos scripts que incluyen las cajas de texto. Lo que sucede es que tengo un script donde a partir de un yes/no me dan cierto item.
El problema está en que cuando asigno una flag al mini, efectivamente me da el item, pero al entrar a una casa y volver a salir, este mini desaparece. Me ha pasado con todos los scripts a los que les asigno una flag. ¿Qué puede estar mal?

Código:
#dynamic 0x800000
#org @inicio
lock
faceplayer
checkflag 0x1233
if 0x1 goto @fin
msgbox @mensaje1 0x5
compare LASTRESULT 0x1
if 0x1 goto @inicio2
if 0x0 goto @inicio3
end

#org @mensaje1
= ¿Que chinge a su madre el AMERICA?

#org @inicio2
msgbox @frase 0x2
giveitem 0x2 0x1 0x0
setflag 0x1233
end

#org @inicio3
msgbox @fraseno 0x2

#org @frase
= Lo sabia

#org @fraseno
= Pues vete

#org @fin
release
end
pero que es lo que quieres hacer? quitar el mini o no?
para hacer que un mini aparezca o desaparezca, lo que tienes que hacer es asignarle una flag,por ejemplo:
0x2C no solo puedes hacer que el mini desparezca con una flag, puedes hacer más de una cosa XD

para quitar una flag, lo que tienes que hacer es:
clearflag 0x2C
showsprite 0x1 (showsprite: muestea el mini 0x1: numero del mini

la contraria a esta sería:
setflag 0x2C
hidesprite 0x1

tambien puedes combinarlo con un script de nivel, y asignarle una variale, para que el mini aparezca si tienes por ejemplo la variable:
0x40FF 0x0 (0x40FF: varible 0x0: valor de la misma)

entonces deberías poner:

Código:
#dynamic 0x800000
#org @inicio
lock
compare 0x40FF 0x0
if 0x1 goto @pointer
msgbox @ortito 0x6
release
end
(esto compara si la vriable tiene el valor 0, si lo tiene te lleva al pointer, dentro del pointer puedes escribir el script que quieras.

en caso de que la variable 0x40FF no tenga el valor 0 seguirá el script, osea lo que está deajo del "if 0x1" que sería el msgbox, a menos que despues de el "if 0x1"
pongas otro "compare 0x40FF 0x1" (sería si la variable tiene el valor 1) te envie a otro pointer

en los pointers a los que quieras que el script te envie, puedes poner lo que valla a pasar con el mini, tambien puedes usar los "setvar" para añadirle un valor a la variable, y hacer que si la variable tiene un valor (valor pre establecido por el setvar) te envie a un pointer.

Lo ves, es algo muy fácil ¿no?

Salu2
Discord: DrakoVinyl #3790
  #7  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
Dicho por Rubire4 Ver mensaje
@Laquin Él, al principio del script puso:


Lo cual llevaría a:


Yo tampoco entiendo por qué sucede eso.
Por eso digo, el asignarle una flag al mini no ayuda, y lo que es más, le ha dado problemas. Así que creo que ya sabe la respuesta...

¡Jarcors!

  #8  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
Dicho por Rubire4 Ver mensaje
@Laquin Él, al principio del script puso:


Lo cual llevaría a:


Debería haber puesto en @fin:
Código:
#org @fin
msgbox @texto3 0x6
release
end
Lo cual llevaría a:
Código:
#org @texto3
= No te voy a dar más
¿O no es así?
lo que creo que pasa es que despues de esto:

#org @inicio2
msgbox @frase 0x2
giveitem 0x2 0x1 0x0
setflag 0x1233

justo debajo del setflag, no puso lo que pasaría con el mini, tiene que poner un hidesprite o algo.

lo mismo en el @fin
antes del release, tendria que haber puesto algo, lo que quiere que haga el mini, o lo que quiere que ocurra
Discord: DrakoVinyl #3790
  #9  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
Entonces, ¿cómo se haría para cuando quieras que, por ejemplo, si hablas con un personaje te diga una cosa, y para cuando hables otra vez con él te diga otra?
  #10  
08/06/2016
Predeterminado Respuesta: Error con mensaje yes/no
Dicho por Rubire4 Ver mensaje
Entonces, ¿cómo se haría para cuando quieras que, por ejemplo, si hablas con un personaje te diga una cosa, y para cuando hables otra vez con él te diga otra?
Con flags, puedes hacerlo así:

Script de ejemplo

Código:
#dynamic 0x800000

#org @main
lock
faceplayer
checkflag 0xNumdelFlag 'Mira si la flag está activada
if 0x1 goto @activado 'Si así es, irá al pointer @activado. Sin embargo, si no lo está, seguirá por la línea siguiente
msgbox @textono 0x6 'Así, esto solo pasará cuando la flag esté desactivada(es decir, si es la primera vez)
setflag 0xNumdelFlag 'Y como queremos que la segunda vez la flag esté activada, la activaremos
release
end

#org @activado 'Esto solo ocurre cuando está activado(es decir, si no es la primera vez)
msgbox @textosi 0x6
release
end

#org @textono
= Nunca hemos hablado

#org @textosi
= No es la primera vez que hablamos


Aunque es mejor hacerlo con vars, y guardar las flags para la desaparición de minis.
Gracias: Rubire4

¡Jarcors!


Última edición por Laquin; 08/06/2016 a las 15:18
Tema cerrado

Herramientas
Desplegado

Permisos para publicar mensajes
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los BB code están Activado
Los Emoticones están Activado
El código [IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Desactivado



Extra
Estilo clásico
La franja horaria es GMT +1. Ahora son las 17:11.

© Whack a Hack! 2019