Hallo liebe Java Progammierer,
ich progammiere seit einiger Zeit an einem RPG-Spiel und habe auch schon einiges geschafft daran,
nun ja, jetzt bin ich jedenfalls auf ein Problem gestoßen wo ich alleine nicht weiter weiß.
Ok , es ist nicht wirklich ein Problem, eher eine Frage des Aufwands.
Also: ich habe ein Panel mit einer Bilddatei als Hintergrund und eine Figur die man mit nem KeyListener auch darauf bewegen kann, funktioniert auch wunderbar alles. Jedoch ist mein Problem jetzt, dass sich diese Spielfigur natürlich über alles bewegen kann, sprich Häuser, Bäume etc.
Meine erste (wahrscheinlich primitive Idee) war es nun, für jede Map(also für jedes Bild) eine java datei zu schreiben die nur aus gaaaaaaaanz vielen ifs besteht wo ständig bei der Bewegung überprüft wird ob die neue Position noch gültig ist. zB so:
Das könnte natürlich funktionieren, ist aber seeeeeeehr aufwendig und die Leistung leidet natürlich auch tierisch darunter. Meine andere Idee wäre einfach ein boolean aray zu machen wo jedes Pixel mit true/oder falls abgespeichert ist. Das wäre für die Leistung natürlich besser , aber immer noch schrecklich zu schreiben.
Meine Frage ist also nun , wie man das vllt viel einfacher und besser machen könnte? Hat dazu einer eine Anregung oder Idee und ist mein Ansatz die Map einfach als Hintergrund zu nehmen(was ja erstma einfach erschien) schon grunsätzlich falsch?
Sollte ich vllt jedes Haus, Baum etc als eigenes Label machen? Das war eine Überlegung, aber irgendwie weiter brachte mich das nicht.
Ich würde mich freuen wenn mir hier jemand einen nützlichen Tipp geben könnte dazu :toll:
ich progammiere seit einiger Zeit an einem RPG-Spiel und habe auch schon einiges geschafft daran,
nun ja, jetzt bin ich jedenfalls auf ein Problem gestoßen wo ich alleine nicht weiter weiß.
Ok , es ist nicht wirklich ein Problem, eher eine Frage des Aufwands.
Also: ich habe ein Panel mit einer Bilddatei als Hintergrund und eine Figur die man mit nem KeyListener auch darauf bewegen kann, funktioniert auch wunderbar alles. Jedoch ist mein Problem jetzt, dass sich diese Spielfigur natürlich über alles bewegen kann, sprich Häuser, Bäume etc.
Meine erste (wahrscheinlich primitive Idee) war es nun, für jede Map(also für jedes Bild) eine java datei zu schreiben die nur aus gaaaaaaaanz vielen ifs besteht wo ständig bei der Bewegung überprüft wird ob die neue Position noch gültig ist. zB so:
Code:
public static boolean couldRun(int[] position) {
int y = position[1];
int x = position[0];
boolean couldRun = true;
if (y <= 30) {
couldRun = false;
}
if ((y >= 70) && (y <= 116)) {
if (x >= 357 && x <= 414) {
couldRun = false;
}
}
return couldRun;
}
Meine Frage ist also nun , wie man das vllt viel einfacher und besser machen könnte? Hat dazu einer eine Anregung oder Idee und ist mein Ansatz die Map einfach als Hintergrund zu nehmen(was ja erstma einfach erschien) schon grunsätzlich falsch?
Sollte ich vllt jedes Haus, Baum etc als eigenes Label machen? Das war eine Überlegung, aber irgendwie weiter brachte mich das nicht.
Ich würde mich freuen wenn mir hier jemand einen nützlichen Tipp geben könnte dazu :toll:
Zuletzt bearbeitet: