koordinaten von bestimmten objekten in .txt speichern

  • GM 8

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

  • koordinaten von bestimmten objekten in .txt speichern

    Ich brauche für mein aktuelles projekt die möglichkeit die koordinaten von objekten einzulesen und später wieer auszulesen (vor allem für den map editor)
    im moment mach ich das speichern mit

    GML-Quellcode

    1. global.levelfile = file_text_open_write("meinlevel.txt");
    2. with (all) {
    3. file_text_write_string(global.levelfile,string(object_index)) // + "|" + string(x) + "|" + string(y)); //index
    4. file_text_writeln(global.levelfile);// Nächste Zeile
    5. file_text_write_string(global.levelfile,string(x)); // x-Koordinate
    6. file_text_writeln(global.levelfile);// Nächste Zeile
    7. file_text_write_string(global.levelfile,string(y)); //y-Koordinate.
    8. file_text_writeln(global.levelfile);//Änderung
    9. }
    10. file_text_close(global.levelfile);

    das funzt auch sehr gut nur möchte ich eben nicht von allen objekten die koordinaten speichern sonder ein par besstimmte ausnehmen
    also alle bis auf objekte x,y und z
    wie könnte man das impletieren
    :rage:
  • Du könntest mit object_get_name(object_index) im with-Statement die Name filtern und dann jeweils die Koordinaten speichern oder nicht.
    edit: du kannst natürlich auch ohne object_get_name filtern, nur mit object_index ;)

    - Tobi97
  • henrik1235 schrieb:

    Du könntest mit object_get_name(object_index) im with-Statement die Name
    filtern und dann jeweils die Koordinaten speichern oder nicht.
    Oder gleich if (object_index!=obj_x && object_index!=obj_y && object_index!=obj_y ...)

    wird denn dann nicht die ganze with schleife abgebrochen ich will ja nur die bestimmten objekte überspringen
    :rage:
  • GML-Quellcode

    1. global.levelfile = file_text_open_write("meinlevel.txt");
    2. with (all) {
    3. if (object_index!=obj_x && object_index!=obj_y && object_index!=obj_z) {
    4. file_text_write_string(global.levelfile,string(object_index)) // + "|" + string(x) + "|" + string(y)); //index
    5. file_text_writeln(global.levelfile);// Nächste Zeile
    6. file_text_write_string(global.levelfile,string(x)); // x-Koordinate
    7. file_text_writeln(global.levelfile);// Nächste Zeile
    8. file_text_write_string(global.levelfile,string(y)); //y-Koordinate.
    9. file_text_writeln(global.levelfile);//Änderung
    10. }
    11. }
    12. file_text_close(global.levelfile);
    Alles anzeigen

    Dann wird nur der Code in den { } nach dem if ausgeführt wenn alle Bedienungen true sind.
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • Du kannst aber auch nach dem If auch einfach das continue; Statement benutzen, dann hasse ned so ne verschachtelte if-Abfrage (mache ich persönlich lieber).

    GML-Quellcode

    1. global.levelfile = file_text_open_write("meinlevel.txt");
    2. with (all) {
    3. if (object_index!=obj_x && object_index!=obj_y && object_index!=obj_z) continue;
    4. file_text_write_string(global.levelfile,string(object_index)) // + "|" + string(x) + "|" + string(y)); //index
    5. file_text_writeln(global.levelfile);// Nächste Zeile
    6. file_text_write_string(global.levelfile,string(x)); // x-Koordinate
    7. file_text_writeln(global.levelfile);// Nächste Zeile
    8. file_text_write_string(global.levelfile,string(y)); //y-Koordinate.
    9. file_text_writeln(global.levelfile);//Änderung
    10. }
    11. file_text_close(global.levelfile);
    Alles anzeigen

    Aber der Code funktioniert auch mit Henriks Version.

    - Tobi97