Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 25-05-2006, 15:57   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 80
hitTest Probleme

ich hatte noch nie wirklich etwas mit dem hitTest zu tun und komme gerade bei einem Problem nicht wirklich weiter. Ich hab das essentielle aus dem Original kopiert. Vielleicht hat wer kurz die zeit mir da ein wenig auf die Sprünge zu helfen, um mir zu sagen was ich falsch mache...
Angehängte Dateien
Dateityp: zip detect_test.zip (17,6 KB, 7x aufgerufen)
mooghead ist offline   Mit Zitat antworten
Alt 25-05-2006, 15:59   #2 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
ActionScript:
  1. this.onEnterFrame = function() {
  2.     if (this.hitTest(_parent.runnerMC)) {
  3.         trace("Kollision");
  4.     }
  5. };
sebastian ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:07   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 80
sorry - beim ersten habe ich vergessen die sachen rauszuschneiden. tut leid. Ich brauche die zweite variante. Und die krieg ich nciht zum laufen.
mooghead ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:13   #4 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
Welche zweite Variante?
sebastian ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:15   #5 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 80
Hab ich das jetzt vollkommen vergeigt? Ich hirni.

PHP-Code:
this.onEnterFrame = function() {
    if (
this.hitTest(_parent.runnerMC._x_parent.runnerMC._ytrue)) {
        
trace("Kollision");
    }
}; 
Ich brauche für meine hitTest Abfrage die shapes und nicht die bounding box... das will aber so in der Form nicht hinhauen.
mooghead ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:24   #6 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
Na ja in dem Fall machst du ja nur hitTest mit einem Punkt. Bin gerade überfragt ob das mit hitTest überhaupt geht. Mal schauen ob jemand anderes Rat weiß.
sebastian ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:29   #7 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 80
Aus der Hilfe im Flash.

***

my_mc.hitTest(x, y, shapeFlag)
my_mc.hitTest(target)

Parameters
x The x coordinate of the hit area on the Stage.

y The y coordinate of the hit area on the Stage.

The x and y coordinates are defined in the global coordinate space.

target The target path of the hit area that may intersect or overlap with the instance specified by my_mc. The target parameter usually represents a button or text-entry field.

shapeFlag A Boolean value specifying whether to evaluate the entire shape of the specified instance (true), or just the bounding box (false). This parameter can be specified only if the hit area is identified using x and y coordinate parameters.

Returns
A Boolean value of true if my_mc overlaps with the specified hit area, false otherwise.

***

wenn ich das ummüntze auf meinen code, dann müsste ich alles richtig gemacht haben. ich gebe die x und y koordinaten an und sage, dass er die form checken soll. Drum raff ich nicht wieso das nicht funktioniert. Irgendwo muss der Hund begraben sein.
mooghead ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:30   #8 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
Weil du eben nur mit diesem x und y wert den hitTest machst und nicht mit dem shape
sebastian ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:32   #9 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 80
PHP-Code:
this.onEnterFrame = function() {
    
trace(this._x+" "+_parent.runnerMC._x);
    if (
hitTest(_parent.runnerMC._x_parent.runnerMC._ytrue)) {
        
trace("Kollision");
    }
}; 
ergibt

PHP-Code:
279.85 171
269.55 171
259.25 171
248.95 171
238.65 171
228.35 171
218.05 171
207.75 171
197.45 171
187.15 171
176.85 171
166.55 171
156.25 171
145.95 171
135.65 171
125.35 171
115.05 171
104.75 171
94.45 171
84.15 171 
ab

PHP-Code:
176.85 171
166.55 171 
müsste er doch anfangen zu mackern...?!
mooghead ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:34   #10 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
Der Y Wert muss ja auch stimmen

Vielleicht hab ich aber auch gerade einen Denkfehler
sebastian ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:36   #11 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 80
Zitat:
Zitat von Sebastian W.
Weil du eben nur mit diesem x und y wert den hitTest machst und nicht mit dem shape
verstehe nicht was du damit meinst. laut hilfe sag ich ihm durch
PHP-Code:
...this.hitTest... 
dass es sich um diesen clip handelt (samt shape)

mit

PHP-Code:
_parent.runnerMC._x_parent.runnerMC._ytrue 
nenne ich ihm den x und y wert wo sich der zu vergleichende movieclip befindet. Da wird aber nicht nur der x und y wert genommen sondern die ganze form, je nachdem ob ich die shapeFLag auf true oder false setze...
mooghead ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:38   #12 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
Zitat:
Zitat von mooghead
Da wird aber nicht nur der x und y wert genommen sondern die ganze form, je nachdem ob ich die shapeFLag auf true oder false setze...
Genau das nicht, wenn ich mich nicht täusche.
sebastian ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:41   #13 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 80
na eben schon!!!!

shapeFlag A Boolean value specifying whether to evaluate the entire shape of the specified instance (true), or just the bounding box (false). This parameter can be specified only if the hit area is identified using x and y coordinate parameters.

macht aber weder noch die saufbacke!
mooghead ist offline   Mit Zitat antworten
Alt 25-05-2006, 16:53   #14 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 80
wenn ich das ganze aus dem obstacle mc rausnehme und in die ebene lege wo sich beide clips befinden lege, dann funktionierts.

PHP-Code:
runnerMC.onEnterFrame = function() {
    if (
this.hitTest(obstacleMC._xobstacleMC._ytrue)) {
        
//speed = 1;
        
trace("hit");
    }
}; 
Das war des rätsels Lösung! Dürfte also mit der Referenzierung der Positionen zwischen den beiden clips zu tun haben wenn ich mich da jetzt nicht voll täusche. Anyhow - es funktioniert .
mooghead 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:26 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele