tilemap frage
Übersicht

snörklBetreff: tilemap frage |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also, ich hab das mit der tilemap jetzt soweit hingekriegt xD
erstmal der code,gleich mein problem: include-code Code: [AUSKLAPPEN] ; ---------- Generated by Tile Studio ----------
Const LAYER_Tiles1_Level1 = (0 Shl 8) + 0 ; get map width (tiles) Function MapWidth (map) Select map Case LAYER_Tiles1_Level1 Return 20 End Select End Function ; get map height (tiles) Function MapHeight (map) Select map Case LAYER_Tiles1_Level1 Return 15 End Select End Function ; get tile width (pixels) Function TileWidth (map) Select map Case LAYER_Tiles1_Level1 Return 32 End Select End Function ; get tile height (pixels) Function TileHeight (map) Select map Case LAYER_Tiles1_Level1 Return 32 End Select End Function Global Tiles1Bitmap = LoadAnimImage ("graphics\Tiles1.bmp", 32, 32, 0, 8) MaskImage Tiles1Bitmap, 255, 0, 255 Dim Tiles1Level1Map (15, 20) Restore Tiles1Level1MapData For y = 0 To 15 - 1 For x = 0 To 20 - 1 Read Tiles1Level1Map (y, x) Next Next .Tiles1Level1MapData Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 1, 2, 2, 2, 3, 2, 2, 2, 3, 2, 4, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 5, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 6, 7, 0, 1, 8, 0, 0, 0, 0, 0, 1, 2, 2 Data 2, 4 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 1, 2, 2, 2, 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 4, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 1, 2, 2, 2, 2, 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 4 Data 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0 Dim Tiles1Level1BoundMap (15, 20) Restore Tiles1Level1BoundMapData For y = 0 To 15 - 1 For x = 0 To 20 - 1 Read Tiles1Level1BoundMap (y, x) Next Next ; tile size: w = 32, h = 32 .Tiles1Level1BoundMapData Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 7, 5, 5, 5, 0, 5, 5, 5, 0, 5, 13, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 10, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 6, 13, 0, 7, 12, 0, 0, 0, 0, 0, 7, 5, 5, 5, 13 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 7, 5, 5, 5, 5, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 5, 5, 5, 5, 13, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 7, 5, 5, 5, 5, 5, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 5, 5, 5, 13, 0, 0 Data 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 Dim Tiles1Sequences$ (0 + 1) ; Tiles1Level1Layer ; movement (x, y) = (x = x, y = y) ; get tile number at position (x,y) Function GetTile (map, x, y) Select map Case LAYER_Tiles1_Level1 Return Tiles1Level1Map (y, x) - 1 End Select End Function ; get bounds/map code at position (x,y) Function GetBounds (map, x, y) Select map Case LAYER_Tiles1_Level1 Return Tiles1Level1BoundMap (y, x) End Select End Function Function DrawTile (map, x, y, tile) Select map Case LAYER_Tiles1_Level1 DrawImage Tiles1Bitmap, x, y, tile End Select End Function ; ---------- end of generated file ---------- und dann noch der code mit dem ichs anzeigen will: Code: [AUSKLAPPEN] Graphics 640,480
Include "Strichmannlevel1_include.bb" m_width= MapWidth(LAYER_Tiles1_Level1) m_height= MapHeight(LAYER_Tiles1_Level1) T_width= TileWidth(LAYER_Tiles1_Level1) T_Height= TileHeight(Layer_Tiles1_Level1) Repeat drawmap() Until KeyHit(1) End Function drawmap() For y = 0 To m_height For x = 0 To m_width drawtile(LAYER_Tiles1_Level1,(x*T_width),(y*T_height),Tiles1Level1Map (y, x)) Next Next End Function Nun mein problem. Wenn ich das Programm ausführe, wird mein tile nur an den koordinaten 0,0 und nur ein einziges angezeigt. Ich möchte aber natürlich mehrere anzeigen xD. Vielleicht kann mir jemand helfen, indem er mein problem aufklärt mfg Snörkl |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
mach deine Vars Global oder übergib sie an die Funktion | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
an die funktion übergeben? | ||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
nennt sich 'Parameter'.
function TuDies(das) print das end function das ist der Parameter von TuDies() und wird an sie übergeben: TuDies(7) |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
jetzt zeigt er leider an, image frame out of range ![]() kannst Du oder jemand anderes mir da noch weiterhelfen? mfg Snörkl |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das liegt daran, dass du ein Bild mit 8 Frames lädst, diese gehen von 0-7
Deine Mapdaten haben jedoch ein 8, was dann natürlich dazu führt, dass er auf ein nicht existierendes Frame des Bildes zugreift. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
sorry wegen doppelpost, kann man posts irgendwie löschen, würd ich nämlich dann machen | ||
- Zuletzt bearbeitet von snörkl am Sa, Nov 25, 2006 21:35, insgesamt einmal bearbeitet
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok- wenn ich nun Tile1 als hintergrund haben möchte, also in tilestudio auf die freien flächen als hintergrund zeichne, so wird später im programm tile2 als hintergrund gezeichnet. Das ist immer so, egal was ich mache ![]() |
||
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
wollte jetzt noch mal darauf hinweisen, dass ich ne neue frage habe^^ | ||
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
Snörkel warum entschuldigst Du Dich für den Doppelpost, wenn ein Trippelpost folgt. Man kann die Posts editieren. Und ThreadPushing ist sehr ungern gesehn, wenn Dir jemand helfen kann/mag wird er das auch tun.
Ich kann Dir eigentlich nur raten, nur solchen Code zu verwenden den Du verstehst. Ich glaube Du bist einfach noch nicht reif für Dein Vorhaben. |
||
Play Satyr! |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
das liegt aber nicht an mir, sondern daran, dass tilestudio den code so generiert, dass er den ersten frame als hintergrund nimmt . und ich habe doch grade gefragt, wie ich threads löschen kann | ||
![]() |
d-bug |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du kannst Threads nicht löschen! Aber du kannst dir mal diesen, fiesen Button merken : (![]() Beim nächsten Doppel- oder Tripplepost werde ich deinen Thread schließen. cheers |
||
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok, danke^^ -- jetzt mal zurück zu meinem problem... liegt das denn an tilestudio oder an mir? | ||
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
JAAA; GEWONNEN!!! TILEMAP VS ICH 0:1 XD
bin so glüücklich endlich hab ichs geschafft ![]() und zwar musst ich meinen tiles nur eine transparenz (255,255,255 rgb) geben, dann gehts^^. Hab zwar keine ahnung warum, aber es klappt! edit^^: falsches thema xD |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group