16. juli 2001 - 11:40
Der er
14 kommentarer og 1 løsning
Underlige hitTest
Hej. Jeg er blevet inspireret til at lege lidt med hitTest funktionen i Flash 5. Men jeg gør åbenbart et eller andet galt. Tilsyneladende kan jeg kun få funktionen til at virke i \"_root\". Det her smækker jeg ind på i en movieclip: onClipEvent (enterFrame) { if (this.hitTest(_root.point._x, _root.point._y, true)) { setProperty (\"_root.point\", _visible, \"0\"); } } - og når mc\'et \"point\" rammer mc\'et med onClipevent\'en så bliver \"point\"s visibility rigtig nok sat til 0. Helt fint... Men hvis jeg nu lægger de 2 mc ind i et nyt mc, kaldet \"lvl\", sker der intet!!!: onClipEvent (enterFrame) { if (this.hitTest(_root.lvl.point._x, _root.lvl.point._y, true)) { setProperty (\"_root.lvl.point\", _visible, \"0\"); } } Jeg har virkelig fedtet frem og tilbage, og forstår ikke hvorfor det bliver ignoreret?!? Hilsener, Larz_Larzen.
Annonceindlæg fra Cognizant
Har du husket at give dit MC instance navnet lvl? /per
>Per Ja, det har jeg... Jeg har genskabt \"problemet\" igen og igen... Det virker som at hitTesten bliver ignoreret, når man refererer længere nede i \"Hierakiet\"... _root.point, er ok, men _root.lvl.point, går ikke... Det her er meget frustrende!
Hej Larz_Larzen, Når man anvender hitTest(x,y,shapeFlag) syntaksen er x,y altid main stage koordinater. Hvis du blot vil teste de 2 MC\'er med hitTest kan du bruge den anden syntaks: onClipEvent (enterFrame) { if (this.hitTest(\"point\") { setProperty (\"_root.point\", _visible, \"0\"); } } Har man behov for at bruge en MC\'s interne koordianter i et hitTest skal man først konvertere det via MC.localToGlobal() mvh Geo
Lingoman Jeg vil gerne bruge hitTest(x,y,shapeFlag) Hvordan skal det der MC.localToGlobal() bruges i min kode? (newbie, sorry)
Hvis vi siger at vi gerne vil følge et bestemt punkt i din MC \"point\", fks . (x,y) = (5,17) relativ til MC \"point\"\'s registreringspunkt, definerer du det som et objekt via knivSpids = new Object(); knivSpids.x = 5; knivSpids.y = 17 Nu kan vi hurtigt hvor MC \"point\" knivSpids befinder sig i forhold til main stage ved at bruge point.localToGlobal(knivSpids); //konverter Mc koordinater til Stage stageKnivX = knivSpids.x; // her er KnivSpidsen nu i main stage koordinater stageKnivY = knivSpids.y Endelig kan vi teste for hitTest(x,y,ShapeFlag) onClipEvent (enterFrame) { if (this.hitTest(knivSpids.x,knivSpids.y,true) { setProperty (\"_root.point\", _visible, \"0\"); } } Jeg håber at det kan hjælpe! mvh Geo
Det her er åbenbart ikke rigtigt, for det virker ikke....Det hele er lidt for relativt for mig :) onClipEvent (enterFrame) { punkt = new Object(); punkt.x = 5; punkt.y = 5; point.localToGlobal( punkt ); if (this.hitTest(punkt.x, punkt.y, true)) { setProperty (\"_root.lvl.point\", _visible, \"0\"); } } i: point.localToGlobal( punkt );, skal \"point.\" så relateres igennem hierakiet, som: _root.lvl.point.localToGlobal( punkt );? Hvad med selve mc\'et som indeholder Event\'en, hvad med dens variabler, skal de ikke også \"konverteres\"? Jeg er åbenbart tabt bag en vogn :(
>lingoman Jeg højner point\'sne til 300 for en .fla :) Ikke at du sikkert gider, men jeg er helt på spanden her... Så jeg satser: larz_larzen2000@yahoo.com
Super, men jeg arbejder nu og får først tid kl. 17. mvh Geo
Geo> lækkert.... Husk nu at det drejer som om 2 mc\'s inde i et mc... Ikke for at fornærme din intelligens :) Jeg ser frem til .fla\'en
16. juli 2001 - 16:50
#10
Send lige din fla til mig, så vil jeg redigere den mvh geo
16. juli 2001 - 16:51
#11
ups! geo@lingoman.dk
16. juli 2001 - 17:21
#12
>Geo. Har sendt .fla\'en Larz
16. juli 2001 - 17:38
#13
>Geo Nå, du kan lige så godt få dine points nu... Jeg går stærkt ud fra du løser mit problem... Tak, fordi du gad at redigere min .fla.
16. juli 2001 - 22:26
#14
onClipEvent (enterFrame) { setProperty (this, _x, this._x+1); punkt = new Object(); punkt.x = 0; punkt.y = 0; this.localToGlobal(punkt); if (_root.lvl.amoeba.hitTest(punkt.x, punkt.y, true)) { this._visible = false; } } Dette er nok til at chekke for om punkt (0,0) i denne MC er inden i MC \"amoeba\" bemærk at localToGlobal konverterer et MC relativ punkt til mainStage koordinater for hitTest(x,y,ShapeFlag) udføres. Jeg har sendt dig din redigeret fla fil så du kan se hvordan det kan bruges. mvh Geo PS. tak for de ekstra points!
18. juli 2001 - 19:21
#15
Hej Lars, Jeg håber at fla filen jeg sendte igår har afklaret brugen af de omtalte localToGlobal og hitTest(x, y, ShapeFlag). mvh Geo
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.