tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
393
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    WiZZaRd91 WiZZaRd91 ist offline Grünschnabel
    Registriert seit
    May 2006
    Beiträge
    2
    Hallo Leute, bin ganz neu hier und noch nich wirklich geübt in Flash 8... hab zwar schon 1 Spiel programmiert, aber das is nix besondres ..
    Also: Ich will ein Spiel programmieren mit nem Auto (geht aus der Überschrift hervor ), mit den Pfeiltasten das auto rotieren lassen und so is auch wunderbar, das auto fährt nach oben und nach unten... aber wenn ich es gedreht hab, fährt es halt immer noch gerade die y-achse nach obn....
    stop();
    speed_car = 15;
    var spd = 10;

    mcauto.onEnterFrame = function() {
    if (Key.isDown(Key.LEFT)) {
    this._rotation -= spd ;
    }
    else if (Key.isDown(Key.RIGHT)) {
    this._rotation += spd ;
    }
    else if (Key.isDown(Key.UP) && this._y > 10) {
    this._y -= speed_car;
    }
    else if (Key.isDown(Key.DOWN) && this._y <= 460) {
    this._y += speed_car;
    }
    }
    So... ich denke mal das das Problem am "this._y > 10)" liegt... aber ich hab leider keine Ahnung wie ich mit Variablen umgehen oder sie einbauen muss.... also was müsste ich machen, damits klappt?
    THX WiZZaRd91
    P.S: wenns das schon gibt, sry, aber bitte trotzdem antworten und danach verschieben
     

  2. #2
    Registriert seit
    Mar 2004
    Ort
    Basisrealität
    Beiträge
    12.118
    Blog-Einträge
    7
    Hi und willkommen im Forum,

    wenn Du rotierte Sprites in die "richtige" Richtung bewegen willst, musst Du aus der _rotation-Eigenschaft den Winkel im Bogenmaß berechnen und daraus und aus der Geschwindigkeitskonstante kartesische Vektoren erstellen. Beispiel:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    
    var speed_car = 15;
    var spd = 10;
     
    mcauto.onEnterFrame = function() {
        if (Key.isDown(Key.LEFT)) {
            this._rotation -= spd ;
        } else if (Key.isDown(Key.RIGHT)) {
            this._rotation += spd ;
        }
        if (Key.isDown(Key.UP) && this._y > 10) {
            var sobj = getSpeed(this._rotation);
            this._x += sobj.spdx;
            this._y += sobj.spdy;
        } else if (Key.isDown(Key.DOWN) && this._y <= 460) {
            var sobj = getSpeed(this._rotation);
            this._x -= sobj.spdx;
            this._y -= sobj.spdy;
        }
    }
     
    function getSpeed(ang) {
        ang = ang * Math.PI / 180;
        var sx = Math.sin(ang) * speed_car;
        var sy = -Math.cos(ang) * speed_car;
        return {spdx:sx, spdy:sy};
    }

    Gruß
    .
     

  3. #3
    WiZZaRd91 WiZZaRd91 ist offline Grünschnabel
    Registriert seit
    May 2006
    Beiträge
    2
    Alles klar, klappt wunderbar... danke
    Also wär das dann ja auch erledigt
     

Ähnliche Themen

  1. Wenn etwas in textfeld dann radiobutton auto. wählen
    Von harderph im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 30.06.08, 12:15
  2. auto richtig fahren lassen cinema 4d
    Von romano im Forum Cinema 4D
    Antworten: 1
    Letzter Beitrag: 03.04.07, 11:50
  3. Auto-Scheinwerfer richtig beleuchten in MAYA
    Von tastenhacker06 im Forum Autodesk Maya (ehemals Alias)
    Antworten: 1
    Letzter Beitrag: 14.12.06, 19:37
  4. Wo fährt dann der Zug hier los
    Von BillaBong im Forum Flash Plattform
    Antworten: 3
    Letzter Beitrag: 22.08.05, 08:08
  5. brumm brumm, auto drehen beim auto =)
    Von kroschka im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 11.10.02, 21:22