Tower sollen an nahe einheiten schießen

  • GM 8

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

  • Tower sollen an nahe einheiten schießen

    Hey,

    Ich hätte mal wieder so ein kleines Problem...
    Ich entschuldige mich schon vorher, wenn das Thme schon oft vorgekommen ist... leider hab ich mit der Suchfunktion nichts gefunden...
    Also:
    Ich will das meine Türme (die gebaut werden), die Feindlichen Einheiten abschießen, sie sollen aber immer die abschießen die am nähesten am Unteren Rand des Spieles sind!

    Die Türme bestehen aus 3 Teilen (Haupt, Kanone und das Schießobject)...
    Ich hab es mit der Funktion :)

    GML-Quellcode

    1. instance_nearest(x,y,object);

    versucht.

    MfG Rodrog

    P.S.: Ich hoffe ich habs gut erklärt.
    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Ergo: Je mehr Käse, desto weniger Käse.
  • instance_nearest() ist schond er richtige ansatz.
    Machs vieleicht so (ins step event, der Kanone):

    GML-Quellcode

    1. ne_enem = instance_nearest(x,y,enem_parent) // alles gegner brauchen das objekt enem_parent als parent!
    2. if point_distance(x,y,ne_enem.x,ne_enem.y) < 200 // 200 ist die Nähe ab der geschossen werden soll, dh. der Turms chießt nur wenn sich der gegner in diesem radius befindet
    3. {
    4. if not_shot = 0
    5. {
    6. not_shot = 1;
    7. alarm[0] = 30 // der wert wie oft ein Schuss abgegeben werden darf (in alarm 0 event muss nur stehen: not_shot = 0
    8. with (instance_create(x,y,obj_bullet)
    9. {
    10. motion_set(point_direction(x,y,other.ne_enem.x,other.ne_enem.y),8)
    11. }
    12. }}
    Alles anzeigen


    Das sollte funktionieren ;)

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)
  • oder du lässt den Turm ein Schuss erstellen und schreibst ins Create-Event von der Kugel

    GML-Quellcode

    1. if(distance_to_object(obj_gegner)<50) //Gegner im Bereich 50px
    2. {
    3. move_towards_point(instance_nearest(x,y,obj_gegner).x,instance_nearest(x,y,obj_gegner).y, 5); // Bei 5 = Speed^^
    4. }
    5. else
    6. {
    7. instance_destroy(); //Falls kein Gegner in der Nähe ist , wird der Schuss zerstört!
    8. }


    hin...

    MFG Murloc717
  • Ich bau auch grade an nem Tower Spielchen.

    Ich habe das im der Gun Step Event:

    Quellcode

    1. enemy = instance_nearest(x,y,obj_enemy1)
    2. if distance_to_object(enemy)<= range
    3. {
    4. if shoot = 1
    5. {
    6. instance_create(x,y,obj_laser1)
    7. shoot = 0
    8. alarm[0] = shootspeed
    9. }
    10. }
    Alles anzeigen


    Vielleicht hilft dir das.

    Gruß BM
    Es gibt viel zu tun, packen wir´s an !!!
    Für Rechtschreibfehler sind die verantwortlich, die sie entdecken :P.