Ver Mensaje Individual
  #3 (permalink)  
Antiguo 28/11/2013, 20:38
Tachikomaia
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Combinatoria?

Hablas de la cantidad? Yo no, yo hablo de representar cada una, una por una.

Se me ocurrió esto aunque me falta probarlo.
Código:
Frame 1:
M.X = 0;
M.X2 = 0;
M.X3 = 0;
M.XDigit = 1;

Frame 2:
// Nueva sit.
M.X = M.X+1;
if (M.X == 3) {
    M.X = 1;
    M.DoW = 1;
    M.XDigit = 1;
    do {
        M.XDigit = M.XDigit+1;
        if (M.XDigit > 2) {
            M.DoW = 0;
        } else if (eval ("M.X"+M.XDigit) < 2) {
            set ("M.X"+M.XDigit, eval ("M.X"+M.XDigit)+1);
            M.DoW = 0;
        } else {
            M.XDigit = 0;
        }
    } while (M.DoW == 1);
}
Edit:
Bueno... ya he probado esto y funciona:
Código:
Frame 1:
M.X = -1;
M.X2 = 0;
M.X3 = 0;
M.XDigit = 1;

Frame 2:
// Nueva sit.
M.X = M.X+1;
Act = 0;
if (M.X == 3) {
    // Valor del 1er casillero se sobrepasó; resetear.
    M.X = 0;
    M.DoW = 1;
    M.XDigit = 1;
    do {
        M.XDigit = M.XDigit+1;
        // Listo para incrementar siguiente casillero.
        if (M.XDigit > 3) {
            // No más sits.
            M.DoW = -1;
        } else {
            set ("M.X"+M.XDigit, eval ("M.X"+M.XDigit)+1);
            // Incrementa el valor del casillero actual.
            if (eval ("M.X"+M.XDigit) > 2) {
                // Valor del casillero se sobrepasó; resetear.
                set ("M.X"+M.XDigit, 0);
            } else {
                // Done.
                M.DoW = 0;
            }
        }
    } while (M.DoW == 1);
}
if (M.DoW == -1) {
    stop ();
}

Frame 3:
gotoAndPlay (2);

Última edición por Tachikomaia; 28/11/2013 a las 22:28