*.INI Files bei HTML5 Projekt

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

  • *.INI Files bei HTML5 Projekt

    Hi,

    wir erstellen gerade ein kleines RPG auf HTML5 Basis im GameMaker Studio, mit Loginabfrage und Aktionspunkten.

    Laut unserem Code soll GML die Eingaben des Benutzers in einer INI Datei Speicher (Name und Passwort). Sind die Eingaben beim Login korrekt, landet die Spielfigur im 1.Room.

    So erstellt das Game mit jeder CreateAccount Eingabe eine entsprechende USER.INI. Jetzt stellen wir fest, dass dieses speichern nicht auf anhieb funktioniert. Außerdem fragen wir uns: Wo speichert GML die INIs bzw. können wir das irgendwie aktiv festlegen ?

    Quellcode

    1. Create Account:
    2. username = get_string("Bitte gebe einen Usernamen ein", "");
    3. dateiname = username + ".ini";
    4. if(!file_exists(dateiname))
    5. {
    6. ini_open(dateiname);
    7. ini_write_string("Account", "Username", username);
    8. passwort = get_string("Bitte gebe dein Passwort ein", "");
    9. ini_write_string("Account", "Passwort", passwort);
    10. ini_write_real("Position", "X", 0);
    11. ini_write_real("Position", "Y", 0);
    12. ini_write_real("Attribute", "Aktionspunkte", 10);
    13. ini_write_real("Attribute", "Angriff", 1);
    14. ini_write_real("Attribute", "Verteidigung", 1);
    15. ini_close();
    16. }
    17. else
    18. show_message("Account existiert schon")
    19. Login Account:
    20. username = get_string("Bitte geben Sie Ihren Usernamen ein", "");
    21. global.dateiname = username + ".ini";
    22. dateiname = global.dateiname;
    23. if(file_exists(dateiname))
    24. {
    25. ini_open(dateiname);
    26. passwort = get_string("Bitte geben Sie Ihr Passwort ein", "");
    27. if(passwort == ini_read_string("Account", "Passwort", ""))
    28. {
    29. message = ini_read_string("Account", "Username", "No Name") + " ist eingelogged";
    30. show_message(message);
    31. position[0] = ini_read_real("Position", "X", 0);
    32. position[1] = ini_read_real("Position", "Y", 0);
    33. room_goto(rm_Spawn);
    34. instance_create_layer(position[0], position[1],0 , obj_Player);
    35. }
    36. else
    37. {
    38. show_message("Das einegegbene Passwort ist falsch");
    39. }
    40. ini_close();
    Alles anzeigen
  • In HTML5 kann man nicht direkt Dateien abspeichern (keine Ahnung, ob bei GM irgendein System dazu zu finden ist). Was aber geht, dass du das in die LocalStorage speicherst, so eine Art Cookieding, das für jede Internetseite 5MB zur Verfügung stellt. Vielleicht gibt es da schon Extensions für, ansonsten muss man sich eine dazu selbst schreiben. Aufwändig sollte das aber nicht sein. Das Format zum Speichern ist eine Art ds_map.
    Ein Bug ist mehr als nur ein Bug, es ist ein... Käfer!
    Egal, wie gut du eine Mauer baust, sie fällt um.... der klügere gibt nach :D

    Willst du mit mir auf Discord Chatten/Quatschen?
    Meine Husi's Tutorial Reihe