Player2 läuft obwohl Player1 drückt

  • GM 7

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

  • Player2 läuft obwohl Player1 drückt

    Also ich programmier grad ein Multiplayer-Spiel
    bei dem es zwei spieler gibt
    der eine läuft mit den pfeiltasten der andere mit WASD.
    Aber wenn ich jetzt mit dem 1 player laufe und gedrückt halte und währendessen mit dem 2. player anfang zu laufe und gedrückt halte und mit player1 die tasten danach wieder loslasse, laufen trotzdem bei weiter, hoffe das war jetzt verständlich so und ich hoffe dass ihr mir helfen könnt, am besten so schnell wie möglich natürlich :D
    Gruß Gamer
  • Vermutlich, weil dues genau so programmiert hast.
    zum Beispiel indem du in dem nokey-pressed event die geschwindigkeit auf 0 setzt. wenn der andere spieler grade eine taste gedrückt hältt, dann trift dies eben nicht ein.
    Überleg dir eine elegantere Methode für die Steuerung.
    zb. so (Stepevent):

    GML-Quellcode

    1. if keyboard_check(vk_up)
    2. y-=2
    3. if keyboard_check(vk_down)
    4. y+=2
    5. if keyboard_check(vk_left)
    6. x-=2
    7. if keyboard_check(vk_right)
    8. x+=2
  • Nein, also so hab ich das:

    Player1:

    Left Key:
    - Set Variable direction to 180
    - Set direction: direction, speed: 4

    Right Key:
    - Set Variable direction to 0
    - Set direction: direction, speed: 4

    Up Key:
    - Set Variable direction to 90
    - Set direction: direction, speed: 4

    Down Key:
    - Set Variable direction to 270
    - Set direction: direction, speed: 4

    Player2:

    A Key:
    - Set Variable direction2 to 180
    - Set direction: direction2, speed: 4

    D Key:
    - Set Variable direction2 to 0
    - Set direction: direction2, speed: 4

    W Key:
    - Set Variable direction2 to 90
    - Set direction: direction2, speed: 4

    S Key:
    - Set Variable direction2 to 270
    - Set direction: direction2, speed: 4

    Bei beiden hab ich no key eingestellt
    mit speed: 0 und direction: direction (direction2)



    zu TrunX code:

    Aber dann funktioniert das mit dem schiessen nicht mehr, da ist die direction eingestellt


    edit: kann man das mit key release machen, ach ich probiers einfach mal.

    edit2: es klappt, danke, auch wenn ich selber drauf gekommen bin, sollte vllt nächstes mal überlegen, bevor ich frag
    Gruß Gamer

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von The Gamer ()

  • Bei deiner Version der Bewegung, solltest du vorher vor allen KeyPress Events ein "Set Variable" speed = 0 machen, oder selbiges im NoKey event, das ist dann allerdings wieder das Problem mit dem Player1 und 2.

    Also im Beginstep speed auf 0 und danach die KeyPressevents machen wie du es jetzt hast, dann gehts =P
    So far, Schattenphoenix~
    _____________________________________________________________________________
    "Who needs a stairway to heaven...
    If there is an elevator to hell... ?
    "
    - Vergessen
    "Auch ein perfektes Chaos ist etwas vollkommenes."
    - Jean Genet
  • Ich find die Key-Release Variante sehr umständlich, und wenn du im D&D arbeitest, hast du dadurch automatisch 4 extra Aktionen, aber ok.
    Hauptsache es geht, eh?
    So far, Schattenphoenix~
    _____________________________________________________________________________
    "Who needs a stairway to heaven...
    If there is an elevator to hell... ?
    "
    - Vergessen
    "Auch ein perfektes Chaos ist etwas vollkommenes."
    - Jean Genet