Salve a tutti,
in questi giorni sto cercando di creare un'animazione in cui un mc si sposta a seconda di dove si clicchi con il mouse..
Ho già cercato su questo forum, purtroppo però quello che mi serve non riesco a realizzarlo..
questo è quello che son riuscito a realizzare, partendo da esempi trovati qui: Animazione Prova
Come vedete ci sono 2 omini che si spostano con due funzioni diverse
Omino blu
Omino rossocodice:function muovi(casella) { sposta=10; endX = casella._x; endY = casella._y; fermati = false; _root.onEnterFrame = function() { if (fermati == false) { if (_root.clip._x>endX) sopraX=true; else sopraX=false; if (_root.clip._y>endY) sopraY=true; else sopraY=false; if (Math.abs(_root.clip._x-endX)>=sposta){ if(sopraX) _root.clip._x -= sposta; else _root.clip._x += sposta; } if (Math.abs(_root.clip._y-endY)>=sposta){ if(sopraY) _root.clip._y -= sposta; else _root.clip._y += sposta; } } if ((Math.abs(_root.clip._x-endX)<sposta) && (Math.abs(_root.clip._y-endY)<sposta)) { fermati = true; _root.clip._x = endX; _root.clip._y = endY; } } }
Come potete vedere entrabe le funzioni fanno arrivare l'omino nel punto scelto, solo che vorrei che per arrivare in tal punto, il mio mc si muovesse in diagonale, seguendo così le caselle..codice:MovieClip.prototype.myTween = function(clip, xArr, yArr, frames){ clip.xArr = Math.floor(xArr); clip.yArr = Math.floor(yArr); clip.frames = Number(frames); this.onEnterFrame = function(){ if(Math.floor(clip._x) != clip.xArr && Math.floor(clip._y) != clip.yArr){ xspost = (clip.xArr-clip._x)/frames; yspost = (clip.yArr-clip._y)/frames; clip._x += xspost; clip._y += yspost; } else { delete this.onEnterFrame; clip._x = clip.xArr; clip._y = clip.yArr; } } }
Purtroppo io non so più che fare
Qualcuno saprebbe darmi una mano?