Quiero usar flash para crear simplemente una escena nevando
Te enseñaré un método, es muy sencillo. ¡Lo he probado y funciona!
1. En la primera capa, coloca tu imagen de fondo o haz que el fondo sea negro, porque los copos de nieve son blancos y no puedes verlos sobre un fondo blanco.
2. Crea una nueva capa 2, haz clic en el primer fotograma, presiona F9 y copia el siguiente código.
fallSnow(this, 100, [550, 400]);
función fallSnow(ruta, num, tamaño) {
for (var i = 0 ; ilt; num; i) {
ruta.createEmptyMovieClip("s" i, i);
var mc = ruta["s" i];
mc._x = aleatorio(tamaño[0]);
mc._y = aleatorio(tamaño[1]); [aleatorio(2)];
mc.xtime = aleatorio(20);
mc.startTime = 0
mc.id = Math.pow; (yo, 1/2)
createSnow(mc, mc.id/2.5, "0xffffff", 20*mc.id
}
var bucle = función () {
updateAfterEvent();
for (var i = 0; ilt; num; i) {
var mc = ruta["s" i];
mc._rotation = mc.ro*5;
mc._x = mc.id*mc.ro/10;
mc._y = mc.id/2;
mc.startTime
scanTar(mc);
scanEdge(mc, tamaño);
}
};
var intervalo = setInterval(bucle, 10); createSnow(mc, radio, c, alfa) {
con (mc) {
moveTo(0, -radius);
comenzarFill(c, alfa );
lineStyle(0, "0x000000", 0);
for (var i = 1; ilt; =6; i) {
var a1 = -Math.PI/6 i*Math.PI/3;
var a2 = i*Math.PI/3
lineTo((radius/5)*Math .sin(a1), -(radio/5)*Math.cos(a1));
lineTo(radius*Math.sin(a2), -radius*Math.cos(a2));
}
endFill();
}
}
función scanTar(mc) { p>
p>
if (mc.startTimegt;=mc.xtime) {
mc.startTime = 0;
mc.xtime = aleatorio(
20);
mc.ro = [1, -1][aleatorio(2)];
}
}
función scanEdge(mc, tamaño) {
if (mc._xgt; tamaño[0]) {
mc._x =
} else if; (mc._xlt; 0) {
mc._x = tamaño[0]
}
if (mc._ygt; tamaño[1]) {
mc._y = 0;
}
}
3. (Este código no requiere ningún componente, el código genera automáticamente la forma del copo de nieve)