Quello che vorrei ricreare è un effetto fade out su un movie clip quando sposto il mouse dal centro verso sinistra o verso destra, cioè verso i bordi del filmato, andando quindi a sfumare fino a scomparire.
Grazie.
Quello che vorrei ricreare è un effetto fade out su un movie clip quando sposto il mouse dal centro verso sinistra o verso destra, cioè verso i bordi del filmato, andando quindi a sfumare fino a scomparire.
Grazie.
radius rappresenta la distanza oltre la quale l'alpha vale zero.codice:MovieClip.prototype.fadeOnMouseMove = function(radius) { var bnd = this.getBounds(this); var x0 = (bnd.xMax+bnd.xMin)/2; var y0 = (bnd.yMax+bnd.yMin)/2; this.onMouseMove = function() { var distX = this._xmouse-x0; var distY = this._ymouse-y0; var dist = Math.sqrt(distX*distX+distY*distY); this._alpha = 100-100*dist/radius; updateAfterEvent(); }; };
esempio:
codice:nomeClip.fadeOnMouseMove(200);
Ma esattamente dove devo metterlo quel codice.. mi devi scusare ma sto studiando da poco il flash e con gli script sono ancora poco pratico![]()
Metti il codice sul primo fotogramma.
Dai un nome istanza al movieclip che si trova sullo stage e su cui applicare l'effetto.
Sul fotogramma dove inserisci il movieclip scrivi:
dove al posto di nomeClip metti il nome istanza scelto per il tuo clip e al posto di 200 un valore per te opportuno.codice:nomeClip.fadeOnMouseMove(200);
Grazie adesso funziona...
Ma c'è un modo per dare due valori diversi al radius che valgono uno se il mouse va verso sinistra e l'altro se va verso destra?
vuoi che il clip venga sfumato solo quando ti muovi verso destra e sinistra o anche quando ti allontani verso l'alto e il basso.
comunque per avere due valori differenti a destra e a sinistra del clip:
codice:MovieClip.prototype.fadeOnMouseMove = function(radius_sx, radius_dx) { var bnd = this.getBounds(this); var x0 = (bnd.xMax+bnd.xMin)/2; var y0 = (bnd.yMax+bnd.yMin)/2; this.onMouseMove = function() { var distX = this._xmouse-x0; var distY = this._ymouse-y0; var dist = Math.sqrt(distX*distX+distY*distY); if (distX<0) { this._alpha = 100-100*dist/radius_sx; } else { this._alpha = 100-100*dist/radius_dx; } updateAfterEvent(); }; };codice:nomeClip.fadeOnMouseMove(50,200);