Anfängerfrage - Action RPG

  • GM 7

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

  • Anfängerfrage - Action RPG

    Hallo zusammen,
    ich bin neu hier und hab mich schon durch die Hilfedatei und eure Suchfunktion gepflügt und natürlich Onkel Google um Rat gefragt ;) aber leider keinen Thread gefunden, der genau meinem Problem entsprochen hätte... (falls ich einfach nur falsche Suchbegriffe eingegeben hab dann tuts mir leid :S )
    Obwohl ich schon einige Monate mit dem GM arbeite (nur als Hobby), beherrsche ich weder GML oder gar 3D :wacko: . Ich bin also eigentlich kompletter Anfänger
    Deshalb wärs nett eure Schritte zu erklären falls ihr GML benutzt...
    Also, nun zu meiner eigentlichen Frage (die für euch vermutlich ziemlich leicht ist :D) :
    Ich habe vor, ein simples 2D-Action-Rollenspiel im Sinne von Diablo oder Sacred zu machen (aus der isometrischen Ansicht). Wie schaffe ich es, dass meine Spielfigur immer genau in der Mitte des Bildschirms bleibt und dass immer nur der Teil der Umgebung zu sehen ist, der auf den Bildschirm passt?
    Hilfreich wäre es auch noch zu wissen, wie ich es anstelle, dass sich meine Spielfigur dorthin bewegt, wo ich mit der Maus hinklicke.
    Ich kenne zwar die variable mouse_x & mouse_y, weis aber nicht so recht, wie ich sie verwenden soll...

    Hoffentlich nehmt ihr's mir nicht übel, dass ich solche Anfänger-Fragen stelle aber ich weiß echt nicht, wie ich weiterkommen soll...
    Riesen Dank schon mal im Voraus!
  • Zu 1: Gib in der Hilfe "View" ein und lies dir das thema durch. Zusätzlich kannst du dir noch das Platformer Tutorial von yoyogames holen, da werden auch views benützt und erklärt.

    Zu 2:

    Im global_mouse_left_pressed event

    GML-Quellcode

    1. move_towards_point(mouse_x,mouse_y);


    Dafür gibt es auch eine D&D funktion.

    © 2008 by Teamgrill Productions
  • Danke danke danke danke!!!! :thumbsup: :thumbsup: Jez gez!!!

    Jetzt hätte ich aber noch ne Frage :D :
    Mit Animationen kenn ich mich schon aus und wie man sie erstellt. Wenn man jetzt zum Beispiel in einen Bereich über der Spielfigur klickt, dann rennt sie dorthin. Wie kann man es einstellen, dass man auch sieht, wie sie nach oben läuft d.h. sie führt die gewollte "Renn-nach-oben-Animation" aus.
    Wenn man aber dann in einen Bereich links von der Figur klickt, soll sie die "Renn-nach-links-Animation" ausführen.
    Hoffe das ichs möglichst klar erklärt hab was ich meine :)
  • bin zwar selber noch extremer anfänger und kenn mich mit coden gar nicht gut aus aber ich glaub die antwort wo du suchst lautet

    beim mousevent ( also da wo der code drinnen steht dass sich das männchen bewegt) schreibste einfach noch

    image_speed=x

    x steht für die zyklusgeschwinkigkeit der verschiedenen animationen

    sorry wenn ich falsch liege
    aber ich hoffe das passt so

    mfg inc

    ( v ergiss hald nicht wenn du wieder stehen bleibst die animation auszuschalten )
  • @incendium: nee, das ist nicht das was ich suche, aber trotzdem danke :)
    neuer Versuch:
    wenn ich möchte, dass meine spielfigur nach links geht, soll sie sich in einen Sprite verwandeln, der die Figur von der Seite zeigt. Wenn sie dann nach oben geht, soll sie sich in einen anderen Sprite verwandeln, der sie von hinten zeigt.

    Wie etwa im Beispiel-Game "treasure". Wenn man da auf 'Pfeil rechts' drückt, dann verwandelt sich der Sprite der Spielfigur in einen Sprite, der von der Seite zu sehen ist. Da ich aber mein Spiel mit der Maus bedienen möchte, bringt mir diese Methode nichts.
  • Falls du das mit move_towards_point oder ähnliches löst (also mit direction arbeitest), müsste es problemlos so gehen:

    GML-Quellcode

    1. move_towards_point(mouse_x,mouse_y,5);
    2. switch(floor((direction+45)/90)) {
    3. case 1: sprite_index=spr_up; break; // 45° - 135°
    4. case 2: sprite_index=spr_left; break; // 135° - 225°
    5. case 3: sprite_index=spr_down; break; // 225° - 315°
    6. default: sprite_index=spr_right; // 315° - 45°
    7. }
    Einige meiner Spiele:
  • okay danke! :)
    aber wie sieht der GML-Befehl für die Move-Aktion "Step Avoidung" aus?
    ich hab bereits step_avoiding, step_avoiding_point, move_step_aovoiding usw probiert aber ich komm einfach nicht drauf ?(
    tut mir echt leid das ich so anfängerfragen stelle aber ich kenn mich mit GML überhaupt nicht aus 8|