Dynamischer Laser

  • Dynamischer Laser

    Ich habe vor einen Verticalshooter zu machen. Bei den Gegnerwaffen will ich, dass je nach Gegner ein und der selbe Laser (als Objekt betrachtet) mit unterschiedlicher Richtung, Geschwindigkeit etc. geschossen werden kann.

    Ich dachte mir einen Script zu schreiben, in dem das Objekt erzeugt wird und anschießend die benannten eigenschaften annimmt.

    Bsp: Ich hab 2 Schiffe, beide schießen 3 Laser. Ein Laser fliegt immer gerade aus, die anderen haben einen festen Abschusswinkel, z.B. 30°/-30° bei Schiff 1 und 50°/-50° bei Schiff 2.
    Im Prinzip könnte ich jetzt 5 Laser erstellen, die von Anfang an, feste Winkel (einen mit 0°, 30°, 50°,...) etc. haben.
    Zweites Problem ist, wie ich dem Laser sage, das er in die Richtung fliegt, welche das Gegnerschiff hat.
    Autosignatur für:

    Danke, Sorry usw. wenn ich mal was vergesse
    ...
  • Script ausführen wenn der Laser abgeschossen werden soll (musst du natürlich noch anpassen):

    GML-Quellcode

    1. var iid;
    2. iid=instance_create(obj_laser,x,y);
    3. iid.direction=direction+choose(-1,1)*30;
    4. iid.speed=6;


    Dragoon
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!
  • erstell den laser einfach mit diesem script:

    GML-Quellcode

    1. //scr_shoot_laser(x,y,direction,speed)
    2. with(instance_create(obj_laser,argument0,argument1))
    3. {
    4. direction=argument2;
    5. speed=argument3;
    6. }


    wenn du willst, das der laser an der position x+50, y+100 mit einem Winkel von 96° und einer Geschwindigkeit von 6 abgefeuert wird, musst du nur scr_shoot_laser(x+50,y+100,96,6) eingeben.