Kollision tile-based 2D Plattformer

shishigami

Mitglied
Hallo,

ich möchte zur Übung versuchen einen Platformer zu programmieren, dazu nutze ich Slick.

Hänge gerade daran, den Spieler auf tiles stehen zu lassen. Meine erste Idee :
Textdatei mit 0en und 1en (1 = Kollision), die in einer dafür zuständigen Klasse eingelesen wird und diese Werte dann für folgende Methode nutzt

Java:
public boolean isCollision(float x, float y);
___________________________________________________

Ich scheitere daran die Werte über

Java:
private void readCollisionData(String fileLocation) throws IOException;

einzulesen und in das Array

Java:
private boolean[][] collisionData = new boolean[MAP_SIZE][MAP_SIZE];

an entsprechender Position einzufügen.



Falls ihr andere Methoden kennt, um das umzusetzen, würde mich das auch interessieren (Tiled setze ich bewusst nicht ein)

mfg
 

Fu3L

Top Contributor
Nutze java.util.Scanner und lies jede Zeile einzeln ein. Dann gehst du die Zeichen der Zeile durch und wenn du eine 1 vorfindest, füllst du in dein Array ein true. Eine Zeile in der Textdatei entspricht natürlich einer Zeile im Array.

Sollte es damit nicht klappen, zeige doch bitte deine Versuche, damit man daran sehen kann, wo es hakt.
 

shishigami

Mitglied
Hallo Fu3L,

Java:
	private void readCollisionData(String fileLocation) throws IOException {
		Scanner scanner = new Scanner(new File(fileLocation));
		int y = 0;
		
		while (scanner.hasNextLine()) {
			String line = scanner.nextLine();
			
			for (int x = 0; x < MAP_SIZE; x++) {
				collisionData[x][y] = line.charAt(x);
			}
			
			y++;  // Scheint mir unschön, gibt es hier eine alternative?
		}
		
		printCollisionData();  // Testweise ausgeben
	}

	private void printCollisionData() {
		for (int x = 0; x < MAP_SIZE; x++) {
			for (int y = 0; y < MAP_SIZE; y++) {
				System.out.print(collisionData[x][y]);
			}
			System.out.println();
		}
	}

Hier die Ausgabe :

Code:
1111111111111111
0000001000000001
0000001000000011
0000001000000111
0000001000001111
0000001000011111
0000001000010001
0000001000010001
0000001000010001
0000000000010001
0000000000010001
0000001000010001
0000001000000001
0000001000000011
0000001100000111
1111111111111111

Und das Original aus der Textdatei :

Code:
1000000000000001
1000000000000001
1000000000000001
1000000000000001
1000000000000001
1000000000000001
1111111110011111
1000000000000011
1000000000000001
1000000000000001
1000000000000001
1000011111110001
1000110000000001
1001110000000011
1011110000000111
1111111111111111

[STRIKE]Was mache ich falsch?[/STRIKE]

Danke für deine Hilfe. Habe mal x und y vertauscht..

mfg
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Kollision Spiele- und Multimedia-Programmierung 5
A Kollision funktioniert nicht richtig bei zu schneller Geschwindigkeit des Spielers Spiele- und Multimedia-Programmierung 0
N Kollision von zwei ImageIcons Spiele- und Multimedia-Programmierung 8
D Kollision funktioniert unten aber nicht oben Spiele- und Multimedia-Programmierung 4
J Kollision (libgdx) Spiele- und Multimedia-Programmierung 2
S Kollision Spiele- und Multimedia-Programmierung 2
J Kollision genau erkennen mit intersects Spiele- und Multimedia-Programmierung 27
K a* kollision der einheiten Spiele- und Multimedia-Programmierung 3
S Probleme bei Breakout - Brick kollision Spiele- und Multimedia-Programmierung 2
F Rechteck Kollision Spiele- und Multimedia-Programmierung 10
H 2- D Kollision Spiele- und Multimedia-Programmierung 14
C Zeldaklon Problem mit Wand-Kollision Spiele- und Multimedia-Programmierung 8
O Kollision Polygon und Rechteck Spiele- und Multimedia-Programmierung 2
S Pacman Kollision von Münzen und Mauern Spiele- und Multimedia-Programmierung 11
P Gridpane Kollision Spiele- und Multimedia-Programmierung 3
Androbin Kollision zwischen Raster und Nicht-Raster Spiele- und Multimedia-Programmierung 2
L Kollision soll nur an oberer Seite (Breite) möglich sein Spiele- und Multimedia-Programmierung 6
Hercules Kisten Kollision Spiele- und Multimedia-Programmierung 2
S 3D-Kollision mit zwei ArrayLists Spiele- und Multimedia-Programmierung 7
T Pixelgenaue Kollision Spiele- und Multimedia-Programmierung 5
A LWJGL 3D Objekte Kollision Spiele- und Multimedia-Programmierung 3
D Greenfoot Kollision Spiele- und Multimedia-Programmierung 5
D Kollision verhindern Spiele- und Multimedia-Programmierung 2
R Frage zur Kollision Spiele- und Multimedia-Programmierung 5
Maxim6394 [Java3D] Probleme bei Kollision Spiele- und Multimedia-Programmierung 7
Kr0e Kollision zweier Kugeln... Wo ist Newton ?? Spiele- und Multimedia-Programmierung 9
C Kollision zwischen 2 Kreisen Spiele- und Multimedia-Programmierung 3
Helgon Kollision von jeder Seite des Blocks Spiele- und Multimedia-Programmierung 3
Fab1 Kollision die 100ste Spiele- und Multimedia-Programmierung 5
D Jump'n'run Kollision bei Blöcken Spiele- und Multimedia-Programmierung 10
P PingPong Spiel - Kollision Spiele- und Multimedia-Programmierung 2
C Bitmaske und Kollision Spiele- und Multimedia-Programmierung 2
J Spielprogrammierung mit bewegung und kollision Spiele- und Multimedia-Programmierung 24
S Kollision Kreis Rechteck Spiele- und Multimedia-Programmierung 8
aze Java3D: Gegenstände aufeinander zubewegen ohne Kollision Spiele- und Multimedia-Programmierung 4
baddestpoet pixelgenaue Kollision Spiele- und Multimedia-Programmierung 4
S Kollision in 2D Spiele- und Multimedia-Programmierung 12
B Gedrehte Rechtecke Kollision Spiele- und Multimedia-Programmierung 4
J Kollision mit Block (Wand) Spiele- und Multimedia-Programmierung 11
C Kollision in Java3D Spiele- und Multimedia-Programmierung 4
J Kollision von Objekten Spiele- und Multimedia-Programmierung 7
M Asteroids Clone: Kollision zwischen Schuss und Feind Spiele- und Multimedia-Programmierung 13
F Bewegung/Kollision von Objekten auf Tastendruck Spiele- und Multimedia-Programmierung 6
Z Kollision Spiele- und Multimedia-Programmierung 3
F Kollision für Arkanoid Spiele- und Multimedia-Programmierung 2
N Kollision abfragen Spiele- und Multimedia-Programmierung 3
K Sprites / Kollision Spiele- und Multimedia-Programmierung 3
S Jump'n'Run: Probleme mit Kollision Spiele- und Multimedia-Programmierung 13
D Isometric Tile Map Beispiel gesucht Spiele- und Multimedia-Programmierung 1
J Lichtupdate in tile-basiertem Spiel Spiele- und Multimedia-Programmierung 4
J Tile-basierte, zufällige Levelgenerierung Spiele- und Multimedia-Programmierung 2
F quaxlis tile map programming tutorial prob Spiele- und Multimedia-Programmierung 4
Kenan89 Theoretische Frage zu Tile Spielkarten Spiele- und Multimedia-Programmierung 9
S Collision Detection bei Tile Map Spiele- und Multimedia-Programmierung 17
L Tile Map als Array? Spiele- und Multimedia-Programmierung 23
V Tile Wars Spiele- und Multimedia-Programmierung 57
I Timebased tile scrolling wirkt unsauber. Spiele- und Multimedia-Programmierung 7
J Isometric Tile Game (x,y) inklusive Z cordinaten? Spiele- und Multimedia-Programmierung 2

Ähnliche Java Themen

Neue Themen


Oben