Dim map problem
Übersicht

KaddyBetreff: Dim map problem |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Huhu,
Ich habe ein Problem und zwar soll eine Dim map von 2 dimensionen (19,14) mit einer zahl von 1 - 45 gefüttert werden soweit es möglich ist. dazu habe ich folgenden Code aufgebaut BlitzBasic: [AUSKLAPPEN] For zaehlert = 0 To 44 Jedoch ist egal im welchen index der wert 0 . Habe ich hier irgendetwas falsch gemacht ? würde mich auf eure hilfe, egal welcher form , freuen MFG Kaddy |
||
Bin Aktuell auf der Suche nach einen Programmierer Team, ob Hobby Team oder Firma ist egal. Einfach eine PM an mich schreiben.
Bezahlung verlange ich NATÜRLICH keine ![]() Es gibt 10 arten von Menschen, die einen verstehen das Binärsystem , die anderen nicht ![]() ![]() |
![]() |
FireballFlame |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich nehme mal an, weil du "tilex" und "tiley" als Zähler nimmst, und dann aber "tilemap(tilexe,tileye)" schreibst. ![]() Ich würde dir empfehlen, eine IDE wie IDEal zu benutzen und alle Variablen vor der Benutzung mit Local ![]() Du solltest deinen Code übrigens ganz dringend einrücken. ![]() |
||
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit |
- Zuletzt bearbeitet von FireballFlame am Fr, Sep 24, 2010 3:05, insgesamt einmal bearbeitet
![]() |
Lastmayday |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
beim Programmieren ist es extrem wichtig die richtigen Variablennamen zu verwenden. Auch muss man diese unbedingt richtig initialisieren, da es sonst zu unerwünschtem verhalten des Programms kommt. Überprüfe deshalb nochmal akribisch deine Variablennamen. BlitzBasic: [AUSKLAPPEN] Dim tilemap%(20,15) Lastmayday |
||
Kaddy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
die Variabeln namen sind richtig nur ich habe sie hier falsch abetippt. | ||
Bin Aktuell auf der Suche nach einen Programmierer Team, ob Hobby Team oder Firma ist egal. Einfach eine PM an mich schreiben.
Bezahlung verlange ich NATÜRLICH keine ![]() Es gibt 10 arten von Menschen, die einen verstehen das Binärsystem , die anderen nicht ![]() ![]() |
![]() |
Ana |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich würde den zähler nicht mit einer For schleife machen, ansonsten wiederholst du den Schritt das Array zu füllen ja 44 mal, zwar jedes mal mit einer anderen Zahl, aber auch jedesmal das komplette array. Wenn du einfach nur die Zahlenfolge haben willst kannst du z.B so machen:
BlitzBasic: [AUSKLAPPEN] Dim tilemap (19,14) |
||
Don't only practice your art,
but force your way into its secrets, for it and knowledge can raise human to divine |
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Für sowas ist (m)ein TileMapEditor gut (Showcase) ![]() Ich würde das noch andersser ( ![]() Code: [AUSKLAPPEN] For x = 0 To 14
For y = 0 To 19 map(x, y) = ReadByte(tilemap) DrawBlock tileset, x * 32, y * 32, map(x, y) Next Next WaitKey() End "tilemap" = Erstellte Datei mit den entsprechenden Werten "tileset" = Bild mit entsprechenden Tiles Hoffe ich konnte helfen, mfG, SirMO |
||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
Kaddy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
SirMO hat Folgendes geschrieben: Für sowas ist (m)ein TileMapEditor gut (Showcase)
![]() Ich würde das noch andersser ( ![]() Code: [AUSKLAPPEN] For x = 0 To 14
For y = 0 To 19 map(x, y) = ReadByte(tilemap) DrawBlock tileset, x * 32, y * 32, map(x, y) Next Next WaitKey() End "tilemap" = Erstellte Datei mit den entsprechenden Werten "tileset" = Bild mit entsprechenden Tiles Hoffe ich konnte helfen, mfG, SirMO Nein dein Tileeditor kann mein problem defenitiev nicht lösen, da er nicht dazu gedacht ist codes zu überprüfen ;D und der code leider auch nicht da er nicht auf meinen aufbaut ![]() trotzdem danke lg |
||
Bin Aktuell auf der Suche nach einen Programmierer Team, ob Hobby Team oder Firma ist egal. Einfach eine PM an mich schreiben.
Bezahlung verlange ich NATÜRLICH keine ![]() Es gibt 10 arten von Menschen, die einen verstehen das Binärsystem , die anderen nicht ![]() ![]() |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
ARGH! nicht den kompletten Vorpost zitieren, man! | ||
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 |
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ohh, sryy les es grade... ![]() Soll nicht wieder vorkommen ... versprochen |
||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
primero |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@ Ana
in dem Fall würden Were von 1-266 übergeben werden. wenn das Ziel ist nur Werte von 1-44 zu übergeben müsste x entweder immer wieder zurückgesetzt werden oder nur jeden soundsovielten Schrit erhöt (oder was ähnl.) @ Kaddy etwas wenig Code, mehr wäre wohl aufschlussreicher gewesen. Der Grund, weshalb in den Feldern immer Null überliefert wird, ist jedenfalls nicht zu finden. Nach dem Beispiel (ausgehend von der richtigen Schreibweise der Var) müsste jedes Feld den Wert 44 enthalten. Was genau ist dein Ziel? sollte ein zufälliger Wert übergeben werden sollte die var "zaelert" nicht über eine Schleife sondern über Rand definiert werden. etwa so: Code: [AUSKLAPPEN] for tilex=0 to 19
for tiley=0 to 14 zaelert=rand(1,44) tilemap(tilex,tiley)=zaelert ;oder anstelle der vorherigen zwei zeilen nun einzeilig: tilemap(tilex,tiley)=rand(1,44) next next wenn du die Felder aufsteigend nummerieren willst solltest du es so machen wie Ana es geschreiben hat. Sprich den Zähler in den beiden Schleifen hochsetzen. möglich ist dann ja auch ihn ab 44 wieder auf null oder eins zu setzen (if zaelert>44 then zaelert=1). Alternativ würd ich raten dich an die Fehlerquelle heran zu tasten. dh. Abschnitte deines Qodes zu deaktivieren (";"), werte exakt zu deffinieren (zaelert=1 / tilemap(tilex,tiley)=1) und abzufragen. meist ist doch irgend wo ein vertipper drin, das Dimfeld wird iwo auf null gesetzt oder ähnliches. hoffe das hilft, ansonsten etwas mehr code mind. bis zur stelle wo du den wert ausliest), zielgedanke genauer ausformulieren. gruß Primero |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group