gm 8.1 - bewegung eines objects einschraenken

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Nun, der Room ist im Prinzip nichts anderes als ein Koordinatensystem, wobei der Punkt (0|0) der oberen linken Ecke entspricht. Du musst jetzt vor der Bewegung prüfen, ob sich das Objekt innerhalb des Raums befindet, wobei...
    ...die obere Grenze durch y = 0 definiert ist.
    ...die linke Grenze durch x = 0 definiert ist.
    ...die untere Grenze durch die interne Variable room_height definiert ist.
    ...die rechte Grenze durch die interne Variable room_width definiert ist.

    Das heißt, wenn du dich nach unten bewegst, prüfst du vorher, ob die y-Koordinate des Objekts kleiner ist als die Höhe des Raumes (room_height) ist, damit es sich erst dann nach unten bewegen darf, und so weiter.
    In GML könnte das beispielsweise so aussehen:

    GML-Quellcode

    1. //Step Event
    2. if keyboard_check(vk_left) && x > 0 then x -= 7;
    3. if keyboard_check(vk_right) && x < room_width then x += 7;
    4. if keyboard_check(vk_up) && y > 0 then y -= 7;
    5. if keyboard_check(vk_down) && y < room_height then y += 7;


    Ps: Willkommen im Forum! :)

    Gruß,
    Boskura

    ____
    Adventskalender 2010: Blue Smiley