1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
| // Créer le flocon:
function createFlake() {
this.createEmptyMovieClip("flake_"+flakeCount,this.getNextHighestDepth());
var flake = this["flake_"+flakeCount];
flake._y = Math.random()*-300;// position y de départ
// Créer position x de départ aléatoire entre 100 et 700px:
for (var e:Number = 0; e<400; e++) {
var etendueX:Number = randRange(100, 700);
var transpa:Number = randRange(55, 95);
}
flake._x = etendueX;
//flake._alpha = transpa;
flake.attachMovie("flocon","flake_mc",1);
flake.rate = (Math.random()*maxRate)+minRate;// vitesse
if (flakeCount%2 == 0) {
flake.bitmapRef = girlBitmap;
} else {
flake.bitmapRef = gloveBitmap;
}
if (flakeCount%5 == 0) {
flake.windVal = wind+flake.rate*.025;
} else {
flake.windVal = (wind+flake.rate*.025)*-1;
}
var blurFilter = new flash.filters.BlurFilter(1, flake.rate, 2);//2
flake.filters = [blurFilter];
// Taille aléatoire des flocons:
for (var i = 0; i<100; i++) {
var taille:Number = randRange(60, 100);
}
flake._xscale = taille;
flake._yscale = taille;
flake.cacheAsBitmap = true;
//ENTERFRAME
// Vérifier si perso mange le flocon = compte monte + flocon disparait:
flake.onEnterFrame = function() {
// Rotation des flocons :
//flake._rotation += Math.round(flake.rate/20);
if (this.hitTest(perso.tete.zone)) {
// Ajouter un point:
this._parent.texte.lespouints.text = _global.compte += 1;
trace("n1 : "+_global.compte);
// Son avale-flocon:
var sonAvale:Sound = new Sound();
sonAvale.attachSound("erreur.wav");
sonAvale.setVolume(100);
//
this.attachMovie("floconTransfo","instance1",this.getNextHighestDepth());
delete this.onEnterFrame;
//removeMovieClip(this);
//Créer interval de 0.5sec avant de rermover mc:
setInterval(enlever,500);
function enlever() {
flake.removeMovieClip();
}
//
}
// Si position Y = sceneH = n'a pas attrapé le flocon : neige monte de x px si en bas et que compte est plus petit:
if (this._y>=sceneH+25) {
this._parent.neigeMonte._y -= 10;
}
// Si neige _y atteint < visage perso, allez aux résultats:
if (this._parent.neigeMonte._y<600) {//&& _global.compte<10) {
this._parent.loadMovie("fin.swf","_level0");
}
// Si compte atteint 10, aller prochain niveau: // && if(_global.compte<10) {
if (this._parent.neigeMonte._y>=600) {
if (_global.compte>=10) {
this._parent.loadMovie("n2.swf","_level0");
trace("n1 : "+_global.compte);
}
}
if (this.bitmapRef.getPixel(this._x, this._y+this._height/2) != 0 || this.bitmapRef.getPixel(this._x, this._y+this._height/2) == 16777215 || this._y>sceneH+25) {
createFlake();
this.filters = null;
if (this._y>=sceneH) {
removeMovieClip(this);
}
delete this.onEnterFrame;
} else {
this._x = this._x+this.windVal;
this._y += this.rate;
}
};
flakeCount++;
}
// FOR - créer les flocons:
for (var i:Number = 0; i<2; i++) {// 3 //quantité flocons
createFlake();
} |
Partager