Baue gerade ein Quiz game

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Killer999

Betreff: Baue gerade ein Quiz game

BeitragDo, Okt 07, 2004 17:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
ich bin neu hier und sage mal Hallo zu euch.

Ich ahbe da mal eine frage da ich ein quiz game baue will ich versuchen die fragen aus einer text datei zu lesen meine txt datei ist so aufgebaut.

Frage = Wie heisst Bud Spencer mit richtigem Namen?

Antwort A = Carlo Pedersoli

Antwort B = Franco Pedersoli

Antwort C = Alessandro Pedersoli

Diese sachen will ich versuchen irgend wie in mein Programm code rein zuladen.

Beispiel.

1$=Frage = Wie heisst Bud Spencer mit richtigem Namen?

1,2$=Antwort A = Carlo Pedersoli

1,3$=Antwort B = Franco Pedersoli

1,4$=Antwort C = Alessandro Pedersoli

und so dachte ich mir das aber das will nicht ganz gehen.

Hubsi

BeitragDo, Okt 07, 2004 18:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Bist Du schon mit Arrays vertraut? Dann könntest Du die da rein laden:Code: [AUSKLAPPEN]
dim frage$(10),antwort$(10,2),ok$(10)


Function LoadQuestions()
 file=ReadFile("bla.txt")
 while not eof(file)
  frage$(a)=ReadLine(file)
  for b=0 to 2
   antwort$(a,b)=ReadLine(file)
  next
  ok$(a)=ReadLine(file)
  a=a+1
 wend
end function
Aufbau:

Frage
Antwortmöglichkeit
Antwortmöglichkeit
Antwortmöglichkeit
richtige Antwort (z. B. B)

Das ganze dann noch mit der vom User gegeben Antwort vergleichen und fertisch Razz
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

Killer999

BeitragDo, Okt 07, 2004 20:39
Antworten mit Zitat
Benutzer-Profile anzeigen
kann man das auch irgend wie einfacher aufbauen so zum beispiel?

Text.txt Datei

Code: [AUSKLAPPEN]
t$ = "Hallo"


Code Datei

Code: [AUSKLAPPEN]
stream = ReadFile("test.txt")


Print t$


WaitKey
 

biegl

BeitragDo, Okt 07, 2004 20:50
Antworten mit Zitat
Benutzer-Profile anzeigen
ich glaube nicht,weil eine txt ja keine bb datei ist und somit ja auch keine
variablen augelesen werden können.

aber du könnst deine txt datei als bb-file speichern und
dann in dein programm mit include laden.

das könnte dann so aussehen..
text.bb

Code: [AUSKLAPPEN]

global t$ = "Hallo"


Hauptprogramm
Code: [AUSKLAPPEN]


include "text.bb"
Print $t


wichtig ist das du in der text.bb die variablen globalisierst sonst kannst du nicht im hauptprogramm darauf zugreifen...
 

Killer999

BeitragDo, Okt 07, 2004 20:52
Antworten mit Zitat
Benutzer-Profile anzeigen
nur ich will versuchen diese frage datei in eine data.pak zu packen weil muss ich immer die exe updaten.
 

biegl

BeitragDo, Okt 07, 2004 21:00
Antworten mit Zitat
Benutzer-Profile anzeigen
hm....
da weiß ich jetzt auch nicht mehr weiter..

aber es wäre doch nicht schlimm die exe immer abzudaten oder wilst du das andere auch andere fragen reinbauen können?

dann würde ich mir ein kleines update script schreiben..
 

Killer999

BeitragDo, Okt 07, 2004 21:02
Antworten mit Zitat
Benutzer-Profile anzeigen
eigentlich wollt ich das so machen immer so nach 2 wochen die data updaten wo eigentlich die fragen drin stehen und somit immer andere fragen drin sind.

Hubsi

BeitragDo, Okt 07, 2004 21:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann wirst Du um eine externe Datei nicht rumkommen Wink
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

biegl

BeitragDo, Okt 07, 2004 21:11
Antworten mit Zitat
Benutzer-Profile anzeigen
dann würd ichs nicht so umständlich machn und halt die exe immer updaten.

aber das wär doch mal ein geiles feature ein quiz spiel in dem man andere fragen rein bauen könnte....
 

Killer999

BeitragDo, Okt 07, 2004 21:15
Antworten mit Zitat
Benutzer-Profile anzeigen
biegl hat Folgendes geschrieben:
dann würd ichs nicht so umständlich machn und halt die exe immer updaten.

aber das wär doch mal ein geiles feature ein quiz spiel in dem man andere fragen rein bauen könnte....


schade naja dann bleibt mir nichts anderes über naja.

und andere fragen rein bauen kann wär ja auch ein kleines gutes feature
 

biegl

BeitragDo, Okt 07, 2004 21:23
Antworten mit Zitat
Benutzer-Profile anzeigen
scho...

na siehste geht doch alles auch einfacher...

Laughing

Jolinah

BeitragDo, Okt 07, 2004 21:24
Antworten mit Zitat
Benutzer-Profile anzeigen
So schwer ist das ja nun auch wieder nicht mit Arrays und einer externen Datei.

Man muss sich nur einen Aufbau überlegen, z.Bsp:
Code: [AUSKLAPPEN]

.Frage 1?
-Antwortmöglichkeit 1
xAntwortmöglichkeit 2
-Antwortmöglichkeit 3

.Frage 2?
-Antwort1
xAntwort2


Wobei "." eine Frage einleitet, "-" eine Antwortmöglichkeit die aber Falsch ist, "x" eine Antwortmöglichkeit dir Richtig ist.

Dann machst du ne Schleife die solange ausliest bis das Ende der Datei erreicht ist. Dann prüfst du das erste Zeichen auf "." Wenn es ein Punkt hat dann erhöhst du eine Variable die die Fragen zählt um 1. Diesen Zähler benutzt du dann für ein Array. Für die Antworten gehst du so ähnlich vor nur mit "x" und "-". Da musst du dir halt ein System einfallen lassen das zu jeder Frage die zugehörigen Antworten speichert, und ob sie richtig oder Falsch ist. Wenn du Arrays nicht magst kannst du es auch mit Types lösen.
 

Killer999

BeitragDo, Okt 07, 2004 21:30
Antworten mit Zitat
Benutzer-Profile anzeigen
dies ist mein aufbau zu der 1 frage die anderen fragen sind genau so aufgebaut.

Sieht etwas komisch aus ^^ (anfänger)

Code: [AUSKLAPPEN]
Include "pak.bb"
Include "quest.bb"

.anfang       
Cls
bild = LoadImage(Pak("\Bilder\test.kfg"))
Pakclean()
DrawImage bild,1,1

Locate 300,450
high$ =  " 0 Punkte"
Print " 0 Punkte"

stream = ReadFile(pak("frage.txt")) : DLPak()   ; DLPak() deletes the last Unpacked File
wert3$ = ReadLine$(stream)
Pakclean()

Locate 50,450

Print wert3$
Print ""
Print frage1$
Print frage12$
Print frage123$
Print ""

nochmal$=Input (frage1234$)
If nochmal$ = "b" Then Goto zwei
While Not KeyHit(1)
If nochmal$ = "c" Then Print "Leider war diese Antwort falsch"
If nochmal$ = "a" Then Print "Leider war diese Antwort falsch"

high1$ = Player$ + high$


file=WriteFile("high.hig")
WriteLine (file, high1$)
CloseFile file
 

WaitKey()
While Not KeyHit(1)
Wend
End()
Wend
 

Killer999

BeitragDo, Okt 07, 2004 22:06
Antworten mit Zitat
Benutzer-Profile anzeigen
davon wie gerade von mein game reden wollet ich noch etwas zu meine highscore fragen.


Also ich mache es nach ganz einfachen prinzip

Code: [AUSKLAPPEN]
high1$ = Player$ + high$


file=WriteFile("high.hig")
WriteLine (file, high1$)
CloseFile file


aber ich will versuchen das nur 10 stück rein können und nach punkte sotiert wird. weis eienr wie man das amchen könne oder ein tut ?
 

David

BeitragFr, Okt 08, 2004 7:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Das Zauberwort heißt: Arrays!
Wenn du deine ganzen Daten in einem Array hast, ist es ganz einfach die Datensätze zu sortieren und auf 10 Einträge zu begrenzen.
Den Array kannst du dann auch recht einfach speichern!

Desweiteren ist es völlig sinnlos jedesmal die Exe auszutauschen, wenn ein paar neue Fragen hinzugekommen sind. Mach lieber eine externe Datei und les die Daten in ein... Array... ein. Very Happy

Such mal in der Onlinehilfe nach dem Schlüsselwort "Dim" und les dich da ein!

grüße
http://bl4ckd0g.funpic.de
 

Killer999

BeitragFr, Okt 08, 2004 20:12
Antworten mit Zitat
Benutzer-Profile anzeigen
also habe schon eine high tabelle kan man sagen aber ich brauche 1 hilfe noch

ich benutze dieses

"?user=Frank&score=50"

um ein player einzutragen

aber wenn ich Frank durch Player$ ersätze und 50 durch high$ werden nur in der tabelle Player$ und high$ angezeigt und nicht denn spieler.

es liegt ja an denn "" aber bekommt man dies irgend wie hin?

edit : hab es gerade selbst gelöst

hab es so gemacht

trag$ = "?user="
trag2$ = "&score="

gesamt$ = trag$ + Player$ + trag2$ + high$

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group