Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24-02-2005, 17:46   #1 (permalink)
Neuer User
 
Benutzerbild von julius_suiluj
 
Registriert seit: Apr 2004
Ort: BeRLin
Beiträge: 230
exakt bremsen mit AS

hi
ich hab nen script, was ich heufig benutze um bewegungen abzubremsen.
PHP-Code:
onClipEvent (enterFrame) {
    
pups this._x;
    
Xpos pups;
    
Xdif = (Xneu_pos-Xpos)/8;
    
pups this._x+Xdif;
        
this._x Math.round(pups);

das script bewegt den MC von this._x nach Xneu_pos indem es den MC immer um ein achtel des verbleibenden weges weiterbewegt.

mein problem ist, dass gegen ende die schritte so klein werden, das der MC nie Xneu_pos erreicht, sondern immer kurz davor stehen bleibt.
so kann man ja nicht prezise arbeiten.

had jemand ne idee wie man den MC exakt auf den punkt bremsen kann.

momentan benutze ich dazu ein sehr umstendliches script, was vorausberechnet, um wieviel pixel der MC davor stehen bleibt und die bewegung so koregiert.

würde mir echt sher helfen wenn da jemand ne idee hat. ich quäle mich schonn lange mit dem problem.
__________________
www.spektronaut.de

while ($bush == $president){
$krieg++;
}
julius_suiluj ist offline   Mit Zitat antworten
Alt 24-02-2005, 17:58   #2 (permalink)
Neuer User
 
Benutzerbild von :: RK ::
 
Registriert seit: Jan 2002
Ort: Umgebung Stuttgart
Beiträge: 5.412
hi,

versuch das mal:

ActionScript:
  1. onClipEvent (enterFrame) {
  2.      if(Xneu_pos>this._x){
  3.         this._x +=  Math.floor((Xneu_pos-this._x)/8);
  4.      }else if(Xneu_pos<this._x){
  5.         this._x +=  Math.ceil((Xneu_pos-this._x)/8);
  6.      }
  7.   }


bzw. als Zeitleisten AS:
ActionScript:
  1. deinMc.onEnterFrame = function(){
  2.       if(Xneu_pos>this._x){
  3.          this._x +=  Math.floor((Xneu_pos-this._x)/8);
  4.       }else if(Xneu_pos<this._x){
  5.          this._x +=  Math.ceil((Xneu_pos-this._x)/8);
  6.       }
  7.  if(this._x == Xneu_pos){
  8.     delete this.onEnterFrame;
  9.  }
  10.    }


__________________
Das Glück im Leben hängt von den guten Gedanken ab, die man hat.

Easing_Equations / Flash Kontaktformular / FlashPlugin W3C konform / Nützliche Beiträge zu FAQs

Geändert von :: RK :: (24-02-2005 um 17:59 Uhr)
:: RK :: ist offline   Mit Zitat antworten
Alt 24-02-2005, 17:58   #3 (permalink)
Neuer User
 
Registriert seit: Aug 2004
Beiträge: 27
mach mal

mach mal das Math.round weg...
dann sollte das geh'n...
wennn du nämlich immer die stellen nach dem komma abschneidest, kommst du logischerweise im 0,...-Bereich nicht bis zur Zielkoordinaten...

Gruß
rené
René Walter ist offline   Mit Zitat antworten
Alt 24-02-2005, 18:00   #4 (permalink)
poke
 
Registriert seit: Dec 2002
Ort: Iserlohn [NRW]
Beiträge: 2.304
also ich hab da nie ein Problem mit gehabt, kann es sein, dass dein Registrierpunkt falsch liegt? zentrier das mal oder so..
pokepika ist offline   Mit Zitat antworten
Alt 25-02-2005, 01:02   #5 (permalink)
Neuer User
 
Benutzerbild von julius_suiluj
 
Registriert seit: Apr 2004
Ort: BeRLin
Beiträge: 230
@rk
vielen danke danach hatte ich gesucht. ich muste nurnoch eine -7 und eine +7 (8-1) reinhauen, damit sich die werte decken.
@René Walter.
ja da hast du recht, aber ich will schrift bewegen und die mag nur ganze zahlen.
__________________
www.spektronaut.de

while ($bush == $president){
$krieg++;
}
julius_suiluj ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 08:36 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele