Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 20-07-2006, 08:40   #1 (permalink)
Neuer User
 
Registriert seit: Jul 2006
Beiträge: 4
hitTest an der rechten seite eines mc

moin,
ich hab ein problem an dem ich schon seit einigen tagen vergeblich sitze.

es gibt einen mc rudolf und einen mc move.

die beiden mc sollen miteinander kollidieren, allerdings soll rudolf nur auf der rechten seite reagieren.

wenn die mc nun zusammentreffen soll move gelöscht werden.

wenn aber rudolf nicht rechts sondern auf einer der anderen seiten getroffen wird soll er ein leben verlieren.

später möchte ich das noch dynamisch für andere gegner (wie move) machen.

einen quelltext hab ich leider momentan noch nicht (zumindest keinen brauchbaren )

kann mir einer helfen
san87 ist offline   Mit Zitat antworten
Alt 20-07-2006, 08:55   #2 (permalink)
im Urlaub!
 
Benutzerbild von dali
 
Registriert seit: Jul 2001
Beiträge: 383
ich denke du wirst entweder

a) werte (y + y-pos) ermitteln und auf kollision im bestimmten bereich abfragen müssen
b) und vielleicht ganz einfach: in den einen mc einfach rechts einen "durchsichtigen" mc legen und mit dem den hitTest machen.
c) warten das jmd eine bessere lösung vorschlägt

wobei b) nicht die eleganteste lösung ist
dali ist offline   Mit Zitat antworten
Alt 20-07-2006, 09:14   #3 (permalink)
Neuer User
 
Registriert seit: Jul 2006
Beiträge: 4
antwort b) hab ich schon versucht, aber dann reagiert mein hit test net.
this ist mc rudolf, treffen ist der mc der sich in mc vogel befindet.

this.hitTest(_root.vogel.treffen);

und bei a) meinst du ich soll di y-koordinaten von oben bis unten auslesen?

danke schon mal
san87 ist offline   Mit Zitat antworten
Alt 20-07-2006, 09:25   #4 (permalink)
im Urlaub!
 
Benutzerbild von dali
 
Registriert seit: Jul 2001
Beiträge: 383
Zitat:
Zitat von san87
antwort b) hab ich schon versucht, aber dann reagiert mein hit test net.
this ist mc rudolf, treffen ist der mc der sich in mc vogel befindet.

this.hitTest(_root.vogel.treffen);
aber das ganze muss schon in eine ständige (enterFrame) If Abfrage...das hast gemacht?

Siehe Hilfe:
PHP-Code:
if(_root.ball.hitTest(_root.quadrat)){
  
trace("ball überschneidet sich mit quadrat");

in deinem fall:
PHP-Code:
this.onEnterFrame = function()
{
if(
rudolf.hitTest(_root.vogel.treffen)){
  
trace("rudolf trifft auf Vogel");
}

hoffentlich habe ich jetzt keinen Fehler geschrieben

Geändert von dali (20-07-2006 um 09:26 Uhr)
dali ist offline   Mit Zitat antworten
Alt 20-07-2006, 09:55   #5 (permalink)
Neuer User
 
Registriert seit: Jul 2006
Beiträge: 4
danke jetzt funzt es.


onClipEvent(enterFrame)
{
onEnterFrame = function()
{
if(_root.rudolf.hitTest(_root.mc1.treffen)){

trace(_root.rudolf.hitTest(_root.mc1.treffen));
}
}
}

eigentlich ja ganz logisch
san87 ist offline   Mit Zitat antworten
Alt 20-07-2006, 11:49   #6 (permalink)
im Urlaub!
 
Benutzerbild von dali
 
Registriert seit: Jul 2001
Beiträge: 383
wenn dann so:

PHP-Code:

onClipEvent
(enterFrame)
{

if(
_root.rudolf.hitTest(_root.mc1.treffen)){
trace(_root.rudolf.hitTest(_root.mc1.treffen)); 



ein EnterFrame reicht
dali ist offline   Mit Zitat antworten
Alt 20-07-2006, 13:34   #7 (permalink)
Neuer User
 
Registriert seit: Jul 2006
Beiträge: 4
jup hast recht.

danke dir
san87 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:20 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele