Cita:
Iniciado por Ms2pain se trata de un MC que gira al presionar un boton y al pararse genera un numero de 0 a 24 y lo publico en un caja de texto llamada numero.text, mi duda es que no logro comprender bien como funcionan las asignaciones de variables y algunos operadores de flash como por que se multiplica por 2360 o por .96 y eso o por que (potencia *= roza) hace que se detenga el mc, mm
y lo que quisiera es que alguien de favor me pueda explicar con manzanas jeje como
esque funciona este codigo. de favor gracias plis je
on(press){
ruleta._rotation = Math.random()*360;
var potencia:Number = 10+Math.random()*4;
var roza:Number = .96+(Math.random()*.01);
ruleta.onEnterFrame = function() {
ruleta._rotation += potencia;
potencia *= roza;
sounds3.start();
if (potencia<.5) {
var rot:Number = ruleta._rotation<0 ? 360+ruleta._rotation : ruleta._rotation;
var valor:Number = Math.floor(rot/15);
numero.text = Number (valor);
ruleta.onEnterFrame = undefined;
}
};
}
Hola
bienvenido al foro
te sugiero que cuando pongas títulos a tus mensajes,
no uses palabras como Ayudaaa, pues eso, irónicamente,
no ayuda a saber que necesitas....
en este caso pudo ser "Explicación sobre código ruleta" por ejemplo
Bueno, ya habiendote dado una buena bienvenida.... jajajaja....
vamos a tu código
Código actionscript:
Ver originalon(press){
//asignas un valor aleatorio multiplicado por 360
ruleta._rotation = Math.random()*360;
//asignas a potencia el resultado de sumarle 10 a la multiplicación de un aleatorio por 4
var potencia:Number = 10+Math.random()*4;
//es lo mismo del anterior, solo que con decimales
var roza:Number = .96+(Math.random()*.01);
ruleta.onEnterFrame = function() {
//aqui sumas abreviadamente potencia al valor actual de rotation
//normalmente seria ruleta._rotation = ruleta._rotation + potencia;
ruleta._rotation += potencia;
//lo mismo anterior pero multiplicas
potencia *= roza;
sounds3.start();
if (potencia<.5) {
//este es un if abreviado, el ? pregunta y las posibles respuestas estan
//divididas por el :
var rot:Number = ruleta._rotation<0 ? 360+ruleta._rotation : ruleta._rotation;
//redondeas a entero con floor el resultado de la división
var valor:Number = Math.floor(rot/15);
numero.text = Number (valor);
ruleta.onEnterFrame = undefined;
}
};
}
ahora, como potencia es un valor que se calcula con dos operaciones,
se ejecutan en el enterframe, y cuando sea menor a .5 es que se detiene
y genera el aleatorio
espero te sirva los comentarios
saludos