Hallo, mein Problem ist folgendes:
in meinem Spiel düst ein Laserstrahl über das Spielfeld und räumt alles weg, was ihm in Weg ist. Der Laserstrahl wird erzeugt mit "draw_line_width". Bei diesem Befehl müssen die Anfangs- und die Zielkoordinaten eingegeben werden. Mein Problem ist, dass ich nicht weiß, wie ich das bei diagonalen Linien machen soll.
Wenn der Schuss z.B. nach oben, unten, rechts oder links geht, kann ich den Spielfeldrand als Zielkoordinaten eingeben. Was aber, wenn der Schuss diagonal geht? Leider kann ich bei draw_line ja keine direction verwenden, diese wäre bekannt, aber das nutzt mit ja nichts. Da die Laserkanone auch noch ständig ihren Platz wechselt, habe ich jetzt das Problem, dass ich bei Schüssen der direction 45 oder 225 oder ähnliches nicht sagen kann, wie die Linie verlaufen soll, weil die Zielkoordinaten nicht bekannt sind...
Wie kann ich das ermitteln? Spontan fällt mir erst mal der Satz des Pythagoras dazu ein, aber jetzt weiß ich nicht wirklich, wie man den hierbei anwenden könnte. Oder habe ich jetzt irgendwas übersehen??
Kann mir bitte jemand dabei helfen? Zur Info: das Spielfeld (nicht das Fenster!) ist 600 x 500 Pixel breit/hoch, die einzelnen Elemente sind jeweils 40 Pixel.
Danke schon mal im voraus für evtl. Antworten,
Archie
in meinem Spiel düst ein Laserstrahl über das Spielfeld und räumt alles weg, was ihm in Weg ist. Der Laserstrahl wird erzeugt mit "draw_line_width". Bei diesem Befehl müssen die Anfangs- und die Zielkoordinaten eingegeben werden. Mein Problem ist, dass ich nicht weiß, wie ich das bei diagonalen Linien machen soll.
Wenn der Schuss z.B. nach oben, unten, rechts oder links geht, kann ich den Spielfeldrand als Zielkoordinaten eingeben. Was aber, wenn der Schuss diagonal geht? Leider kann ich bei draw_line ja keine direction verwenden, diese wäre bekannt, aber das nutzt mit ja nichts. Da die Laserkanone auch noch ständig ihren Platz wechselt, habe ich jetzt das Problem, dass ich bei Schüssen der direction 45 oder 225 oder ähnliches nicht sagen kann, wie die Linie verlaufen soll, weil die Zielkoordinaten nicht bekannt sind...
Wie kann ich das ermitteln? Spontan fällt mir erst mal der Satz des Pythagoras dazu ein, aber jetzt weiß ich nicht wirklich, wie man den hierbei anwenden könnte. Oder habe ich jetzt irgendwas übersehen??
Kann mir bitte jemand dabei helfen? Zur Info: das Spielfeld (nicht das Fenster!) ist 600 x 500 Pixel breit/hoch, die einzelnen Elemente sind jeweils 40 Pixel.
Danke schon mal im voraus für evtl. Antworten,
Archie
Signatur? Ich überlege mir noch eine. Die besten sind ja schon alle vergeben...