Granate soll bei Maus explodieren

  • GM 7

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

  • Granate soll bei Maus explodieren

    Hi erstmal an alle,
    ich wollte ein spiel machen,bei dem ich auf Knopfdruck eine granate zur maus hinwerfe,sie dort dann eine kurze zeit blinkt und erst dann explodiert:
    Ich bin ein Anfänger und deshalb das mit den Codes immer erklähren und dazuschreiben in welcher Event und so!

    Danke im voraus
  • Ok. Und was davon hast du schon geschafft bzw. muss man dir erklären??
    Dies ist eine kreative Signatur: Stell dir genau JETZT etwas lustigs vor, das hier stehen könnte...

    Meine Homepage
  • Also: Im "knopfdruck"-event der Spielfigur:

    GML-Quellcode

    1. instance_create(self.x,self.y,Granate) //Damit wird die Granate an der Position der spielfigur erzeugt. Ersetz Granate mit dem Namen vom Objekt der Granate bei dir

    Und dann im Create Event der Granate:

    GML-Quellcode

    1. direction = point_direction(self.x,self.y,mouse_x,mouse_y); //Setzt die bewegungsrichtung für die Granate richtung maus
    2. speed = 4; //Sagt der granate sie soll sich mit der geschwindigkeit 4 losbewegen... Du kannst auch eine andere geschwindigkeit einsetzen...
    Dies ist eine kreative Signatur: Stell dir genau JETZT etwas lustigs vor, das hier stehen könnte...

    Meine Homepage
  • versteh ich das richtig, dass die granate in der luft stehen bleiben soll? Wenn ja, dann brauchst du nur im Create-event der Granate noch folgendes anhängen:

    GML-Quellcode

    1. goal_x = mouse_x;
    2. goal_y = mouse_y

    und im step-Event der Granate musst du noch folgendes reinschreiben:

    GML-Quellcode

    1. if (self.x == goal_x && self.y == goal_y)
    2. {
    3. speed = 0;
    4. event_user(0); //Das löst das User Event 0 aus. Wenn du das User Event 0 nicht verwenden willst kannst du diese Zeile weglassen.
    5. }

    dann hält die granate an. Das User Event 0 wird ausgelöst sobald die granate anhält, falls du danach noch irgendwelchen code möchtest...
    Dies ist eine kreative Signatur: Stell dir genau JETZT etwas lustigs vor, das hier stehen könnte...

    Meine Homepage
  • Firecool schrieb:

    versteh ich das richtig, dass die granate in der luft stehen bleiben soll? Wenn ja, dann brauchst du nur im Create-event der Granate noch folgendes anhängen:

    GML-Quellcode

    1. goal_x = mouse_x;
    2. goal_y = mouse_y

    und im step-Event der Granate musst du noch folgendes reinschreiben:

    GML-Quellcode

    1. if (self.x == goal_x && self.y == goal_y)
    2. {
    3. speed = 0;
    4. event_user(0); //Das löst das User Event 0 aus. Wenn du das User Event 0 nicht verwenden willst kannst du diese Zeile weglassen.
    5. }

    dann hält die granate an. Das User Event 0 wird ausgelöst sobald die granate anhält, falls du danach noch irgendwelchen code möchtest...


    Das wird nicht funktionieren wenn die Maus bewegt wird.

    In dem Event in dem die Granate erstellt wird:

    GML-Quellcode

    1. var dis,g;
    2. g=instance_create(x,y,granate);
    3. g.direction=point_direction(x,y,mouse_x,mouse_y);
    4. g.speed=4;
    5. dis=point_distance(x,y,mouse_x,mouse_y);
    6. g.alarm[0]=dis/4;


    Und im Alarm[0] von der Granate

    GML-Quellcode

    1. instance_destroy();


    So sollte es funktionieren.

    © 2008 by Teamgrill Productions
  • ich hab das jetz so verstanden, dass die granate immer in richtung maus fliegt.
    step event von der granate:

    GML-Quellcode

    1. direction=point_direction(x,y,mouse_x,mouse_y)
    2. if point_distance(x,y,mouse_x,mouse_y)<=speed
    3. {
    4. speed=0
    5. sprite_index=spr_granade_flashing //für spr_granade_flashing einfach den sprite von deiner blinkenden granate einsetzen
    6. timer1=room_speed
    7. }
    8. timer-=1
    9. if timer<0
    10. {
    11. sprite_index=spr_grenade_explode //der sprite von der explodierenden granate
    12. }
    Alles anzeigen


    create event

    GML-Quellcode

    1. speed=4 //oder was auch immer



    edit: [GML] statt [GML}


  • Benutzer online 1

    1 Besucher