Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Creador de juegos GM en Noviembre 07, 2012, 02:11:54 AM

Título: como hacer un menú estilo ANGRY BIRDS (YA LO POSTEARON)
Publicado por: Creador de juegos GM en Noviembre 07, 2012, 02:11:54 AM
ESTE TEMA YA LO POSTEARON PERO IGUAL NO PUDE HACER NADA,COMO HAGO PARA QUE LOS NIVELES
SE VALLAN DESBLOQUEANDO A MEDIDA QUE UNO LOA VALLA COMPLETANDO.SI PUEDEN POR FAVOR MANDENME
UN EJEMPLO SINÓ SE ME HACE LÍO LA CABEZA.
PD:CONOZCO LAS REGLAS DEL BLOG PERO EL OTRO TEMA ESTABA ABANDONADO.
Título: Re:como hacer un menú estilo ANGRY BIRDS (YA LO POSTEARON)
Publicado por: noshy en Noviembre 07, 2012, 12:14:56 PM
Para desbloquear niveles es muy facil, te lo explico:

1- Creas un array global con la cantidad de niveles que tenga tu juego


global.Array[0]= 0; //Desbloqueado
global.Array[1]= 1; //Bloqueado
global.Array[2]= 1; //Bloqueado
global.Array[3]= 1; //Bloqueado
global.Array[4]= 1; //Bloqueado
...
global.Array[n]= 1; //Bloqueado


2- En el menu para elegir el nivel a jugar debes verificar este array:


If (global.array[0] = 0){  //si esta desloqueado
    sprite0_desbloqueado y link al room  //mostramos el sprite para el nivel desbloqueado y lo dejamos acceder
} else {
    sprite0_bloqueado //si esta bloqueado mostramos el sprite para el bloqueo
}

If (global.array[1] = 0){
    sprite1_desbloqueado y link al room
} else {
    sprite1_bloqueado
}

...

If (global.array[n] = 0){
    spriten_desbloqueado y link al room
} else {
    spriten_bloqueado
}


3- Al finalizar cada nivel (segun la forma en que lo finalices) desbes desbloquear el siguiente nivel.


if (nivel4 = fin){    //si finalizo el nivel 4
    global.array[5] = 0; //desbloqueamos el nivel 5
}

No te hagas un mundo porque en realidad es muy facil.
Esta explicación es a grandes razgos para que te des una idea, luego todo depende de la estructura que tenga tu juego.


Saludos
Título: Re:como hacer un menú estilo ANGRY BIRDS (YA LO POSTEARON)
Publicado por: the_blade en Noviembre 07, 2012, 05:09:02 PM
tu respuesta parece bien noshy, pero quizas mas facil seria utilizar un bucle for para recorrer los elementos del array, y  a su vez se podria mejorar con un sistema de archivos .ini, para almacenar los niveles ya pasados, dado que si bien se desbloquean niveles al cerrar el juego e ingresar de nuevo dichos niveles volverian a estar desbloqueados porque no se guarda en ningun lado pero es otro tema igualmente.- solo es sugerencia:
ejemplo en el caso del for:

//usando el mismo codigo de noshy pero en lugar de los if podrias utilizar por ejemplo:
niveles=10; //variable que almacena total de niveles
sprite_niveles[10]; //variable que almacena los sprites a utilizar para mostrar
for(i=0; i<niveles; i+1){
if global.Array[i]=0 {sprite_niveles[i]=sprite_desbloqueado;}else{sprite_niveles[i]=sprite_bloqueado;}
}


bueno espero sirva la sugerencia para mi es mas util el bucle for pero depende de cada programador, quizas para ti es mas facil y simple de esa manera y lo veo bien. salu2.-
Título: Re:como hacer un menú estilo ANGRY BIRDS (YA LO POSTEARON)
Publicado por: noshy en Noviembre 07, 2012, 07:23:52 PM
Esta perfecto the_blade, pero como es un "visitante" y dice que es novato y se le hace lio, no quise embarrarla mas con bucles porque directamente abandona el proyecto jajajajaja

Por eso aclare mas abajo que todo depende de la estructura del juego que tenga, recorda nuestros comienzos tambien, veiamos algo asi y saliamos corriendo.
Título: Re:como hacer un menú estilo ANGRY BIRDS (YA LO POSTEARON)
Publicado por: the_blade en Noviembre 08, 2012, 01:21:14 PM
jajaja. tenes razon noshy y bueno al menos tienes dos metodos diferentes a utilizar para lograr su proposito, de ahy elegira el que se le haga mas facil.
Título: Re:como hacer un menú estilo ANGRY BIRDS (YA LO POSTEARON)
Publicado por: Creador de juegos GM en Noviembre 09, 2012, 03:34:27 PM
GRACIAS POR TODOS ESTOY HACIENDO UN JUEGO DE GUERRA Y NECESITABA ESO. GRACIAS. :GM8:
me pueden adjuntar un pequño ejemplo (editable)?
Título: Re:como hacer un menú estilo ANGRY BIRDS (YA LO POSTEARON)
Publicado por: michaelosan en Diciembre 21, 2013, 03:02:40 AM
la verdad este sitio esta lleno de muy malas respuestas y casi ningun ejemplo util , y de moderadores muy espesales , la verdad probe poner el codigo pero no funka (funciona)  ,  quien hiciera un buen ejemplo claro , y funcional , ya que esto es muy solicitado para los games , en mi game los botones que llevan a los  rooms , son objetos con un sprite , supongo que este codigo trabaja , con draw directamente dibujando los sprites en el room ??? , o sera que es un error de escritura de codigo ??? ejemplo:


if (global.array[0] = 0){
    spr_nivel1       room_goto(room_nivel1)  ---AQUI ME SALE ERROR , o falta separle con algun punto y coma
} else {
    spr_buttom_blocked
}


:'(