typesfrage
Übersicht

snörklBetreff: typesfrage |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Joa, ich bin gerade dabei an einem kleinen Editor zu programmieren und möchte oben in einer Leiste Tiles anzeigen, die ich dann nur anzuklicken brauche um sie auszuwählen und dann setzen zu können. Ich hänge momentan an einem Punkt, denn ich möchte, dass von jedem Tileset alle Tiles nebeneinander dargestellt werden, und wenn ich ein anderes dazulade die neuen neben den alten (also 4 tiles in einem Tileset, nebeneinander dargestellt + 4 tiles in einem anderen Tileset, neben den 1. dargestellt). HIer liegt dann auch mein Problem, ich denke es ist nicht schwer zu lösen aber ich beiße mich das fest und mir fällt sicher irgendwas offensichtliches nicht auf ![]() Zuerst, der Type ansich: Code: [AUSKLAPPEN] Type tileset
Field nameTiles$ Field numberTiles Field widthTiles Field heightTiles Field imageTiles Field xTiles = 100 Field frmTiles End Type Global image.tileset Dann, das einlesen der Daten für das Tileset und das Erstellen danach: Code: [AUSKLAPPEN] Case 3
Cls Color 0,0,0 image.tileset = New tileset Locate SCREEN_WIDTH/2,0 Print "Geben Sie bitte den Namen des Tilesets ein: " Locate SCREEN_WIDTH/2,15 image\nameTiles = Input("Name: ") Locate SCREEN_WIDTH/2,29 image\numberTiles = Input("Jetzt die Anzahl der Tiles: ") Locate SCREEN_WIDTH/2,44 Print "Die horizontale Länge eines Tiles: " Locate SCREEN_WIDTH/2,58 image\widthTiles = Input("Horizontale Länge (in Pixel): ") Locate SCREEN_WIDTH/2,73 Print "Und zuletzt die vertikale Länge eines Tiles: " Locate SCREEN_WIDTH/2,88 image\heightTiles = Input("Vertikale Länge (in Pixel): ") image\imageTiles = LoadAnimImage(image\nameTiles,image\widthTiles,image\heightTiles,0,image\numberTiles) image\frmTiles = 0 image\xTiles = image\xTiles + (image\widthTiles*image\numberTiles);hier sollte er pro Set eins weiterrücken und schließlich das Anzeigen der Bilder: Code: [AUSKLAPPEN] If tilesthere = 1
For image = Each tileset Repeat DrawImage image\imageTiles,image\xTiles,yTiles,image\frmTiles If image\frmTiles < image\numberTiles Then image\frmTiles=image\frmTiles+1 Else image\frmTiles = 0 quitloop = 1 EndIf image\xTiles=image\xTiles+image\widthTiles Until quitloop = 1 quitloop = 0 image\xTiles = image\xTiles - (image\widthTiles*(image\numberTiles+1)) ;Das auch genauer angucken Next EndIf Ich hoffe mein Problem ist einigermaßen zu verstehen, mfg, snoerkl |
||
![]() |
Mr.HydeNewsposter |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hier mal eine leicht angepasste Version.
Code: [AUSKLAPPEN] Case 3 Cls Color 0,0,0 ;neuneuneuneu maxWidth = 0 For image = Each tileset maxWidth = maxWidth + (image\widthTiles*image\numberTiles) Next ;Ende neuneuneuneu image.tileset = New tileset Locate SCREEN_WIDTH/2,0 Print "Geben Sie bitte den Namen des Tilesets ein: " Locate SCREEN_WIDTH/2,15 image\nameTiles = Input("Name: ") Locate SCREEN_WIDTH/2,29 image\numberTiles = Input("Jetzt die Anzahl der Tiles: ") Locate SCREEN_WIDTH/2,44 Print "Die horizontale Länge eines Tiles: " Locate SCREEN_WIDTH/2,58 image\widthTiles = Input("Horizontale Länge (in Pixel): ") Locate SCREEN_WIDTH/2,73 Print "Und zuletzt die vertikale Länge eines Tiles: " Locate SCREEN_WIDTH/2,88 image\heightTiles = Input("Vertikale Länge (in Pixel): ") image\imageTiles = LoadAnimImage(image\nameTiles,image\widthTiles,image\heightTiles,0,image\numberTiles) image\frmTiles = 0 ;changedchangedchanged image\xTiles = maxWidth ;hier sollte er pro Set eins weiterrücken ;end changedchangedchanged ;changedchangedchanged If tilesthere = 1 For image = Each tileset Repeat DrawImage image\imageTiles, image\xTiles + (image\frmTiles * image\widthTiles), yTiles,image\frmTiles If image\frmTiles < image\numberTiles Then image\frmTiles = image\frmTiles + 1 Else Exit EndIf Forever image\frmTiles = 0 Next EndIf ;End changedchangedchanged |
||
BBP News RSS | Chaos Interactive | Watanien 2 Screens, Infos und Download | Watanien 2 Worklog | PuzzleMasters
http://abgeordnetenwatch.de - http://www.regierungs-beratung.de - Der Regierung auf die Finger schauen |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
So, ich bedank mich nochmal hier bei Dir, dass ist echt ne super Lösung und ich habe sie sogar verstanden!
Vielen Dank ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group