BB map nicht benutzer freundlich
Übersicht

SchnuffBetreff: BB map nicht benutzer freundlich |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo ich habe gerade mal begonnen mein erstes anspruchfolles
Spiel zu programmieren ![]() es so bedienfreundlich wie möglich zu machen ein (für mich) unlösbarer (vorallem ein unauffindbarer) Fehler unterlaufen könntet ihr mir bitte helfen, hir der Code Code: [AUSKLAPPEN] i = 0 Aha = OpenFile("Level.txt") While Not Eof(Aha) MaxZ = Len(ReadLine(Aha)) i = i + 1 Wend CloseFile Aha MaxS = i Dim Level$(MaxS,MaxZ) D = ReadFile("Level.txt") For Z = 0 To MaxS - 1 A$ = ReadLine(D) For S = 0 To MaxZ - 1 Level$(Z,S) = Upper$(Mid$(A$,S+1,1)) Next Next CloseFile D ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Level Malen Graphics 640,480,16 HG = LoadImage(".\Level.bmp") Map1 = CreateImage(MaxZ*32,MaxS*32) Play = CreateImage(32,32) SetBuffer ImageBuffer(Play) DrawImageRect HG,0,0, 64,0,32,32 SetBuffer ImageBuffer(Map1) For Z = 0 To MaxS - 1 For S = 0 To MaxZ - 1 Select Level$(Z,S) Case "W" ; Wand(Wall) DrawImageRect HG,S*32,Z*32,0*32,0,32,32 Case " " DrawImageRect HG,S*32,Z*32,1*32,0,32,32 Case "S" ; Spieler SpielerS = S SpielerZ = Z DrawImageRect HG,S*32,Z*32,1*32,0,32,32 Case "G" ; Gras DrawImageRect HG,S*32,Z*32,3*32,0,32,32 Case "O" ; Wasser(W war nicht mehr frei!) Color 0,0,127 Rect S*32,Z*32,32,32 Case "" Color 0,0,127 Rect S*32,Z*32,32,32 Default Color 0,0,127 Rect S*32,Z*32,32,32 End Select Next Next FreeImage HG SetBuffer FrontBuffer() Repeat DrawImage Map1,-(ScrolX*640),-(ScrolY*480) ;If ScrolX = 0 Then DrawImage Map1,ScrolX*460,0 ;0,0 ;If ScrolX = 1 Then DrawImage Map1,-640,0 DrawImage Play,SpielerS*32,SpielerZ*32 If KeyDown(203) And (Level$((SpielerZ+(ScrolY*15)), (SpielerS+(ScrolX*20))-1)) <> "W" And (Level$((SpielerZ+(ScrolY*15)), (SpielerS+(ScrolX*20))-1)) <> "O" Then SpielerS = SpielerS-1 ElseIf KeyDown(205) And (Level$((SpielerZ+(ScrolY*15)), (SpielerS+(ScrolX*20))+1)) <> "W" And (Level$((SpielerZ+(ScrolY*15)), (SpielerS+(ScrolX*20))+1)) <> "O" Then SpielerS = SpielerS+1 ElseIf KeyDown(200) And (Level$((SpielerZ+(ScrolY*15))-1, (SpielerS+(ScrolX*20)))) <> "W" And (Level$((SpielerZ+(ScrolY*15))-1, (SpielerS+(ScrolX*20)))) <> "O" Then SpielerZ = SpielerZ-1 ElseIf KeyDown(208) And (Level$((SpielerZ+(ScrolY*15))+1, (SpielerS+(ScrolX*20)))) <> "W" And (Level$((SpielerZ+(ScrolY*15))+1, (SpielerS+(ScrolX*20)))) <> "O" Then SpielerZ = SpielerZ+1 EndIf If SpielerS = 20 Then ScrolX = ScrolX + 1 : SpielerS = 0 If SpielerS = -1 Then ScrolX = ScrolX - 1 : SpielerS = 19 If SpielerZ = 15 Then ScrolY = ScrolY + 1 : SpielerZ = 0 If SpielerZ = -1 Then ScrolY = ScrolY - 1 : SpielerZ = 14 Delay 50 Flip Until KeyHit(1) End wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww wSggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggw wgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggw wgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggw woooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooggw wggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggoggw wggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggoggw wggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggoggw wggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggoggw wggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggoggw wggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggoggw woooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo ooggw woooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo ggw wooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooow das problem, wenn man(oder Frau) eine Zeile Zuwenig Schreibt Passiert: Links: wird das bild aus einer anderen Stellung angezeigt. Unten: bleibt das bild Schwartz,ich möchte es abber Dunkel Blau(0,0,127) |
||
Aldi |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich finde man kann aus deinem Quelltext nicht direkt schließen, was das für ein Programm ist und was es macht.
Sag uns doch mal den Sinn des Programms ![]() |
||
goto jollyroger.cabanova.de |
Schnuff |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich wusste leider nicht, wie man eine Zip-datei hinzufügen kann ![]() der sinn ist es soll ein spiel werden indem 32*32 Pixel Große grafiken(tiles) gemalt werden. Ein "O" entspricht Wasser ein "W" Wand , ein "G" Gras und ein " " entspricht weg dieser buchstagen wirwar soll das Level darstellen! (könntet ihr bitte auch sagen wie man in Fragen bzw. Antworten zip dateien Einfügen kann ![]() |
||
David |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
Is' auch irgendwie klar das dann Darstellungsfehler auftreten. Deine Map muss eben die vorgegebenen Dimensionen (bei dir MaxS und MaxZ) haben... Viel sinniger wäre es aber die Map nicht so zu speichern, sondern ein eigenes Format zu erfinden und die Daten dann im Binärformat (nicht Text) zu hinterlegen. Das hätte einige Vorteile: ![]() ![]() ![]() ![]() ![]() ![]() ![]() Ich würd an deiner Stelle mal darüber nachdenken! ![]() grüße |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group