problem mit "data"
Übersicht

![]() |
YankeeBetreff: problem mit "data" |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi,
ich hab mal wieder ein problem mit data. Im programm handelt es sich einfach um ein tileset (mit LoadAnimImage) und um die map, die mit "data" und so gespeichert wird. Nur habe ich mein altes Programm leider verloren/verschmissen/sonstihrgendwas und weis nun nicht mehr weiter. jedes animierte teil ist 30*30 groß. (fals es euch hilft die nummern: tileset nummer: 1 = gerade (oben-unten) 2 = gerade (links-rechts) 3 = Kreuzung(oben-links-unten-rechts) 4 = Kurve (links-unten) 5 = Kurve (oben-rechts) 6 = Kurve (links-oben) 7 = Kurve (rechts-unten) 8 = Gras -.- .....) hier der code: Code: [AUSKLAPPEN] Graphics 640,480,16,2 strasse = LoadAnimImage("ray_tileset.bmp",30,30,1,8) Restore strassenkarte For x = 0 To 20 For y = 0 To 15 Read ...... DrawImage strasse,x*29,y*29, (hier dann die Anim nummer) Next Next WaitKey() End .strassenkarte Data 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 Data 8,7,2,2,2,2,4,8,8,8,7,2,2,2,2,2,2,2,4,8,8 Data 8,1,8,8,8,8,1,8,8,8,1,8,8,8,8,8,8,8,1,8,8 Data 8,1,8,8,8,8,1,8,8,8,1,8,8,8,8,8,8,8,1,8,8 Data 8,5,2,2,2,2,3,1,1,1,6,8,8,8,8,8,8,8,1,8,8 Data 8,8,8,8,8,8,1,8,8,8,7,2,2,2,2,2,2,2,6,8,8 Data 8,8,8,8,8,8,1,8,8,8,1,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,1,8,8,8,1,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,1,8,8,7,6,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,1,8,8,1,8,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,1,8,8,1,8,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,5,2,2,6,8,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 Data 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 hoffe ihr könnt mir helfen. mfg Yankee |
||
Um so kleiner der code, um so schwieriger den Fehler zu finden:
Siehst du den Fehler? Klick mal hier drauf... hehehe |
![]() |
SpionAtom |
![]() Antworten mit Zitat ![]() |
---|---|---|
Denke du musst bei
Code: [AUSKLAPPEN] Read ...... DrawImage strasse,x*29,y*29, (hier dann die Anim nummer) folgendes machen: Code: [AUSKLAPPEN] Read num DrawImage strasse,x*29,y*29, num Und ich glaube du musst x und y der For-Schleifen vertauschen. |
||
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080 |
![]() |
kreisman |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich weis nicht so ganz wo dein Problem liegt? Ich denke mal ,dass da ein Fehler im Code is:
Code: [AUSKLAPPEN] DrawImage strasse,x*29,y*29, (hier dann die Anim nummer)
Hier fällt mir sofort auf,dass du die Teiles mit 29 multiplizierst.Müssten diese nicht mit 30 multipliziert werden,da deine Tiles 30 Pixel groß sind? |
||
![]() |
Yankee |
![]() Antworten mit Zitat ![]() |
---|---|---|
so äh jetzt kommt "not enought frames in bitmap"
Aber eigtnlich dürfte ich da bei LoadAnimImage alles richtig gemacht haben... Weis jmd das Problem? ich hab "strasse = LoadAnimImage("ray_tileset.bmp",30,30,1,8)" und bild ist 120*60 groß mfg Yankee (gelöst) |
||
Um so kleiner der code, um so schwieriger den Fehler zu finden:
Siehst du den Fehler? Klick mal hier drauf... hehehe |
![]() |
Yankee |
![]() Antworten mit Zitat ![]() |
---|---|---|
da es sich eigentlich fast um das selbe programm handelt, wollte ich mal fragen wie ich am besten einen map-editor mache.
Also wenn ich auf tile-1 klicke, dann ist tile-1 true und ich kann aussuchen, wohin ich den tile hintue. nur wollte ich jetzt mal fragen, wie ich des mache. Mit: Code: [AUSKLAPPEN] Read num num = ausgewaehlter_tile so ungefähr, oder habt ihr ne andere Idee mfg Yankee |
||
Um so kleiner der code, um so schwieriger den Fehler zu finden:
Siehst du den Fehler? Klick mal hier drauf... hehehe |
![]() |
ChaosCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi, dachte mal, ich meld mich auch mal zu Wort, Map-Editoren progg ich nämlich ganz gerne!
Also erstmal würde ich dir vorschlagen, ein Array zu erstellen. Noch ne kleine Variable dazu. Also Code: [AUSKLAPPEN] Dim map(20,15)
global aust Dann die Felder einlesen: Code: [AUSKLAPPEN] Restore strassenkarte
For y = 0 To 15 For x = 0 To 20 map[x,y]=Read Next Next In der Schleife dann erstmal alles darstellen. Code: [AUSKLAPPEN] while not keyhit(1)
For x = 0 to 20 For y = 0 to 15 drawimage strasse,x*30,y*30,map[x,y] Next Next flip cls wend So, dann aknnste durch einen Button oder durch eine auswahl ein Tile, das du auf die map haben möchtest auswählen, du lässt aust einfach dann zu dem gewünschten frame werden, also aust=3 wär jetzt ne kreuzung. Dafür brauchste jetzt denk ich ma keinen Code. Dann, bei Linksklick auf die Map wird dann das Feld beim Mauszeiger zu der Kreuzng, wie hier im Beispiel) Code: [AUSKLAPPEN] map[MouseX()/30,MouseY()/30)=aust
Und fertig ist der Mapeditor, natürlich nicht wirklich intelligent, da du die tiles wie kurve und so selbst auswählen musst und gucken musst ob das funktioniert, aba egal. PS: ACHTUNG! PSEUDOCODE! NICHT GETESTET! Hoffe ich konnte dir helfen! |
||
Projekte: Geolaria | aNemy
Webseite: chaosspace.de |
- Zuletzt bearbeitet von ChaosCoder am Mo, Jul 17, 2006 18:41, insgesamt 2-mal bearbeitet
![]() |
kreisman |
![]() Antworten mit Zitat ![]() |
---|---|---|
Probiers mal so
Code: [AUSKLAPPEN] Dim Map(20,15) Read.... ausgewaehltesTile%=5;Hier ist der Frame auf den das Tile geändert wird If MausHit(1) then x = MouseX() /30 ;koordinaten durch 30 teilen, da deine Tiles 30 Pixel groß sind y = MouseY()/30 Map(x,y) = ausgewaehltesTile% End If For x = 0 To 20 For y = 0 To 15 DrawImage strasse,x*30,y*30,map(x,y) Next Next |
||
- Zuletzt bearbeitet von kreisman am Mo, Jul 17, 2006 19:33, insgesamt einmal bearbeitet
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Yankee hat Folgendes geschrieben: so äh jetzt kommt "not enought frames in bitmap"
Aber eigtnlich dürfte ich da bei LoadAnimImage alles richtig gemacht haben... Weis jmd das Problem? ich hab "strasse = LoadAnimImage("ray_tileset.bmp",30,30,1,8)" und bild ist 120*60 groß mfg Yankee (gelöst) weil 8 frames * 30 pixel = 240 Pixel sind und nicht 120 ich glaub, man kann das nur nach rechts machen, kann aber sein, dass ich mich total irre |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
ChaosCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
StepTiger hat Folgendes geschrieben: weil 8 frames * 30 pixel = 240 Pixel sind und nicht 120
ich glaub, man kann das nur nach rechts machen, kann aber sein, dass ich mich total irre Öhm, rate mal warum er in seinem Post folgendes geschrieben hat: Zitat: (gelöst)
![]() ![]() ![]() |
||
Projekte: Geolaria | aNemy
Webseite: chaosspace.de |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
huch sorry
nicht gesehen ^^ |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group