Highscore Probleme

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

US-Blitz

ehemals "SimssmiS"

Betreff: Highscore Probleme

BeitragSo, Feb 24, 2013 22:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

Dim HCNames$(11)
Dim HCPoints(11)

Function loadHC() ;lädt einen Highscore
   Local LineIn= ReadFile("res\txts\Highscore.txt")
   For i=0 To 9
      HCNames(i)=ReadString(LineIn)
      HCPoints(i)=ReadInt(LineIn)
   Next
   CloseFile(LineIn)
End Function

Function saveHC() ;speichert einen Highscore ab
   Local LineOut=WriteFile("res\txts\Highscore.txt")
   For i=0 To 9
      WriteString(LineOut,HCNames(i))
      WriteInt(LineOut,HCPoints(i))
   Next
   CloseFile(LineOut)
End Function

Function NewScore(newPoints,geordnetNach$) ;erstellt einen neuen eintrag und fügt ihn ein.   |    HCPoints=Wert den Sie in den Highscore speichern Wollen       ;geordnetNach "klein" oder "groß"
   Local name=Input("Name: ")
   If geordnetNach$="groß" Then
      For i=0 To 9
         If HCPoints(9-i)<newPoints Then
            HCPoints(10-i)=HCPoints(9-i)
            HCNames(10-i)=HCNames(9-i)
            HCPoints(9-i)=newPoints
            HCNames(9-i)=name
            Print "test"
         EndIf
      Next
   EndIf
   If geordnetNach$="klein" Then
      Print "klein"
      For i=0 To 9
         If HCPoints(9-i)>newPoints Or HCNames(9-i)=""Then
            HCPoints(10-i)=HCPoints(9-i)
            HCNames(10-i)=HCNames(9-i)
            HCPoints(9-i)=newPoints
            HCNames(9-i)=name
         EndIf
      Next
   EndIf
End Function

Function getScore(place) ;gibt die Punkte eines bestimmten Platzes zurück
   Return HCPoints(place-1)
End Function

Function getName(place)   ;gibt den Namen eines Bestimmten Platzes zurück
   Return HCNames(place-1)
End Function


Sieht jemand den Fehler warum ich beim ausführen von test2() (siehe unten) nicht die scores sehe, obwohl ich vorher test1() ausgeführt habe.

Code: [AUSKLAPPEN]
Graphics 800,600,32,2

Include "Highscore Tutorial.bb"
test1()
test2()
FlushKeys
WaitKey()
End
Function test1()
   For i=1 To 5
      tmp=Input("points: ")
      NewScore(tmp,"klein")
   Next
   saveHC()
End Function

Function test2()
   LoadHC()
   For i=1 To 10
      Print getName(i)+":  "getScore(i)
   Next
End Function

ZEVS

BeitragSo, Feb 24, 2013 22:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Welchen Inhalt hat denn res\txts\Highscore.txt nach test1?

ZEVS

US-Blitz

ehemals "SimssmiS"

BeitragSo, Feb 24, 2013 23:01
Antworten mit Zitat
Benutzer-Profile anzeigen
" 0  0  0  0  0d "
ohne die "
Außerdem noch Sonderzeichen die hier nicht erscheinen.

Holzchopf

Meisterpacker

BeitragSo, Feb 24, 2013 23:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Du musst name als String und getName als String-Funktion deklarieren, sonst gibt's 0 zurück resp. ist 0:
BlitzBasic: [AUSKLAPPEN]
Local name$=Input("Name: ")

BlitzBasic: [AUSKLAPPEN]
Function getName$(place)
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

US-Blitz

ehemals "SimssmiS"

BeitragSo, Feb 24, 2013 23:12
Antworten mit Zitat
Benutzer-Profile anzeigen
ok danke dennoch nach dem ausführen von test 1 mit
1
t1
2
t2
3
t3
4
t4
5
t5

gibt mir test2 nur
t1:
t2:
t3:
t4:
t5:
:
:
:
:
:
aus
Die Punkte fehlen also völlig

Xeres

Moderator

BeitragSo, Feb 24, 2013 23:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Benutze DebugLog und Stop um heraus zu finden, was da passiert.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragMo, Feb 25, 2013 0:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

du hast jetzt noch ein + Zeichen vergessen in test2()
Code: [AUSKLAPPEN]

;Print getName(i)+":  "getScore(i)
Print getName(i)+":  " + getScore(i)


das zeigt der Debugger wohl nicht an!
sollte aber jetzt funktionieren.
[BB2D | BB3D | BB+]

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group