Espongo brevemente il mio problema. Ho un filmato con 10 immagini che vengano caricate in diversi mc, queste immagine sono dragabili e sovrapponibili con la funzione famosa swap_Depths...
Se uno preme sopra la foto la può spostare lasciando il pulsante premuto e nel frattempo si ingrandisce.
Io vorrei aggiungere a tutto ciò:
1. dare al trascinamento un ritardo, ovvero le foto devono seguire il mouse ma in ritardo.
2. rendere la zona di drag contenuta, e se uno esce una volta mollato il tasto del mouse elasticamente la foto torna nella zona draggabile.
3. rendere l'immagine ingrandibile solo con una funziona doppio click di cui quasi ignore la reale possibilità di progettazione
In modo da trascinare se voglio le foto senza ingrandirle e premere due volte sulla foto che voglio ingrandire.
Bene o male o reperito tutte queste tre funzioni in giro, ma proprio non riesco ad integrarle.
Lo script di partenza è questo:
for(i=1;i<=10;i++){
this["c"+i].foto.loadMovie("HB"+i+".jpg")
this["b"+i].foto.loadMovie("HB"+i+".jpg")
this["c"+i]._rotation=random(100)-50
this["c"+i]._xscale=this["c"+i]._yscale=50
this["c"+i].onPress=function(){
this.startDrag(true)
open_pic(this._name)
}
this["b"+i].onPress=function(){
_level0["c"+substring(this._name,2,1)].swapDepths(100)
}
this["c"+i].onRelease=function(){
this.stopDrag()
_level0.premuto=false
close_pic(this._name)
}
}
function open_pic(nome){
this[nome].swapDepths(100)
_level0.val_rot=this[nome]._rotation
this[nome]._rotation=0
this[nome].onEnterFrame=function(){
if(this._xscale<100){this._xscale=this._yscale+=5}
else{delete this.onEnterFrame}
}
}
function close_pic(nome){
trace("passato su "+nome)
this[nome].onEnterFrame=function(){
if(this._xscale>50){this._xscale=this._yscale-=5}
else{
trace(_level0.val_rot)
this._rotation=_level0.val_rot;
delete this.onEnterFrame
}
}
}
Cordiali saluti, un grazie di cuore a chi mi darà una mano, e darà una mano a far crescere il forum.
Fabio Canovi
![]()