Rafep
-
Postów
9 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Odpowiedzi opublikowane przez Rafep
-
-
Proszę:
if global.generator = true { generator = false; if distance_to_object(obj_biom_pustynia) < 500 { los = irandom_range(0, 4); if los < 4 { if pustynia > 0 { instance_create(x, y, obj_biom_pustynia); pustynia -= 1; generator = true; } } } if generator != false { los = irandom_range(0, 15); if los < 15 { instance_create(x, y, obj_biom_trawa); pustynia += 1; } if los = 15 { if pustynia > 0 { instance_create(x, y, obj_biom_pustynia); pustynia += 1; } else { instance_create(x, y, obj_biom_trawa); pustynia += 1; } } } instance_create(x, y, obj_biom_trawa); x += pixels_beetween_biomes; if x > room_width / pixels_beetween_biomes * pixels_beetween_biomes { if y > room_height / pixels_beetween_biomes * pixels_beetween_biomes { global.generator = false; } else { y += pixels_beetween_biomes; x = pixels_beetween_biomes; } } }
-
Tak, używam wersji właśnie GM:S 1.4.
A funkcji randomize(); używam właśnie w create obiektu.
-
Cześć! Ostatnio użyłem w mojej grze funkcji:
irandom_range(0, 15);
Tylko, że wynik zawsze jest równy 0.
Próbowałem też użyć na początku kodu funkcji:
randomize();
ale też nie działa... Wie ktoś jak to naprawić?
-
Już mam rozwiązanie! Przez źle działający skrypt na render, aby zwiększyć optymalizację gry, niektóre z obiektów dezaktywowały się.
To by było na tyle w tym temacie, dalej sobie sam poradzę
-
Zmieniłem kod w taki sposób, jak mi poradziłeś, ale błąd nadal występuje :<
Poza tym wydaje mi się, że źle zrozumiałeś problem. Obiekt porusza się w dobrym kierunku. (nadałem sprite obiektowi i widzę, że porusza się dobrze) Błąd polega na tworzeniu obiektów.
Tam, gdzie powinny się tworzyć - nie tworza się, a jedynie na chwilkę pojawia się sprite obiektu.
Mam nadzieję, że teraz rozumiesz.
-
Cześć! Ostatnio napisałem taki bardzo prosty generator terenu:
Obiekt obj_generator:
Create:
pixels_beetween_biomes = 150; generator = false; x = pixels_beetween_biomes; y = pixels_beetween_biomes; global.generator = true;
Step:
if global.generator = true { generator = false; instance_create(x, y, obj_biom_trawa); x += pixels_beetween_biomes; if x = floor(room_width / pixels_beetween_biomes) * pixels_beetween_biomes { if y = floor(room_height / pixels_beetween_biomes) * pixels_beetween_biomes { global.generator = false; } else { y += pixels_beetween_biomes; x = pixels_beetween_biomes; } } }
Obiekt porusza się tak, jak chciałem, ale problem jest z tworzeniem obiektu.
Obrazek przedstawia taki "schemat" tego, gdzie się generują, a gdzie nie obiekty "obj_biom_trawa" (czarne piksele przedstawiają miejsca, gdzie obiekty generują się normalnie, a białe - tam gdzie się nie generują)
Dodam jeszcze, że gdy obiekt obj_generator znajduje się w miejscu, gdzie miałby się pojawić "obj_biom_trawa", ale się nie pojawia, to na chwileczkę pojawia się sprite tego obiektu.
Wie ktoś dlaczego tak się dzieje?
-
@Adriann Kod uruchamia się tylko, gdy wartość jest równa 4.
@SimianVirus7 Działa!
@Konrad-GM Też działa!
No. To w takim razie znalazłem już odpowiedź na moje pytanie. Jestem nowy na tym forum, tu się zamyka temat jakoś czy coś?
-
Cześć! Ostatnio napisałem taki oto kod w GM:S 1.4:
if floor(obj_gracz_widoczny.image_index) = 0 or 4
tylko, że warunek zawsze jest niespełniony. Nawet gdy image_index obiektu obj_gracz_widoczny jest równe 0 lub 4.
Natomiast, gdy usunę " or 4" to wszystko działa. Gdy image_index obiektu jest równy 0 wykonuje się dalszy ciąg kodu. Próbowałem też zamiast "or" wstawić "||", ale nie pomogło.
Wiecie może jak to naprawić?
Niedziałająca funkcja na losowanie liczb
w Pytania początkujących
Opublikowano
@I am Lord Ty.
Faktycznie xD Właśnie odkryłem jak głupi jestem.
@gnysek Mam GM:S 1.4.1804. Dlaczego? Bo nie wiem gdzie pobrać 1.4.9999. Serio. Gdzie można to pobrać?