En este Tip muestro como hacer el clásico efecto de nevada en ActionScript 3. Este es un efecto ya visto anteriormente aunque en ActionScript 2. Así que este tip es más bien una actualización del efecto.
Código :
// Tamaños pantalla
var width2 = stage.stageWidth;
var height2 = stage.stageHeight;
// Máximo tamaño copos y cantidad
var max_tamaño = 10;
var copos = 100;
function init () {
for (var i:Number=0; i<copos; i++) {
var t:snow=new snow();
addChild(t);
t.alpha = 0.2+Math.random()*0.6;
t.x = -(width2/2)+Math.random()*(1.5*width2);
t.y = -(height2/2)+Math.random()*(1.5*height2);
t.scaleX = t.scaleY=0.5+Math.random()*(max_tamaño*0.1);
t.k = 1+Math.random()*2;
t.viento = -1.5+Math.random()*(1.4*3);
t.addEventListener(Event.ENTER_FRAME, mover);
}
};
function mover(e:*){
e.target.y += e.target.k;
e.target.x += e.target.viento;
if (e.target.y>height2+10) {
e.target.y = -20;
}
if (e.target.x>width2+20) {
e.target.x = -(width2/2)+Math.random()*(1.5*width2);
e.target.y = -20;
}
else if (e.target.x<-20) {
e.target.x = -(width2/2)+Math.random()*(1.5*width2);
e.target.y = -20;
}
}
init();
Ok, para que esto funcione solamente creen un mc, que sea un punto blanco difuminado (Blur) o un circulo que tenga un degradado radial de blanco al centro y transparente al rededor. Para que represente un copo de nieve.
Luego en la Biblioteca, le das clic derecho seleccionas Linkage y en Class, escribe snow.
Simple, pero bonito. Recomiendo ocupar fondo oscuro.
Para el ejemplo, el tamaño máximo de los copos es 5 y la cantidad máxima de copos es 150.
Te quedó muy bien JaLeRu, te felicito!!! No te preocupes, ahora las traducciones están de moda Por:The Fricky!
The Fricky! :
Te quedó muy bien JaLeRu, te felicito!!! No te preocupes, ahora las traducciones están de moda
Si me había dado cuenta. Tengo otras cuanta traducciones que hice ase unos meses. Si tengo tiempo las subo en unos días más. Que bueno por cierto que te haya gustado. Por:JaLeRu
JaLeRu, para un mejor rendimiento, en vez de ENTER_FRAME puedes usar un Timer a 100ms e ir experimentando con los ms. ENTER_FRAME es muy dependiente de la calidad del procesador y puede dar resultados impredecibles en otros PCs Por:Freddie
Guaaaao, te quedo mejor que el primero, de hecho, mucho mas real, desde la idea del nuevo copo de nieve con un degradado, y los movimientos de los mismos, geniaaaal, gracias.
Freddie, en lenguaje de mortales, que quiere decir eso que mencionaaaas?? Gracias por la respuesta Por:Señor Oz_blog
Señor Oz_blog :
Freddie, en lenguaje de mortales, que quiere decir eso que mencionaaaas?? Gracias por la respuesta
La idea es usar la clase Timer, en vez de ENTER_FRAME.
Timer... Buena idea. Y es cierto que son menos gastadores de recursos. Ya que había echo un juego que verificaba casillas constantemente. Con el EnterFrame, se ponía lentísimo. Pero con el timer, no hay problemas. Por:JaLeRu
Perdon, hecho. ¿Tiene algún significado "echo"? Es que creo que me acostumbre a escribir "echo" por el Batch. Perdón, intentare escribir mejor. Pero lo hecho, hecho esta. Por:JaLeRu
Gracias por la respuesta, son totalmente novata en el tema, vere que puedo lograr gracias de nuevo Por:clayla_blog
pero si quiero crearlo en flash 8 tengo que programarlo para que me muestre el efecto o diseñando no entiendo bien ps Por:vladimir_blog
En flash 8 se ocupa As2 y no As3. El tutorial para crearlo en As2 si existe. De hecho mi tutorial fue basado totalmente en un tutorial de As2. Por:JaLeRu
Hola Y el efecto en As2 es el mismo que en As3 ? Para trabajar en As3 tengo que comprar otro software de flash? quien se se ocupa de As3? y donde se puede adquirir?
Disculpen , es que soy meganovato. Gracias Por:gmopinillosv
Bueno señores ya descargue el flash cs3, (de prueba) a ver si me convence. Aunque he batallado mucho con as2, empezar de nuevo es como para pensarlo 2 veces , pero que le vamos hacer hay que seguirle a la nueva tenologia si no nos deja . Soy nuevo en cs3 y espero ayuda en lo que puedan. Gracias pd. habia escuchado el as3 pero nunca le di importancia pensaba que con as2 era sufi, gran error. bye Por:gmopinillosv
Suerte con As3... Te recomiendo que leas algunos tutoriales de esta web. Por:JaLeRu
Y ya me salio quedo muy chulo, la dispersidad de los copos se ve muy natural. Me uno al grupo de los que te agradecen, Gracias una vez mas Jaleru. Por:gmopinillosv
muy lindo pero no anda.... no reconoce el snow de la linea 10 Por:german_blog
perdon pero soy principiante, y la verdad no me queda muy claro en donde insertar el codigo, me podrian explicar un poco mas detallado, o sea el codigo se inserta directo en la edicion de "snow" como symbolo? o ya en el "scene" se inserta el symbolo y ahi se pega el codigo por que eso fue lo que hice pero no me funcion nada, gracias de antemano. Por:Klaudia-blog
Estos errores me saca:
**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 10: The class or interface 'snow' could not be loaded.
var t:snow=new snow();
**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 21: A type identifier is expected after the ':'.
function mover(e:*){
Total ActionScript Errors: 2 Reported Errors: 2 Por:Klaudia-blog