Skocz do zawartości

Sutikku

Użytkownicy
  • Postów

    738
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    3

Odpowiedzi opublikowane przez Sutikku

  1. Zamysł był taki, że nic nie widzimy i szukamy cywili (jest ich 10 na początku). W losowym miejscu pojawia się też potwór. Mamy tlen, który nas ogranicza i musimy co chwilę wracać po niego do bazy. Możemy wykorzystać tlen żeby postawić światełko. Chodzimy po mapie, aż znajdziemy cywila, wtedy powoli wracamy z nim do bazy. Jeśli po drodze spotkamy potwora, to będzie chciał zabić cywila, jeśli nie będzie cywila, to rzuci się na nas. A przy kontakcie z nim tracimy tlen. Jest od nas szybszy, więc jedyna forma ratunku to zużyciu trochę tlenu, by strzelić, wtedy potwór rzuci się za tym strzałem. Jeśli nie możemy wystrzelić, to potwór zacznie gonić cywila, a ten będzie uciekał. Najlepsza strategia, to wybrać sobie kierunek, stawiać za sobą światła i tak przeczesywać mapę w poszukiwaniu biednych ludzików.

    A i światła można zbierać żeby odzyskać tlen.

  2. Ja teraz ogarnąłem takie coś i we wszystkich moich gierkach tak robię

    GML
    if( keyboard_check( ord("D") ) )

    {

    for(var i=max_speed; i>0; i++)

    if(place_free(x+i,y)

    {

    x+=i;

    break;

    }

    }

    Bo jak jest tak jak Ty masz, to jeśli max_speed=10, to nie podejdziesz zaraz do granicy ściany. Wydaje mi się, że jak zrobisz tak jak ja, to będzie git.

    (ps. jeśli masz maskę nie kwadratową, tylko kółko, to wystarczy zamienić warunki fora (var i=max_speed; i>2; i++) )

  3. Gra sutikku jest na tyle dziwna, że nie rozumiem jak to ma działać ale sutikku to spoko gość i liczę, że zaskoczy nas jescze jakimiś ciekawymi projektami.

    <3 <3 <3

    Każdy pisze, że nie ogarnia mojej gry i zbugowana ;c

    Zacząłem robić całkowicie inną grę, ale odbiegłem od tematu, zacząłem robić to, wrzuciłem, zagrałem w gierkę Hamtarena i znowu zobaczyłem, że temat stał się tylko dodatkiem.

  4. Bo ja mam tak, że nie lubię korzystać z gotowców, bo czuję, że wtedy nie rozumiem co się w danym kodzie dzieje i czego po nim oczekiwać, a jak patrzę na tutoriale, to pierwsze co widzę, to właśnie "wrzuć rigidbody, użyj collision_cośtam" i nie wiem czy bez tego nie ruszy, czy to coś na miarę klocków w gmie.

  5. Tak w sumie, to tak chyba powinno być tak

    GML (step)
    var naj=instance_nearest(x,y,kolider);

    if(distance_to_object(naj) < 100)

    if(collision_rectangle(x-16,y-16,x+16,y+16, kolider, 0,1) )

    {

    //tutaj kod jesli nastapi kolizja

    }

    else

    {

    //a tutaj możesz dać kod, w wypadku w którym jej nie ma

    }

    Jeśli obiekty z którymi chcesz kolidować mają parenta (np. parę obiektów ścian z parentem parent_wall), to jako kolider rozumiemy właśnie ten parent.

  6. Nie wiem czy to pomoże, bo nie miałem takich problemów, ale może zmień system kolizji. Zamiast używać wbudowanego eventu, w step

    GML (step)
    if(distance_to_object(obj)<100)

    {

    if( collision_rectangle() )

    {

     

    }

    }

    Sprawdzanie dystansu, powinno być mniej ramożerne, niż ciągłe sprawdzanie kolizji.

  7. Pokombinuj z keyboard_string.

    Robisz obiekt i globalną zmienną global.clicked=0.

    Po kliknięciu na obiekt, global.clicked=obiekt.id i czyścisz keyboard_string (keyboard_string=""; //czyścimy)

    I wtedy robisz taki myk

    GML
    if(global.clicked==id)

    {

    tekst=keyboard_string;

    }

    A przy okazji draw_text(x,y,tekst);

    Nie wiem jak bardzo jesteś zaawansowany, jak coś to pisz, wytłumaczę dokładnie jak bym ja to zrobił.

    edit:

    okej, jestem ślepy, napisałeś, że jesteś nowy. A więc.

    Obiekt to będzie okienko. W create obiektu

    GML (create)
    global.clicked=0;

    tekst=""; //w tekst bedziemy przechowywali tekst danego okienka</span></span>

    A teraz, dajesz event kliknięcia myszką. A w nim

    GML (klikniecie)
    global.clicked=id;

    keyboard_string="";

    To sprawi, że po naciśnięciu na obiekt, nasza zmienna będzie przechowywała informację, że to w ten obiekt chcemy wpisywać coś.

    keyboard_string, to to co piszemy. Ale w żaden sposób się nie resetuje, więc musimy sami go czyścić.

    Teraz sprawdzamy, czy nasz obiekt jest tym, w którym chcemy pisać.

    GML (step)
    if(global.clicked==id)

    {

    tekst=keyboard_string;

    }

    A teraz wyświetlamy to

    GML (draw)
    draw_self(); //rysuje sie okienko

    draw_text(x,y,tekst);
×
×
  • Dodaj nową pozycję...