Data
Übersicht

Gehe zu Seite Zurück 1, 2, 3, 4 Weiter
![]() |
Abenteurer036 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aus Tilemap macht man auch kein Data![]() |
||
New Project [4%]
Schinken Maker [100%] |
NtotheS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Die fehler sind leider alle immer noch da, ich denke mal weil die Data nicht richtig eingetstellt ist
"Image frame out of range" kommt immer wieder .( Code: [AUSKLAPPEN] Graphics 500,500,0
tileset = LoadAnimImage("tileset.bmp",200,200,0,4) char = LoadImage("char.bmp") px = 6 py = 6 move = 1 Dim map(20,20) Data 0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 0,0,0,0,1,1,1,3,3,1,1,1,1,1,4,4,1,1,1,1,1 Data 0,0,0,0,1,1,1,3,3,1,1,1,1,1,4,4,1,1,1,1,1 Data 0,0,0,0,1,1,1,1,1,1,1,1,1,1,4,4,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,4,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,2,2,1,1,1,1,3,3,3,1,4,4,1,1 Data 1,1,1,1,0,0,1,1,1,1,1,1,1,3,3,3,1,4,4,1,1 Data 1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,4,4,1,1 Data 1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,4,4,1,1 Data 1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 For y = 0 To 20 For x = 0 To 20 Read map(x,y) Next Next Repeat SetBuffer BackBuffer() Cls If KeyDown(1) Then End For y = 0 To 20 For x = 0 To 20 DrawImage tileset,x*100,y*100,map(x,y) Next Next If KeyDown(208) Then If map(px,py+1) < 2 Then py = py + 1 move = 1 End If End If If KeyDown(200) Then If map(px,py-1) < 2 Then py = py - 1 move = 1 End If End If If KeyDown(203) Then If map(px-1,py) < 2 Then px = px - 1 move = 1 End If End If If KeyDown(205) Then If map(px+1,py) < 2 Then px = px + 1 move = 1 End If End If If move = 1 Then x = px * 32: y = py * 32:DrawImage char,x,y Flip Forever Und so sieht es leider aus : http://img5.imagebanana.com/vi.../error.jpg Die map selber ist aber die : http://img5.imagebanana.com/vi...et.bmp.png |
||
![]() |
Abenteurer036 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du hast den selben Fehler wie vorhin gemacht.
Bei LoadAnimImage ![]() Also kommt nicht LoadAnimImage ![]() sondern LoadAnimImage ![]() Ich hoffe es hilft. ![]() EDIT: Ich habe noch einen Fehler gefunden. Bei Code: [AUSKLAPPEN] DrawImage tileset,x*100,y*100,map(x,y)
darf auch nicht 100 stehn außer deine Tiles sind 100 Pixel groß was ich bezweifle. Da kommt einfach bei x die breite eines tiles und bei y die höhe. |
||
New Project [4%]
Schinken Maker [100%] |
NtotheS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] DrawImage tileset,x*32,y*32,map(x,y)
Darauf weißt er mich hin, ich hab nun ne neue tilemap erstellt und WIRKLICH mit 32....doch das geht auch nicht ![]() |
||
![]() |
Abenteurer036 |
![]() Antworten mit Zitat ![]() |
---|---|---|
So das müsste gehn:
Code: [AUSKLAPPEN] Graphics 672,672,2
tileset = LoadAnimImage("tileset.bmp",32,32,0,4) char = LoadImage("char.bmp") px = 6 py = 6 move = 1 Dim map(20,20) Data 0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 0,0,0,0,1,1,1,3,3,1,1,1,1,1,4,4,1,1,1,1,1 Data 0,0,0,0,1,1,1,3,3,1,1,1,1,1,4,4,1,1,1,1,1 Data 0,0,0,0,1,1,1,1,1,1,1,1,1,1,4,4,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,4,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,2,2,1,1,1,1,3,3,3,1,4,4,1,1 Data 1,1,1,1,0,0,1,1,1,1,1,1,1,3,3,3,1,4,4,1,1 Data 1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,4,4,1,1 Data 1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,4,4,1,1 Data 1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 For y = 0 To 20 For x = 0 To 20 Read map(x,y) Next Next Repeat SetBuffer BackBuffer() Cls If KeyDown(1) Then End For y = 0 To 20 For x = 0 To 20 DrawImage tileset,x*32,y*32,map(x,y) Next Next If KeyDown(208) Then If map(px,py+1) < 2 Then py = py + 1 move = 1 End If End If If KeyDown(200) Then If map(px,py-1) < 2 Then py = py - 1 move = 1 End If End If If KeyDown(203) Then If map(px-1,py) < 2 Then px = px - 1 move = 1 End If End If If KeyDown(205) Then If map(px+1,py) < 2 Then px = px + 1 move = 1 End If End If If move = 1 Then x = px * 32: y = py * 32:DrawImage char,x,y Flip Forever |
||
New Project [4%]
Schinken Maker [100%] |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
1.) Rück den Code ein
2.) Graphics 'benötigt' noch ein mode 3.) SetBuffer BackBuffer() gehört nicht in die Schleife 4.) LoadAnimImage mit ,200,200,0,4) benötigt ein Bild, dass mindestens 400x400 groß ist, mit 4 Tiles der Abmessungen von 200x200 5.) Mach dir das Leben nicht unnötig schwer, und verzichte auf deine move-Variable Code: [AUSKLAPPEN] If KeyDown(203) Then If px>0 Then px=px-1
If KeyDown(205) Then If px<20 Then px=px+1 If KeyDown(200) Then If py>0 Then py=py-1 If KeyDown(208) Then If py<20 Then py=py+1 DrawImage char,x*32,y*32 |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
NtotheS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Leider immer noch genau so wie davor. Ich denke ich werde den Code von grund auf überarbeiten und gleich noch Dim/Data lernen ![]() |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vergiss gleich Data und mach dir gleich ein eigenen Tilemap-Editor. Ist mit ein paar Zeilen Code schnell geschrieben.
Edit1: Und gewöhn dir lieber gleich als später an, den Code einzurücken. ![]() |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
In deinem Data - Feld taucht die Zahl 4 auf die den Fehler auslöst: Du hast nur 4 Frames: 0,1,2,3 ... | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Abenteurer036 |
![]() Antworten mit Zitat ![]() |
---|---|---|
So ich hab dir mal was funktionierendes zusammengeschreiben. Schaus dir an und lern daraus. Das Tileset.bmp ist auf deins angepasst.
Hinweis: 0 ist auch eine Zahl wenn du im Data ![]() Code: [AUSKLAPPEN] Graphics 600,400,24,2
SetBuffer BackBuffer() tileset=LoadAnimImage("tileset.bmp",32,32,0,4) Dim map(9,9) Data 1,1,1,1,1,1,1,1,1,1 Data 1,0,0,0,0,0,0,0,0,1 Data 1,0,0,0,0,0,0,0,0,1 Data 1,0,0,3,3,3,3,0,0,1 Data 1,0,0,0,0,0,0,0,0,1 Data 1,0,0,0,0,0,0,0,0,1 Data 1,0,0,2,2,0,0,0,0,1 Data 1,0,0,2,2,0,0,0,0,1 Data 1,0,0,0,0,0,0,0,0,1 Data 1,1,1,1,1,1,1,1,1,1 For y = 0 To 9 For x = 0 To 9 Read map(x,y) Next Next Repeat Cls For y = 0 To 9 For x = 0 To 9 DrawBlock tileset,x*32,y*32,map(x,y) Next Next Flip Forever @Xeres: Ganz knapp schneller^^ |
||
New Project [4%]
Schinken Maker [100%] |
NtotheS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wie hast du dann dieses Data ausrechen können. Das ist ja mein einziges großes Problem ![]() ![]() |
||
![]() |
Abenteurer036 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Data ausrechnen? Du meinst wie das mit der 0,1,2,3 ist? Ganz einfach das erste Tile ist 0, das zweite 1, das dritte ist 2,usw... | ||
New Project [4%]
Schinken Maker [100%] |
NtotheS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
OMG, dieses data ist ja echt unglaublich einfach wenn man es erstmal verstanden hat. Ich bin auch dieser typ von mensch der erstmal ne grafik dazu sehen muss ![]() Abenteurer036, du hast mir nun echt geholfen...nun bin ich in der lage die tilemap richtig anzuzeigen ![]() Das geheimniss von Dim werde ich heute auch noch kancken, da ich eine gewisse vorstellung hab was das sein kann ![]() |
||
![]() |
Abenteurer036 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit Dim![]() ![]() ![]() ![]() ![]() ![]() |
||
New Project [4%]
Schinken Maker [100%] |
NtotheS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
So nach einer fast geschlagenen 1 Stunde ist das rausgekommen:
http://img5.imagebanana.com/view/4rtc63k/Sun.jpg Also ich muss praktisch jeden zahl einmal eintippen und schauen wo es dann auf der map kommt und sie immer dem ensptrechend verschieben. Ist echt nicht witzig ![]() |
||
![]() |
Abenteurer036 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du dir einen Mapeditor programmierst nicht ![]() @Picture: Sieht echt klasse aus muss ich schon sagen. Für 3 Tage coden TOP! |
||
New Project [4%]
Schinken Maker [100%] |
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich könnte dir folgende Idee anbieten. Kopiere die DATA-Zeilen in ein zweites BB-Code-Fenster. Speichere das Ganze als MAP.BB in das gleiche Verzeichnis wie das Spiel.
Füge nach der Repeat-Zeile folgende Anweisung ein: BlitzBasic: [AUSKLAPPEN] LiesFeldNeuEin() Und ganz am Ende deines Spiel-Codes folgende Funktion: BlitzBasic: [AUSKLAPPEN] Function LiesFeldNeuEin() Jetzt kannst Du während das Spiel läuft im MAP-Fenster den Code ändern, speichern und wenn Du jetzt in das laufende Spiel klickst, wird das Spielfeld aktualisiert. Dabei reagiert die Lesefunktion nicht auf Leerzeichen, d.h. Du kannst im MAP.BB die Zahlen wieder ordentlich untereinander schreiben, auch wenn du zweistellige Nummern brauchst: vorher: Code: [AUSKLAPPEN] Data 11,0,13,13,13,1,1,1,1,1,8,1,1,1,
Data 0,0,0,0,1,1,1,1,1,1,8,1,1,1,1,1,1 nachher: Code: [AUSKLAPPEN] Data 11, 0,13,13,13, 1, 1, 1, 1, 1, 8, 1, 1, 1, 1, 1 Data 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 8, 1, 1, 1, 1, 1 Noch'n Vorteil: Die Funktion verträgt es auch, wenn Du die Nuller aus der Map rausläßt. Dadurch sieht es beim Erstellen viel übersichtlicher aus: Code: [AUSKLAPPEN] Data 0,0,0,0, , , , , , , , , , ,4,4, , , , ,1
Data 1, , , , , , , , , , , , , ,4,4, , , , ,1 Data 1, , , , , , , , , , , , , , , , , , , ,1 Data 1, , , , , , , , , , , , , , , , , , , ,1 Data 1, , , , , , ,2,2, , , , , , , , , , , ,1 Data 1, , , , , , ,2,2, , , , ,3,3,3, ,4,4, ,1 Data 1, , , ,0,0, , , , , , , ,3,3,3, ,4,4, ,1 Data 1, , , ,0,0, , , , , , , , , , , ,4,4, ,1 Data 1, , , ,0,0, , , , , , , , , , , ,4,4, ,1 Data 1, , , ,0,0, , , , , , , , , , , , , , ,1 Data 1, , , , , , , , , , , , , , , , , , , ,1 Data 1, , , , , , , , , ,2,2, , , , , , , , ,1 Data 1, , , , , , , , , , , , , , , , , , , ,1 Data 1, , ,2,2, , , , , , , , , , , , , , , ,1 ... |
||
- Zuletzt bearbeitet von Midimaster am Mi, Jan 13, 2010 0:37, insgesamt einmal bearbeitet
NtotheS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] LiesFeldNeu()
Ich bin mir zwar nicht sicher aber da fehlt noch das wort "Ein" dahinter oder? Weil sonst findet er es nicht. Und selbst dann funktioniert es nicht ![]() Edit: Teil = Trim(Left(Zeile,da+1)) hab ich das - durch + ersetzt und nun gehts DANKE ![]() |
||
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
danke, da fehlt das "ein"! Hab's korrigiert!
Was Du da schreibst zu dem "+" und dem Komma kann aber nicht stimmen, es muss "-" sein. außerdem ist mir gerade ein Fehler auf deinem Bild aufgefallen. Deine Data-Zeilen sind 10 Elemente lang, und der Code daneben liest immer 11 ein: For i=0 to 10. Deshalb hast Du so große Probleme die MAP zu erstellen ("...und schauen wo es dann auf der map kommt und sie immer dem ensptrechend verschieben. Ist echt nicht witzig... ") |
||
NtotheS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wenn es + steht, dann kommt der error "parameter must be positive"
![]() |
||
Gehe zu Seite Zurück 1, 2, 3, 4 Weiter
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group