koordinaten speichern

  • GM 7

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

  • Hi,

    am besten speicherst du die Koordinaten in eine Textdatei und lädst sie dann wieder. Das Speichern funktioniert so:

    GML-Quellcode

    1. var fl; // Definiert die Variable fl
    2. fl = file_text_open_write("pos.cfg"); // Öffnet die Datei 'pos.cfg', damit in diese geschrieben werden kann
    3. file_text_write_string(fl, string(x)); // Schreibt die x Position des Objekts in die Datei
    4. file_text_writeln(fl); // Beginnt eine neue Zeile in der Datei
    5. file_text_write_string(fl, string(y)); // Schreibt die y Position des Objekts in die Datei
    6. file_text_close(fl); // Schließt die Datei 'pos.cfg'
    Und wenn du die Koordinaten dann wieder laden willst:

    GML-Quellcode

    1. if (file_exists("pos.cfg")) { // Überprüft, ob die Datei 'pos.cfg' existiert.
    2. var fl; // Wenn ja, definieren wir die Variable fl...
    3. fl = file_text_open_read("pos.cfg"); // ...öffnen die Datei 'pos.cfg', damit wir aus der Datei lesen können
    4. x = real(file_text_read_string(fl)); // Liest die x Position des Objekts aus der Datei
    5. file_text_readln(fl); // Springt eine Zeile nach unten
    6. y = real(file_text_read_string(fl)); // Liest die y Position des Objekts aus der Datei
    7. file_text_close(fl); // Schließt die Datei 'pos.cfg'
    8. };

    MfG,
    -fabse64
  • Hi

    Es würde auch mit einer Liste funktionieren

    GML-Quellcode

    1. //////////////////////////////////////////////////////
    2. // Script für die Erstellung der Koordinaten der //
    3. // X-Position und Y-Position in einer Liste //
    4. //////////////////////////////////////////////////////
    5. {
    6. //////////////////////////////////////
    7. // Anzahl der Instance z.B obj_Punkt //
    8. //////////////////////////////////////
    9. var pos_x, pos_y, Punkte_ID;
    10. global.Punkt = 0;
    11. global.Punkt=instance_number(obj_Punkt); // Anzahl der Instance obj_Punkt
    12. global.pos_x=ds_list_create(); // Liste für pos_x erstellen
    13. global.pos_y=ds_list_create(); // liste für pos_y erstellen
    14. for (i=0; i<=global.Punkt; i+=1)
    15. {
    16. Punkte_ID[i]=instance_find(obj_Punkt,i); // Instace ID im Array speichern
    17. with (Punkte_ID[i])
    18. {
    19. ds_list_add(global.pos_x,x); // X-Position in Liste pos_x speichern
    20. ds_list_add(global.pos_y,y); // Y-Position in Liste pos_y speichern
    21. }
    22. }
    23. }
    Alles anzeigen



    im Create von deinen Objekt dann mit

    GML-Quellcode

    1. ////////////////////////////////////////////////////
    2. // Die Koorodinaten werden aus der Liste geholt. //
    3. ////////////////////////////////////////////////////
    4. {
    5. Zufall=round(random(global.Punkt));
    6. Hilfsp_x=ds_list_find_value(global.pos_x,Zufall);
    7. Hilfsp_y=ds_list_find_value(global.pos_y,Zufall);
    8. instance_create(Hilfsp_x+16,Hilfsp_y+16,obj_Hilfspunkt_01)
    9. }



    Gruss Drachen :)
  • ich hab das ganze jetzt mit einem string gemacht

    GML-Quellcode

    1. if (file_exists("pos.cfg")) { // Überprüft, ob die Datei 'pos.cfg' existiert.
    2. var fl; // Wenn ja, definieren wir die Variable fl...
    3. fl = file_text_open_read("pos.cfg"); // ...öffnen die Datei 'pos.cfg', damit wir aus der Datei lesen können
    4. variable = real(file_text_read_string(fl)); // Liest die x Position des Objekts aus der Datei
    5. file_text_close(fl); // Schließt die Datei 'pos.cfg'
    6. };
    7. draw_text(0,-20,string(variable));

    aber dann kommt
    ERROR in
    action number 1
    of Draw Event
    for object oo4:

    Error in function real().
    #BALD#