buton gen prevFrame();

Intrebari despre Actionscript 2.0

buton gen prevFrame();

Mesajde dtbd1916 » Mar Aug 19, 2008 7:20 pm

Vreau sa fac un buton in flash si vreau sa ii zic "cand vizitatorul da click pe tine du`te in spate cu 15 frame`uri" si nu stiu codul exact.


Stiu ca daca vrei sa se duca cu un frame in urma scrii:
on(press){prevFrame;}
dare_to_be_different1916 | id de messenger
dtbd1916
 
Mesaje: 4
Membru din: Mar Aug 19, 2008 7:18 pm

Re: buton gen prevFrame();

Mesajde Barna Biro » Mar Aug 19, 2008 9:55 pm

Salut. Eu l-as face asa:

Cod: Selectaţi tot
var counter:Number = 0;
var framesToRewind:Number = 15;

yourButton.onPress = function():Void
{   
   this.onEnterFrame = function():Void
   {
      if (counter < framesToRewind)
      {
         counter++;
         this._parent.prevFrame();
         trace("rewinded: " + counter + " frame(s)");
      }
      else
      {
         this.onPress = null;
         this.onEnterFrame = null;
         trace("\n" + "// onEnterFrame removed");
      }
   }
}

Dar poti folosi si un Timer daca ti-e mai usor.

PS: evident, this._parent.prevFrame(); poate varia in functie de unde se afla butonul tau si ce doresti sa rewind-uiesti.
Si nu uita ca, codul postat de mine se pune pe frame nu direct pe buton ( incearca sa nu mai pui cod pe obiecte ci pe frame ).

EDIT:

Sau in caz de pur si simplu vrei sa sari intre frame-uri atunci foloseste gotoAndStop(15); ( care de fapt ii spune Flash-ului ca "du-te si opreste-te pe frame 15 ) sau si mai bine, sa dai un label name la frame, de exemplu "about" si atunci poti folosi ceva de genu: gotoAndStop("about"); sau daca vrei sa sari inapoi cu exact 15 frame-uri din locul unde esti in momentul click-ului, atunci poti folosi si ceva de genu:

Cod: Selectaţi tot
var frameToJumpBack:Number = 15;

yourButton.onPress = function():Void
{
   // verificam sa nu sa nu cumva sa sarim mai multe frame-uri decat se pot sari
   // oricum, si daca ar da un numar negativ ( sau 0 ), parca din default tot sare pe primul frame sau poate nu sare deloc
   // dar ca sa omitem confuzia e bine sa avem o conditie care face aceasta verificare si in caz vrem
   // sa sarim mai mult decat putem, atunci sa ne trimita pe primul frame

   if (this._parent._currentframe - frameToJumpBack < 1)
   {
      this._parent.gotoAndStop(1);
      trace("we're currently on frame: " + this._parent._currentframe);
   }
   else
   {
      this._parent.gotoAndStop(this._parent._currentframe - frameToJumpBack);
      trace("we're currently on frame: " + this._parent._currentframe);
   }
}

Depinde doar de ceea ce vrei sa faci tu... Problema poate fi rezolvata pe mai multe cai.
Cand stii ce doresti sa faci exact, e un pic mai usor sa alegi si calea de rezolvare.
Imagine
Avatar utilizator
Barna Biro
Administrator
 
Mesaje: 2037
Membru din: Vin Iul 25, 2008 1:06 am
Localitate: Lucerne, Switzerland

Re: buton gen prevFrame();

Mesajde vamapaull » Mie Aug 20, 2008 3:33 pm

uite... ceva de genu' asta cred ca vrei
Cod: Selectaţi tot
btn.onRelease = function(){
   gotoAndStop(_currentFrame-15);
}
Avatar utilizator
vamapaull
Administrator
 
Mesaje: 681
Membru din: Lun Iul 21, 2008 5:03 pm
Localitate: Bucuresti


Înapoi la ActionScript 2.0

Cine este conectat

Utilizatorii ce navighează pe acest forum: Niciun utilizator înregistrat şi 2 vizitatori

cron