Kniffel ? Wie geht das ?

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

ToeB

Betreff: Kniffel ? Wie geht das ?

BeitragSa, Feb 17, 2007 15:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

Graphics 800,600,16,2
SetBuffer BackBuffer()
AppTitle "Kniffel Version 1.0 ( PC )"

SeedRnd MilliSecs()

Dim zahl(5)

Repeat
If KeyHit(57) Then Wurf()
For I = 1 To 5
Text (I*10),1,zahl(I)
Next
Text 1,20,"CheckWin : "+CheckWin()
Flip
Cls
Until KeyHit(1)
End



Function Wurf()
GW = GraphicsWidth()/2
Repeat
Text GW,100,"Es wird gewürfelt.Bitte Warten.",1,1
Text GW,150,"Leertaste um zu stoppen",1,1
For i = 1 To 5
zahl(i) = Rand(1,6)
Text GW+(i*10),300,zahl(i),1,1
Next
Flip
Cls
Until KeyHit(57)
End Function


Function Check(W)
For i = 1 To 5
If zahl(i) = W Then Wert = Wert + 1
Next
Return Wert
End Function


Function CheckWin$()
For i = 1 To 5
Select Check(i)
Case 0
Return "Nichts":Exit
Case 1
Return "Nichts":Exit
Case 2
Return "Ein Paar":Exit
Case 3
Return "Ein Dreierpasch":Exit
Case 4
Return "Ein Viererpasch":Exit
Case 5
Return "Eine Super 5":Exit
End Select
Next
End Function


Irgentwie klappt das nicht Sad ... Wie geht das denn richtig ?
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Smily

BeitragSa, Feb 17, 2007 15:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Bitte lern endlich mal deine Sources zu Formatieren.
Es wird nur geprüft, ob ein paar, dreier etc. für die 1 da ist, da return die Funktion sofort abbricht.

mfg, 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

ToeB

BeitragSa, Feb 17, 2007 16:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Oh Danke !!!
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

SpionAtom

BeitragSa, Feb 17, 2007 17:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Und nochmal ein bißchen Werbung: Mein Kniffel.
Es liegt als Quelltext vor, und dort kannst du auch sehen, wie man Dinge wie Full House oder Straßen abfragt. Wink
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080

ToeB

BeitragSa, Feb 17, 2007 22:43
Antworten mit Zitat
Benutzer-Profile anzeigen
kay, thx @all !




~EDIT~

Ich hab mal meinen code formatiert :

Code: [AUSKLAPPEN]

;--------------------
;------ KNIFFEL -----
;--------------------
;- Created by Crack -
;--------------------
;
;--------------------
;--- Graphiken : ----
;--------------------

Graphics 800,600,16,2
SetBuffer BackBuffer()
AppTitle "Kniffel Version 1.0 ( PC )"

;-------------------------------
;--- Alles einstellen etc. : ---
;-------------------------------

;"Rand" oder "Rnd" auf zufällig setzten :
SeedRnd MilliSecs()

;Array "zahl" Dimmen :
Dim zahl(5)

;---------------------------
;--- Die Haubtschleife : ---
;---------------------------

Repeat

;Würfeln wenn Leertaste :
  If KeyHit(57) Then Wurf()
; Dann die Zahlen aufschreiben :
For I = 1 To 5
  Text (I*10),1,zahl(I)
Next

;Wie viele zahlen ?
For i = 1 To 6
  Text 1,40+(I*20),"Von der "+i+" sind "+Check(i)+" da."
Next
;Function CheckWin$() "Printen" :

Text 1,20,"CheckWin : "+CheckWin()

;Flippen und löschen
Flip
Cls
;Schleife ende :
Until KeyHit(1)
;Beendet das Programm :
End


;--------------------
;--- Functionen : ---
;--------------------


Function Wurf()
;die hälfte von der Bildschirm-BREITE festlegen :
GW = GraphicsWidth()/2
; Dann die Schleife :
  Repeat
   ; Dann einen Text schreiben :
    Text GW,100,"Es wird gewürfelt.Bitte Warten.",1,1
    Text GW,150,"Leertaste um zu stoppen",1,1
       ;Die "Rand" zahlen anzeigen (hintereinander : "
      For i = 1 To 5
        zahl(i) = Rand(1,6)
        Text GW+(i*10),300,zahl(i),1,1
      Next
     ; Flippen
    Flip
     ; Bildschirm löschen :
   Cls
     ; Schleifen ende :
  Until KeyHit(57)
End Function


Function Check(W)
; For...Next Schleife, die den Wert "+ 1" Rechnet, wenn eine Zahl mit dem wert gefunden wurde :
For i = 1 To 5
  If zahl(i) = W Then Wert = Wert + 1
Next
; Und dann den Wert "Returnrn" ( Wiedergeben ) ^^ :
  Return Wert
End Function


Function CheckWin$()
;For...Next Schleife, die Check ob da sachen x2,x3,x4 oda x5 sind
For i = 1 To 6
  Select Check(i)
    Case 0
      W$ = "Nichts"
    Case 1
      W$ = "Nichts"
    Case 2
      W$ = "Ein Paar"
    Case 3
      W$ = "Ein Dreierpasch"
    Case 4
      W$ = "Ein Viererpasch"
    Case 5
W$ = "Eine Super 5"
End Select
Next
;Und dann returnrn :
Return W$
End Function


so ^^
 

Beatenvoy

BeitragSo, Feb 18, 2007 16:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Case 0 kannst weglassen, weil 0 kannst ja net Würfeln ! Hast immer auf einen Würfel was stehen Wink


EDIT:

Wieso Dimst du Zahl[5] ist auch sinnlos Very Happy

ToeB

BeitragSo, Feb 18, 2007 16:35
Antworten mit Zitat
Benutzer-Profile anzeigen
nö find ich net... Ich finds übersichtlicher...
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!
 

Yogu

BeitragSo, Feb 18, 2007 22:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!

Es gibt übrigens ein Beispiel für ein Kniffel, wenn auch mit 6 Würfeln Confused Ein bisschen kompliziert, aber die Straßen und so sind da auch dabei. Es heißt "BlitzDicey" im Ordner "games" von BlitzBasic (jedenfalls die Vollversion von BlitzPlus Version 1.40) Vielleicht tuts hier nichts zur Sache, auch auf Englisch, aber ich wollts mal erwähnen.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group