Esto es variar 1 variable número:
Código:
C = 1;
// Candmod
C = C+1;
gotoAndPlay (2);
Pueden usar do while, en los siguientes también. En estos códigos una línea en blanco representa un paso, como en Basic. En algunos casos uso varios pasos para que ninguno sea especialmente largo (ocurre si tienen do while).// Candmod
C = C+1;
gotoAndPlay (2);
Esto es variar 2 variables número:
Código:
C1 = 1;
C2 = 1;
Max = 10;
if (C2<Max) {
C2 = C2+1;
} else if (C1<Max) {
C2 = 1;
C1 = C1+1;
} else {
stop ();
}
}
gotoAndPlay (2);
Aquí hay un tope, pero tengo idea de cómo mejorar eso, no es el tema.C2 = 1;
Max = 10;
if (C2<Max) {
C2 = C2+1;
} else if (C1<Max) {
C2 = 1;
C1 = C1+1;
} else {
stop ();
}
}
gotoAndPlay (2);
Esto es variar V variables número; en este caso V es 3 (se llama Parte).
Código:
C1 = 1;
C2 = 1;
C3 = 1;
Max = 10;
Parte = 3;
if (eval("C"+Parte)<Max) {
// Si el C señalado no está al máximo, aumenta
set ("C"+Parte, eval("C"+Parte)+1);
// Listo.
gotoAndPlay (2);
}
// El C señalado no puede aumentar, se resetea
set ("C"+Parte, 1);
if (1<Parte) {
// Hay un C anterior, se señala
Parte = Parte-1;
// Ver si el C señalado puede aumentar
gotoAndPlay (3);
} else {
stop ();
}
C2 = 1;
C3 = 1;
Max = 10;
Parte = 3;
if (eval("C"+Parte)<Max) {
// Si el C señalado no está al máximo, aumenta
set ("C"+Parte, eval("C"+Parte)+1);
// Listo.
gotoAndPlay (2);
}
// El C señalado no puede aumentar, se resetea
set ("C"+Parte, 1);
if (1<Parte) {
// Hay un C anterior, se señala
Parte = Parte-1;
// Ver si el C señalado puede aumentar
gotoAndPlay (3);
} else {
stop ();
}
Esto es variación de 1 string:
Código:
// A~Z pero no Ñ
Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
CP1 = -1;
CLargo = 1;
W = 1;
Parte = CLargo;
do {
if (eval("CP"+Parte)<25) {
set ("CP"+Parte, eval("CP"+Parte)+1);
W = 0;
} else {
set ("CP"+Parte, 0);
if (1<Parte) {
Parte = Parte-1;
} else {
CLargo = CLargo+1;
set ("CP"+CLargo, 0);
W = 0;
}
}
} while (W == 1);
// Concatenar.
C = "";
Parte = 0;
do {
Parte = Parte+1;
C = C+Chars.charAt(eval("CP"+Parte));
} while (Parte<CLargo);
gotoAndPlay (2);
Probablemente usarían un array para esto, yo no quiero.Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
CP1 = -1;
CLargo = 1;
W = 1;
Parte = CLargo;
do {
if (eval("CP"+Parte)<25) {
set ("CP"+Parte, eval("CP"+Parte)+1);
W = 0;
} else {
set ("CP"+Parte, 0);
if (1<Parte) {
Parte = Parte-1;
} else {
CLargo = CLargo+1;
set ("CP"+CLargo, 0);
W = 0;
}
}
} while (W == 1);
// Concatenar.
C = "";
Parte = 0;
do {
Parte = Parte+1;
C = C+Chars.charAt(eval("CP"+Parte));
} while (Parte<CLargo);
gotoAndPlay (2);
Variación de 2 strings:
Código:
// A~Z pero no Ñ
Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
C1P1 = 0;
C1Largo = 1;
C1 = "A";
C2P1 = 0;
C2Largo = 1;
C2 = "A";
Max = "ZZ";
function CandMod () {
W = 1;
Parte = eval("C"+Up+"Largo");
do {
if (eval("C"+Up+"P"+Parte)<25) {
set ("C"+Up+"P"+Parte, eval("C"+Up+"P"+Parte)+1);
W = 0;
} else {
set ("C"+Up+"P"+Parte, 0);
if (1<Parte) {
Parte = Parte-1;
} else {
set ("C"+Up+"Largo", eval("C"+Up+"Largo")+1);
set ("C"+Up+"P"+eval("C"+Up+"Largo"), 0);
W = 0;
}
}
} while (W == 1);
}
// ¿qué Cand variar?
if (C2 != Max) {
Up = 2;
CandMod();
} else if (C1 != Max) {
C2P1 = 0;
C2Largo = 1;
C2 = "A";
Up = 1;
CandMod();
} else {
stop ();
}
// Concatenar.
set ("C"+Up, "");
Parte = 0;
do {
Parte = Parte+1;
set ("C"+Up, eval("C"+Up)+Chars.charAt(eval("C"+Up+"P"+Parte)));
} while (Parte<eval("C"+Up+"Largo"));
gotoAndPlay (2);
Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
C1P1 = 0;
C1Largo = 1;
C1 = "A";
C2P1 = 0;
C2Largo = 1;
C2 = "A";
Max = "ZZ";
function CandMod () {
W = 1;
Parte = eval("C"+Up+"Largo");
do {
if (eval("C"+Up+"P"+Parte)<25) {
set ("C"+Up+"P"+Parte, eval("C"+Up+"P"+Parte)+1);
W = 0;
} else {
set ("C"+Up+"P"+Parte, 0);
if (1<Parte) {
Parte = Parte-1;
} else {
set ("C"+Up+"Largo", eval("C"+Up+"Largo")+1);
set ("C"+Up+"P"+eval("C"+Up+"Largo"), 0);
W = 0;
}
}
} while (W == 1);
}
// ¿qué Cand variar?
if (C2 != Max) {
Up = 2;
CandMod();
} else if (C1 != Max) {
C2P1 = 0;
C2Largo = 1;
C2 = "A";
Up = 1;
CandMod();
} else {
stop ();
}
// Concatenar.
set ("C"+Up, "");
Parte = 0;
do {
Parte = Parte+1;
set ("C"+Up, eval("C"+Up)+Chars.charAt(eval("C"+Up+"P"+Parte)));
} while (Parte<eval("C"+Up+"Largo"));
gotoAndPlay (2);
Variación de S strings es lo que estuve pensando (desconcentrándome porque estoy con la cabeza en otro lado) por horas ya.
Básicamente hay que "copiar" el método usado en 3 nums, pero como acá hay muchas más cosas no sé bien cómo. De momento agregué esto:
Código:
C3P1 = 0;
C3Largo = 1;
C3 = "A";
Max = "ZZ";
CtoUp = 3;
C3Largo = 1;
C3 = "A";
Max = "ZZ";
CtoUp = 3;
Y supongo que en vez de esto:
Código:
// ¿qué Cand variar?)
if (C2 != Max) {
Up = 2;
CandMod();
} else if (C1 != Max) {
C2P1 = 0;
C2Largo = 1;
C2 = "A";
Up = 1;
CandMod();
} else {
stop ();
}
Debería hacer algo como que si "C"+CtoUp != Max entonces lo dicho aumenta (y ya se produce la variación), sino si CtoUp puede bajar se resetea lo relativo a C, CtoUp baja y el proceso que estoy describiendo debería repetirse, y sino stop.if (C2 != Max) {
Up = 2;
CandMod();
} else if (C1 != Max) {
C2P1 = 0;
C2Largo = 1;
C2 = "A";
Up = 1;
CandMod();
} else {
stop ();
}
Puede ser que sea eso. Tal vez, más que la solución o el código, me haría falta algo bastante distinto a como lo hice, o algo para no entreverarme tanto.
Como ven aún no apliqué soluciones a ordenar con Ñ, por ahora no me voy a complicar con eso.
Gracias.