Also ich kom nicht auf den Fehler:
Zum Speichern
Alles anzeigen
Zum laden
Alles anzeigen
Das Speichern funktioniert scheinbar
jedoch tut sich beim Laden gar nichts???
Woran liegts?
Ich speichere die rot-grün-blau vektoren als ingesamt drei zeichen ab.
Eine horizontale Pixel-"bahn" ist dann auch eine Zeile in der Datei mit der Länge der Zeichen: Breite*3
Zum Speichern
GML-Quellcode
- file=file_text_open_write('posor.txt') // Ausgabe datei anlegen
- // Farben auslesen
- pos=1
- row=1
- numb=0
- text=""
- repeat (new_width*new_height)
- {
- posor[numb]=draw_getpixel(x+pos,y+row) // Pixelweise auslesen
- text+=string(chr(color_get_red(posor[numb])))+string(chr(color_get_green(posor[numb])))+string(chr(color_get_blue(posor[numb])))
- if pos<new_width
- {
- pos+=1
- } // Zeile und Spalte
- else
- {
- pos=1
- row+=1
- file_text_write_string(file,text)
- file_text_writeln(file)
- text=""
- } // Zeile und Spalte
- numb+=1 // Nächster Pixel
- }
- file_text_close(file) // Ausgabedatei schließen
- show_message("Datei Fertig!") // Die posor.txt ist fertig
Zum laden
GML-Quellcode
- xx=1
- yy=1
- file=file_text_open_read('posor.txt') // Datei zum Auslesen
- s=surface_create(500,500)
- surface_set_target(s)
- draw_clear_alpha(0,0)
- // Farben auslesen
- while not (file_text_eof(file)) // Solange es Zeilen gibt, weiter lesen
- {
- kette=file_text_read_string(file) // Zeile auslesen und so color, x und y bestimmen
- for(p=1;p<string_length(kette)-3;p+=3)
- {
- color=string_copy(kette,p,p+2)
- color=make_color_rgb(ord(string_char_at(color,1)),ord(string_char_at(color,2)),ord(string_char_at(color,3)))
- draw_point_color(x+xx,y+yy,color) // Pixel malen
- xx+=1
- }
- file_text_readln(file) // Neue Zeile
- yy+=1
- xx=1
- }
- file_text_close(file) // Ausgabedatei schließen
- surface_reset_target()
- sleep(1000)
- // Sprite von der Surface erstellen
- new_sprite=sprite_create_from_surface(s,x,y,xx,yy,false,false,0,0)
- show_message('Bild Fertig!') // Hui! Das Bild ist Fertig!
- sprite_index=new_sprite // Dem object das neue Bild zuweisen
Das Speichern funktioniert scheinbar
jedoch tut sich beim Laden gar nichts???Woran liegts?
Ich speichere die rot-grün-blau vektoren als ingesamt drei zeichen ab.
Eine horizontale Pixel-"bahn" ist dann auch eine Zeile in der Datei mit der Länge der Zeichen: Breite*3