17. maj 2002 - 03:02Der er
19 kommentarer og 1 løsning
HitTest med DuplicateMovieClip
Jeg er ved at lave et spil hvor en explosion (duplicatedmovieclip) skal fjernes hvis den rammer en klods ( et andet duplicatedmovieclip), men kan ikke få hitTest til at virke! Problemet er at jeg fortløbende kalder de duplicatede movieclips nye navne...
Problem er som flg: (x er variabel i for løkke)
_root.mc add x.hitTest(_root.mc2 add x)
Er der nogle der har forstand på hvordan man anvender functions(hitTest) med insatnser der skal kaldes med add eller +??
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Desværre. Antalkugler (altså i dit kode eksempel) er for højt, det får spillet til at køre MEGET langtsomt at skulle lave alle de hittests inde i movieClippet!
Jeg har prøvet at lave testen fra en frame med flg. kode "_root.block[t].hitTest(_root.explosion add expName) " men få intet resultat. Kan du gennemskue det?
Har prøvet "_root.block[t].hitTest(_root.explosion[expName]);", men desværre.
Jeg kan ikke bruge this, da det sænker hele skidtet helt vildt at skulle udføre hittest inde i forløkker, der skal gennemløbes hver gang onClipEvent(enterFrame).
Jeg sender den lige til dig. Problemet er som sagt at explosionerne ikke skal explodere på blocks...
Jeg har lavet en hel masse om i dit spil, så du kan se hvordan man optimere spil i flash 5. Desuden er der en fejl ved bombe animationen der skal rettes.
function removeBricks () { // fjerner bricks der er ramt af bombe ilden for ( j = 1; j < _root.TotalBrick ; j++ ) { for ( k = 1; k < _root.numExplode ; k++ ) { if (_root["explosion" add k].hitTest(_root["brick" add j])) { _root["brick" add j].removeMovieClip(); } } }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.