Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/09/2010, 00:47
Avatar de mortiprogramador
mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Ayudaaa para entender mejor Action script.

Cita:
Iniciado por Ms2pain Ver Mensaje
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 original
  1. on(press){
  2.  
  3. //asignas un valor aleatorio multiplicado por 360
  4. ruleta._rotation = Math.random()*360;
  5. //asignas a potencia el resultado de sumarle 10 a la multiplicación de un aleatorio por 4
  6. var potencia:Number = 10+Math.random()*4;
  7. //es lo mismo del anterior, solo que con decimales
  8. var roza:Number = .96+(Math.random()*.01);
  9. ruleta.onEnterFrame = function() {
  10. //aqui sumas abreviadamente potencia al valor actual de rotation
  11. //normalmente seria ruleta._rotation = ruleta._rotation + potencia;
  12.    ruleta._rotation += potencia;
  13. //lo mismo anterior pero multiplicas
  14. potencia *= roza;
  15.       sounds3.start();
  16.    
  17.    if (potencia<.5) {
  18. //este es un if abreviado, el ? pregunta y las posibles respuestas estan
  19. //divididas por el :
  20.       var rot:Number = ruleta._rotation<0 ? 360+ruleta._rotation : ruleta._rotation;
  21.       //redondeas a entero con floor el resultado de la división
  22. var valor:Number = Math.floor(rot/15);
  23. numero.text = Number (valor);
  24.    
  25.       ruleta.onEnterFrame = undefined;
  26.    }
  27. };
  28. }

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
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com