Buenas a todos.

Tengo un pequeño problema. Necesito generar un numero aleatorio entre -30 al 30. Es decir, tanto negativos como positivos pasando por el 0. Siendo el limite -30 y 30.

He utilizado random_range(-30, 30) pero este solo coge estos dos valores ademas, siempre en el mismo orden.

He utilizado irandom(30) y este si hace un numero aleatorio, pero entre 0 y 30, no utiliza numeros negativos.

Asi que necesito perfilar esta orden. Si me echais una mano os lo agradeceria mucho.

Saludos a todos!!  ;)

PCNONOGames  www.pcnono.es

random_range o irandom_range deberían funcionar, la secuencia se repite porque se está usando la misma semilla generadora, usa la función randomize en un evento previo para cambiar la semilla de forma aleatoria.

Muchas gracias por responder clamud.
Pero no entiendo bien eso de cambiar la semilla previamente con randomize. Y como le paso el resultado al random_range???
PCNONOGames  www.pcnono.es

Muchas gracias por responder clamud.
Pero no entiendo bien eso de cambiar la semilla previamente con randomize. Y como le paso el resultado al random_range???


Cita de: nonoroman en Octubre 31, 2015, 04:05:22 PM
Muchas gracias por responder clamud.
Pero no entiendo bien eso de cambiar la semilla previamente con randomize. Y como le paso el resultado al random_range???
PCNONOGames  www.pcnono.es

Cita de: nonoroman en Octubre 31, 2015, 04:06:38 PM
Muchas gracias por responder clamud.
Pero no entiendo bien eso de cambiar la semilla previamente con randomize. Y como le paso el resultado al random_range???


Cita de: nonoroman en Octubre 31, 2015, 04:05:22 PM
Muchas gracias por responder clamud.
Pero no entiendo bien eso de cambiar la semilla previamente con randomize. Y como le paso el resultado al random_range???

Los números "aleatorios" que genera GM no son realmente aleatorios, son pseudoaleatorios: el mecanismo para generarlos se basa en partir de un número dado y en base a él calcular el siguiente mediante una fórmula. Por lo tanto, si se parte de un mismo número, todos los números "aleatorios" que se generen a continuación serán los mismos. Para que esto no pase, el número inicial (conocido como semilla) se tiene que cambiar. Eso es lo que hace la función randomize y por eso Clamud te dijo que la incluyeras. Por lo tanto, tienes que incluir al principio del juego esta función, para que la secuencia de números aleatorios no se repita.

La función random_range debiera generar números en todo el rango entre -30 y 30, no entiendo cómo es que sólo "te genera estos dos valores".