Hi
Ich arbeite gerade an einem Skript.
Wir haben folgendes:
Einen Turm, der Kugeln auf sich bewegende Gegner abfeuern kann.
Dieser Turm soll aber die Bewegung des Gegners miteinbeziehen und wenn sich dieser nicht dreht, soll die Kugel auch treffen.
Dazu hab ich ein Skript das nimmt die Start Koordinaten, die Geschwindigkeit, mit der sich die Kugel bewegen wird und das Gegnerobjekt und gibt den Winkel zurück, in welchen der Turm schiessen muss um zu treffen:
Alles anzeigen
Also bei mir klappts leider nicht irgendwie...
Ich arbeite gerade an einem Skript.
Wir haben folgendes:
Einen Turm, der Kugeln auf sich bewegende Gegner abfeuern kann.
Dieser Turm soll aber die Bewegung des Gegners miteinbeziehen und wenn sich dieser nicht dreht, soll die Kugel auch treffen.
Dazu hab ich ein Skript das nimmt die Start Koordinaten, die Geschwindigkeit, mit der sich die Kugel bewegen wird und das Gegnerobjekt und gibt den Winkel zurück, in welchen der Turm schiessen muss um zu treffen:
GML-Quellcode
- var startX,startY,usedSpeed,enemyObj,stepNumb,stepSize;
- startX= argument0;
- startY = argument1;
- usedSpeed = argument2;
- enemyObj = argument3;
- // step numb und size dienen zur Eindämmung des Rechenaufwands
- stepNumb = argument4;
- stepSize = argument5;
- if stepSize==0 stepSize=1;
- var i,_x,_y,_dist,_range;
- for (i=1;i<stepNumb;i+=stepSize)
- {
- //Bewegung einbeziehen
- _x = enemyObj.x + (i * enemyObj.hspeed);
- _y = enemyObj.y + (i * enemyObj.vspeed);
- //Distanz zum Zielpunkt
- _dist = point_distance(startX,startY,_x,_y);
- //Reichweite der Kugel innerhalb der Anzahl Steps i
- _range = usedSpeed * i;
- if (abs(_range - _dist)<=usedSpeed)
- {
- return (point_direction(startX,startY,_x,_y));
- }
- }
- return -1;
Also bei mir klappts leider nicht irgendwie...
"das war meine letzte flamewar PM an dich ."
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von blubberblub ()