Comunidad de diseño web y desarrollo en internet online

AS2 con alpha.

Citar            
MensajeEscrito el 11 Abr 2009 02:23 am
Hola tengo este problema tengo un MC (clip1) y un boton (boton_btn) yo nesesito que cuando apriete el boton, que clip se empiese a poder vizualizar de apoco. yo uso este codigo y anda pero aora nesesito que cuando el clip yegue a alfa 100 salga un trace (TRACE ("HOLA");) y no logro hacer que salga el trace no se si estare poniendo mal la condicion aver si encuentran mi error.

ESTE ES LO QUE OCUPO:
clip1._alpha = 0;
boton_btn.onPress = function() {
onEnterFrame = function () {
if (clip1._alpha<100) {
clip1._alpha += 10;
}
if (clip1._alpha == 100) {
trace("Hola");
}
};
};

Por venecia

Claber

134 de clabLevel



 

2007

msie
Citar            
MensajeEscrito el 11 Abr 2009 04:44 am
deberias usar el trace para buscar mas problemas

en tu caso lo que sucede es que no aumenta los 10 exactos, sino 9.76625
por eso, nunca es exactamente 100, sino que el valor en el que se detiene el contador es 107.421875
o por lo menos en mi caso

por eso si pones como condicion que sea IGUAL a 100, nunca se cumplira pues seria 97 - 102 - 107 y se detiene
entonces jamas es justo 100

simplemente cambia == por > o >=

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 11 Abr 2009 05:07 am
MMMMM no savia eso. tonces as2 no travaja con precision en los numeros?. y a lo de los traces siempre los uso para provar si se cumplen las condisiones. pero gracias por tu respuesta sigue asi.
Se agradece la ayuda.

Por venecia

Claber

134 de clabLevel



 

2007

msie
Citar            
MensajeEscrito el 11 Abr 2009 05:20 am
O.o! 10 puntos brot! eso de los Valores no lo savia aora por fin me salio mi solucion esto.

var six:Boolean = false;
clip1._alpha = 0;
bot_btn.onPress = function() {
onEnterFrame = function () {
if (clip1._alpha<100) {
clip1._alpha += 10;
}
if (clip1._alpha>95) {
trace("Hola");
delete this.onEnterFrame;
six = true;
}
};
};
bot2_btn.onPress = function() {
onEnterFrame = function () {
if (six == true) {
clip1._alpha -= 10;
}
if (clip1._alpha <= 0) {
delete this.onEnterFrame;
trace("EPA");
}
};
};

Pronto terminare mi proyecto y lo mostrare a la gente que me a ayudado en las piedras que se me interpusieron. XD

Por venecia

Claber

134 de clabLevel



 

2007

msie
Citar            
MensajeEscrito el 11 Abr 2009 06:15 am
de hecho, tu codigo (con modificaciones ) si funciona perfectamente con enteros

Código ActionScript :

c = 0;
boton_btn.onPress = function() {
onEnterFrame = function () {
if (c < 100) {
c += 10;
trace(c);
}
}
}


el problema (segun mis creencias religiosas [si estoy mal por favor alguien digamelo]) es el _alpha que permite valores flotantes y hace un conflicto raro (que desconocia)

como sea, no es flash directamente el que no "juega" con enteros, sino el _alpha ;)

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.