Ich arbeite grade an einem Erfolgssystem im Source Code, das könnte das ganze (eventuell) etwas vereinfachen. Ich hab mir deins jetzt noch nicht angeguckt, aber ich kann ja mal erzählen, was ich da so geplant und teilweise auch schon umgesetzt habe:
Die Erfolge werden dann in der Datei achievements.inf festgelegt und in einer anderen gespeichert werden. Sie gelten nicht nur für eine einzelnde Karte, sondern für das ganze Spiel. Ich habe vor im Hauptmenü einen neuen Unterpunkt zu machen, der in ein seperates Menü führt, in dem alle Erfolge (bereits erhalten oder nicht) aufgelistet werden (mit Name, Icon und kurzer Beschreibung). Es wird auch eine Möglichkeit geben, Name, Icon und Beschreibung bis zum Erhalten zu verbergen. Sobald der Spieler im Spiel einen Erfolg erhält, soll dieser auch oben rechts in der Ecke mit Name, Icon und Beschreibung angezeigt werden. Das Betrachten aller Erfolge wird auserhalb des Hauptmenüs nicht möglich sein.
Es wird 2 Möglichkeiten geben, Erfolge per Scriptbefehle zu vergeben:
- Direkt, z.B. beim Bauen eines Hubschraubers, wie oben gennant.
- In der Definition eines jeden Erfolgs lässt sich eine Anzahl festlegen. Diese kann z.B. genutzt werden, um den Erfolg erst zu vergeben, wenn der Spieler 100 Schafe getötet hat. Per Scriptbefehl wird dann jedes getötete Schaf gezählt und sobald man die Anzahl in der Definition erreicht hat, wird der Erfolg automatisch vergeben.
Mit verschiedenen weiteren Befehlen lässt sich außerdem feststellen, ob der Spieler einen bestimmten Erfolg bereits erhalten hat, wie oft er schon ein Schaf getötet hat, wie viele er insgesamt töten muss. Außerdem kann man das kleine Infofenster, das beim Erhalten eines Erfolgs erscheint, jederzeit oben rechts anzeigen lassen (mit aktuellem Fortschritt zum Erhalten des Erfolgs).
Beim Erhalten eines Erfolgs und hier im Beispiel beim Töten eines Schafes werden außerdem Ereignisse ausgelöst (spezifisch für jede Auszeichnung).
Bisher habe ich das Auslesen aus der Datei, die Grundlagen der oben genannten Befehle und die Funktionen zum Laden und Speichern der Erfolge fertig. Die grafische Umsetzung fehlt noch komplett, genauso wie das automatische Vergeben des Erfolgs bei 100 getöteten Schafen und die genannten Ereignisse.
Wenn ich mal soweit bin, dass ich Bilder machen kann, kann ich die auch mal hochladen. Ich weiß auch noch nicht, ob das alles so funktioniert, wie ich das vorhabe, also bitte werfts mir bitte nicht vor, wenn das hier nix wird. Bin jetzt morgen auch erstmal für nen paar tage weg, komme da also eher weniger zu irgendwas.