ANFÄNGER : Brauche Hilfe bei einem kleinem shooting Game.

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

  • ANFÄNGER : Brauche Hilfe bei einem kleinem shooting Game.

    Hallo, zusammen.

    Ich habe erst gerade angefangen mit Game Maker zu arbeiten.

    Ich möchte ein kleines shooting Game herstellen. Wie man schiesst habe ich schon lange herausgefunden, doch habe ich nach reichlichem überlegen gedacht, es wäre besser, wenn ich in die Richtung der Maus schiessen würde (evt. sogar den Caracter mit Face Richtung Maus ausrichten). Für das sind ja sicher Scripts nötig, von welchen ich keine Ahnung habe (Was für eine progg.spache ist das eigentlich C, C++ ,C# ? Oder doch was anderes?). Kann mir da jemand weiterhelfen? ^^

    Ich habe schon solche Scripte gesehen in diesem Forum, aber komme nicht so draus :pinch: .



    Danke fürs lesen

    Mfg :D
    Das Problem zu erkennen ist wichtiger,
    als die Lösung zu erkennen,
    denn die genaue Darstellung des Problems führt zur Lösung.
    ( Albert Einstein )


    I am an according to the gml n00b test!
  • Hallo und wilkommen im Forum!
    Die Programmiersprache heißt GML (Game Maker Language)
    Hier findest du viele Einsteiger-Tutorials.

    Zu deinem Problem. Mit diesem Code im Step-Event des Players sollte es gut sein:

    GML-Quellcode

    1. direction=point_direction(x,y,mouse_x,mouse_y)
    2. //Die Richtung der Figur ist die Richtung der Maus relativ zum Spieler
    3. image_angle=direction
    4. //damit sich das Sprite dreht
    5. if mouse_check_button_pressed(mb_left) {
    6. //Wenn die Linke Maustaste gedrückt wurde
    7. p_schuss=instance_create(x,y,Schuss)
    8. //Einen Schuss erstellen und in eine Variable speichern
    9. p_schuss.direction=direction
    10. //Dem Schuss die Richtung des Spielers zuweisen
    11. p_schuss.speed=20
    12. //Dem Schuss eine Geschwindigkeit geben
    13. }
    14. //Ende
    Alles anzeigen


    ,-Megamag

    Magical dream time!
  • Hi,

    guck dir die "Sprache" doch einfach an wozu gibts ne deutschsprachige Hilfe.

    zu deinem problem:


    Generell: KLICK

    damit währe die frage die nun zum Xten mal gefragt wurde geklärt; ach ja falls das alles nicht hilft kannste ja einfach schreiben wo du grad nicht weiter kommst

    edit: hab mir zu viel mühe gegeben megamag war schneller <.<

    edit2: @megamag: er hat die lite version da klappt image angle nicht :whistling:
  • im bild editor kann man das bild drehen lassen um eine bestimmte grad zahl und eine einstellbare nummer an bildern;

    ich nehm jetz mal 360 Grad drehung und 360 bilder:

    GML-Quellcode

    1. image_index=new_image_angle
    2. image_index+=1
    3. direction=new_image_angle
    4. if(direction>360){image_index=0;direction=0}


    damit lässt du ihn zumindest irgentwo sich drehen
  • Megamag schrieb:

    Hier findest du viele Einsteiger-Tutorials.


    Ja, dort war ich auch schon.

    Was den Code anbelangt...

    Ich versuche mal die "Sprache" etwas besser kennenzulernen.

    Genesis schrieb:

    falls das alles nicht hilft kannste ja einfach schreiben wo du grad nicht weiter kommst


    Finde ich eine Gute Idee :thumbsup:

    Edit: Ich habe ein Problem mit dem Tutorial auf folgender Seite.

    Seite :
    birchdale.net/gm/ Dann...
    --> Tutorials/Beginner's Guide to Game Maker Programming, HTML version (uploaded 2003-02-12) /5.2 Randomizing

    Könntet ihr dort mal schauen? Ich check nicht, wieso das mit der Variablen "screen_width" bei mir nicht geht.
    Ich habe alles so übernommen wie er es geschrieben hat.

    Hier die Codes :

    (CreateEnemy1) :

    GML-Quellcode

    1. random(screen_width);
    2. floor(random(screen_width));
    3. instance_create(floor(random(screen_width)), 0, objEnemy1);
    4. alarm[0] = 30;


    (Enemy1Init) :

    GML-Quellcode

    1. vspeed = random(8) + 2;



    Na? Wisst ihr wo der Hase begraben liegt?

    //Doppelposts bitte unterlassen - Das Team bedankt sich.
    Das Problem zu erkennen ist wichtiger,
    als die Lösung zu erkennen,
    denn die genaue Darstellung des Problems führt zur Lösung.
    ( Albert Einstein )


    I am an according to the gml n00b test!
  • maxda schrieb:

    image_angle geht bei der lite version net!


    Ja ich weiss, ist oben bereits gesagt worden.


    Das mit der in Richtung Maus schiessen können wir mal weglassen.
    Meine jetztige Frage bezieht sich auf mein Aktuelles Posting

    Mfg :D
    Das Problem zu erkennen ist wichtiger,
    als die Lösung zu erkennen,
    denn die genaue Darstellung des Problems führt zur Lösung.
    ( Albert Einstein )


    I am an according to the gml n00b test!
  • Danke für den Tipp. Hattest recht super! :D

    Mfg

    Edit :

    Hallo, ich bin beim zweiten Punkt stehen geblieben. Bei der Funktion "draw_rectangle".

    Der Code sieht so aus...

    GML-Quellcode

    1. pen_color = make_color(150, 150, 150);
    2. brush_color = make_color(150, 150, 150);
    3. x1 = 5;
    4. y1 = room_height - 15;
    5. x2 = 110;
    6. y2 = room_height - 5;
    7. draw_rectangle(x1,y1,x2,y2); /*Er bring den Fehler immer hier.
    8. --> Wrong Number of Arguments.
    9. if (instance_exists(myPlayer))
    10. {
    11. pen_color = make_color(0, 0, 255);
    12. brush_color = make_color(0, 0, 255);
    13. x1 = 7;
    14. y1 = room_height - 13;
    15. x2 = 7 + myPlayer.myEnergy;
    16. y2 = room_height - 7;
    17. draw_rectangle(x1, y1, x2, y2);
    18. }
    Alles anzeigen


    Was stimmt hier nicht? ?(

    Mfg

    Nachtrag : Beim Game Maker heisst die Funktion ja --> draw_rectangle(x1,x2,y1,y2,outline); Für was steht denn outline??
    Ich glaube, das ist der Fehler

    Mfg
    Das Problem zu erkennen ist wichtiger,
    als die Lösung zu erkennen,
    denn die genaue Darstellung des Problems führt zur Lösung.
    ( Albert Einstein )


    I am an according to the gml n00b test!

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von xx-XtremeX-xx ()

  • xx-XtremeX-xx schrieb:

    ...
    Der Code sieht so aus...

    GML-Quellcode

    1. pen_color = make_color(150, 150, 150);
    2. brush_color = make_color(150, 150, 150);
    3. x1 = 5;
    4. y1 = room_height - 15;
    5. x2 = 110;
    6. y2 = room_height - 5;
    7. draw_rectangle(x1,y1,x2,y2); /*Er bring den Fehler immer hier.
    8. --> Wrong Number of Arguments.
    9. if (instance_exists(myPlayer))
    10. {
    11. pen_color = make_color(0, 0, 255);
    12. brush_color = make_color(0, 0, 255);
    13. x1 = 7;
    14. y1 = room_height - 13;
    15. x2 = 7 + myPlayer.myEnergy;
    16. y2 = room_height - 7;
    17. draw_rectangle(x1, y1, x2, y2);
    18. }
    Alles anzeigen


    Was stimmt hier nicht? ?(

    Mfg

    Nachtrag : Beim Game Maker heisst die Funktion ja --> draw_rectangle(x1,x2,y1,y2,outline); Für was steht denn outline??
    Ich glaube, das ist der Fehler

    Mfg


    also als erstes alles was mit pen_color oder brush_color zu tun hat -> Raus damit, das gibts nicht mehr.

    danach alle draw_rectangle(x,y,w,h) zu draw_rectangle(x,y,w,h,true) machen(das ist im sinne des autors da es früher keine outline rectangles gab).

    ansonsten bitte versuchen die Probleme selbst zu lösen(evtl. auch einfach durch ausprobieren) das erspart uns und dir eine menge zeit, und der GMD spart es Badbreite *lol*

    btw: zu "für was steht dies oder jenes" ein blick in die Hilfe und du wärst direkt schlauer ;)
  • ein blick in die Hilfe und du wärst direkt schlauer


    Ok mach ich das nächste mal. ^^


    Sagen wir mal, wenn ich nun noch eine Zweite Anzeige, direkt neben der anderen (hat geklappt übrigens) machen wollte, die mir den Spiel-Fortschritt anzeigt --> (Design = Wie Lebensanzeige, andere Farbe).

    -> Wie mache ich das am besten? Ich habe zuerst eine neue Energyvariable machen wollen (energy = 100; ),die beim Tot des Feindes zB. um 10 reduziert wird. Und sie, wenn (energy <= 0 ) ist, den nächsten Raum lädt. Hab ich leider nicht hinbekommen.
    Die Linie (Anzeige im Spiel) ist nicht erschienen und der Script erkannte die Variablen nicht richtig.

    Uuf (hoffe Ihr versteht, was ich meine :huh: )

    Habt ihr eine bessere Idee, wie das viel einfacher ginge (möchte aber das ganze in Skripte schreiben)
    --> Tipps reichen, müsst nicht Lösung präsentieren.

    Danke viel mals
    Mfg :D
    Das Problem zu erkennen ist wichtiger,
    als die Lösung zu erkennen,
    denn die genaue Darstellung des Problems führt zur Lösung.
    ( Albert Einstein )


    I am an according to the gml n00b test!

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von xx-XtremeX-xx ()