Avatar billede oleskrogh Nybegynder
05. januar 2003 - 18:08 Der er 12 kommentarer

"usynligt" movieclip er der stadig

Jeg har lavet et lille spil hvor man styrer en bil rundt på skærmen og skal fange bestemte tal.
Hvis man rammer et rigigt tal tæller en variabel point op og -- det vigtigste: tallet forsvinder. Det sidste har jeg gjort med _visible=false. Imidlertid findes movieclippet stadig - det er bare usynligt og man får derved point hvis man tilfældigvis rammer det igen.
Hvordan får jeg usynlige MC helt væk fra scenen??
(Jeg kunne selvfølgelig lade filmen gå til en ny frame hvor ramte MC slet ikke findes, men det virker lidt tungt da der er mange MC)
/Ole
Avatar billede mat Nybegynder
05. januar 2003 - 18:17 #1
Hvis du har duplikeret/attached dine movieclips ud på banen kan du jo remove dem igen. Men ellers er din sidste løsning faktisk ret god - den har jeg brugt flere gange...Og det er jo en god ting at _visible = false ikke disabler en hitTest, hvad skulle man ellers gøre ved hitfelter der kun er en del af karakterer :)
en anden mulighed er at slynge dine movieclips langt pokker i vold ud af banen, noget i stil med if(ramt) this._x = 10000; ...  :D

mvh mat
Avatar billede oleskrogh Nybegynder
05. januar 2003 - 20:05 #2
nå ja det sidste lyder som  en smart løsning!
Avatar billede christian Nybegynder
06. januar 2003 - 16:54 #3
Jeg ville nok vælge at bruge "remove", på den måde vil du nok spare noget Ram
Avatar billede oleskrogh Nybegynder
06. januar 2003 - 17:32 #4
Ja, hvordan ser det ud med et lille kodeeksempel??
Avatar billede christian Nybegynder
06. januar 2003 - 18:09 #5
myMovieClip.removeMovieClip() som "mat" siger kan du kun bruge den hvis du har duplikeret/attached dine movieclips

Kender ikke helt til flash dom'en, men måske virker this.removeMovieClip()
Avatar billede alexander_j Nybegynder
06. januar 2003 - 20:53 #6
Hvis du har mx, så kunne du vel også scripte dit textfield til point, og så bruge tekst.removeTextField();

Eks. læg hele koden i et frame:

//lav tekst
this.createTextField("tekst",1,0,0,200,25);
this.tekst.text="min tekst";

//lav knap jeg har scriptet en knap kunne også laves på normal vis
this.createEmptyMovieClip ("kasse", 2);
    with (this.kasse){
        beginFill (0xff0000, 100);
        moveTo (50, 0);
        lineTo (50, 50);
        lineTo (100, 50);
        lineTo (100, 0);
        lineTo (50, 0);
        endFill();
}
this.kasse.onRelease=function(){
    tekst.removeTextField();
}

/Alexander
Avatar billede alexander_j Nybegynder
06. januar 2003 - 21:08 #7
Kan også gøres med et scriptet mc:

//lav et mc
this.createEmptyMovieClip ("kasse", 2);
    with (this.kasse){
        beginFill (0xff0000, 100);
        moveTo (50, 0);
        lineTo (50, 50);
        lineTo (100, 50);
        lineTo (100, 0);
        lineTo (50, 0);
        endFill();
}
this.kasse.onRelease=function(){
    this.removeMovieClip();
}

I begge mine tilfælde skal du trykke på kassen før det forsvinder!
Avatar billede oleskrogh Nybegynder
06. januar 2003 - 22:47 #8
det sidste lyder rigtigt, men jeg forstår det ikke lige nu!
Avatar billede mat Nybegynder
06. januar 2003 - 22:55 #9
Jeg havde nu lavet det med nogle attachede movieclips hvor man bare sætter positionen i en array, så passer resten sig selv :)

pArray = [ [100,100],[300,30],[50,300] ];
for (i = 0; i < pArray.length; i++) {
    this.attachMovie("movie", "nm"+i, i);
    this["nm"+i]._x = pArray[i][0];
    this["nm"+i]._y = pArray[i][1];
    this["nm"+i].t.text = i+1;
    this["nm"+i].onEnterFrame = function() {
        if (this.hitTest(bil)) {
            this.removeMovieClip();
            delete this.onEnterFrame;
        }
    }
}

..der er så et tekstfelt derinde som nummererer efter pladsen i arrayet, men en kombination af det og så alexanders kunne vel give et ret fedt resultat?...men på den anden side så har jeg lavet rapport i 12 timer idag så det kan være jeg bare sidder og lukker abe ud :)

mvh mat
Avatar billede mat Nybegynder
06. januar 2003 - 22:59 #10
..og så tror jeg jo nok at den der delete onEnterFrame er overflødig eftersom movieclippet er fjernet :P
Avatar billede mat Nybegynder
14. januar 2003 - 23:03 #11
har du ikke fået noget du kan bruge? ellers må du jo følge op på spørgsmålet?
Avatar billede oleskrogh Nybegynder
15. januar 2003 - 07:59 #12
jeg har brugt den med at smide den ud af banen, men jeg kan jo kun acceptere et svar!
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester