Avatar billede camban Nybegynder
11. marts 2005 - 14:28 Der er 11 kommentarer og
1 løsning

For-løkke, hvordan vælger jeg et specifik objekt?

Helt basalt hvordan kan jeg vælg det specifikke pancake-objekt der netop hitTestes på og som berøre ground og ikke hele rækken?

_root.onEnterFrame = function(){
    for (var i = 0; i < total_pancakes; i++) {
        if (ground.hitTest(this["pancake"+i])) {
            this["pancake"+i].gotoAndStop(2);
           
}

Hvis der er nogen der gider at ulejlige sig med at fortælle mig det ville jeg blive super glad!
Avatar billede barklund Nybegynder
11. marts 2005 - 14:38 #1
Hvad mener du med "vælge" den? Virker ovenstående script ikke fint?
Avatar billede camban Nybegynder
11. marts 2005 - 14:50 #2
Jo det virker rigtig godt...det var jo også dig der hjalp mig sidst så selvfølgelig virker det;o)
Men jeg vil gerne have at den specifikke pancake der røre ground bliver _visible = 0;  og hvis jeg skriver this["pancake"+i]._visible = 0; er det hele rækken?
Avatar billede barklund Nybegynder
11. marts 2005 - 14:53 #3
Hm, det burde det ikke - hvis du altså skriver det inden for din if:

_root.onEnterFrame = function(){
    for (var i = 0; i < total_pancakes; i++) {
        if (ground.hitTest(this["pancake"+i])) {
            this["pancake"+i].gotoAndStop(2);
            this["pancake"+i]._visible = 0;
        }
    } 
}
Avatar billede camban Nybegynder
11. marts 2005 - 14:59 #4
Ok...totalt svært at forklare..har efterhånden prøvet så meget som man kan se I udkommenteringen. Den skal gå til frame 3 før den bliver gennemsigtig og desuden skal den reset?

SH = 0;
pancake_Depth = 500;
total_pancakes = 3;

set_pancakes = function () {
    for (j=0; j<total_pancakes; ++j) {container = _root.attachMovie("pancake", "pancake"+j, pancake_Depth+j);
    container.reset = reset_pancakes;container.reset();}};

reset_pancakes = function () {
    this._y = SH+random(SH);
    this._x = random(500)+20;
    this.yspeed = -(random(3)+2);
    this.onEnterFrame = move_pancakes;
    this.gotoAndStop(1);
    };


move_pancakes = function () {
this._y -= this.yspeed;
if (this._y>=500) {this.reset();}
};

set_pancakes();

_root.onEnterFrame = function(){
    for (var i = 0; i < total_pancakes; i++) {
        if (ground.hitTest(this["pancake"+i])) {
            this["pancake"+i].gotoAndStop(2);
            this["pancake"+i]._visible = 0;

           
            //removeMovieClip(["pancake"+i]);
            //this["pancake"+i].reset();
            //this["pancake"+i]._visible = 0;
        } else if (rasmusklump.haand_mc.hitTest(this["pancake"+i])) {
            trace("hånd rammer pandekage nummer "+i);
            this["pancake"+i].gotoAndPlay(3);
            //this["pancake"+i]._visible = 0;
           

        }
    }
};
//set_pancakes();
stop();
Avatar billede camban Nybegynder
11. marts 2005 - 15:09 #5
Har fået det med visiblity til at virker ved at tilføje this._visible = 1; i reset men det er mere det med at gå til frame før den bliver invisible?
Avatar billede barklund Nybegynder
11. marts 2005 - 15:13 #6
Altså, hvis den skal animere før den bliver usynlig, så kan du jo ikke gøre det samtidig. Så kan du jo sende den til gotoAndPlay(3) og så i frame 10 gøre den usynlig og kalde en reset-funktion på den. Det lyder som den smartest løsning.
Avatar billede camban Nybegynder
11. marts 2005 - 15:39 #7
Har prøvet lidt men hvordan får jeg stoppet pancake. Jeg går ud fra det er noget med this._y??
Avatar billede barklund Nybegynder
11. marts 2005 - 15:49 #8
Du kan da bare slette onEnterFrame:

this["pancake"+i].gotoAndPlay(3);
delete this["pancake"+i].onEnterFrame;

Som jo er den funktion, der hele tiden flytter den...
Avatar billede camban Nybegynder
11. marts 2005 - 15:54 #9
Ok tak. Jeg forsøger mig lidt frem.
Smid et svar og der vanker point :o)
Avatar billede barklund Nybegynder
11. marts 2005 - 16:02 #10
Yesyes, men vi kan nu bare fortsætte spørgsmålet til du har fået det til at virke... :)
Avatar billede camban Nybegynder
11. marts 2005 - 16:16 #11
Jeg må hellere prøve at rode lidt selv, men jeg skriver helt sikkert en anden dag...mangler jo lidt kendskab på området. Tak for hjælpen

Camilla
Avatar billede barklund Nybegynder
11. marts 2005 - 17:14 #12
Held og lykke med Rasmus Klump - og tark for points :)
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