Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-03-2004, 22:07   #1 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hittest von 2 mc´s

hi,

habe einen hittest-function.
sobald der kreis das quadrat berührt, soll in dem quadrat eine animation stattfinden.
dazu das script _root.quadrat.gotoAndPlay ("start");
das problem ist nur, das die animation erst startet, wenn der kreis das quadrat wieder verlässt.
die hittest.zip liegt unter: http://www.castra.de/download.htm

gruss sven
xlive ist offline   Mit Zitat antworten
Alt 11-03-2004, 22:28   #2 (permalink)
Neuer User
 
Registriert seit: Mar 2002
Ort: D'dorf
Beiträge: 765
hi sven,

das Problem ist, dass der Hittest bei jedem onEnterFrame ausgeführt wird. Solange der Kreis über dem quadrat ist, ist der Hittest true und das quadrat springt zum Frame "start" und springt zum Frame "start" und... und... und... bis der Hittest false wird. Dann kann quadrat endlich in Ruhe abspielen.

Du könntest entweder prüfen in welchem Frame sich der mc "quadrat" befindet, und nur wenn er in Frame 1 ist zum Frame "start" springen:
ActionScript:
  1. onClipEvent (enterFrame) {
  2.    if (this.hitTest(_root.kreis) && this._currentframe == 1){
  3.       this.gotoAndPlay ("start");
  4.    }
  5. }
Oder du könntest auch den onEnterFrame-Handler dynamisch dem mc "quadrat" zuweisen und löscht ihn, sobald der Hittest true ist (das onClipEvent(enterFrame) musst du dann komplett rausschmeißen):
ActionScript:
  1. // Script in Frame 1 auf _root.
  2. quadrat.onEnterFrame = function(){
  3.    if (this.hitTest(_root.kreis)){
  4.       this.gotoAndPlay ("start");
  5. delete this.onEnterFrame;
  6.    }
  7. }
Und weil sich das Script im MC "quadrat" befindet kannst du die Pfadangabe (_root.quadrat) durch "this" ersetzen. "this" bezieht sich auf den MC in dem sich das Script befindet.

gruß,
roman
romän ist offline   Mit Zitat antworten
Alt 11-03-2004, 22:30   #3 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
nabend.
ich habe mir jetzt deine datei nicht angesehen, aber probier mal:
if(hittest.blabla){
if(!bla){
_root.quadrat.gotoAndPlay ("start");
bla=true;
}
}else{
bla=false;
}

grüße.
smirgel.
__________________
bei fragen, fragen.
Smirgel ist offline   Mit Zitat antworten
Alt 11-03-2004, 22:54   #4 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hi roman,

es funzt.
danke für das gute script und deine klasse erklärung.

gruss sven
xlive 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 17:53 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele