Hi,
sorry für den komischen Titel. Wusste nicht wie ich es richtig beschreiben soll. Wie sollte man vorgehen, wenn man ein Zweidimensionales Spielfeld entwirft, welches 10 x 10 Felder besitzt? Auf jedem dieser Felder werden je nach Zustand (leer, treffer, vorbei) verschiedene Bilder auf einem Panel gezeichnet. Mein Problem ist, dass ich über einen MouseListener die Koordinaten des Mausklicks ermittel, diese aber nicht sinnvoll in ein Felderarray übertragen kann.
Beispiel:
-Jedes Feld ist 10x10 Pixel groß
-Das Array besitzt 100 int Werte (10x10 Felder)
- Bei einem Mausklick kommen die xy Koordinaten 4,7 zurück
Bis jetzt habe ich die Koordinaten folgendermaßen auf Felderkoordinaten zurückgerechnet:
x= xKoordinate /10 (wegen Feldgröße)
y= yKoordinate /10 (wegen Feldgröße)
Daraus ergibt sich bezüglich des Beispiels genau das erste Feld in der ersten Spalte.
Wie erfolgt dann die Zuordnung mit den Arraywerten? Sollte man ein 2d Array benutzen oder gibt es für solche Zwecke andere herangehensweisen.
Danke schonmal für eure Hilfe.
sorry für den komischen Titel. Wusste nicht wie ich es richtig beschreiben soll. Wie sollte man vorgehen, wenn man ein Zweidimensionales Spielfeld entwirft, welches 10 x 10 Felder besitzt? Auf jedem dieser Felder werden je nach Zustand (leer, treffer, vorbei) verschiedene Bilder auf einem Panel gezeichnet. Mein Problem ist, dass ich über einen MouseListener die Koordinaten des Mausklicks ermittel, diese aber nicht sinnvoll in ein Felderarray übertragen kann.
Beispiel:
-Jedes Feld ist 10x10 Pixel groß
-Das Array besitzt 100 int Werte (10x10 Felder)
- Bei einem Mausklick kommen die xy Koordinaten 4,7 zurück
Bis jetzt habe ich die Koordinaten folgendermaßen auf Felderkoordinaten zurückgerechnet:
x= xKoordinate /10 (wegen Feldgröße)
y= yKoordinate /10 (wegen Feldgröße)
Daraus ergibt sich bezüglich des Beispiels genau das erste Feld in der ersten Spalte.
Wie erfolgt dann die Zuordnung mit den Arraywerten? Sollte man ein 2d Array benutzen oder gibt es für solche Zwecke andere herangehensweisen.
Danke schonmal für eure Hilfe.