Alles nochmal von Vorne.
Übersicht

AnassisBetreff: Alles nochmal von Vorne. |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo, da meine letzten Blitzbasic versuche schon über 1 jahr her sind, hab ich so ziemlich alles vergessen ![]() Nun habe ich mich nochmal ganz von anfang an hingesetzt, und arbeite nun mit dem Buch "jetzt lerne Ich Spiele programmiern..." Soweit klappt das auch schon wieder habe jetzt aber 2 Fragen zu meinem Kapitel 3 Lektion Code: Code: [AUSKLAPPEN] Graphics 800,600,32,2
SetBuffer BackBuffer() ;___________________________________________________ ; Test mit Schleifen For a=1 To 10 Write " " Write a Next For b=11 To 20 Write " " Write b Next For c=21 To 30 Write " " Write c Next For d=31 To 40 Write " " Write d Next For e=41 To 50 Write " " Write e Next For f=51 To 60 Write " " Write f Next For g=61 To 70 Write " " Write g Next For h=71 To 80 Write " " Write h Next For i=81 To 90 Write " " Write i Next For j=91 To 100 Write " " Write j Next WaitKey Cls Flip ;______________________________________________________________ ; Kompakttest mit Funktion Print Zaehler$(1,10) Print Zaehler$(11,20) Print Zaehler$(21,30) Print Zaehler$(31,40) Print Zaehler$(41,50) Print Zaehler$(51,60) Print Zaehler$(61,70) Print Zaehler$(71,80) Print Zaehler$(81,90) Print Zaehler$(91,100) WaitKey Function Zaehler$(Zahl1,Zahl2) For a=Zahl1 To Zahl2 Write " " Write a Next End Function Der erste versuch war mit Schleifen wie man sieht, das war mir jedoch ein viel zu langer Code, also habe ich versucht das ganze in eine Funktion zu packen, das klappt nun auch ![]() Wenn ich nun aber den Bildschirm mit CLS lösche, springt der Zähler trotsdem nichtmehr nach oben an den Bildschirmrand, wie krieg ich das den hin? Das wäre auch schon meine Frage. Und ja lacht nur das ich sowas simples nicht hinkriege, bin halt ein noob ![]() Gruß Lars |
||
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hoi,
Nutze Text ![]() ![]() ![]() cu, Smily0412 |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
Anassis |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Stimmt ja, mit Text kann man ja Koordinaten eingeben, hät ich aber auch selbst drauf kommen können ![]() Dadurch ergibt sich aber ein anderes Problem unzwar, nur mal ein kleiner ausschnitt Code: [AUSKLAPPEN] Text 100,50, Zaehler$(1,10)
WaitKey Function Zaehler$(Zahl1,Zahl2) For a=Zahl1 To Zahl2 Text x,y, a Next End Function Egal welche Koordinaten ich vom Text eingebe, Er schreibt immer auf dem gleichen punkt und vorallem übereinander? Wie krieg ich das den nun wieder zu ner Schönen zeile wie bei Write oder print? Gruß Lars |
||
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
y ist ja auch immer das gleiche.
Erhöh mal vor jeder textausgabe y um 12 punkte. Beim cls setzt du es wieder zurück auf 0. |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] For i = 0 To 19 Text 0,i*12,"Tschüss Welt!" Next WaitKey() Geht eine For-Schleife 20 mal durch und erhöht dann i immer um eins. (von 0 zu 19) Dann schreibt er jedesmal an der Stelle 0, Anzahl Schleifendurchläufe * 12 "Tschüss Welt". MfG |
||
Anassis |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Alles klar, soweit klappt das jetzt schon mit dem zählen
Code: [AUSKLAPPEN] Graphics 800,600,32,2
Text x,y, Zaehler$(1,10) Function Zaehler$(Zahl1,Zahl2) For i=Zahl1 To Zahl2 Text 10,i*12,i Next End Function WaitKey Die Funktion behalte ich absichtlich um es immer ändern zu können, das mit dem *12 hatte ich anfangs falsch eingesetzt, thx. Werde dadran nun noch rumprobiern bis ich das gleiche ergebnis rauskriege wie bei meinem 1.ten Code mit Print. Gruß Lars |
||
- Zuletzt bearbeitet von Anassis am Mo, Sep 22, 2008 13:23, insgesamt 2-mal bearbeitet
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die function ist fehlerhatf. überleg mal, Du rufst ne Funktion mit dem befehl zur Textausgabe auf und hast in ihr nochmal nen Befehl zur Textausgabe. Das ist doppel gemoppelt. Zudem wird in der Funktion eine Koordinate 'x' benutzt die nirgendwo definiert wird. | ||
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 |
Anassis |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Bladerunner hatte ich gerade gemerkt, habe es ebend editiert!
Trostdem thx |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Auch dein edit ist immernoch fehlerhaft, denn weiterhin rufst Du text mit text drin auf ![]() |
||
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 |
Anassis |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Oh stimmt ja, moment ich änder das ganze nochmal, sry ^^
EDIT: Code: [AUSKLAPPEN] Graphics 800,600,32,2
Zaehler$(1,10,0) Function Zaehler$(Zahl1,Zahl2,x) For i=Zahl1 To Zahl2 Text x,i*12,i Next End Function WaitKey Jetzt aber!! |
||
![]() |
Nova |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] For i = 0 To 3
Print "Sabbel" WaitKey Next Cls ; WICHTIGER BEFEHL! Locate 0, 0 ; WICHTIGER BEFEHL! For i = 0 To 3 Print "Sabbel" WaitKey Next Einfach bei jedem Cls mit "locate" den Textzeiger wieder auf Anfang stellen. Geht so auch sehr gut. ![]() |
||
AMD Athlon II 4x3,1GHz, 8GB Ram DDR3, ATI Radeon HD 6870, Win 7 64bit |
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
man sollte die verwendung von print und write im grafikmodus generell vermeiden, nova | ||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
Anassis |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Stimmt, Bin zwar kein Guru, sondern ein Noob, aber mit dem Text befehl kann man sich Locate da schon ganz sparen, da man mit text einfach gleich koordinaten festlegen kann.
Nun habe ich aber ein andres Problem. Code: [AUSKLAPPEN] Graphics 800,600,32,2
Zaehler$(1,10,0) Zaehler$(11,20,12) Function Zaehler$(Zahl1,Zahl2,y) For i=Zahl1 To Zahl2 Text i*20,y,i Next End Function WaitKey Wer den Code testet dem wirds auffallen, ich möchte das das 11-20 auch wieder vorne beginnt, aber komischerweise beginnt er weiter hinten, als ob er 0-10 schreibt aber unsichtbar lässt?? Gruß Lars |
||
da_poller |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
in der for schleife jedesmal einen counter mitzählen lassen der die position des textes angibt (somit kann man auch den starrtwert des textes als extra parameter definieren.. | ||
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
da_poller wtf. i ist der counter.
Und da sollte alles richtig sein. 11-20 macht, dass er von 11*12 bis 20*12 Zahlen schreibt. = richtig? |
||
da_poller |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
lol bitte lesen dan posten.. führe seinen code aus und du wirst merken das die ausgabe CA so aussieht:
Code: [AUSKLAPPEN] 123456789 1011121314... seine frage war wie es möglich ist den text immer an x anfangsposition auszugeben. dazu darf er i NICHT als textwert UND x koordinate zusammen verwenden.. mfg poller! edit: ps: wtf ist unhöflich |
||
Anassis |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
V1:
Code: [AUSKLAPPEN] Graphics 800,600,32,2
Zaehler$(1,10,0,0) Zaehler$(11,20,0,20) Function Zaehler$(zahl1,Zahl2,x,y) For i=Zahl1 To Zahl2 Text i*20,x,y Next End Function WaitKey End V2: Code: [AUSKLAPPEN] Graphics 800,600,32,2
Zaehler$(1,10,0,0) Zaehler$(11,20,0,20) Function Zaehler$(zahl1,Zahl2,x,y) For i=Zahl1 To Zahl2 Text x,y,i*20 Next End Function WaitKey End Klappt beides nicht, da kommt nur Kauderwelsch raus, ich dachte erst das vielleicht mit eine art: If x>1 Then x=0 zu lösen ,klappt aber auch nicht so recht, scheint so als würde er dieses If in der Funktion komplett ignorieren? Könnt ihr mir vielleicht noch nen tipp geben? Gruß Lars |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Graphics 800,600,32,2
setbuffer Backbuffer() while not keyhit(1) cls Zaehler$(1,10,0,0) Zaehler$(11,20,0,20) flip wend Function Zaehler$(zahl1,Zahl2,x,y) For i=Zahl1 To Zahl2 Text i,x,y+10*(i-zahl1) Next End Function |
||
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 |
Anassis |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hmm so recht klappt das alles nicht.
Ist aber auch nicht wetier Tragisch da das Buch eh noch nicht mit Text und den Buffern befehlen arbeitet. Deswegen hatte ich erst auch nur Print & Write befehle, da das Kapitel sich nur darum handelte. Der Versuch nun war nur ein kleiner eigenversuch, aber denke soweit bin ich noch nicht. Also werde ich erstmal noch weiter die Kapitel durcharbeiten. Trotsdem danke für die hilfe ![]() Gruß Lars |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
oooops, fehler meinerseits: die zeile sollte
Code: [AUSKLAPPEN] Text x,y+10*(i-zahl1), i
lauten, da ist mir die BMax-Syntax zum Verhängnis geworden. Ich bitte um Verzeihung. |
||
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 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group