Guten Tag PureBoard Gemeinde,
mein erster Beitrag in diesem Forum. Ich habe PB nun schon etwas länger, habe mich aber noch nie richtig damit befasst. Nun heute, nach langer Überlegung hab ich mich dazu entschlossen PB zu erlernen. Früher habe ich bereits mit BlitzBasic und anderen Sprachen gearbeitet, aber PB scheint mir auch ziemlich sympatisch, da es doch ziemlich komplex ist.
Nun aber eine Frage:
Wie kann ich Daten aus einer Datei auslesen und diese in Grafiken umwandeln. Ich benötige das für die Levels. Also ich habe eine Datei namens "level.txt" die ungefär so aussehen kann:
11111111111
1 P 3332 1
1 5 1
1 3 2 1
1 G 12231 1
111111111 1
Diese möchte ich laden und die Zeichen in Grafiken umwandeln, also die 1 stünde für eine Mauer, die Leerzeichen " " für Boden und so weiter.
Desweiteren soll es auch P(layer) und G(egner) geben. Ich hab mir für das Bewegen der Player und Gegner deshalb überlegt, wenn man also zB nach oben drückt (Pfeiltaste), wird die Datei überschrieben, sodass praktisch das P wieder mit " " (Boden) überschrieben wird und " " (Boden) durch das neue P. Wäre doch machbar oder?
Kann mir jemand helfen? Die SuFo hat mir keine wirklichen Ergebnisse geliefert oder ich war überlegt genug...
Maps auslesen
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
suchbegriffe:
Tile Tiles Tilemap Tileengine Mapengine
bitte suchen, es ist wahrlich schon sehr oft erklärt worden.
auch das mitgelieferte beispiel "LadyBug" benutzt eine in Data-Zeilen integrierte Map auf Zahlenbasis.
willkommen im Board
Tile Tiles Tilemap Tileengine Mapengine
bitte suchen, es ist wahrlich schon sehr oft erklärt worden.
auch das mitgelieferte beispiel "LadyBug" benutzt eine in Data-Zeilen integrierte Map auf Zahlenbasis.
willkommen im Board

Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
Oh, vielen dank 
Ich hab mir jetzt überlegt, einfach die BlitzBasic Variante in PB nachzucoden. Sähe so aus in BB:
Das ließe sich eigentlich problemlos in PB umsetzen, oder gibt es da Probleme?

Ich hab mir jetzt überlegt, einfach die BlitzBasic Variante in PB nachzucoden. Sähe so aus in BB:
Code: Alles auswählen
;laden
Dim Map(15.20)
file = ReadFile("map.txt")
For i = 0 to 14
GET$ = Readline(file)
For j = 0 to 19
MAP$(i,j) = Mid$(GET$,j+1,1)
next
next
Closefile(file)
; Zeichnen
repeat
For i = 0 to 14
for j = 0 to 19
select MAP$(i,j)
Case " "
; boden image
Case "1"
; Block
end select
next
next
until keyhit(1)
end
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
und eine zuordnung über If bzw. Select ist auch etwas umständlich.
direkte IDs ist praktischer.
da ich zufällig heut grad in nem anderen thread mit dem thema befasst bin,
hier mal zwei links:
http://www.purebasic.fr/german/viewtopic.php?t=13624
http://www.purebasic.fr/german/viewtopi ... 634#116634
direkte IDs ist praktischer.
da ich zufällig heut grad in nem anderen thread mit dem thema befasst bin,
hier mal zwei links:
http://www.purebasic.fr/german/viewtopic.php?t=13624
http://www.purebasic.fr/german/viewtopi ... 634#116634
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
wus?Forge hat geschrieben:Readstring & Writestring? Da könnte die Mapdatei aber groß werden..
wieso soll die größer werden?

ein zeichen braucht in ANSI 1byte, damit wird das kleiner als wenn man für jedes Tile ein Long nimmt.
es ist lediglich ziemlich unpraktisch.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.