Du brauchst mindestens 2 Klassen:
TBall und
TTisch.
TBall repräsentiert alle Eigenschaften eines Balles (x, y, Speed, Richtung, Farbe)
TTisch enthält eine ObjektListe oder dyn. Array mit allen TBall-Objekten auf dem Tisch.
Zusätzlich Länge und Breite des Tischs.
Ausserdem gibt es die Methoden
TTisch.MoveBalls(timeinterval:integer);
TTisch.CollisionBande(ball:TBall);
TTisch.CollisionBalls(ball1, ball2:TBall);
TTisch.PaintBackground(canvas:TCanvas);
TTisch.PaintBalls(canvas:TCanvas);
Property TTisch.BallCount;
Diese beiden Klassen werden beide in die
Unit Billard reingepackt.