Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-12-2003, 21:13   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2003
Beiträge: 25
hittest nur einmal

hallo miteinander,

ich weiss das es zu hittest viele postings gibt, jedoch bin ich leider nicht zum erwünschten ziel gekommen:

ich bewege einen mc (ball1) in einem labyrinth hin und her. ich lege dann diverse hindernisse/ coins in die bahn. wenn ich dann über den mc "diamant1" gehe, möchte z.b. einen anderen mc (stein1) _visible = true haben.

mit hitTest habe ich zwar die bahn und die hindernisse hinbekommen, kriege aber immer, wenn ich über den diamant fahre einen an/ aus/ an / aus/ an / aus .... - effekt. es soll aber nur angeschaltet werden, wenn ich das erste mal drüber fahre, und wenn ich ein zweitesmal drüberfahre, soll er wieder verschwinden.

ich hoffe, dass mir jemand weitehelfen kann.

1000 dank

markus
__________________
--- Alles wird GUT ---

Markus
markus0007 ist offline   Mit Zitat antworten
Alt 21-12-2003, 21:40   #2 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Is für mich jetzt nicht ganz verständlich, was du mit an/aus etc. meinst... Kannst du mal Teile deines Codes posten bzw. wie denn der An/Aus- Mechanismus funktionieren soll...
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 21-12-2003, 22:32   #3 (permalink)
...
 
Benutzerbild von flash bier
 
Registriert seit: Nov 2001
Beiträge: 1.227
hi markus,

da gibts verschiedene varianten, wie du das problem beheben kannst.
Zuerst könntest du im hittest einen weitere variable abfragen, die dir sagt, ob zwischen deinem hittest und dem nächsten hittest auch ein zeitpunkt war, an dem kein hittest stattgefunden hat.
Ich nenne nenne diese variable hitFlag. Diese musst du zu anfang 0 setzte.
Wenn du also einen hittest hast, wird diese auf 1 gesetzt und deine hittetsfunktion führt nur einmal deine _visible-geschichte aus, da dann die Flag auf 1 gesetzt wird. erst wenn kein hittest mehr eintrifft, wird die hitFlag wieder auf 0 gesetzt, und die visible-geschichte kann erneut beginnen.
ActionScript:
  1. if(hittest bla bla){
  2. if(hitFlag==0){
  3. stein1_mc._visible=stein1_mc._visible*-1;
  4. hitFlag=1;
  5. }
  6. }else{
  7. hitFlag=0;
  8. }


eine weitere variante wäre es, das ganze zeitgesteuert zu machen. also wenn ein hittest erfolgt, setzt du eine zeitFlag auf 1... zusätzlich rufst du eine function auf, die nach einer bestimmten zeit, vielleicht eine sekunde, wieder deine zeitFlag auf null setzt. dieses zeitfunktion kannst du mit setIntervall erstellen, dazu steht hier sicher viel im Forum.

welche variante du wählst hängt natürlich von deiner anwendung ab...

MfG flash bier
__________________
Schweig oder sprich Worte, die besser sind als Schweigen !
flash bier 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 16:23 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele