Gegner kann nur in 8 Richtungen auf mich zu laufen

  • GM 8

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

  • Gegner kann nur in 8 Richtungen auf mich zu laufen

    Hallo, ich habe wieder ein Problem :/

    Ich habe einen Gegner der nur in 8 Richtungen laufen kann, hoch runter rechts links und das jeweils dazwischen ^^

    Der Gegner soll in Richtung o_player1 laufen, am besten wie mit dem Step Avoiding Befehl.
    Auch sollte sich dann das Sprite ändern, in die Laufrichtung, aber nicht mit image_angle oder so. Da brauche ich nur dann z.B. sprite_index=blablabla oder so. ^^

    So das wars schon hab aber nichts gefunden, nur mit 4 Richtungen aber ich hab das nicht verstanden :S


    MFG Leschge
    Husi012 hat mich nicht mehr in seiner Signatur, ich bin trotzdem noch fame.
  • Einfach abfragen welche direction das Object grad hat und das sprite demnach festlegen. Zwischen 45 und 90 nach rechts oben, 90 und 135 nach oben etc... aupassen musst du nur bei nach rechts, da brauchst du < 45 or > 315 dann rechts.

    out now: KNOSSOS auf itch.io
    ancient-pixel.com <<< ich freue mich über einen Besuch! ^^
  • dazu gibts eine funktion die heißt glaub ich mp_settings dort kannst du die maxrotation auf zb 90 festlegen und die rotation pro step auf 45 rotationsart auf 3 setzen und eigenrotation auf 1.
    Jetzt laufen die gegner im kreis oder in einer linie auf den sppieler zu, drehen sich nur in 8 richtungen und maximal in 90grad schritten wenn du mp_xyz benutzt :)

    out now: KNOSSOS auf itch.io
    ancient-pixel.com <<< ich freue mich über einen Besuch! ^^
  • mp_settings finde ich niergends, auch nicht im internet. :D

    Edit:
    Habe doch grade etwas gefunden

    Edit2:
    Create:

    GML-Quellcode

    1. mp_potential_settings(90,45,3,1)

    Event:

    GML-Quellcode

    1. mp_potential_step_object(o_player1.x,o_player1.y,2,o_player1)


    Sie laufen aber immer noch schräg, oder halt nicht in den 8 richtungen und sie laufen durch Objekte, die solid sind.
    Husi012 hat mich nicht mehr in seiner Signatur, ich bin trotzdem noch fame.

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

  • Genau, mp_potential, settings ist es. Um an der Art wie sie laufen etwas zu ändern kannst du dich entweder mit dem Wert spielen der gerade 3 ist oder den mp_potential_step code weniger oft ausführen lassen als jeden step.

    Außerdem benutzt du den Code falsch, am ende kommt nicht (o_player1) sondern 1 oder 0. 1 umgehe alle objecte und 0 umgehe nur solide objecte.

    out now: KNOSSOS auf itch.io
    ancient-pixel.com <<< ich freue mich über einen Besuch! ^^
  • Ich hab eine Alternative gefunden, da das obere nicht funktionierte, so wie ich es will.

    Alternative (Der Computer läuft in alle richtungen, aber so wird das Sprite geändert.)

    Event:event_step:
    :action_steppotential: (läuft zum Spieler)
    :action_code:

    GML-Quellcode

    1. switch (direction div 45)
    2. {
    3. case 0: sprite_index=s_zombie1d; break; //Das alles ist nur für 4 Richtungen
    4. case 1: sprite_index=s_zombie1w; break;
    5. case 2: sprite_index=s_zombie1w; break;
    6. case 3: sprite_index=s_zombie1a; break;
    7. case 4: sprite_index=s_zombie1a; break;
    8. case 5: sprite_index=s_zombie1s; break;
    9. case 6: sprite_index=s_zombie1s; break;
    10. case 7: sprite_index=s_zombie1d; break;
    11. }
    Alles anzeigen


    Event :event_draw:
    :action_code:

    GML-Quellcode

    1. if xprevious=x && yprevious=y
    2. draw_sprite(sprite_index,0,x,y);
    3. else
    4. draw_sprite(sprite_index,-1,x,y);
    Husi012 hat mich nicht mehr in seiner Signatur, ich bin trotzdem noch fame.