DobryZiom Opublikowano 18 Sierpnia 2010 Udostępnij Opublikowano 18 Sierpnia 2010 Witam ponownie :) Jestem teraz w trakcie tworzenie edytora map 3D do przykładu który zamierzam dać na forum i mam pewien problem: edytor map przerobiłem z przykładu z tego forum i w nim zapisuje się object_index a ja chcę zapisać object_name. oto kod z przykładu: GML if instance_exists(i) { if i.object_index != object_index { _data += string(i.x)+','+string(i.y)+','+string(i.object_index)+',#'; _instance_count += 1; } } gdy zmieniam na object_name to wywala mi błąd ___________________________________________ ERROR in action number 1 of Key Press Event for S-key Key for object _SYSTEM: In script map_Save: Error in code at line 14: _data += string(i.x)+','+string(i.y)+','+string(i.object_name)+',#'; at position 63: Unknown variable object_name jak wpisuje object_name to zmienia kolor więc chyba powinno działać...jeśli nie to może jakieś inne propozycje? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shockah Opublikowano 18 Sierpnia 2010 Udostępnij Opublikowano 18 Sierpnia 2010 object_get_name(object_index) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DobryZiom Opublikowano 18 Sierpnia 2010 Autor Udostępnij Opublikowano 18 Sierpnia 2010 wielkie dzięki :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DobryZiom Opublikowano 18 Sierpnia 2010 Autor Udostępnij Opublikowano 18 Sierpnia 2010 Mam problem z wczytaniem(bo nigdy się w takie coś nie bawiłem): GML _object_index = string_copy(_data_temp,1,string_pos(',',_data_temp)-1); _data_temp = string_replace(_data_temp,_object_index+',',''); instance_create(real(_x),real(_y),string(_object_index)); _object_index zwraca 0 :/ czemu? W pliku z mapą jest: GML 3#860,186,_Celownik,#704,608,_Dom1,#832,384,_Dom2,# więc chyba powinno wczytać nie? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 18 Sierpnia 2010 Administratorzy Udostępnij Opublikowano 18 Sierpnia 2010 Dałeś fragment jakiegoś kodu, który nie ma żadnego wczytywania, do tego instancje obiektów tworzymy dając identyfikator obiektu a nie stringa. Błąd na błędzie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DobryZiom Opublikowano 18 Sierpnia 2010 Autor Udostępnij Opublikowano 18 Sierpnia 2010 GML var _instance_count, _all_data; _all_data = ''; _instance_count = 0; file_open_read(argument0); _all_data = file_read_string(); file_close(); _instance_count = string_copy(_all_data,1,string_pos('#',_all_data)-1); _all_data = string_replace(_all_data,_instance_count+'#',''); repeat(real(_instance_count)) { _data_temp = string_copy(_all_data,1,string_pos('#',_all_data)-1); _all_data = string_replace(_all_data,string(_data_temp)+'#',''); if string_replace_all(_data_temp,' ','') != '' { _x = string_copy(_data_temp,1,string_pos(',',_data_temp)-1); _data_temp = string_replace(_data_temp,_x+',',''); _y = string_copy(_data_temp,1,string_pos(',',_data_temp)-1); _data_temp = string_replace(_data_temp,_y+',',''); _object_index = string_copy(_data_temp,1,string_pos(',',_data_temp)-1); _data_temp = string_replace(_data_temp,_object_index+',',''); if string_replace_all(_x,' ','') != '' && string_replace_all(_y,' ','') != '' && string_replace_all(_object_index,' ','') != '' { instance_create(real(_x),real(_y),object_get_name(_object_index)); } } } z tym identyfikatorem poprawiłem... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 18 Sierpnia 2010 Administratorzy Udostępnij Opublikowano 18 Sierpnia 2010 object_get_name też zwraca STRING z nazwą, a nie liczbowy identyfikator obiektu (z drzewa zasobów). Powonno być instance_create(real(_x),real(_y),real(_object_index)); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość Opublikowano 18 Sierpnia 2010 Udostępnij Opublikowano 18 Sierpnia 2010 Musiałbyś jakoś pobrać identyfikator obiektu o podanej nazwie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DobryZiom Opublikowano 18 Sierpnia 2010 Autor Udostępnij Opublikowano 18 Sierpnia 2010 object_get_name też zwraca STRING z nazwą, a nie liczbowy identyfikator obiektu (z drzewa zasobów). Powonno być instance_create(real(_x),real(_y),real(_object_index)); Może spójrz na górę...nie zapisuje już object_index tylko jego nazwę Już sobie poradziłem Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się