Estoy creando un juego sencillo en el que tienes que esquivar meteoritos que van callendo del cielo, pero lo que quiero hacer es que entre mas tiempo pases jugando caeran mas meteoritos grandes que pequeños.
El codigo es algo sencillo como esto:
Código ActionScript :
scale.x = scale.y = getNewsize();
Y la funcion getNewSize() devuelve un numero que puede ser 0.5, 1, 2 o 3 dependiendo del nivel que estes aumentan las probabilidades de que toque un numero alto, digamos que el primer nivel solo toca el numero 0.5 (que significaria que solo calleran meteoritos de la mitad del tamaño normal), pero a partir del nivel 5 empesara a tocar el numero 1 un poco(que hara que caigan meteoritos de tamaño normal) y asi sucesivamente.
Este es el codigo que hice para esto pero veran que no funciona bien:
Código ActionScript :
private function getNewsize():Number { var number:Number; var tree:uint = Registry.level >= 20 ? Registry.level - 20:0; var two:uint = Registry.level >= 10 ? Registry.level - 10:0; var one:uint = Registry.level >= 5 ? Registry.level - 5:0; var zerodot5:uint = 1000 - (one + two + tree); var rand:Number = Math.ceil(Math.random() * 999); if (rand <= zerodot5) return 0.5; else if ((rand >= one) && (rand < two)) return 1; else if ((rand >= two) && (rand < tree)) return 2; else if (rand >= tree) return 3; else return null; }
*Registry.level me da el nivel en el que este
Si alguien me pudiera ayudar se los agradeseria mucho. Si nesesitan que les explique algo mas se los explicare.
Gracias de antemano.