2 score systeme

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • 2 score systeme

    Hi

    ich habe in einem spiel 2 verschiedene mods.

    wie mache ich, dass ich 2 verschiedene score systeme habe, also wenn ich im einen spiel 100 schaff, das es dann nicht im 2. score gespeichert ist.

    wenn möglich will ich schon dieses score system nutzen(das was schon gegeben ist), weil komplett selber machen will ich ned
  • hiermit ist es möglich(erstellt externe dateien und benötigt xorcrypt.dll(hab ich in den anhang gepackt))

    vorher muss man dann noch: xor_crypt_init() und xor_crypt_password("passwort") aufrufen

    Laden oder erstellen:
    Spoiler anzeigen

    GML-Quellcode

    1. // Highscore anlegen oder lesen (Room-start)
    2. {
    3. var f_name, f_id, name, punkte; // Variablen anlegen
    4. f_name = "HI_score"+string(argument0)+".ini"; // Filenamen festlegen (hier argument0 als teil des Filenamens)
    5. highscore_clear(); // den alten Highscore (von anderen Rooms) brauchen wir nicht mehr....
    6. // Prüfen ob das File schon exestiert wenn ja lesen wenn nein anlegen
    7. xor_decrypt_all("HI_score"+string(argument0)+".pak",".")
    8. if ( file_exists(f_name))
    9. {
    10. f_id = file_text_open_read(f_name); // File zum lesen öffnen und File-id merken
    11. // Daten für Highscore 1 bis 10 einlesen
    12. repeat (10)
    13. {
    14. name = file_text_read_string(f_id); // Namen lesen
    15. file_text_readln(f_id); // Rest der Zeile weglassen
    16. punkte = file_text_read_string(f_id); // Punkte lesen
    17. file_text_readln(f_id); // nochmal Rest weglassen
    18. highscore_add(name,real(punkte)); // und in die highscoreliste eintragen (Punkte wieder als Zahl)
    19. }
    20. file_text_close(f_id); // Daten sind drin also schön das File wieder zumachen ^^
    21. }
    22. // File gibts noch nicht -> also erstmal eins anlegen ^^
    23. else
    24. {
    25. f_id = file_text_open_write(f_name); // Erstmal ein File zum schreiben anlegen und wieder File-id merken
    26. // 10 mal Dummy-Werte eintragen
    27. punkte = string(0); // is ja noch nicht gespielt worden also score = 10 damit der score auch eingetragen wird
    28. name = ""; // (Hier könnte Ihr Name stehen ^^)
    29. repeat (10)
    30. {
    31. file_text_write_string(f_id,name); // einen "Dummy"-Namen eintragen ^^
    32. file_text_writeln(f_id); // neue Zeile sonst gibts stress beim lesen ^^
    33. file_text_write_string(f_id,punkte); // und die Punkte....
    34. file_text_writeln(f_id); // nochmal ne neue Zeile....
    35. highscore_add(name,real(punkte)); // und gleich auch in die Highscore-liste von diesem Room eintragen
    36. }
    37. file_text_close(f_id); // und nicht vergessen das File wieder zu zu machen ^^
    38. }
    39. xor_encrypt_add(f_name)
    40. xor_encrypt_start("HI_score"+string(argument0)+".pak")
    41. file_delete(f_name)
    42. // den Code könnt ihr beim room-start ausführen....
    43. }
    Alles anzeigen


    Speichern:
    Spoiler anzeigen

    GML-Quellcode

    1. //--------------------------------------------------------------------------------------------------------------------------------------------------------------
    2. // Highscore schreiben (Room-ende oder game-over)
    3. {
    4. var f_name, f_id, nr, name, punkte; // Variablen anlegen
    5. f_name = "HI_score"+string(argument0)+".ini"; // Filenamen festlegen (hier argument0 als teil des Filenamens)
    6. xor_decrypt_all("HI_score"+string(argument0)+".pak",".")
    7. f_id = file_text_open_write(f_name); // File neu anlegen
    8. // Plätze von 1 bis 10 holen und schreiben
    9. for ( nr = 1; nr <= 10; nr += 1)
    10. {
    11. name = highscore_name(nr); // Namen aus Highscore holen
    12. punkte = string (highscore_value(nr)); // Punkte holen als string
    13. file_text_write_string(f_id,name); // den neuen Namen eintragen
    14. file_text_writeln(f_id); // neue Zeile sonst gibts stress beim lesen ^^
    15. file_text_write_string(f_id,punkte); // und die Punkte....
    16. file_text_writeln(f_id); // nochmal ne neue Zeile....
    17. }
    18. file_text_close(f_id); // und nicht vergessen das File wieder zu zu machen ^^
    19. xor_encrypt_add(f_name)
    20. xor_encrypt_start("HI_score"+string(argument0)+".pak")
    21. file_delete(f_name)
    22. }
    Alles anzeigen


    zum eintragen können die normallen methoden verwendett werden.

    FG
    andre111
    Dateien
    • XorCrypt.zip

      (192,61 kB, 73 mal heruntergeladen, zuletzt: )

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von andre111 ()