Junio 19, 2013, 02:47:17 am

Autor Tema: !ayuda para pasar a un room aleatorio!  (Leído 1072 veces)

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

Desconectado gama

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 10
    • Ver Perfil
!ayuda para pasar a un room aleatorio!
« en: Septiembre 21, 2009, 01:09:07 pm »
hola amigos estoy haciendo un juego de preguntas de multiples respuestas. es decir en cada room esta la pregunta y 3 posibles respuestas, lo que necesito es un codigo para que cuando el usuario escoga una opcion lo dirija a un room al azar. no he encontrado sino ir al siguiente room y seria monotono la idea es que se revuelvan las preguntas, o regalenme otra idea para este juego es como un quiz. gracias
No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.

Desconectado hardraid

  • Adicto
  • *
  • Puntos: 0
  • Mensajes: 296
  • Sexo: Masculino
    • Ver Perfil
    • http://www.hardraidsoftware.com.ar
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #1 en: Septiembre 21, 2009, 01:50:48 pm »
Citar
//"room" es el room actual, puedes cambiarlo para poder ir a otra.
//"choose()" elige al azar entre los datos q pongas separados por ",".
room=choose(room0,room1,room2,room3);
¿Eres experto en Game Maker y quieres enseñar lo que sabes? Únete a nuestro proyecto como tutor. ¿Tienes en mente un gran juego pero no sabes como usar Game Maker? Inscríbete y un tutor te guiará. Aprenderás diseñando un juego para luego diseñar el tuyo propio. Apúntate en http://www.comunidadgm.org/index.php?topic=10462.0.

Desconectado somnus

  • Okupa
  • *
  • Puntos: 21
  • Mensajes: 743
  • Sexo: Masculino
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #2 en: Septiembre 21, 2009, 08:10:58 pm »
Citar
//"room" es el room actual, puedes cambiarlo para poder ir a otra.
//"choose()" elige al azar entre los datos q pongas separados por ",".
room=choose(room0,room1,room2,room3);


tambien puedes checarte el link para que te des una idea mas especifica de como cambiar a los rooms

http://www.comunidadgm.org/index.php?topic=9061.0
Es Mejor No Saber Porque Funciona, Que Saber El Porque No Funciona...

Desconectado deathmetal

  • Okupa
  • *
  • Puntos: 0
  • Mensajes: 1189
  • Sexo: Masculino
  • Tengo una necesidad ... xD!
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #3 en: Septiembre 22, 2009, 02:18:22 am »
igual usando un switch

switch ceil(random(10)){

case 1: room_goto(room1);break
case 2:room_goto(room2):break
[...]

}

y asi

el numero entre los parentesis debe ser igual al numero de rooms xD si no no te llevaria a ningun  lado :)

saludos

Desconectado gama

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 10
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #4 en: Septiembre 22, 2009, 02:38:05 am »
GRACIAS AMIGOs por sus ayudas oportunas y rapidas, usé este codigo:

 room=choose(room0,room1,room2,room3); y ahora necesito que luego de mostrar un room lo descarte y no lo muestre mas (solo una vez por sesion) para que no me repita las preguntas.

gracias y perdonen la molestia.
« última modificación: Septiembre 22, 2009, 01:05:31 pm por gama »

Desconectado DarkKRuleR

  • Okupa
  • *
  • Puntos: 62
  • Mensajes: 990
  • Sexo: Masculino
  • Segador de Almas
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #5 en: Septiembre 22, 2009, 02:26:10 pm »
para que no se repitan las rooms deberias crear variables para indicarlo
en un objeto PERSISTENTE marcando la casilla, lo cual significa que pasa entre rooms (por lo tanto sus variables no se reinician), creas estas variables:
room1go=0
room2go=0
room3go=0
etc segun las variables
y creas el codigo del switch que te dijo deathmetal

switch ceil(random(10)){
case 1: if room1go=0 {room1go=1; room_goto(room1); break}
case 2: if room2go=0 {room2go=1; room_goto(room1); break}
}

etc...

Desconectado Guacusio

  • Adicto
  • *
  • Puntos: 0
  • Mensajes: 341
  • Los últimos serán los primeros
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #6 en: Septiembre 23, 2009, 03:46:31 am »
Otra forma de ir a un room aleatorio sin repetir ninguno es usando una lista para guardar los rooms y borrar éstos de la lista a medida que se van "usando". Por ejemplo, en un objeto cualquiera se puede poner:

Código: [Seleccionar]
global.lista_rooms=ds_list_create();//la variable global guarda la id de la lista con rooms
ds_list_add(global.lista_rooms,room0);//vas agregando todos los rooms que tengas
ds_list_add(global.lista_rooms,room1);
etc ...

Luego, cuando deseas cambiar a un room aleatorio, escoges uno al azar de la lista y lo eliminas de ella:

Código: [Seleccionar]
var r,nr;
r=floor(random(ds_list_size(global.lista_rooms)));//escoge una posición al azar de la lista
nr=ds_list_find_value(global.lista_rooms,r);//determina el room en esa posición
ds_list_delete(global.lista_rooms,r);//borra ese room de la lista
room_goto(nr);//va al room seleccionado


Desconectado gama

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 10
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #7 en: Septiembre 25, 2009, 02:54:31 am »
GRACIAS POR TODO AMIGOS PERO LOS NECESITO. SUPER EXPLICADOS PASO A PASO PORQUE SOY PRINCIPIANTE, DISCULPENME PERO DIGANME EL PROCEDIMIENTO COMPLETO ENTIENDAN (TODOS PASAMOS POR AQUI.) POR QUE ALGUNOS PROCEDIMIENTOS NO LOS ENTIENDO. GRACIAS DE ANTEMANO.

Desconectado gama

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 10
    • Ver Perfil
ayuda con codigos por favor
« Respuesta #8 en: Noviembre 27, 2009, 12:58:12 pm »
hola amigos necesito de su ayuda porfa y es que necesito un codigo para el paso de los rooms pero que no se repita ninguno para un juego de quiz ya tengo varios ejemplos con codigos pero realmente no se donde va cada cosa he intentado y no funciona.si pueden ayudarme con un ejemplo de este codigo o alguno de estos:

para que no se repitan las rooms deberias crear variables para indicarlo
en un objeto PERSISTENTE marcando la casilla, lo cual significa que pasa entre rooms (por lo tanto sus variables no se reinician), creas estas variables:
room1go=0
room2go=0
room3go=0
etc segun las variables
y creas el codigo del switch que te dijo deathmetal

switch ceil(random(10)){
case 1: if room1go=0 {room1go=1; room_goto(room1); break}
case 2: if room2go=0 {room2go=1; room_goto(room1); break}
}

etc...


otro codigo es este:

igual usando un switch

switch ceil(random(10)){

case 1: room_goto(room1);break
case 2:room_goto(room2):break
[...]

}

y asi

el numero entre los parentesis debe ser igual al numero de rooms xD si no no te llevaria a ningun  lado.

el caso es que no me funciona y necesitaria un ejemplo grafico de antemano gracias

recuerden que los rooms no se repitan gracias.

Desconectado Zeit

  • Okupa
  • *
  • Puntos: 13
  • Mensajes: 697
  • Sexo: Masculino
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #9 en: Noviembre 29, 2009, 03:03:17 am »
Hola, se me ocurrio una idea:

Con las opciones de Data Structures en Lists, al iniciar el juego crea una lista donde los valores sean los ID de las rooms ordenadas, room1, room2, etc. o como les hayas llamado y cuando sea el momento de cambiar de room calculas el tamaño de la lista, generas un numero aleatorio entero entre 0 y el tamaño de la lista menos 1, obtieniendo así la posicion para buscar el valor en la lista el cual guardas en una variable local para que puedas borrarlo de la lista y luego te diriges a la room con la ID obtenida. Así cuando vuelvas necesitar cambiar de room, las rooms eliminadas de la lista ya no apareceran y cuando agotes la lista, es decir, su tamaño sea 0 habras terminado.

Espero haber ayudado, saludos.

Edit1: Perdon, no me habia dado cuenta que Guacusio ya habia dado esta solucion.

Edit2: Adjunto un ejemplo en GM7 pero creo que funciona en el 6.
« última modificación: Noviembre 29, 2009, 03:41:32 am por zeit »
Saludos Cordiales!!!

Desconectado gama

  • Habitual
  • *
  • Puntos: 0
  • Mensajes: 10
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #10 en: Noviembre 10, 2010, 07:09:05 pm »
gracias muchachos por su ayuda a todos mil gracias voy a intentar todo y les aviso.

muy buen aporte.

gracias

Desconectado Hackware

  • Okupa
  • *
  • Puntos: 3
  • Mensajes: 1505
  • Sexo: Masculino
    • Ver Perfil
    • Actualidad CGM
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #11 en: Noviembre 10, 2010, 07:31:35 pm »
¡Jajaja! Un año después... XD

Desconectado brunoxzx

  • Okupa
  • *
  • Puntos: 173
  • Mensajes: 995
  • Sexo: Masculino
    • Ver Perfil
Re: !ayuda para pasar a un room aleatorio!
« Respuesta #12 en: Noviembre 10, 2010, 10:06:03 pm »
WOW no puedo creer que se acuerde después de un año   :-[