Noviembre 11, 2014, 09:35:08 PM Ultima modificación: Noviembre 12, 2014, 10:51:19 PM por Mataca
Hola. Tengo un problema con el comando global.level
Hice un objeto que contiene:
global.nivel01 = 0 //0 = desbloqueado - 1 = bloqueado
global.nivel02 = 1
global.nivel03 = 1


En la pantalla de seleccion de nivel tengo:
if global.nivel01 = 0 instance_create (200,300,obj_level01)
if global.nivel02 = 0 instance_create (288,416,obj_level02)


El problema es que cuando entro de una al seleccionar nivel (en ese momento el global.nivel02 esta en 1) me salta error y se me cierra el juego. Si pongo playgame, paso el nivel uno (eso hace que el global.level02 quede en 0 [desbloqueado]) y despues voy a select level me anda lo más bien...



Alguien sabe la solucion?

donde el if, en vez de un = pon 2.
Ahora si.

#2 Noviembre 11, 2014, 09:55:14 PM Ultima modificación: Noviembre 11, 2014, 09:58:11 PM por penumbra
Para usar global.nivel01 y global.nivel02 en un if, gm debe conocer cuál es el valor de esas variables.

El error push indica que estás intentand usar una variable ANTES de haberle dado un valor (haberla declarado de manera correcta). la solución consiste en invertir el orden:  Primero hay que establecer un valor para  global.nivel02 y DESPUÉS hacer la comprobación

Pero en el primer código ya lo tiene definido.
Ahora si.

#4 Noviembre 11, 2014, 10:00:14 PM Ultima modificación: Noviembre 11, 2014, 10:01:48 PM por penumbra
Cita de: venus en Noviembre 11, 2014, 09:58:03 PM
Pero en el primer código ya lo tiene definido.
No.

En el primer bloque de código tiene global.level02 y en el segundo global.nivel2. Son dos variables distintas. Si la variable global.nivel2estuviera definida correctamente, no habría un error push

Cita de: penumbra en Noviembre 11, 2014, 10:00:14 PM
Cita de: venus en Noviembre 11, 2014, 09:58:03 PM
Pero en el primer código ya lo tiene definido.
No.

En el primer bloque de código tiene global.level02 y en el segundo global.nivel2. Son dos variables distintas. Si la variable global.nivel2estuviera definida correctamente, no habría un error push

Lo habia puesto mal en el post nomas...


Yo ya te he dicho que pongas ==

if (global.nivel01 == 0) instance_create (200,300,obj_level01)
if (global.nivel02 == 0) instance_create (288,416,obj_level02)
Ahora si.

Cita de: venus en Noviembre 12, 2014, 08:31:51 PM
Yo ya te he dicho que pongas ==

if (global.nivel01 == 0) instance_create (200,300,obj_level01)
if (global.nivel02 == 0) instance_create (288,416,obj_level02)

Listo problema solucionado. Muchas gracias