Input() Position
Übersicht

***JONATHAN***Betreff: Input() Position |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi,
Ich hab mal eine Frage zu der Input() Funktion. Ich mach grade so ein Text-Spiel mit der normalen Konsole, das man durch Eingabe von Zahlen steuern kann. Dabei will ich, dass die Input Box, in die man dann die Zahlen eingibt, immer an der selben Stelle liegt. Ich stell mir das irgendwie so vor: Eingabe$=Input$,0,10("Bitte gib hier die Nummer ein: ") 0 und 10 sollten dann die Koordinaten sein... Gibt es irgendsowas??? Ich hoffe auf eure Hilfe ![]() |
||
![]() |
Abrexxes |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Function GetInput$(x,y,sPrompt$,sFilter$,sDefault$,iMaxLength) ; x = x location of the prompt, if any, or text input ; y = y location ... ; sPrompt$ is the prompt, such as "Please enter your name:" ; sFilter$ is very useful. It ONLY allows the user to enter certain characters. For example, "ync" would only allow "y","n" or "c" ; There are also a few special 'codes': ; "/all" or "" means allow anything to be entered ; "/123" allows only 0 through 9 to be entered ; "/abc" allows only letters of the alphabet to be entered FlushKeys iFlashInterval = 300 ; The blinking cursor speed sTotal$ = sDefault$ iNumDigits = Len(sDefault$) If Lower$(sFilter$) = "/123" Then sFilter$ = "0123456789" ; All the numbers If Lower$(sFilter$) = "/abc" Then sFilter$ = "abcdefghijklmnopqrstuvwxyz" ; All the letters iTotalWidth = StringWidth(sPrompt$) + (iMaxLength * FontWidth()) iTotalHeight = FontHeight() hTextBuffer = CreateImage(iTotalWidth,iTotalHeight) ; Where the text will be drawn before blitting to the backbuffer() hCleanCopy = CreateImage(iTotalWidth,iTotalHeight) ; Will hold a clean copy of the backbuffer (not the whole thing) MaskImage hTextBuffer,255,0,255 ; Make the text background transparent so we can show text with BG showing SetBuffer ImageBuffer(hTextBuffer) ; We're going to draw to the text buffer ClsColor 255,0,255 ; Temporarily make the cls color the transparent color (magenta) Cls ; Now clear to magenta ; Foreground (text) will be drawn in the current color CopyRect x,y,iTotalWidth,iTotalHeight,0,0,BackBuffer(),ImageBuffer(hCleanCopy) ; Save a clean copy of the back buffer where the ; text is going to be SetBuffer BackBuffer() Repeat ; Blinking cursor code ******************************************************************************************************* iCurrentTime = MilliSecs() If bFlash = True Then If (iCurrentTime - iOldFlashTime) >= iFlashInterval Then bFlash = False iOldFlashTime = MilliSecs() EndIf Else If (iCurrentTime - iOldFlashTime) >= iFlashInterval Then bFlash = True iOldFlashTime = MilliSecs() EndIf EndIf ; Input starts here ********************************************************************************************************** iKeyPressed = GetKey() If iKeyPressed = 13 Then sKeyPressed$ = "" Else sKeyPressed$ = Chr$(iKeyPressed) EndIf ; If the key passes, add it to the total ************************************************************************************* If iKeyPressed Then If (sFilter$ = "/all") Or (sFilter$ = "") Or (Instr(sFilter$,sKeyPressed$) > 0) Then ; "all" does not filter any keys out If Len(sTotal$) < iMaxLength Then sTotal$ = sTotal$ + sKeyPressed$ ; Add it to the total string if it passes iNumDigits = iNumDigits + 1 EndIf EndIf EndIf ; If backspace was pressed, delete the last character from the total and update the number of digits ************************* If KeyDown(14) And iNumDigits > 0 Then sTotal$ = Left$(sTotal$,iNumDigits - 1) iNumDigits = iNumDigits - 1 Delay 50 EndIf ; Draw the clean background and then the text on the backbuffer() ************************************************************ DrawBlock hCleanCopy,x,y ; Draw the cursor if enough time has passed (change iFlashInterval for different speeds) ************************************* If Len(sTotal$) = iMaxLength Then rx = StringWidth(sPrompt$ + sTotal$) - StringWidth(Right$(sTotal$,1)) rw = StringWidth(Right$(sTotal$,1)) Else rx = StringWidth(sPrompt$) + (Len(sTotal$) * FontWidth()) rw = FontWidth() EndIf If bFlash = True Then Text x,y,sPrompt$ + sTotal$ Rect x + rx,y,rw,FontHeight(),True Else Text x,y,sPrompt$ + sTotal$ EndIf Flip Until iKeyPressed = 13 ; This is the 'return/enter' key ClsColor 0,0,0 ; Reset back to black Return sTotal$ End Function Gut zum rumtesten. ![]() cu |
||
Beatenvoy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das meinst du!
Code: [AUSKLAPPEN] Function PrintX(Text$,x,y)
Locate x,y Print Text$ End Function |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006Betreff: Re: Input() Position |
![]() Antworten mit Zitat ![]() |
---|---|---|
Worauf Abrexxes wohl hindeuten wollte ist,
JONATHAN hat Folgendes geschrieben: ...Ich mach grade so ein Text-Spiel mit der normalen Konsole, das man durch Eingabe von Zahlen steuern kann...
dass Input und Locate eher nicht zu benutzen sind, weil der Code an der Stelle stehen bleibt und somit nichts anderes machen kann. Programmiert man das ganz aber mit GetKey, so kann man auch beliebig positionieren und im Hintergrund Animationen oder ähnliches machen. Zum ''lernen'' finde ich allerdings das Codebeispiel ein bisschen zu kompliziert. Wer er es zunächst ganz einfach haben möchte... Code: [AUSKLAPPEN] Graphics 400,200,0,2
SetBuffer BackBuffer() a%=0 b$="" While Not KeyHit(1) anim=anim+1:Text 20,170,"Der Beweis, dass der Code weiter läuft "+anim a=GetKey() If a>0 If a=8 If Len(b)>0 b=Left(b,Len(b)-1) End If Else b=b+Chr$(a) End If End If Text 20,20,"schreiben: "+b+"|" Flip Cls Wend End |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
***JONATHAN*** |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja, es war mir ein bisschen zu komliziert, jetzt schau ich mir erst mal deins an, aber schonmal vorab ein dickes
thx ![]() ![]() ![]() |
||
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
hier mal meine funktion:
da kannste auch einstellen das schon text im Input drinsteht ![]() das viereck rundrum kannste weglassen! hab ich nur so mal zum rumspielen für mich gemacht! Code: [AUSKLAPPEN] Function GetInput$(x,y,prompt$,inputtext$="") zeichenanzahl=0 FlushKeys() Repeat width=StringWidth(prompt$+inputtext$) ; Input ********************************************************************************************************** Color 200,200,200 Rect x-10,y-10,width+21,30,1 Color 150,150,150 Rect x-7,y-7,width+15,24,1 Color 255,255,255 iKeyPressed = GetKey() If iKeyPressed = 13 Then sKeyPressed$ = "" Else sKeyPressed$ = Chr$(iKeyPressed) EndIf If iKeyPressed Then inputtext$ = inputtext$ + sKeyPressed$ zeichenanzahl= zeichenanzahl+ 1 EndIf If KeyDown(14) And zeichenanzahl> 0 Then ;Backspace inputtext$ = Left$(inputtext$,zeichenanzahl- 1) zeichenanzahl= zeichenanzahl- 1 Delay 50 EndIf Text x,y,prompt$+inputtext$ Flip Until iKeyPressed = 13 ; Enter FlushKeys() Return inputtext$ End Function |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
***JONATHAN*** |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Die sind ja alle schön und gut, aber hat keiner eine Funktion, bei der man einfach nur die Koordinaten eingeben kann und die dann das Eingegebene noch speichert.
Die stell ich mir ungefähr so vor: Eingabe$(10,10,"Dein Name: ",Speichern$) Damit man dann später z.B. schreiben kann: Print "Hallo " + Speichern$ |
||
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
das macht doch meine funktion!
Code: [AUSKLAPPEN] speichern$=GetInput(10,20,"Bitte gibt deinen namen ein: ")
oder reicht dir das nich?? |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
![]() |
Abrexxes |
![]() Antworten mit Zitat ![]() |
---|---|---|
***JONATHAN*** hat Folgendes geschrieben: Die sind ja alle schön und gut, aber hat keiner eine Funktion, bei der man einfach nur die Koordinaten eingeben kann und die dann das Eingegebene noch speichert.
Die stell ich mir ungefähr so vor: Eingabe$(10,10,"Dein Name: ",Speichern$) Damit man dann später z.B. schreiben kann: Print "Hallo " + Speichern$ Das macht meine oben ja, du musst ja nicht den Code studieren, kopiere die FunKtion in deinen Code und rufe sie auf. Code: [AUSKLAPPEN] Meintext$= GetInput$(0,10,"Eingabe","/all","Nichts",28) |
||
***JONATHAN*** |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Oh, ich depp. Ja klar, ich hab nur einen dummen Fehler gemacht! ![]() Vielen Dank an alle für eure Hilfe!!! ![]() |
||
***JONATHAN*** |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Eine Frage hätte ich noch:
Ich hab jetzt den Code von Puccini genommen. Aber dann flimmert der Bildschirm total. Ich hab den Code ein bisschen verändert, weil ich den Kasten nicht haben wollte, liegt es vielleicht daran??? So sieht der Code im Moment aus: Function GetInput$(x,y,prompt$,inputtext$="") zeichenanzahl=0 FlushKeys() Repeat width=StringWidth(prompt$+inputtext$) ; Input ********************************************************************************************************** iKeyPressed = GetKey() If iKeyPressed = 13 Then sKeyPressed$ = "" Else sKeyPressed$ = Chr$(iKeyPressed) EndIf If iKeyPressed Then inputtext$ = inputtext$ + sKeyPressed$ zeichenanzahl= zeichenanzahl+ 1 EndIf If KeyDown(14) And zeichenanzahl> 0 Then ;Backspace inputtext$ = Left$(inputtext$,zeichenanzahl- 1) zeichenanzahl= zeichenanzahl- 1 EndIf Text x,y,prompt$+inputtext$ Flip Until iKeyPressed = 13 ; Enter FlushKeys() Return inputtext$ End Function |
||
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
??
sorry, ich habs noch nich anders getestet, aber das is erstmal mysteriös ^^ was hast du für einen graphicmod? und setbuffer backbuffer()?? |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
***JONATHAN*** |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Graphics 1280,1024
SetBuffer BackBuffer() Wenn ich dann aber mal Cls + Flip und dann nochmal Flip, dann hört es auch, ich glaub da liegt irgendwo der Fehler... |
||
***JONATHAN*** |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hmmm....ich hab als Hintergrund ein großes graues Rechteck. Und das wird anscheinend immer wiedergeladen und dann gelöscht. Deshalb flimmert es. Es liegt also nicht an GetInput$
Trotzdem frag ich mich, wie ich verhindern kann, dass es flimmert... |
||
![]() |
Abrexxes |
![]() Antworten mit Zitat ![]() |
---|---|---|
***JONATHAN*** hat Folgendes geschrieben: Und das wird anscheinend immer wiedergeladen und dann gelöscht. Deshalb flimmert es.
Kaum, es sei denn du sitzt an einem Pentium 60. Zeig doch mal den ganzen Code. cu |
||
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
2 flips sind doof...also lass das in der funktion weg | ||
***JONATHAN*** |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Abrexxes hat Folgendes geschrieben: Zeig doch mal den ganzen Code.
Okay, wenn er reinpasst ![]() ![]() Code: [AUSKLAPPEN] AppTitle "Rollenspiel"
Graphics 1280,1024 SetBuffer BackBuffer() Geld=100 XP=0 Optionen=1 WHaendler=1 THaendler=1 Markt=1 Font1=LoadFont("Arial",20,1,0,0) lKasten=LoadImage("leerer Kasten.bmp") langschwert=LoadImage(".bmp") bogen=LoadImage(".bmp") knüppel=LoadImage("knüppel.bmp") dolch=LoadImage(".bmp") stab=LoadImage(".bmp") pferd=LoadImage(".bmp") ross=LoadImage(".bmp") schimmel=LoadImage(".bmp") esel=LoadImage(".bmp") pgb=LoadImage(".bmp") agb=LoadImage(".bmp") flb=LoadImage(".bmp") ;Color 127,127,127 Wenn ich diese Rechteck da lassen würde, würde es extrem flimmern... ;Rect 0,0,1055,1024 Goto Hauptprogramm .clean Cls If Whaendler=1 DrawImage lKasten,1055,50 If wd=2 DrawImage Dolch,1055,50 If wb=2 DrawImage Bogen,1055,50 If ws=2 DrawImage Stab,1055,50 If ws=2 DrawImage Schwert,1055,50 If wk=2 DrawImage Knüppel,1055,50 If Thaendler=1 DrawImage lKasten,1055,300 If tp=1 DrawImage Pferd,1055,300 If tr=1 DrawImage Ross,1055,300 If ts=1 DrawImage Schimmel,1055,300 If te=1 DrawImage Esel,1055,300 If Markt=1 DrawImage lKasten,1055,550 If bp=1 DrawImage prall,1055,550 If ba=1 DrawImage angemessen,1055,550 If bf=1 DrawImage fast,1055,550 Color 255,0,0 SetFont Font1 Text 1120,50, "Deine Waffe:" Text 1128,300, "Dein Tier:" Text 1110,550, "Dein Proviant:" Text 1067,825, "Deine Erfahrungspunkte:" Text 1160,855, XP Rect 0,20,1055,8 Flip Cls Flip Return .Hauptprogramm ;DrawImage lKasten,1055,50 Das hab ich mal weggemacht, weil du die Bilde ja nicht hast, das wäre aber eigentlich ;DrawImage lKasten,1055,300 ein leere Kasten ;DrawImage lKasten,1055,550 Color 255,0,0 SetFont Font1 Text 1120,50, "Deine Waffe:" Text 1128,300, "Dein Tier:" Text 1110,550, "Dein Proviant:" Text 1067,825, "Deine Erfahrungspunkte:" Text 1160,855, XP Rect 0,20,1055,8 Text 0,30,"ROLLENSPIEL" Text 0,45,"" Text 0,60,"Herzlich Willkommen bei dem ULTIMATIVEN ROLLENSPIEL :-)" Text 0,75,"" Text 0,90,"" Text 0,105,"Das hier ist das 'Hauptmenü'. Hierüber kannst du alle wichtigen Funktionen auswählen." Text 0,120,"" Text 0,135,"1 - Spiel starten" Text 0,150,"2 - Einstellungen" Text 0,165,"3 - Anleitung" Text 0,180,"4 - Beenden" Text 0,195,"" .Hfrage Text 0,210,"" HFrage = GetInput$(0,0,"Was willst du machen? (Jeweilige Zahl eingeben:) ") If HFrage= 1 Then Gosub clean Goto anfang If HFrage= 2 Then Gosub clean Goto optionen If HFrage= 3 Then Gosub clean Goto anleitung If HFrage= 4 Then Gosub clean Goto ende If HFrage <> 1 Or 2 Or 3 Or 4 Print"Bitte 1,2,3 oder 4 eingeben!" Goto HFrage .Hauptmenü Text 0,30,"" Text 0,45,"1 - Spiel starten" Text 0,60,"2 - Einstellungen" Text 0,75,"3 - Anleitung" Text 0,90,"4 - Beenden" Text 0,105,"" .frage Text 0,120,"" Frage = GetInput$(0,0,"Was willst du machen? (Jeweilige Zahl eingeben:) ") If Frage= 1 Then Gosub clean Goto anfang If Frage= 2 Then Gosub clean Goto optionen If Frage= 3 Then Gosub clean Goto anleitung If Frage= 4 Then Gosub clean Goto ende If Frage <> 1 Or 2 Or 3 Or 4 Print"Bitte 1,2,3 oder 4 eingeben!" Goto Frage Flip .Optionen Text 0,30,"EINSTELLUNGEN:" Flip Name$=GetInput$(0,0,"Dein Name: ") Gosub clean Flip Alter2=GetInput$(0,0,"Dein Alter: ") Gosub clean Flip Text 0,45,"" Optionen=2 .frage0 Text 0,60,"" Gosub clean Frage0=GetInput$(0,0,"1 - Zurück ins Hauptmenü, 2 - Spiel beenden: ") If Frage0=1 Then Gosub clean Goto hauptmenü If Frage0=2 Then Gosub clean Goto ende If Frage0 <> 1 Or 2 Text 0,75,"Bitte 1 oder 2 eingeben!" Goto Frage0 Flip .anleitung Text 0,30,"" Text 0,45,"ANLEITUNG:" Text 0,60,"" Text 0,75,"Dieses Rollenspiel steuerst du durch Eingabe von Zahlen." Text 0,90,"" Text 0,105,"Wenn du während dem Spiel deinen Geldstand einsehen willst, gib 9 ein!" Text 0,120,"" Text 0,135,"Wenn es manchmal nicht von selbst weiter geht, muss du ENTER drücken!" Flip WaitKey .frage1 Text 0,150,"" Frage1=GetInput$(0,0,"1 - Zurück ins Hauptmenü, 2 - Spiel beenden: ") If Frage1=1 Then Gosub clean Goto hauptmenü If Frage1=2 Then Gosub clean Goto ende If Frage1 <> 1 Or 2 Text 0,150,"Bitte 1 oder 2 eingeben!" Goto Frage1 .anfang Flip ;Optionen? If Optionen=1 Gosub clean Goto optionen1 If Optionen=2 Gosub clean Goto optionen2 .optionen1 Flip Text 0,30,"Bitte erst die Einstellungen eingeben!" Text 0,45,"" Text 0,60,"1 - Spiel starten" Text 0,75,"2 - Einstellungen" Text 0,90,"3 - Anleitung" Text 0,105,"4 - Beenden" Text 0,120,"" frage2=2 .frage2 Text 0,135,"" Frage2 = GetInput$(0,0,"") If Frage2= 1 Then Gosub clean Goto anfang If Frage2= 2 Then Gosub clean Goto optionen If Frage2= 3 Then Gosub clean Goto anleitung If Frage2= 4 Then Gosub clean Goto ende If Frage2 <> 1 Or 2 Or 3 Or 4 Text 0,135,"Bitte 1,2,3 oder 4 eingeben!" Goto Frage2 ;ANFANG .optionen2 Gosub clean Text 0,30,"KAPITEL 1 - DER AUFSTIEG DES BÖSEN" Flip WaitKey Gosub clean Text 0,45,"Dein Name ist " + Name$ + ", du kommst aus Catan, einem kleinem Dorf, das tief in einem großem Wald liegt." Text 0,60,"Du bist der Sohn eines reichen Kaufmanns und willst nun, du bist schon " + Alter2 + " Jahre, in die Weiten der" Text 0,75,"großen Welt reisen, um dort dein Abenteuer zu erleben." Flip WaitKey Gosub clean Text 0,90,"" Text 0,105,"Doch bevor es soweit ist, muss du noch einige Sachen erledigen!" Text 0,120,"" Text 0,135,"1. Du brauchst umbedingt eine Waffe, um dich gegen die wilden Monster dort draußen zu verteidigen." Text 0,150,"2. Du musst dir ein Transporttier zulegen, schließlich willst du den ganzen Weg nicht laufen." Text 0,165,"3. Brauchst du noch Verpflegung für deine Reise." .frage3 Frage3=GetInput$(0,0,"Q-ERLEDIGUNGEN: Was willst du als erstes erledigen? ") If Frage3=1 Then Goto Waffenhaendler If Frage3=2 Then Goto Tierhaendler If Frage3=3 Then Goto Markt If Frage3=9 Then Gosub Geld If Frage3 <> 1 Or 2 Or 3 Or 9 Text 0,180,"Q-ERLEDIGUNGEN: Bitte 1,2,3 oder 9 eingeben!" Goto Frage3 Flip ;WAFFENHÄNDLER .Waffenhaendler If Whaendler=1 Goto WH1 If WHaendler=2 Goto WH2 .WH1 Gosub clean Text 0,30,"WAFFENHÄNDLER" Text 0,45,"" Text 0,60,"Der Waffenhändler hat folgende Waffen im Angebot:" Text 0,75,"1 - Ein scharfes Langschwert, 35 Gold" Text 0,90,"2 - Einen vergifteten Dolch, 20 Gold" Text 0,105,"3 - Einen schweren Knüppel, 15 Gold" Text 0,120,"4 - Einen langen Stab, 25 Gold" Text 0,135,"5 - Einen edlen Bogen, 35 Gold" .Frage5 Frage5=GetInput$(0,0,"Q-WAFFENKAUF: Welche Waffe nimmst du? ") If Frage5=1 Then Goto Langschwert If Frage5=2 Then Goto Dolch If Frage5=3 Then Goto Knueppel If Frage5=4 Then Goto Stab If Frage5=5 Then Goto Bogen If Frage5=9 Then Gosub Geld If Frage5<> 1 Or 2 Or 3 Or 4 Or 5 Or 9 Text 0,150,"Q-WAFFENKAUF: Bitte 1,2,3,4,5 oder 9 eingeben!" Goto Frage5 Flip .Langschwert Waffe$="Langschwert" XP=XP+50 WHaendler=2 Geld=Geld - 35 ws=2 Gosub clean Text 0,30,"Du hast dir ein Langschwert gekauft" Flip WaitKey Goto kaufen .Dolch wd=2 Waffe$="Dolch" XP=XP+50 WHaendler=2 Geld=Geld - 20 Gosub clean Text 0,30,"Du hast dir einen Dolch gekauft" Flip WaitKey Goto kaufen .Knueppel wk=2 Waffe$="Knueppel" XP=XP+50 WHaendler=2 Geld=Geld - 15 Gosub clean DrawImage knüppel,1055,50 Text 0,30,"Du hast dir einen Knüppel gekauft" Flip WaitKey Goto kaufen .Stab ws=2 Waffe$="Stab" XP=XP+50 WHaendler=2 Geld=Geld - 25 Gosub clean Text 0,30,"Du hast dir einen Stab gekauft" Flip WaitKey Goto kaufen .Bogen wb=2 Waffe$="Bogen" XP=XP+50 WHaendler=2 Geld=Geld - 35 Gosub clean Text 0,30,"Du hast dir einen Bogen gekauft" Flip WaitKey Goto kaufen .WH2 Gosub clean Text 0,30,"Du hast dir doch schon ein/en " + Waffe$ + " gekauft! Flip WaitKey Goto kaufen ;TIERHÄNDLER .Tierhaendler If THaendler=1 Goto T1 If Thaendler=2 Goto T2 .T1 Gosub clean Text 0,30,"TIERHÄNDLER" Text 0,45,"" Text 0,60,"Der Tierhändler hat folgende Tiere im Angebot:" Text 0,75,"1 - Ein edles Pferd, 45 Gold" Text 0,90,"2 - Ein normales Ross, 35 Gold" Text 0,105,"3 - Einen alten Schimmel, 20 Gold" Text 0,120,"4 - Einen dicken Esel, 10 Gold" .Frage6 Frage6=GetInput$(0,0,"Q-TIERKAUF: Welches Tier nimmst du? ") If Frage6=1 Then Goto Pferd If Frage6=2 Then Goto Ross If Frage6=3 Then Goto Schimmel If Frage6=4 Then Goto Esel If Frage6=9 Then Gosub Geld If Frage6<> 1 Or 2 Or 3 Or 4 Or 9 Text 0,135,"Q-TIERKAUF: Bitte 1,2,3,4 oder 9 eingeben!" Goto Frage6 Flip .Pferd tp=2 Tier$="edles Pferd" XP=XP+50 Thaendler=2 Geld=Geld - 45 Gosub clean Text 0,30,"Du hast dir ein edles Pferd gekauft!" Flip WaitKey Goto kaufen .Ross tr=2 XP=XP+50 Thaendler=2 Geld=Geld - 35 Tier$="normales Ross" Gosub clean Text 0,30,"Du hast dir ein normales Ross gekauft!" Flip WaitKey Goto kaufen .Schimmel ts=2 Tier$="edles Pferd" XP=XP+50 Thaendler=2 Geld=Geld - 20 Gosub clean Text 0,30,"Du hast dir ein edles Pferd gekauft!" Flip WaitKey Goto kaufen .Esel te=2 Tier$="alten Schimmel" XP=XP+50 Thaendler=2 Geld=Geld - 10 Gosub clean Text 0,30,"Du hast dir einen alten Schimmel gekauft!" Flip WaitKey Goto kaufen .T2 Gosub clean Text 0,30,"Du hast dir schon ein/en " + Tier$ + "gekauft!" Flip WaitKey Goto kaufen ;MARKT .Markt If Markt=1 Goto M1 If Markt=2 Goto M2 .M1 Gosub clean Text 0,30,"MARKT" Text 0,45,"Der Marktverkaufer stellt dir folgende Fresspackete zur Wahl:" Text 0,60,"1 - Einen prall gefüllten Beutel, 15 Gold" Text 0,75,"2 - Einen angemessen gefüllten Beutel, 10 Gold" Text 0,90,"3 - Einen fast leeren Beutel, 5 Gold" .Frage7 Frage7=GetInput$(0,0,"Q-PROVIANTKAUF: Welchen Beutel nimmst du? ") If Frage7=1 Then Goto pgbeutel If Frage7=2 Then Goto agbeutel If Frage7=3 Then Goto flbeutel If Frage7=9 Then Gosub Geld If Frage7<> 1 Or 2 Or 3 Or 4 Or 9 Text 0,105,"Q-PROVIANTKAUF: Bitte 1,2,3 oder 9 eingeben!" Goto Frage7 Flip .pgbeutel bp=2 XP=XP+50 Essen$="prall gefüllten Beutel" Geld=Geld - 15 Markt=2 Gosub clean Text 0,30,"Du hast dir einen prall gefüllten Beutel gekauft!" Flip WaitKey Goto kaufen .agbeutel ba=2 XP=XP+50 Essen$="angemessen gefüllten Beutel" Geld=Geld - 10 Markt=2 Gosub clean Text 0,30,"Du hast dir einen angemessen gefüllten Beutel gekauft!" Flip WaitKey Goto kaufen .flbeutel bf=2 XP=XP+50 Essen$="fast leeren Beutel" Geld=Geld - 5 Markt=2 Gosub clean Text 0,30,"Du hast dir einen fast leeren Beutel gekauft!" Flip WaitKey Goto kaufen .M2 Gosub clean Text 0,30,"Du hast dir bereits " + Essen$ + " gekauft!" Flip WaitKey Goto kaufen ;GELD .Geld Gosub clean Print"In deinem Geldbeutel befinden sich " + Geld + " Goldstücke" Flip WaitKey Return ;KAUFEN .kaufen If Thaendler=2 And Whaendler=2 And Markt=2 Goto anfang2 Gosub clean Text 0,30,"Q-ERLEDIGUNGEN: Wohin willst du jetzt gehen?" Text 0,45,"1 - Waffenhändler" Text 0,60,"2 - Tierhändeler" Text 0,75,"3 - Marktplatz" .frage4 Frage4=GetInput$(0,0,"") If Frage4=1 Then Goto Waffenhaendler If Frage4=2 Then Goto Tierhaendler If Frage4=3 Then Goto Markt If Frage4=9 Then Gosub Geld If Frage4 <> 1 Or 2 Or 3 Or 9 Text 0,90,"Q-ERLEDIGUNGEN: Bitte 1,2,3 oder 9 eingeben!" Goto Frage4 Flip .anfang2 Gosub clean Text 0,30,"Puh, endlich alles erledigt..." Text 0,60,"Hier ist nochmal deine komplette Ausrüstung:" Flip WaitKey Gosub clean Text 0,30,"Deine Waffe:" Text 0,45,"Ein/en " + Waffe$ Text 0,60,"" Text 0,75,"Dein Tier:" Text 0,90,"Ein/en " + Tier$ Text 0,105,"" Text 0,120,"Deine Proviant:" Text 0,135,"Ein " + Essen$ Text 0,150,"" Text 0,165,"Deine Geld:" Text 0,180,Geld + " Gold" Flip WaitKey Gosub clean Text 0,30,"Um weiter zu spielen kaufe dir die Vollversion diese grandionen Rollenspiels!" Flip WaitKey Gosub clean Text 0,30,"Es kostet nur 50 Euro!!!" Flip WaitKey Gosub clean Text 0,30,"Was? Du willst nicht?!?" Flip WaitKey Gosub clean Text 0,30,"Na dann eben nicht!" Flip WaitKey Goto anfang3 .anfang3 End .ende End ;das hier ist die Fuktion, die ich aus dem Forum bekommen habe... Function GetInput$(x,y,prompt$,inputtext$="") zeichenanzahl=0 FlushKeys() Repeat width=StringWidth(prompt$+inputtext$) ; Input ********************************************************************************************************** iKeyPressed = GetKey() If iKeyPressed = 13 Then sKeyPressed$ = "" Else sKeyPressed$ = Chr$(iKeyPressed) EndIf If iKeyPressed Then inputtext$ = inputtext$ + sKeyPressed$ zeichenanzahl= zeichenanzahl+ 1 EndIf If KeyDown(14) And zeichenanzahl> 0 Then ;Backspace inputtext$ = Left$(inputtext$,zeichenanzahl- 1) zeichenanzahl= zeichenanzahl- 1 EndIf Text x,y,prompt$+inputtext$ Flip Until iKeyPressed = 13 ; Enter FlushKeys() Return inputtext$ End Function So, das war's schon, du hast es ja so gewollt ![]() Ich hoffe du kannst mir jetzt auch sagen, woran das flimmern liegt... /EDIT: So vielleicht?!? Ja jetzt ist es übersichtlicher ![]() |
||
- Zuletzt bearbeitet von ***JONATHAN*** am Di, Jul 03, 2007 17:22, insgesamt 2-mal bearbeitet
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
es gibt hier ne nette funktion zum Code-Posten!
schau mal unter der smilieleiste nach, da steht "Code" das klickst du einmal an, fügst danch deinen code ein und clickst es nochmal an! dann sieht man das besser als wenn man jetzt deinen post durchgehen muss, auserdem wird das dann net so ewig lang! |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
1. CodeTag nutzen
2. Keine Doppelposts. 3. Goto ist fürn Hintern. |
||
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 |
***JONATHAN*** |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
1. ok
2. ok 3. Ich find die irgendwie cool, auch wenn sie unübersichtlich sind^^ |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group