Skocz do zawartości

Rafep

Użytkownicy
  • Postów

    9
  • Dołączył

  • Ostatnia wizyta

Odpowiedzi opublikowane przez Rafep

  1. 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;
            }
        }
    }

     

  2. 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.

  3. 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? :( 

     

    Błąd game maker.png

  4. 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ć?

×
×
  • Dodaj nową pozycję...