Highscoresystem
Übersicht

![]() |
ShadowJumperBetreff: Highscoresystem |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich bin dabei für mein Spiel ein Highscoresystem zu "basteln"
folgendes steht dafür ganz am anfang Code: [AUSKLAPPEN] Global punkte
dann kommt das Spiel und am Ende wird folgende Function aufgerufen
Global namenlaenge=0 ;für die Länge des Namens Global buchstabe=0 ;temporär für den ASCII-Code Dim letter$(17) ;für die Schrift beim eingeben des Namens For i = 1 To 17 letter$(i)="" Next Global temp$ ;eine temporäre Variable für die Highscore Global name$ ;für den Namen stream=OpenFile("Data.dat") Global pos=0 Code: [AUSKLAPPEN] Function highscoreeingabe(pl) ;pl entspricht momentan immer 1
Cls FlushKeys buchstabe=0 namenlaenge=0 name="" fertig=0 For i = 1 To 17 letter$(i)="" Next Repeat Cls buchstabe=GetKey() If KeyHit(28) And namenlaenge>=3 Then For i = namenlaenge+1 To 17 letter$(i)="." Next fertig=1 ElseIf buchstabe=8 And namenlaenge>0 Then letter$(namenlaenge)="" namenlaenge=namenlaenge-1 ElseIf buchstabe>=32 And namenlaenge<18 Then letter$(namenlaenge+1)=Chr(buchstabe) namenlaenge=namenlaenge+1 buchstabe=0 EndIf name=letter$(1)+letter$(2)+letter$(3)+letter$(4)+letter$(5)+letter$(6)+letter$(7)+letter$(8)+letter$(9)+letter$(10)+letter$(11)+letter$(12)+letter$(13)+letter$(14)+letter$(15)+letter$(16)+letter$(17) Text 0, 0, name Text 0, 24, namenlaenge Flip Until fertig=1 bis hierhin funktioniert alles normal, aber es wurde nur der Name eingegeben (es ist vlt. nich die einfachste, aber eine F8unktionierende möglichkeit) danch kommt dann das: Code: [AUSKLAPPEN] fertig=0
If punkte<100 Then temp$="..." ElseIf punkte<1000 Then temp$=".." ElseIf punkte<10000 Then temp$="." Else temp$="" EndIf WriteString stream, name+temp If punkte<100 Then pos=22 ElseIf punkte<1000 Then pos=21 ElseIf punkte<10000 Then pos=20 Else pos=19 EndIf Offset=SeekFile(stream, pos) WriteShort stream, punkte pos=pos+2 name=letter$(1)+letter$(2)+letter$(3)+letter$(4)+letter$(5)+letter$(6)+letter$(7)+letter$(8)+letter$(9)+letter$(10)+letter$(11)+letter$(12)+letter$(13)+letter$(14)+letter$(15)+letter$(16)+letter$(17)+temp$+punkte Offset=SeekFile(stream, pos) Cls Text 0, 0, name Flip FlushKeys WaitKey WaitKey WaitKey hauptmenue End Function jedoch funktioniert dieser Teil nich "Invalid Stream Handle" ich hatte es zwar schonmal so, das es in der Datei gespeichert wurde, aber es wurde immer überschrieben hoffe mir kann jemand helfen |
||
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
1: Bei welcher zeile kommt der fehler?
2: Hast du schonmal versucht, die Stream-Variable global zu machen? Gruß, 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 |
![]() |
ShadowJumper |
![]() Antworten mit Zitat ![]() |
---|---|---|
nachdem ich das gemacht hatte hats funktioniert ![]() hätte vlt. au drauf kommen können *Kopf-gegen-Wand-hau* ich hab au schon n bissl wegen speichern und laden probiert und beinahe einen Beitrag deshalb geschrieben (Fehler is mir zum Glück kurz vorher aufgefallen ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group