Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

20.11.2006, 16:41

C++/SDL: Highscore komm nicht weiter!

Hallo!
Jetzt komme ich nicht mehr weiter!
Ich möchte zu meinem kleinen Spielchen einen Highscore einbauen.
Immerhin hab ich es geschafft die werte aus einer ini rauszulesen und anzuzeigen.
Doch das ist auch schon alles! :(
Ich weiß einfach nicht, wie ich das bewerkstelligen soll.
Gibt es ein Tutorial dafür oder könnte mir einer ein Code schicken (was wahrscheinlich nicht der fall ist) ?
Bitte um hilfe!

Gruß Flo

PS: Hier meine Probleme:
1) Einfügen eines Neuen Highscores
2) ordnen der Punkten (Plätze)
3) ...
:x

2

20.11.2006, 20:07

du liset ganz einfach jede zeile einzeln aus. zeile 1 für platz 1 und so weiter. dann guckst du wo deine neue highscore hinmüsste, erstezt diesen platz und verschiebst alles nach hinten. dann wieder auslesen^^.

Firefly

Alter Hase

Beiträge: 484

Wohnort: Irgendwoundnirgendwo

  • Private Nachricht senden

3

21.11.2006, 12:46

Was für ein Highscore solls denn werden? Einer im Spiel oder ein Online-Highscore?

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

4

21.11.2006, 12:56

[persönliche Erfahrung]
Es ist oft besser, wenn man die Daten immer komplett läd und beim Speichern die Datei komplett platt macht und neu schreiben lässt. Das sorgt dafür, dass nicht irgendwann mal sich auf Grund alter Datensätze beim Speichern der neuen ein Fehler einschleicht.
[/persönliche Erfahrung]
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Chase

Alter Hase

Beiträge: 753

Wohnort: Nagaoka / Darmstadt / Düsseldorf

Beruf: fauler Studi

  • Private Nachricht senden

5

21.11.2006, 13:16

Wenn du Highscores 'sortieren' willst, finde ich es am praktischsten eine kleine Klasse zu schreiben die Vergleichsoperatoren bereitstellt.
Damit kannst du dann sogar fertige Sortieralgorithmen benutzen.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
class Score
{
public:
    wchar_t name[16];
    int score;

    inline bool operator >=(const Score& other)
    {
        if( this->score >= other.score ) return true;
        else return false;
    }
    // Vergeleiche <=, <, >, ==, .. basteln

};
"Have you tried turning it off and on again?"

6

23.11.2006, 15:22

Also ich hab das jetzt nochmal so angefangen:

ich habe eine structur:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
const int max_p = 10;

struct tPlaetze
         {
                SDL_Surface *Bild;  //Text der angemalt wird (also die Punkte zahl

                int Punkte;         //hier werden die Punkte gespeichert

                int Platz;          //hier sind die Plätze gespeichert!

                
                };

tPlaetze Plaetze[max_p];


also Bild und Punkte habe ich dementsprechend gefüllt!
Kein problem.
Jetzt muss ich aber noch die Plätze verteilen!
Wie geht das? bzw. wie soll ich da anfangen?
von inline funktionen hab ich noch nie was gehört :?

Gruß Flo

Werbeanzeige