Marzo 19, 2014, 08:46:02 PM Ultima modificación: Marzo 19, 2014, 11:47:22 PM por matiascarpello
Hola gente, quiero saber como implementar que cada vez que inicio el juego, un objeto tenga una posición aleatoria en cuanto al eje X, pero no al eje Y. Es decir, yo defino la posición del eje Y, pero en cuanto al eje X tiene que ser aleatoria.

En su evento create de ese objeto usas alguna función random,

randomize();
x = irandom_range(pos_x_minima, pos_x_maxima);


si no usas randomize, puede que al probar el juego el objeto se crea siempre en el mismo lugar


Cita de: penumbra en Marzo 19, 2014, 08:57:01 PM
En su evento create de ese objeto usas alguna función random,

randomize();
x = irandom_range(pos_x_minima, pos_x_maxima);


si no usas randomize, puede que al probar el juego el objeto se crea siempre en el mismo lugar

Que raro, puse el código en el evento create y me tira el siguiente error


___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of Create Event
for object obj_enemy:

Push :: Execution Error - Variable Get -1.pos_x_200(100000, -1)
at gml_Object_obj_enemy_Create_0 (line 2) - x = irandom_range(pos_x_10, pos_x_200);
############################################################################################

intenta ponerle números a la función irandom_range(), o sea, no uses variables, sino simples números, a lo mejor es una variable que no está iniciada en CREATE o se inicia después de la función

amigo ponlo asi
randomize();
x = irandom_range(100, 400);//puedes cambiar el 100 y el 400 por numeros que tu quieras



el 100 y el 400 es que el va a elejir un numero de entre 100 a 400 ejemplo el 233 y pone el objeto en la poscion 233 en x
PURA VIDA