12. oktober 2004 - 09:41Der er
9 kommentarer og 1 løsning
hvor meget "maske" er fjernet
Jeg har et banner hvor der er 2 mcèr som er en maske - de kan "skrabes" væk med musen - så man kan se billedet neden under. Er det muligt at opfange hvor meget af MCét der er skrabt væk ?? - skulle gerne bruge en funktion som sendte brugeren videre når 90-95 % af det samlet areal på de 2 MCèr er skrabt??
Hmm ~ Jeg kan ikke få din kode til at virke... - og jeg kan heller ikke se hvor masken bliver sat med mc.setMask(wax) ?? - men jeg kan se at det er en variation af Peter halls oprindelige kode.
Problemet (i dette tilfælde) med scriptet er at vi faktsik ikke fjerner et lag af felter, der ligger over objektet, men derimod sætter en mask, så objektet fremtræder - det betyder at vi faktisk ikke, ifølge koden, aner hvad der ligger under masken, og derfor heller ikke kan angive det synlige felt procentmæssigt. Havde det blot været nogle felter vi fjernede, kunne man snildt indeksere dem i et array, og udregne procenten for det udviskede i forhold til objektet...
Jeg vil dog absolut ikke afvise at der findes nogle der snildt kan tilføje noget lækker kode, der sammenligner mængden af masken mod objektet... - jeg kan bare ikke lige gennemskue det her og nu :/
Man skal vel lave et form for hitTEST på objektet, der opsamler x,y kooordinatet for masken, samt maskens definerede vidde og bredde, hvorefter man kan udregne arealet for masken mod arealet for objektet... - prøver lige at sætte mig i tænkeboksen :)
Synes godt om
Slettet bruger
13. oktober 2004 - 10:41#6
Hov - Jeg kom lige til at tænke på en anden metode - lidt hostler måske, men det kan bruges i nødstilfælde :)
Hvis du lægger et usynlig lag hen over dit objekt, der disables ved ved hitTEST samtidig med der skrabes, kan du nogenlunde detekte hvor meget af feltet der er synliggjort.
// Her smider jeg 100 felter hen over mit objekt // 10 rækker med 10 brikker, der ligenøjagtigt dækker objektet // Dette skal naturligvis tilrettes ift. maskens cursor bredde, vidde osv. // Angivelsen af mc'er skal ligeså tilpasses...
onLoad = function(){ var nx=0 var ny=0 for(i=0;i<100;i++){ this.symbols.attachMovie("hitter","h"+i,l++) this.symbols["h"+i]._alpha=0 this.symbols["h"+i]._x=(nx) this.symbols["h"+i]._y=(ny) nx=nx+this.symbols["h"+i]._width if(++c==10){ ny=ny+this.symbols["h"+i]._height nx=0 c=0 } } }
// Ved hit fjernes felterne en for en // - og procentangivelsen er jo nem da vi har 100 brikker ;) // dette kan man jo finjustere efter behov.
onMouseMove = function(){ if(key.isDown(1)){ // <-- musens left knap er aktiveret for(var hit in this.symbols){ if(this.symbols[hit].hitTEST(_root._xmouse, _root._ymouse)){ count++ this.symbols[hit].removeMovieClip(); if(count>=90){ trace("Så fik vi fjernet ca 90% af feltet, lad os komme videre...") } } } } }
Som sagt - en hostler metode - men den virker ;) Du kan selv lige finjustere procentangivelsen - den er ikke nøjagtig, da hitfelterne ikke følger størrelsen af 'vaskekluden'
den er alt rigelig til det jeg skal bruge :-) takker for hjælpen
Synes godt om
Slettet bruger
13. oktober 2004 - 20:02#10
Det var så lidt :)
Synes godt om
Ny brugerNybegynder
Din løsning...
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.