Objekte je nach Auswahl kontrollieren /Charakterselect im Level selbst

  • GM 8

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

  • Objekte je nach Auswahl kontrollieren /Charakterselect im Level selbst

    huhu zusammen,
    ich hätte ne frage ^^

    also zu meinem prob:

    ich habe:
    1 playerobject, wird mit den pfeiltasten jeweils nach rechts und links bewegt,bzw springt mit up

    dann habe ich noch ein 2tes playerobject (soll ein verschiebbarer block sein)
    momentan kann ich praktisch spieler A mit links,rechts und hoch bewegen und zusätzlich spieler 2 mit A und S nach links

    nun möchte ich aber das man nicht beide aufeinmal bewegen kann sondern nach auswahl jeweils

    bsp.: ich klicke mit dem cursor spieler 1 an (wird somit aktiviert) und ich kann ihn bewegen, klicke ich spieler 2 an kann der sich bewegen aber spieler 1 nimmer

    hoffe das war verständlich genug :)wie kann ich das umsetzen? freue mich über tipps

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

  • Da du keine Selbsteinschätzung angegeben hast gehe ich mal von GML Anfänger aus.
    Du erstellst eine Globale Variable:

    GML-Quellcode

    1. global.aktiver_spieler = 0;


    In deinem 1.Spieler Objekt kommt in jedem Bewegungs-Event vor den anderen Code:

    GML-Quellcode

    1. if (global.aktiver_spieler == 0 ){ /* Bewegung */ }


    In deinem 2.Spieler Objekt kommt in jedem Bewegungs-Event vor den anderen Code:

    GML-Quellcode

    1. if (global.aktiver_spieler == 1) { /* Bewegung */ }



    Und wenn Spieler 1 angeklickt wird setzt du die Variable auf 0 wenn Spieler 2 angeklickt wird setzt du die Variable auf 1.

    Wenn dein Benutzer dann z.B. nach links drückt wird in beiden Objekten abgefragt ob die Variable global.aktiver_spieler auf 0 oder 1 steht.
    Bei 0 bewegt sich Spieler 1, bei 1 bewegt sich Spieler 2.

    MfG xxskxx
    -
  • hui flotte antwort,bin anfänger.hab mich die letzten tage durch tutorials und codes geklickt und alles mögliche ausprobiert
    ich versuchs mal :D danke dir

    edit:

    hm funzt net,kannst du das vielleicht genauer erklären ? :S

    keine ahnung irgendwie bewegen sich beide -.- sprich keiner is inaktiv.
    hab ich wohl was im bewegungscode falsch :( jemand noch ne idee oder nen code für die beiden inkl.bewegung per pfeiltasten? ^^

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von mini326 ()

  • player_1 step event:

    Quellcode

    1. if (global.aktiver_spieler == 0 && keyboard_check(vk_right)
    2. {
    3. x += 4;
    4. }
    5. if (global.aktiver_spieler == 0 && keyboard_check(vk_left))
    6. {
    7. x -= 4;
    8. }
    9. if (global.aktiver_spieler == 0 && keyboard_check(vk_up))
    10. {
    11. y += 4;
    12. }
    Alles anzeigen

    player_2 step event:

    Quellcode

    1. if (global.aktiver_spieler == 1 && keyboard_check(vk_right))
    2. {
    3. x += 4;
    4. }
    5. if (global.aktiver_spieler == 1 && keyboard_check(vk_left))
    6. {
    7. x -= 4;
    8. }
    9. if (global.aktiver_spieler == 1 && keyboard_check(vk_up))
    10. {
    11. y += 4;
    12. }
    Alles anzeigen


    variablen muss man glaub ich im create event erstellen... bin auch ja ein gml anfänger
    hoffe das sollte helfen... falls ein fehler kommt dann sag bescheit

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