Just nu i M3-nätverket
Jump to content

Fråga ang. "Highscore"


F_Lähnn

Recommended Posts

Hallå!

 

Jag har skapat ett spel i VB. Närspelet är över kommer det upp en ruta med poängen. Nu skulle jag vilja spara dessa i en 10-i-topp eller liknande. Hur gör jag lättast?

Har skapat en "Highscore" lista med hjälp av label men det ända jag får den att visa är det senast spelade.

 

/Feffe

 

Link to comment
Share on other sites

Kan ge dig lite ideér på hur du ska gå till väga.

 

Det här är stegen du måste ta:

 

1. Ladda sparade värden ifrån en text fil till en array när spelet startas.

2. Lägg till eventuell ny highscore när spelaren "dör".

3. Spara din array med highscore till en textfil.

 

Du kan använda dig av något liknande detta för att kolla om ett värde är ett highscore eller ej i din array:

 

Const HIGHSCORES = 10

Public Type Score
   Name As String
   Value As Integer
End Type

Public HiScores(HIGHSCORES) As Score

Public Function AddScore(ByVal Name As String, ByVal Value As Integer) As Boolean
Dim i As Integer
Dim tempName As String
Dim tempValue As Integer
Dim changed As Boolean

changed = False
For i = 1 To HIGHSCORES
   If HiScores(i).Value <= Value Then
       changed = True
       tempValue = HiScores(i).Value
       tempName = HiScores(i).Name
       HiScores(i).Value = Value
       HiScores(i).Name = Name
       Value = tempValue
       Name = tempName
   End If
Next i
AddScore = changed
End Sub

 

Använd dig av en 2D array när du läser in Namn/Score ifrån din textfil.

Lättast är nog att ha en komma separerad textfil i stil med "Kalle/1242,Jonas/987,Maria/643...." sen använder du dig av split() för att läsa in värden i en 2D Array.

 

Ovanstående funktion ger dig ett Integer värde beroende på om ett nytt värde las till i highscore eller ej, då kan du t.ex gratts din användare.

 

 

Hoppas det hjälper dig på traven.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...