| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 105
| spezielles hittest problem
Hallo ihr Lieben ich habe (mal wieder) ein Problem, das zu hoch für mich ist ... Und zwar ist es diesmal eine Hittest-Situation. Ich möchte das man einen MC drag´en kann und wenn er über einen bestimmten Bereich losgelassen wird, auf eine bestimmte Position springt. Also im Klartext, wenn ich den MC in den Rahmen ziehe, soll er in ihm landen wenn ich dadrin die Maus loslasse. Das Problem ist aber, daß ich mehrere dieser Rahmen habe. Wie mache ich nun die Hittestabfrage? Ich möchte nicht in der Abfrage alle Rahmen abfragen. Ich wüsste gerne ob es möglich ist, daß der MC selbst guckt über welchen er gerade ist und wenn ich loslasse, er in dieselben x/y Werte springt, wie der Rahmen. Hoffe ihr versteht wie ich das meine Wie schaffe ich das? lg Loena |
| | |
| | #2 (permalink) |
| Neuer User Registriert seit: Dec 2003 Ort: BW
Beiträge: 56
|
Hmmm... du sagst du möchtest nicht jeden Rahmen abfragen. Aber das ist meiner Meinung nach die einfachste Möglichkeit. Du packst alle Rahmen in ein Array und über das Loopst du mit einer Schleife drüber, wenn der MC gedroppt wird. quasi: Array welches alle Rahmen enthält: var rahmenArr for(var i in rahmenArr) { // hitTest auf mit MC und rahmenArr[i]; }
__________________ Def. "Team" - -=Toll Ein Anderer Machts=- |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 105
|
Ok, wenn es nicht anders geht, dann werde ich das wohl so machen müssen. Aber wie sieht das Script genau aus? Kenne mich mit Arrays gar nicht aus. Wenn dann nun ein Array positiv ist, wie bekomme ich dann die Koordinaten her? lg Loena |
| | |
| | #6 (permalink) | |
| Neuer User Registriert seit: Dec 2003 Ort: BW
Beiträge: 56
| Zitat:
hm.. mist, ich auch nicht... Könnte jemand so nett sein und probieren die zip aufzukriegen?
__________________ Def. "Team" - -=Toll Ein Anderer Machts=- | |
| | |
| | #7 (permalink) |
| Gast
Beiträge: n/a
|
Die Zip könnt ihr vergessen, habe grade alles Probiert, was nur gehen könnte, die ist wirklich im A*** ... einfach ne PM schreiben - dazu hier klicken Sorry, das ich keine bessere Nachricht hatte. Gruß Tino |
|
| | #8 (permalink) |
| Neuer User Registriert seit: Apr 2004
Beiträge: 55
|
Da ich gerade was ähnliches in Verwendung habe, habe ich dir mal ein Bsp gemacht. Es muss auch nicht zwingend ein Array verwendet werden, es reicht auch, wenn die Rahmen in einem MC verschachtelt sind. OK, ein MC ist eigentlich ja auch ein Array, aber daher ist es auch egal, was man da verwendet. Aber siehe selber... |
| | |
| | #9 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 105
|
@webcreate Vielen Dank für deine Mühen! Allerdings kann ich mir das noch nicht so ganz anpassen, denn ich vertsehe den Bereich nicht ganz: PHP-Code: Kannst du die Zeilen bitte kommentieren? Wäre sehr nett lg Loena |
| | |
| | #10 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.324
|
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
| | #11 (permalink) |
| Neuer User Registriert seit: Apr 2004
Beiträge: 55
|
Die werden doch bei dem Functionaufruf mit übergeben: ActionScript:
In meinem Bsp liegt ja dann hinter this das MC 'obj', da es aus desen onMouseUp function stammt und das zweite MC ist einmal das MC 'sammlung' und einmal das Array 'pruefinhalt'. Also ist der Functionaufruf wie folgt aufgebaut: checkhit(mc1, mc2); Was ggf. etwas verwirrt ist der Einsatz von localToGlobal(). Das ist nötig, da man die Koordinaten bei den verschachtelten MCs als Globalkoordinaten betrachten muss. |
| | |
| | #12 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 105
|
Hallo zusammen Actionscript und ich, das ist wie Feuer und Wasser. Ich glaube wir denken in zwei völlig anderen Arten Ich habe heute den ganzen Tag versucht mir etwas selbst zusammen zu basteln und ich habe für meine Verhältnisse viel geschafft. Für euch ist das sicher ein Pups.Aber wie gesagt, ich komme nicht weiter. Situation nochmal zusammen gefasst: Ein MC wird aus der Bib auf die Bühne attached. Ihn soll man drag´en können und auf ein anderen MC ziehen können. Wenn die übereinander liegen und die Maus losgelassen wird, soll der Drager in eine bestimmte Position springen. Zwei Haken gibt es aber: - der Film in dem sich alles abspielt wird später nochmal in einen anderen geladen, daher fällt wohl _root flach. - der MC der attached und gedraged wird, soll aus einer von mehreren sein, der zufällig in einen Container geladen wird. Wie ich das schaffe habe ich hier von mooseMash erfahren. Das habe ich aber nicht in meinem jetzigen Anhang, da mir das so schon zu kompliziert ist. Auf jeden Fall hat der attached keinen festen Startpunkt (sofern das wichtig ist). Wie kann ich nun also meinen Anhang so umfummeln das er funktioniert und noch, für einen absoluten Laien wie mich, nachvollziehbar ist? lg Loena |
| | |
| | #13 (permalink) |
| . Registriert seit: May 2003 Ort: bayern
Beiträge: 1.117
|
servus, ich hab mal dein script etwas modifiziert, vielleicht ist es ja was du brauchst?! good luck mM
__________________ [mooseMash] |
| | |
| | #14 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 105
|
Hallo mM vielen Dank für deine Mühen, dass sieht doch richtig gut aus und scheint genau so zu sein, wie ich mir das vorstelle Ich werde mir das aber nochmal in Ruhe anschauen und das in mein Projekt einbinden. Ich werde sicher noch einige Fragen haben lg Loena p.s. Ohne die hilfsbereiten Menschen hier im Forum wäre ich echt verloren! Darum noch mal ein riesiges Danke schön an alle die mir bisher geholfen haben |
| | |
| | #15 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 105
|
Ich wusste das noch ein Problem kommt ... Hallo Und zwar versuche ich das Script von mooseMash so zu verändern, dass wenn ich beim dragen die Mouse loslasse und ich nicht über einem der MC´s bin, der gedraggede wieder an den Ursprungspunkt zurück springt. Aber ich schaffe nur eines von beiden. Entweder springt er immer zurück, oder gar nicht Habe das in der if-Schleife mit else versucht, aber wie gesagt, das ging nicht. Mein jetziger grober Stand: [PHP] c1x = 533; c1y = 450; // Die Funktion von mooseMash function chkHit(mc){ for(var i=0;i<hit_mcs.length;i++){ if (mc.hitTest(hit_mcs[i])) { mc._x = hit_mcs[i]._x; mc._y = hit_mcs[i]._y; trace(hit_mcs[i]); break; // Das habe ich hier reingesetzt, in der Hoffnung er würde die Schleife verlassen, sobald Hittest ist ... } else { // und halt meine Alternative falls es nicht ist c1._x=c1x; c1._y=c1y; } } }[/PHP Wo ist das Problem? Da ich mehrere Container habe (c1-4) habe ich versucht das mit [i] in meine else-Schleife zu packen, aber ich bekam immer Synatxfehler Weis da jemand weiter? lg Loena |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |