Avatar billede kjoller Nybegynder
14. maj 2001 - 09:28 Der er 12 kommentarer og
1 løsning

flash problemer

Jeg er ved at lave et lille spil i flash men mit rumskib bliver ved med at flyve ud over kanterene så jeg prøvede at stoppe det med  denne kode:

else if (Key.isDown(Key.LEFT) and this._x>0) {
        this._x -= moveSpeed;
    }
Men det virkede ikke, er der nogen der har en god ide til løsningen?
Avatar billede hoejrup Nybegynder
14. maj 2001 - 09:33 #1
else if (Key.isDown(Key.LEFT) or this._x>0) {
  this._x -= moveSpeed;
}

/per
Avatar billede nikolajdu Nybegynder
14. maj 2001 - 09:34 #2
onClipEvent (keyDown) {
    if (eval (Key.getCode() == Key.RIGHT) && this._x>0) {
        this._x-= moveSpeed;
    }
}
Avatar billede kjoller Nybegynder
14. maj 2001 - 09:42 #3
nope de virker ikke, jeg prøver lige at sende hele koden hvi jeg har lavet noget forkert:

onClipEvent (load) {
    moveSpeed = 500;
    _root.laser._visible = false;
    laserCounter = 1;
    scrollx = _root.mainGround.ground._width/3;
    scrollStart = false;
    maxLasers = 4;
    depthCounter = 1;
}
onClipEvent (enterFrame) {
    if (Key.isDown(Key.CONTROL) and (laserCounter<=maxLasers)) {
        _root.laser.duplicateMovieClip(\"laser\"+depthCounter, depthCounter);
        _root[\"laser\"+depthCounter]._visible = true;
            depthCounter++;
        if (depthCounter>maxLasers) {
            depthCounter = 1;
        }
    }
    if (Key.isDown(Key.RIGHT)) {
        if (this._x<scrollx) {
            this._x += moveSpeed;
        } else {
            scrollStart = true;
        }
    } else if (Key.isDown(Key.LEFT) and this._x>0) {
        this._x -= moveSpeed;
    }
    if (Key.isDown(Key.DOWN)) {
        this._y += moveSpeed;
    } else if (Key.isDown(Key.UP)) {
        this._y -= moveSpeed;
    }
}
onClipEvent (keyUp) {
    if (Key.getCode() == Key.RIGHT) {
        scrollStart = false;
    }
}

Avatar billede nikolajdu Nybegynder
14. maj 2001 - 10:07 #4
Er du sikker på at din moveSpeed variabel er tilgængelig indefra movieClippet?? Altså at den ikke ligger i roden og skal kaldes med _root.moveSpeed

Den her virker ihvertilfald fint.

onClipEvent (keyDown) {
    if (Key.getCode() == Key.RIGHT && this._x<400) {
        this._x += 10;
    } else if (Key.getCode() == Key.LEFT && this._x>100) {
        this._x -= 10;
    }
}

/Nikolaj
Avatar billede nikolajdu Nybegynder
14. maj 2001 - 10:09 #5
Glem det med moveSpeed. Den bliver jo sat i starten.
Avatar billede kjoller Nybegynder
14. maj 2001 - 10:15 #6
Det jeg ikke fatter at jeg har fulgt en tutorial til at lave spillet og det eksempel som der ligger med tutorialen virker hvis jeg ændre tingene men ikke i min.
Avatar billede kjoller Nybegynder
14. maj 2001 - 10:16 #7
jeg har kigget alle koderene igennem men de er ens
Avatar billede nikolajdu Nybegynder
14. maj 2001 - 10:24 #8
Er problemet dit tjeck på _x eller flytter det si overhovedet ikke?
Avatar billede kjoller Nybegynder
14. maj 2001 - 10:36 #9
Da den flytter sig må det være tjekket på _x
Avatar billede nikolajdu Nybegynder
14. maj 2001 - 10:39 #10
Din moveSpeed er 500.
this._x -= moveSpeed;

Vil så flytte movieClippet 500 pixels til højre eller venstre.

(Key.isDown(Key.LEFT) and this._x>0)

vil så flytte clippet 500 pixels til venstre bare at positionen er større end 0.
Avatar billede nikolajdu Nybegynder
14. maj 2001 - 10:40 #11
Hvis altså dit clip står i 30 pixels vil det bliver rykket til -470 fordi 30>0

Kunne det være forklaringen på at du ikke betragter det som noget der virker??
Avatar billede kjoller Nybegynder
14. maj 2001 - 10:53 #12
Det var desværre heller ikke det, men nu jeg tænker mig lidt om så har jeg en laserCount der heller ikke virker der er kommet et laserCount++;
efter if (Key.isDown(Key.CONTROL) and (laserCounter<=maxLasers)) {
Kan det hænge sammen på nogen måde?
Avatar billede kjoller Nybegynder
14. maj 2001 - 11:32 #13
Jeg prøvede lige at åbene en af mine backup\'s og der virker det i, så jeg starter forfra med den, men tak for hjælpen.
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