// Importation du filtre import flash.filters.ColorMatrixFilter; // Création de la source des éclats var src:MovieClip = _root.createEmptyMovieClip("src", _root.getNextHighestDepth()); src._x = 200; src._y = 200; // Compteur d'éclats src.i = 1; // Création d'un éclat par image (12 images/sec par défaut) src.onEnterFrame = function() { var size:Number = Math.random() * 5; // Taille aléatoire var matrix:Array = new Array(); // Filtre du clip // red matrix = matrix.concat([1, 0, 0, 0, 512 * (Math.random() - .5)]); // green matrix = matrix.concat([0, 1, 0, 0, 512 * (Math.random() - .5)]); // blue matrix = matrix.concat([0, 0, 1, 0, 512 * (Math.random() - .5)]); // alpha matrix = matrix.concat([0, 0, 0, 1, 0]); // Copie d'un clip de la bibliothèque dans un clip (ici _root) var eclat:MovieClip = _root.attachMovie( "eclat", // Nom du clip à copier "eclat" + (this.i++), // Nom du clip créé _root.getNextHighestDepth(), // Profondeur du clip { // Propriétés de l'objet _x: this._x, _y: this._y, // Sur la source _width: size, _height: size // Taille } ); // Important ! Spécifier _rotation dans les propriétés // de l'objet à la création a une fâcheuse tendance à le déformer eclat._rotation = Math.random() * 360; // Direction de l'éclat // Spécification du filtre eclat.filters = [new ColorMatrixFilter(matrix)]; };