PDA

Volledige versie bekijken : lege ruimte negeren bij hitTest.


Fatty Owl
%Europe/Berlin %777 %2005, 19:39
ik heb een mc grond. deze is aan het begin laag en aan het einde hoog. flash trekt daar automatisch een kader rond, en als ik dan een hitTest gebruik dan detecteert hij op de kader en niet op de shape
eigenlijk in het kort: hoe kan je de lege ruimte bij een hitTest negeren?

TheDutch
%Europe/Berlin %802 %2005, 20:15
Dat kan niet met de standaard hitTest() functie. Hier heb je best wel complexe wiskunde berekeningen voor nodig, dus wellicht dat je moeder je kan helpen? Ik ben geen wiskundewonder dus kan je op dat gebiedt helaas niet helpen, maar je hebt antwoord op je vraag :).

pulletje
%Europe/Berlin %805 %2005, 20:20
wiskunde is ook niet meer mijn sterke kant. (ik kan alleen nog optellen) maar een mogelijke optie misschien is het volgende. De MC die groter wordt meteen al zo groot maken als je hem wilt hebben en vervolgens met een motion en eventueel een mask "groter" laten worden. op dat moment pakt de hittest hem pas als je ook inderdaad tegen de MC aan komt.

SaphuA
%Europe/Berlin %842 %2005, 21:13
Je kunt op de pixel een hitTest uitvoeren, dit werkt alsvolgt:
- Maak een MC en teken er iets in.
- Geef deze MC de instance name 'grond'
- Zet deze code op frame 1:
this.onEnterFrame = function() {
if (grond.hitTest(_xmouse, _ymouse, true)) {
grond._alpha = 20;
} else {
grond._alpha = 100;
}
};
Dit moet je zelf dus aanpassen om het op je poppetje/grond te laten werken.
Succes

TheDutch
%Europe/Berlin %850 %2005, 21:25
SaphuA, dit is met een muispointer. Dat is heel wat anders dan een hitTest op twee shapes/MovieClips los laten, of mis ik nu iets? :)

ninetynine
%Europe/Berlin %853 %2005, 21:29
is er verbetering met flash 8.0 ? : hier heb je msschn wat aan:

http://www.gskinner.com/blog/archives/2005/08/flash_8_shape_b.html

TheDutch
%Europe/Berlin %854 %2005, 21:30
Dank je wel man! Deze had ik nog niet in werking gezien. Wel had ik de BitmapData.hitTest() gezien maar nog niet mee gerommelt :D.

Nou weer een probleem de wereld uit geholpen door onze vrienden bij Macromedia.

SaphuA
%Europe/Berlin %859 %2005, 21:37
SaphuA, dit is met een muispointer. Dat is heel wat anders dan een hitTest op twee shapes/MovieClips los laten, of mis ik nu iets? :)
Nope je mist niets, dit is de basis van vele art-based collision methodes. Het is de enigste manier (op Maths na) waarin je dit soort dingen kunt doen.
Met wat aanpassingen kun je dit zo ombouwen tot een sidescroller-artbased-hittest-engine-dingetje :D Als er animo voor is zal ik wel een voorbeeldje maken.
En yup, er is een nieuwe manier in Flash 8, maar hier heb ik mij nog niet zo in verdiept. En aangezien bijna niemand Flash 8 heeft ;)

ninetynine
%Europe/Berlin %860 %2005, 21:39
theh saphua , heb er een topic over geopent , msschn om mensen te leren er mee
werken (als iemand er ervaringen mee heeft ? )

http://www.flashfocus.nl/forum/showthread.php?p=37854#post37854

TheDutch
%Europe/Berlin %885 %2005, 22:15
Als er animo voor is zal ik wel een voorbeeldje maken.
Graag! Ben erg benieuwd :D.

SaphuA
%Europe/Berlin %916 %2005, 22:59
Check Houston's post :)
http://www.flashfocus.nl/forum/showthread.php?p=37854#post37854