Junio 20, 2013, 04:00:00 am

Autor Tema: Ayuda con script  (Leído 523 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Fenix oscuro

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 80
    • Ver Perfil
    • SGmyGameS
Ayuda con script
« en: Mayo 09, 2011, 04:41:12 am »
ADVERTENCIA ESTE CODIGO ES LETAL

bueno estaba haciendo un simple juego cuando me di cuenta de que algo fallaba
q = get_string('question 1','1+1?')

r = '2'

if q = r
q2 = get_string('question 2','2+2?')

r2 = '4'

if q2 = r2
q3 = get_string('question 3','4+4?')

r3 = '8'

if q3 = r3
q4 = get_string('question 4','8+8?')

r4 = '16'

if q4 = r4
q5 = get_string('question 5','16+16?')

r5 = '32'

if q5 = r5
q6 = get_string('question 6','32+32?')

r6 = '64'

if q6 = r6
q7 = get_string('question 7','64+64?')

r7 = '128'

if q7 = r7
q8 = get_string('question 8','128+128?')

r8 = '256'

if q8 = r8
q9 = get_string('question 9','256+256?')

r9 = '512'

if q9 = r9
q10 = get_string('question 10','512+512?')

r10 = '1024'

if q10 = r10
highscore_show(score)

El problema es que no puedo hacer que cuando la persona se equivoque se reinicie el juego y muestre la puntuacion
« última modificación: Mayo 09, 2011, 07:59:52 pm por Topet »
No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.

Desconectado kuadmair

  • Habitual
  • *
  • Puntos: 9
  • Mensajes: 57
  • Sexo: Masculino
  • clanhdp.net - Para el aficionado a Teeworlds
    • Ver Perfil
    • clan HDP
Re: Ayuda con script
« Respuesta #1 en: Mayo 09, 2011, 09:42:48 am »
weno yo no se de codigo del gmk... pero si que toco otros lenguajes parecido... una cosita de la que  ahora mismo no estoy seguro... en las condiciones... no buscas que compare entre una respuesta y otra? que sean iguales?... pues no deberia ser == en vez de = ?? pk qui no se pero en otros lenguajes un solo = es para dar un valor a la variable y no para ver si dos son iguales..

edito: Además de la costumbre de que siempre se pone ; al final de cada linea siempre y cuando no sea una condicion xD pero weno... no se como funciona este lenguaje xD
Mis juegos y mini-juegos completos:<br />[Mini-Juego] Apple vs Banana

Desconectado Fenix oscuro

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 80
    • Ver Perfil
    • SGmyGameS
Re: Ayuda con script
« Respuesta #2 en: Mayo 09, 2011, 11:54:15 am »
weno yo no se de codigo del gmk... pero si que toco otros lenguajes parecido... una cosita de la que  ahora mismo no estoy seguro... en las condiciones... no buscas que compare entre una respuesta y otra? que sean iguales?... pues no deberia ser == en vez de = ?? pk qui no se pero en otros lenguajes un solo = es para dar un valor a la variable y no para ver si dos son iguales..

edito: Además de la costumbre de que siempre se pone ; al final de cada linea siempre y cuando no sea una condicion xD pero weno... no se como funciona este lenguaje xD
bueno,estuve agregando

else

highscore_show(score)
game_restart()
el problema es que aparece este error cada vez que fallo
digamos 1+1=z(obviamente equivocado)
me muestra la puntuacion pero sale esto

Error in code at line 10:
   if q2 = r2
      ^
at position 5: Unknown variable q2

Desconectado ArcariaOnline

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 99
  • Sexo: Masculino
  • Arcaria DevTeam
    • Ver Perfil
    • Arcaria Online
Re: Ayuda con script
« Respuesta #3 en: Mayo 09, 2011, 06:18:04 pm »
Unknown variable q2 = Variable q2 desconocida

Te sale eso por una de dos, esa variable no la has creado antes de utilizarla o la creaste en otro objeto que no es el que ejecuta las preguntas. Si no hay problema puedes hacerlas globales o asegúrate que la estas creando en el objeto. También asegúrate que no tenga el mismo nombre que alguna sprite u objeto.

Saludos.

Desconectado LigTopet

  • Moderadores globales
  • Okupa
  • *
  • Puntos: 85
  • Mensajes: 507
  • Sexo: Masculino
  • A por ellos!!
    • Ver Perfil
Re: Ayuda con script
« Respuesta #4 en: Mayo 09, 2011, 08:15:48 pm »
El error esta en que si la respuesta anterior es incorrecta no declara la variable y aun asi el if siguiente se comprueba pero al no haber sido declarada la variable dara el error.
Lo que se me ocurre es agregar un break en lugar de un game_restart()
else
{
     highscore_show(score)
     break
}
No estoy seguro, deja me voy a comer y al rato lo analizo mejor.

Saludos

Desconectado Wadk

  • In order to see...
  • Administrador
  • Legendario
  • *
  • Puntos: 153
  • Mensajes: 2264
  • Sexo: Masculino
  • ... you must close your eyes.
    • Ver Perfil
Re: Ayuda con script
« Respuesta #5 en: Mayo 09, 2011, 10:13:59 pm »
Probá a crear un script llamado game:
// game();
var answer;

argument0 += (argument0 == 0);
argument1 += (argument0 == 1);

answer = show_message("Pregunta " + string(argument0) + ": ¿" + string(argument1) + " * 2?", "");
if (answer == string(argument1 * 2)) {
    return game(argument0 + 1, argument1 * 2);
} else {
    return argument0 - 1;
}

Y después llamalo así:
highscore_show(game());

Desconectado Fenix oscuro

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 80
    • Ver Perfil
    • SGmyGameS
Re: Ayuda con script parte 2
« Respuesta #6 en: Mayo 09, 2011, 11:43:31 pm »
muchas gracias pero ya lo resolvi de otra manera

q9 = get_string('question 9','256+256?')}}

else

room_restart()
///////////////////////////////////////
if score = 40
{if q9 = r9
{score = 45
q10 = get_string('question 10','512+512?')}}

else

room_restart()
////////////////////////////////////////
if score = 45
{if q10 = r10
{score = 50;highscore_add_current();score = 0;highscore_show(score);show_message('WoW amazing');room_restart();
FINAL = show_message_ext('continue?','No',noone,'Yes')}}

if FINAL = 1
game_end()

if FINAL = 3
game_restart()

else

room_restart()
Ahora todo funciona bien pero FINAL ahora es el problema

Error in code at line 110:
   if FINAL = 1
      ^
at position 5: Unknown variable FINAL

No se bien donde se debe de ubicar
es el mismo problema pero no logro arreglarlo

Citar
el problema es que aparece este error cada vez que fallo
digamos 1+1=z(obviamente equivocado)

Desconectado knd144

  • Adicto
  • *
  • Puntos: 35
  • Mensajes: 357
  • Sexo: Masculino
    • Ver Perfil
    • Rincon knd144
Re: Ayuda con script
« Respuesta #7 en: Mayo 10, 2011, 12:00:10 am »
mmm... eso puedew ser sencillo de encontrar, mira tu tienes:

if q10 = r10
{
  score = 50;highscore_add_current();
  score = 0;highscore_show(score);
  show_message('WoW amazing');
  room_restart();
  FINAL = show_message_ext('continue?','No',noone,'Yes')
}

if FINAL=1...

La cuestion es que la variable FINAL solo se crea si se cumple la condicion de "if q10=r10", pero si no se cumple es ovbio que jamás será creada y después no la puedes testear para ver si es igual a 1 o algo así.
Te recomiendo que declares desde el inicio todas las variables que vayas a usar asi:

var FINAL;
if score = 45
{
  if q10 = r10
  {
    score = 50;
    highscore_add_current();
    score = 0;
    highscore_show(score);
    show_message('WoW amazing');
    room_restart();
    FINAL = show_message_ext('continue?','No',noone,'Yes')
  }
}
if FINAL = 1
  game_end()
if FINAL = 3
  game_restart()
else
  room_restart()

;)




Rincon knd144
-Proyecto Aquilesvania 60%