Anzeigefehler
Übersicht

moehrchenBetreff: Anzeigefehler |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Guten Tag!
Bevor ihr mich jetzt verwechselt... lasst mich was erklären! Der untenstehende Code und auch einige Ideen werden euch wohl sehr bekannt von meinem Freund vorkommen, der hier gestern udn vorgestern an der Erstellung einer vermeindlich einfachen Aufgabe gescheitert ist. Wir sollten das eigentlich aufteilen (mehrere Projekte bekommen die wir zum Tag der offenen Tür, der in 10 Stunden stattfindet erledigen sollten.) Soweit so gut ich habe meine Aufgaben erledigt. Leider hielt es John allerdings nicht für nötig mir vorher zu erzählen das er es net schafft, bis gestern abend hat er noch behauptet er würde es schaffen. Dann hat er mir heute den Code per ICQ geschickt und gesagt er schafft es nicht ich soll es machen... Tel dauernd besetzt... toller Freund! Aber naja darum gehts hier nicht. Ich muss es jetzt quasi ausbaden und ich muss gestehen ich hab noch nicht wirklich mit Blitz Basic gearbeitet. Geschweige den mit DirectX7 oder ähnlichem. Wenn der Code jetzt nicht sauber aussieht bitte ich das zu verzeihen, aber hauptsache für mich ist erstmal das das Dingen funktioniert. Dannach kann man schauen wie man den Code formatiert. Die Grundidee und Grundquelltext habe ich von ihm übernommen. Sie ist das man quasi "Slots" hat in dennen man die einzelnen Steine nach Links und rechts verschieben kann, bisher eigentlich per Tastatureingabe um das ganze zu Testen, ich bin zwar momentan dabei dazu ne MouseFunction zu schreiben aber die ist noch nicht komplett im Code hier. Ich Poste erstmal den Code::: Code: [AUSKLAPPEN] Graphics 1024, 768, 16, 2
SetBuffer BackBuffer() Global timer = CreateTimer (30) Dim tower(3,9) Global MCount = 0 ;MistakeCount Global SCount = 0 ;StepCount Global obersteRender = 1 ;just one time "substrahieren" Dim failed(10) failed(1) = 0 failed(2) = 0 failed(3) = 0 failed(4) = 0 failed(5) = 0 failed(6) = 0 failed(7) = 0 failed(8) = 0 failed(9) = 0 Dim anzahl(3) anzahl(1) = 0 anzahl(2) = 0 anzahl(3) = 0 Dim oberste(4) oberste(1) = 9 oberste(2) = 9 oberste(3) = 9 Global b1 = LoadImage("1.bmp") Global b2 = LoadImage("2.bmp") Global b3 = LoadImage("3.bmp") Global b4 = LoadImage("4.bmp") Global b5 = LoadImage("5.bmp") Global b6 = LoadImage("6.bmp") Global b7 = LoadImage("7.bmp") Global m1 = LoadImage("button_neu.bmp") Global m2 = LoadImage("button_regeln.bmp") Global m3 = LoadImage("button_loesung.bmp") Global m4 = LoadImage("button_ende.bmp") MaskImage b1, 255, 255, 255 MaskImage b2, 255, 255, 255 MaskImage b3, 255, 255, 255 MaskImage b4, 255, 255, 255 MaskImage b5, 255, 255, 255 MaskImage b6, 255, 255, 255 MaskImage b7, 255, 255, 255 MaskImage m1, 255, 255, 255 MaskImage m2, 255, 255, 255 MaskImage m3, 255, 255, 255 MaskImage m4, 255, 255, 255 wievielScheiben$ = Input ("Wieviele Scheiben möchten Sie haben?"); If(wievielScheiben$>7) Print "Zuviel Scheiben. Bitte einen Wert von 1 bis 7 engeben." wievielScheiben$ = Input ("Wieviele Scheiben möchten Sie haben?"); If(wievielScheiben$>7) Print "Zuviel Scheiben. Bitte einen Wert von 1 bis 7 engeben." wievielScheiben$ = Input ("Wieviele Scheiben möchten Sie haben?"); If(wievielScheiben$>7) Print "Dann nicht! Bitte nicht den Nummernblock verwenden." EndIf EndIf EndIf If(wievielscheiben<1) Print "Zuwenig Scheiben. Bitte einen Wert von 1 bis 7 eingeben." wievielScheiben$ = Input ("Wieviele Scheiben möchten Sie haben?");´ If(wievielscheiben<1) Print "Zuwenig Scheiben. Bitte einen Wert von 1 bis 7 eingeben." wievielScheiben$ = Input ("Wieviele Scheiben möchten Sie haben?"); If(wievielscheiben<1) Print "Dann nicht! Bitte nicht den Nummerblock verwenden." EndIf EndIf EndIf Function clickHandler() Locate 800,600 x_Koordinaten = MouseX() y_Koordinaten = MouseY() Print "FUCK!" Write x_Koordinaten Write y_Koordinaten Print "NEW" Locate 200,200 End Function ;clickHandler() Function getoberstestone(towerid) isfound = 0 If(tower(towerid,7) = 1 And isfound = 0) oberste(towerid) = 7 isfound = 1 EndIf If(tower(towerid,6) = 1 And isfound = 0) oberste(towerid) = 6 isfound = 1 EndIf If(tower(towerid,5) = 1 And isfound = 0) oberste(towerid) = 5 isfound = 1 EndIf If(tower(towerid,4) = 1 And isfound = 0) oberste(towerid) = 4 isfound = 1 EndIf If(tower(towerid,3) = 1 And isfound = 0) oberste(towerid) = 3 isfound = 1 EndIf If(tower(towerid,2) = 1 And isfound = 0) oberste(towerid) = 2 isfound = 1 EndIf If(tower(towerid,1) = 1 And isfound = 0) oberste(towerid) = 1 isfound = 1 EndIf End Function;getoberstestone createGame(wievielScheiben$) anzahl(1) = wievielScheiben$ Function moveStone(fromtowerid, towerid) Print "Fromtowerid:" Print fromtowerid Print "TowerId:" Print towerid getoberstestone(fromtowerid) stoneid = oberste(fromtowerid) Print "Stoneid(func)" Print stoneid Select stoneid Case 1: Print "Ich bin in StoneId Case1" Print "<x>" Print tower(towerid,2) Print "</x>" If(tower(towerid,2) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(1) = 1 EndIf If(tower(towerid,3) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(1) = 1 EndIf If(tower(towerid,4) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(1) = 1 EndIf If(tower(towerid,5) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(1) = 1 EndIf If(tower(towerid,6) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(1) = 1 EndIf If(tower(towerid,7) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(1) = 1 EndIf If(failed(1) = 1) Print "Es dürfen niemals größere auf kleinere Scheiben gelegt werden." MCount = Mcount + 1 ;count Mistakes failed(1) = 0 Else ;Move tower(fromtowerid,stoneid) = 0;delete anzahl(fromtowerid) = anzahl(fromtowerid) - 1;countdown tower(towerid, stoneid) = 1;create anzahl(towerid) = anzahl(towerid) + 1 Scount = Scount + 1 ; count Steps EndIf Case 2: Print "Ich bin in StoneId Case2" Print "<x>" Print tower(towerid,3) Print "</x>" If(tower(towerid,3) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(2) = 1 EndIf If(tower(towerid,4) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(2) = 1 EndIf If(tower(towerid,5) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(2) = 1 EndIf If(tower(towerid,6) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(2) = 1 EndIf If(tower(towerid,7) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(2) = 1 EndIf If(failed(2) = 1) Print "Es dürfen niemals größere auf kleinere Scheiben gelegt werden." MCount = Mcount + 1 ;count Mistakes failed(2) = 0 Else ;Move tower(fromtowerid,stoneid) = 0;delete anzahl(fromtowerid) = anzahl(fromtowerid) - 1;countdown tower(towerid, stoneid) = 1;create anzahl(towerid) = anzahl(towerid) + 1 Scount = Scount + 1 ; count Steps EndIf Case 3: Print "Ich bin in StoneId Case3" Print "<x>" Print tower(towerid,3) Print "</x>" If(tower(towerid,4) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(3) = 1 EndIf If(tower(towerid,5) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(3) = 1 EndIf If(tower(towerid,6) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(3) = 1 EndIf If(tower(towerid,7) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(3) = 1 EndIf If(failed(3) = 1) Print "Es dürfen niemals größere auf kleinere Scheiben gelegt werden." MCount = Mcount + 1 ;count Mistakes failed(3) = 0 Else ;Move tower(fromtowerid,stoneid) = 0;delete anzahl(fromtowerid) = anzahl(fromtowerid) - 1;countdown tower(towerid, stoneid) = 1;create anzahl(towerid) = anzahl(towerid) + 1 Scount = Scount + 1 ; count Steps EndIf Case 4: Print "Ich bin in StoneId Case4" Print "<x>" Print tower(towerid,3) Print "</x>" If(tower(towerid,5) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(4) = 1 EndIf If(tower(towerid,6) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(4) = 1 EndIf If(tower(towerid,7) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(4) = 1 EndIf If(failed(4) = 1) Print "Es dürfen niemals größere auf kleinere Scheiben gelegt werden." MCount = Mcount + 1 ;count Mistakes failed(4) = 0 Else ;Move tower(fromtowerid,stoneid) = 0;delete anzahl(fromtowerid) = anzahl(fromtowerid) - 1;countdown tower(towerid, stoneid) = 1;create anzahl(towerid) = anzahl(towerid) + 1 Scount = Scount + 1 ; count Steps EndIf Case 5: Print "Ich bin in StoneId Case5" Print "<x>" Print tower(towerid,3) Print "</x>" If(tower(towerid,6) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(5) = 1 EndIf If(tower(towerid,7) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(5) = 1 EndIf If(failed(5) = 1) Print "Es dürfen niemals größere auf kleinere Scheiben gelegt werden." MCount = Mcount + 1 ;count Mistakes failed(5) = 0 Else ;Move tower(fromtowerid,stoneid) = 0;delete anzahl(fromtowerid) = anzahl(fromtowerid) - 1;countdown tower(towerid, stoneid) = 1;create anzahl(towerid) = anzahl(towerid) + 1 Scount = Scount + 1 ; count Steps EndIf Case 6: Print "Ich bin in StoneId Case6" Print "<x>" Print tower(towerid,3) Print "</x>" If(tower(towerid,7) = 1) Print "<xxxxxxxxxxxxxxxxxxxxxxxxx>" failed(6) = 1 EndIf If(failed(6) = 1) Print "Es dürfen niemals größere auf kleinere Scheiben gelegt werden." MCount = Mcount + 1 ;count Mistakes failed(6) = 0 Else ;Move tower(fromtowerid,stoneid) = 0;delete anzahl(fromtowerid) = anzahl(fromtowerid) - 1;countdown tower(towerid, stoneid) = 1;create anzahl(towerid) = anzahl(towerid) + 1 Scount = Scount + 1 ; count Steps EndIf Case 7: Print "Ich bin in StoneId Case7" Print "<x>" Print tower(towerid,3) Print "</x>" If(failed(7) = 1) Print "Es dürfen niemals größere auf kleinere Scheiben gelegt werden." MCount = Mcount + 1 ;count Mistakes failed(7) = 0 Else ;Move tower(fromtowerid,stoneid) = 0;delete anzahl(fromtowerid) = anzahl(fromtowerid) - 1;countdown tower(towerid, stoneid) = 1;create anzahl(towerid) = anzahl(towerid) + 1 Scount = Scount + 1 ; count Steps EndIf End Select If(fromtowerid = towerid) Scount = Scount - 1 anzahl(fromtowerid) = anzahl(fromtowerid) + 1;countdown anzahl(towerid) = anzahl(towerid) - 1 EndIf End Function;moveStone Function createGame(scheibenanzahl) anzahl(1) = scheibenanzahl Write scheibenanzahl For n=1 To scheibenanzahl Step 1 Tower(1,n) = 1 Tower(2,n) = 0 Tower(3,n) = 0 Next; moveStone(1,3) moveStone(1,3) While Not KeyHit(1) If(obersteRender = 1) Scount = Scount - 1 obersteRender = 0 EndIf ;Cls Text 950, 730, MCount Text 850, 730, SCount welcherstein = Input("Von welchem Turm soll der oberste Stein bewegt werden?") If(welcherstein>3) welcherstein = Input("Zahl zu hoch! Von welchem Turm soll der oberste Stein bewegt werden?") EndIf ;Write welcherstein welcherturm = Input("Gut. Und Wohin ?") If(welcherturm>3) welcherturm = Input("Zahl zu hoch! Gut. Und Wohin?") EndIf ;Write welcherturm If(woiststein = welcherturm) ; nixs Else ClsColor 255,255,255 Color 0,0,0 If(MouseDown(1)) clickHandler EndIf Cls moveStone(welcherstein,welcherturm) ;Bewegen. EndIf; For m = 0 To 3 Step 1 Print "<<<<<>>>>>" Print m Print anzahl(m) Print "!!!" For o = 0 To anzahl(m) Step 1 If(tower(m,o) = 1) Select o Case 1 DrawImage b7, ((m-1)*250 + m*70), (683-((o-1)*70)) ;Draw Case 2 DrawImage b6, ((m-1)*250 + m*70), (683-((o-1)*70)) ;Draw Case 3 DrawImage b5, ((m-1)*250 + m*70), (683-((o-1)*70)) ;Draw Case 4 DrawImage b4, ((m-1)*250 + m*70), (683-((o-1)*70)) ;Draw Case 5 DrawImage b3, ((m-1)*250 + m*70), (683-((o-1)*70)) ;Draw Case 6 DrawImage b2, ((m-1)*250 + m*70), (683-((o-1)*70)) ;Draw Case 7 DrawImage b1, ((m-1)*250 + m*70), (683-((o-1)*70)) ;Draw Default DrawImage b1, ((m-1)*250 + m*70), (683-((o-1)*70)) ;Draw End Select Text 50,50, scheibenanzahl EndIf Next; Next; DrawImage m1, 0, 0;Draw DrawImage m2, 256, 0;Draw DrawImage m3, 512, 0;Draw DrawImage m4, 768, 0;Draw WaitTimer timer Flip; Flipping(x²-3x³+9x) Wend; End Function;createGame Das ist der Code so wie ich ihn jetzt momentan übernommen / angepasst habe. Mein Problem ist nun das er zwar korrekt startet und alles, und nach dem ersten Move auch alles korrekt darstellt, er allerdings wenn man z.b. 1 und 2 eingibt im zweitem turm die grafiken nichtmehr anzeigt. Könnt ihr mir da vielleicht helfen? Ich komme nichtmehr weiter. Auch wenngleich ich keine andere Wahl habe als weiterzuversuchen weiß ich nicht ob ich es rechtzeitig schaffe.. Ich kann euch aber schonmal verkünden das ich lediglich ein problem mit der anzeige habe. Im System stimmen die Einträge alle. Das einzige Problem wöre die Anzeige. Nur das krieg ich nicht alleine hin (zumindest nicht recchtzeitig bis morgen) Und falls ihr euch denkt ich möchte nur meine Informatik-Hausaufgaben gemacht haben.. Nein! Wir haben hier Samstags keine Schule, und sonst würde kaum einer solange Aufbleiben bis er es shafft, was ich zu tun habe, den ansonsten reißt der Rektor unsrer Gruppe (welche nun ohne John ist.) den Kopf ab, er wird es nicht verstehen und so sachen wie "hättet euch halt absprechen sollen" sagen.. Da kann ich auch echt nicht darauf bauen das John sagt das es seine Schuld war. Wer es testen möchte kann sich gerne das Script hier laden und wer möchte darf es sogar frei verwenden, sozusagen Open Source. Ich versuche die Grafiken anzuhängen. Bitte helft mir. Mit freundlichen Grüßen, Manuel EDIT: Grafiken im Datei-Archiv gefunden: https://www.blitzforum.de/upload/file.php?id=2361 |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hä? Du willst das wir den schlecht geschriebenen Code für dich vervollständigen? Oder uns in der komischen Logik zurecht finden? Ohne zu übertreiben kann man die ganze Funktionalität auf etwa 1/3 Codemenge bringen, und das ganze dabei auch funktionsfähig und per Maus spielbar. Wenn du dich ein wenig mit programmieren auskennst, so mach alles neu... | ||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
moehrchen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hectic hat Folgendes geschrieben: Hä? Du willst das wir den schlecht geschriebenen Code für dich vervollständigen? Oder uns in der komischen Logik zurecht finden? Ohne zu übertreiben kann man die ganze Funktionalität auf etwa 1/3 Codemenge bringen, und das ganze dabei auch funktionsfähig und per Maus spielbar. Wenn du dich ein wenig mit programmieren auskennst, so mach alles neu...
das ist mein problem. ich habe nicht die zeit um alles zu überdenken! ich möchte nicht das ihr meinen code vervollständigt, ich weiß nur nicht weiter bei der anzeige in konkret diesem Teil des Codes: Code: [AUSKLAPPEN] For m = 0 To 3 Step 1
Print "<<<<<>>>>>" Print m Print anzahl(m) Print "!!!" For o = 0 To anzahl(m) Step 1 If(tower(m,o) = 1) Select o Case 1 DrawImage b7, 337, (683-((o-1)*70)) ;Draw Case 2 DrawImage b6, 337, (683-((o-1)*70)) ;Draw Case 3 DrawImage b5, 337, (683-((o-1)*70)) ;Draw Case 4 DrawImage b4, 337, (683-((o-1)*70)) ;Draw Case 5 DrawImage b3, 337, (683-((o-1)*70)) ;Draw Case 6 DrawImage b2, 337, (683-((o-1)*70)) ;Draw Case 7 DrawImage b1, 337, (683-((o-1)*70)) ;Draw Default DrawImage b1, 337, (683-((o-1)*70)) ;Draw End Select Text 50,50, scheibenanzahl EndIf Next; Next; Da ist halt ein fehler drinnen sodass er nur vom Turm 1 anzeigt (also Tower(1,[1-7]) ). Da komme ich halt nicht weiter. Ich biete auch an mich dafür persönlich nächste Woche oder so an ein kleines Phpscript für euch zu setzen (oder ein freund macht die3s, könnt ihr aussuchen). Mfg, Manuel EDIT: Btw: wie würdest du es den machen? Da ist hier ja schon vereinfacht damit man es gut coden kann. Wenn ich jetzt die Logik meines Freundes nochmal komplett übern Haufen werfe und neu Anfange bleiben mir nicht viele Stunden um das hinzukrigen, debuggen und so weiter :/ |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe mich mal hingesetzt und es mal versucht. Nicht weil ich dich gern hab, sondern weil mir grad Langweilig war. Mein Code wird mit der Maus bedient und ist ganze 2 kB groß vs. 11 kb und funktioniert dabei. Da ich aber überhaupt keine Lust auf diese ganzen 2D-Sachen habe, habe ich es mithilfe meiner Draw3D -Library gemacht. Du benötigst also Blitz3D oder musst dir den Code selber umschreiben. Das ganze kommt ohne geladene Bilder aus, was aber kein Problem sein sollte.
Lange Rede kurzer Sinn. Hier der Code: Dependencies: - Draw3D.bb weitere Infos und Download http://blitzbasic.pytalhost.de/viewtopic.php?t=88 - cosmic.png ist in der Library bereits enthalten, oder eine bessere Version hier downloaden Code: [AUSKLAPPEN] Graphics3D 800,600,0,2
SetBuffer BackBuffer() Local Camera=CreateCamera() CameraClsColor Camera,80,80,96 Include "Draw3D.bb" DrawInit3D(Camera) Origin3D(800,600) NativeInit3D(2,2) Dim Steine(2,7) Steine(0,0)=9 Steine(1,0)=9 Steine(2,0)=9 Steine(1,1)=7 Steine(1,2)=6 Steine(1,3)=5 Steine(1,4)=4 Steine(1,5)=3 Steine(1,6)=2 Steine(1,7)=1 Local Font=LoadFont3D("cosmic.png",2,2) Local Timer=CreateTimer(100) Local SX,SY ;Schleifenvariablen Local Auswahl ;Auswahlposition Local Merken=0 Local Status=0 ;HAUPTSCHLEIFE While Not KeyHit(1) Auswahl=(MouseX3D+300)/200 If Auswahl>2 Then Auswahl=2 If Auswahl<0 Then Auswahl=0 ;Auswahl ColorN3D(0,0,0,.25) Rect3D(Auswahl*200-200,-40,100,142,1) ;Steine ColorN3D(255,0,0,1) For SX=-200 To 200 Step 200 For SY=-160 To 80 Step 40 Rect3D(SX,SY,Steine((SX+300)/200,(SY+220)/40)*12,18,1) Next Next ; ;Gitter ; ColorN3D(255,255,255,1) ; Rect3D(0,-60,300,160,0,4) ; For SX=-200 To 200 Step 200 ; For SY=-200 To 80 Step 40 ; Rect3D(SX,SY,100,20,0,4) ; Next ; Next ;Ziffern For SX=0 To 2 For SY=1 To 7 If Steine(SX,SY)>0 Then Text3D(Font,SX*200-200,SY*40-200,Steine(SX,SY),1) Next Next ;Logik If MouseHit(1) If Status=0 If Freier(Auswahl,2)>0 Merken=Auswahl Status=1 End If Else If Freier(Auswahl,1)>Freier(Merken,1) Or Freier(Auswahl,1)=0 Steine(Auswahl,Freier(Auswahl,2)+1)=Steine(Merken,Freier(Merken,2)) Steine(Merken,Freier(Merken,2))=0 End If Status=0 End If End If ;Marker If Status=1 ColorN3D(255,255,0,.25) Rect3D(Merken*200-200,Freier(Merken,2)*40-200,100,22,1) End If WaitTimer(Timer) RenderWorld Clear3D() Flip 0 Wend End Function Freier(FXPos,FMode) Local Merken=0 Local Schleife For Schleife=0 To 7 If Steine(FXPos,Schleife)>0 If FMode=1 Then Merken=Steine(FXPos,Schleife) If FMode=2 Then Merken=Schleife End If Next Return Merken End Function |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
moehrchen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hab tausend dank! das funktioniert prima. das was ich noch brauche kann ich mir ja selbstverständlich noch selber reincoden!!!! du weiß nicht wie sehr ich dir danken muss...
Du meldest dich auf jedenfall mal bei mir wenn du hilfe mit deiner Homepage brauchst, okay?! Da muss ich dir ja auch helfen... Dein System schau ich mir auch aufjedenfall mal an.. sieht sehr gut aus, nur leider steig ich atm in 2d noch ganz durch da heute der erste tag war an dem ich überhaupt was programmiert habe (bzw. code geändert usw)... wenn da einigermaßen geht werden ich 2d professioneller machen und 3d als spielwiese schonmal antesten... Meld dich bitte umbedingt wenn du mal hilfe brauchst, MFG, Manuel |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich hab in nächster Zeit nicht vor meine Homepage weiter zu machen. Wenn überhaupt, dann muss ich zunächst mit CSS komplett klar kommen, der Rest wie PHP wird dann noch ein ganz großer Happen für mich, wo viel Zeit zum lernen noch ansteht. Danke aber trotzdem.
Weitere Tipps zu meinem Programm: - Willst du die vorhandenen Bilder doch verwenden, dann packe alle Bilder (z.B. mit Paint) untereinader und speicher das dann als ein Bild ''250x490'' ab. Dann kannst du entweder mit der Kombination ql:LoadAnimImage und ql:DrawImage oder der Kombination ql:LoadImage und ql:DrawImageRect die ganz einfach per Wert ansprechen. Du sparst dir also die ganzen If-Abfragen, und kannst sogar eine leicht modifizierte Version meines Codes verwenden. - Der Schlüssel zu allem im Code ist letztendlich die Funktion Freier(FXPos,FMode) welche bei FMode=1 angibt welcher Stein ganz oben auf dem Haufen liegt und bei FMode=2 angibt welcher Position der letzte Stein auf dem Haufen hat. Diese beide Informationen sind für alle weiteren ''Berechnungen'' ausschlaggebend. Wenn du also den Code verstehen willst/msst, so sei dir gesagt, dass eben diese Funktion eine wichtige Rolle dabei spielt. (Wirst du warscheinlich eh festgestellt haben). Spart zumindest jede Menge Codezeilen. - Da in diesem Code zumindest der Startturm immer in der Mitte anfängt, so kann man einfach jeden Schleifendurchlauf oder immer dann, wenn man ein Stein bewegt hat, überprüfen ob eine ganze Reihe links (Pos=0) oder rechts (Pos=2) voll ist. Wenn ja, dann hat der Spieler es geschaft. edit1: Wie heisst dieses Spiel überhaupt? edit2: Hey shure_kyu da unten, danke für den Tipp. Will hier dafür nichts pushen. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
- Zuletzt bearbeitet von hectic am Sa, Nov 24, 2007 15:50, insgesamt einmal bearbeitet
![]() |
shure_kyuNewsposter |
![]() Antworten mit Zitat ![]() |
---|---|---|
die türme von hanoi
und das prinzip ist den turm von links nach ganz rechts zu bauen ![]() |
||
_______//¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\________ ◄Blitz 3D/MAX • PC - 2x 3.16Ghz, 4GB-Ram, ATi HD 4890 1024MB• win7 • site$ Rush2Play ° My-Htc.de► ¯¯¯¯¯¯¯\__________________________________________________________________________//¯¯¯¯¯¯¯¯ BBP-RSS FEED Halt dich auf dem laufenden! (C)Shure_kyu |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group