ich erzähle alternativ zu Links mal von meinen spontanen Ideen
(edit und anscheinend etwas komplizierter als der schon genannte Link):
ein mögliches Vorgehen ist, die Liste der Felder zu bestimmen, die die Linie berührt, der Weg durchs Schachbrett,
dafür könntest du Mathematik einführen, schon von Ebene mit Vektoren und Gerade gehört?
Schnittpunkt zweier Geraden? letztere wäre ein eine gute Grundfunktion, wobei hier besonders einfach, da mit senkrechten und waagerechten Geraden,
genau an x=0, 1, 2, 3, .., y genauso
für die Linie von A nach B brauchst du aber schon eine genaue Geradengleichung,
fall genau senkrecht bzw. waagerecht, wären dase Sonderfälle mit trivialer Felder-Bestimmung
ansonsten sind die Punkte sicher genau die Mittelpunkte von Feldern, z.B. 2.5/1.5 nach 4.5/4.5
das ergibt eine Gerade von .. (Gerade aus zwei Punkten bestimmen)
sei die Gerade z.B. y = 0.5 + 2*x
nun für alle senkrechten und waagerechen Linien zwischen den beiden Punkten die Schnittpunkte berechnen,
für die waagereche Linie y = 3 gilt eingesetzt 3 = 0.5 + 2*x, also x = 1.25
x = 1.25 bedeutet auf der waagerechen Linie y = 3 dass zwei bestimmte Felder (oben und unten) auf dem Weg der Linie liegen,
nämlich die Felder, die die waagerechen Linie y = 3 als Kante haben sowie noch zwischen den senkrechten Kanten x = 1 und x = 2 liegen
klingt alles kompliziert, kann man aber nach und nach erarbeiten, falls ein bisschen Grundverständis besteht,
ein Sonderfall ist noch wenn die Linie von A nach B genau den Schnittpunkt von 4 Feldern bzw. einer waagerechen
und senkrechten Kante trifft, einen Eckpunkt,
dann sind entweder alle 4 Felder aufzunehmen oder gar keine, falls das hinsichtlich der Hindernis-Betrachtung als erlaubte Lücke gilt,
im letzteren Fall ist es kritisch, wenn das zweimal hintereinander passiert, siehe Bild im Anhang,
aber das kann als weiteren Sonderfall vorher ausschließen, das passiert nur wenn die der Winkel genau 45 Grad ist,
wenn der Unterschied zwischen A und B in x- und y-Richtung gleich ist,
für diesen Fall kann man auch wieder auf relativ einfache Weise die Felder direkt bestimmen
hat man letztlich alle zu betrachenen Felder auf dem Weg von A nach B, dann nur noch schauen, ob eines davon ein Hindernis ist