Spieler wird net übermalen
Übersicht

girglBetreff: Spieler wird net übermalen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
servus,ich hab ne spielfigur und ne map mit 3 verschiedenen layern,einen für boden,einen für kollision und einen unter dem man mit seiner spielfigur durchlaufen kann.Die spielfigur wird direkt nach dem untersten layer gezeichnet aber komischerweise wird die spielfigur net übermalen wenn ich auf einem feld bin,das sauf nem höheren layer gezeichnet wird,sondern die spielfigur wird immer drübergezeichnet,egal welcher layer.
Hier is der Code für des Zeichnen der map und figur Code: [AUSKLAPPEN] Function DrawMap()
For i=0 To maph-1 For j=0 To mapb-1 DrawImage tset,j*16,i*16,BodenLayer(j,i) DrawImage soldat,player\x,player\y,player\cframe If KoliLayer(j,i)<>436 Then DrawImage tset,j*16,i*16,KoliLayer(j,i) If ObenLayer(j,i)<>436 Then DrawImage tset,j*16,i*16,ObenLayer(j,i) Next Next End Function |
||
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du zeichnest drum den Spieler in jedem Schleifendurchgang. Am einfachsten ist es, wenn du zweimal solche Schleifen machst, in der ersten nur den bodenlayer, danach den Soldaten, und dann wieder die Schleifen für den Koli- und Obenlayer
MfG |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke holzchopf,klappt
aber wo lag jetz der fehler?Darf ich den spieler net in der schleife zeichnen in der ich die layer zeichne oder zeichnet ma prinzipiel jeden layer in ner extra funktion oder schleife? |
||
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ne der Fehler liegt darin, dass du ja alle Tiles von obenlinks nach untenrechts mit diesen Schleifen malst, so wie du es oben hattest, hast du zudem den Spieler bei jedem Durchgang wieder gezeichnet (also (BREITExHOEHE) mal ![]() Nehmen wir also mal an, der Spieler steht genau auf Tile X4, Y3 und du zeichnest eine Map von X 8 Tiles und Y 8 Tiles: In dem Moment, wo die Schleifendurchgänge auf Tile X4 und Y3 treffen, wird korrekterweise das Tile über dem Spieler gezeichnet, danach geht die Tilezeichnung allerdings bei X5, Y3 weiter. Der Fehler ist nun der, dass auch bei diesem Durchgang der Spieler wieder gezeichnet wird, und zwar wieder an Position X4, Y3, wo er das eben gemalte Tile übermalt, das passiert dann auch bei den restlichen Tiles von den total 8x8. Daraus lässt sich auch der Schluss ziehen: Steht bei der Variante oben der Spieler genau in der unteren rechten Ecke, wird das Tile von keinem Spieler mehr überschrieben (da ja kein weiterer Schleifendurchgang folgt). Ich hoffe das ist verständlich und ausführlich genug geschrieben ![]() |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ajo war ausführlich genug.
thx |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group