Brauche Hilfe bei Dim Felder

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

bruce185

Betreff: Brauche Hilfe bei Dim Felder

BeitragFr, Jul 29, 2005 22:45
Antworten mit Zitat
Benutzer-Profile anzeigen
hi
also, ich möchte ein kleines Pak man schreiben, nun wollte ich fragen wie
ich die Daten mit Kordinaten auslesen kann, habe das erst mal so gemacht:

BlitzBasic: [AUSKLAPPEN]

Dim map(17,14)

Graphics 640,480

tileset = LoadAnimImage(\"map.bmp\",23,23,0,1)
MaskImage tileset,255,0,255

For x = 0 To 17
For y = 0 To 14
map(x,y)=0
Next
Next

SetBuffer BackBuffer()

Repeat
Cls

If KeyHit(1) Then Exit

For x = 0 To 17
For y = 0 To 14
DrawImage tileset,x*23-scrollx,y*23-scrolly,map(x,y)
Next
Next

Flip
Forever

End


nun möchte ich das ungefähr so machen:

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

die 1 sind die Mauer und die 2 wo man laufen kann.

nun bitte ich um eure hilfe, wie das genau geht, ich bin euch für jede hilfe sehr dankbar, danke schonmal Crying or Very sad

bruce185

skey-z

BeitragFr, Jul 29, 2005 22:50
Antworten mit Zitat
Benutzer-Profile anzeigen
1. Möglichkeit: Ein Datafeld, wo du die von dir beschriebene Spielebene, also das feld mit den 1sen und 2en speicherst und mir read ausliest.

2. Möglichkeit: Die Daten aus ner Datei lesen
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

bruce185

BeitragFr, Jul 29, 2005 22:55
Antworten mit Zitat
Benutzer-Profile anzeigen
danke für deine antwort, aber ich habe noch nie mit Data felder gearbeitet, gibt es vieleicht hilfreiche tutorials, wo das erklärt wird, ich bin dir sehr dankbar wenn du mir ein paar tips geben könntest, was ich schreiben muss, danke schonmal Wink

bruce185

DA

BeitragFr, Jul 29, 2005 22:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Moin,

http://www.robsite.de/tutorials.php?tut=blitzbasic
Eine 6-teilige Tutorialserie extra für RPGs. Müsste das gleiche behandeln.

Mfg
Deutscher Blitz Basic Chat

bruce185

BeitragFr, Jul 29, 2005 23:40
Antworten mit Zitat
Benutzer-Profile anzeigen
cool, vielen vielen dank, ich habe den rpgtut1 gedownloadet und das ist sehr gut beschrieben, und habe es auch begriffen wie es funktioniert mit Datafeld Very Happy

bruce185

bruce185

BeitragSa, Jul 30, 2005 1:08
Antworten mit Zitat
Benutzer-Profile anzeigen
ich brauch noch einmal eure hilfe, und zwar bei mir sind die Datafelder ganz durcheinander, wenn ich bei der erste Data Feld eine 3 eingebe dann wird es weiter rechts angezeigt

also so :

Data 3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

das bild mit der animations nr 3 wird beim ausführen des Programms ganz wo anders angezeigt, hier ist mal mein Quellcode:

BlitzBasic: [AUSKLAPPEN]

Graphics 640,480,16,2

tilemap = LoadAnimImage(\"map.bmp\",32,32,0,4)
MaskImage tilemap,255,0,255

Dim map(20,15)



Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0





For x = 0 To 20
For y = 0 To 15
Read map(x,y)
Next
Next

Repeat
SetBuffer BackBuffer()
Cls
If KeyDown(1) Then End


For x = 0 To 20
For y = 0 To 15
DrawBlock tilemap,x*32,y*32,map(x,y)
Next
Next

Flip
Forever


bei mir sind die Kordinaten des Datafelds ganz durcheinander,
ich bin euch sehr dankbar wenn ihr den Fehler findet, und den mir dann posten könnt, ich danke euch schonmal Crying or Very sad

bruce185

skey-z

BeitragSa, Jul 30, 2005 1:20
Antworten mit Zitat
Benutzer-Profile anzeigen
schau mal dir deine for/next schleife genauer an, wo du die Map einliest, gehe dabei jeden schritt mal im kopf durch, dann wirst du den Fehler finden.

als kleiner Tip: x und y funktionieren wie bei einem koordinatensystem

also es ist nur ein kleiner logikfehler, also beschäftige dich mal 5-10 minuten damit und wenn du dann noch nicht drauf gekommen bist verrate ich es dir*fg*
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

bruce185

BeitragSa, Jul 30, 2005 1:38
Antworten mit Zitat
Benutzer-Profile anzeigen
danke für dein tip, aber ich komme trotzdem nicht drauf wo der fehler ist, wenn ich die Zahl 20 und 15 vertausche, dann ist das bild umgedreht, das kann doch nicht sein, also ich komme nicht drauf wo der fehler ist, ich danke dir wenn du es mir veräts Laughing

bruce185

DA

BeitragSa, Jul 30, 2005 1:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Moin,

hmm. Nun übrleg doch mal. Wink
So schwer kannt das nicht sein. Smile
Nur so als kleiner Tipp.
Niemals Setbuffer in der Schleife verwenden!
Einmal am Anfang reicht vollkommen!

Mfg
Deutscher Blitz Basic Chat

bruce185

BeitragSa, Jul 30, 2005 1:47
Antworten mit Zitat
Benutzer-Profile anzeigen
danke für dein tip, habe es gerade gemacht, und bei die fleder habe ich nur einpaar dinge geändert y und x jetzt funktioniert es, so sieht das jetzt aus:

BlitzBasic: [AUSKLAPPEN]

Graphics 640,600,16,2
SetBuffer BackBuffer()

tilemap = LoadAnimImage(\"map.bmp\",32,32,0,4)
MaskImage tilemap,255,0,255

Dim map(20,15)



Data 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2




For y = 0 To 15
For x = 0 To 20
Read map(x,y)
Next
Next

Repeat
Cls
If KeyDown(1) Then End


For y = 0 To 15
For x = 0 To 20
DrawBlock tilemap,x*32,y*32,map(x,y)
Next
Next

Flip
Forever


und danke für die hilfen Very Happy

bruce185

skey-z

BeitragSa, Jul 30, 2005 9:25
Antworten mit Zitat
Benutzer-Profile anzeigen
na sach ich doch, 5 bis 10 minuten mal damit beschäftigen dan geht es schon^^
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group