Skocz do zawartości

gnysek

Administratorzy
  • Zawartość

    9318
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    41

Ostatnia wygrana gnysek w Rankingu w dniu 17 Czerwiec

gnysek posiada najczęściej lubianą zawartość!

Reputacja

139 Diament społeczności

1 obserwujący

O gnysek

  • Tytuł
    Właściciel GMCLANu
  • Urodziny 11/25/1987

Contact Methods

  • Website URL
    http://gnysek.pl/

Previous Fields

  • Team
    FABLE INSIDE
  • Steam
    gnysek
  • GG
    5027526
  • Nagrody
    Najbardziej pomocny uzytkownik (CA 2011)
  • last.fm
    gnysek
  • Użytkownik GameMaker Studio 2
    Tak
  • Użytkownik GameMaker Studio
    Tak
  • Użytkownik GameMaker 8
    Tak
  • Użytkownik GameMaker 7 i wcześniejszych wersji
    Tak
  • Użytkownik Unity
    Nie
  • Uytkownik Godot
    Nie

Profile Fields

  • Skąd
    Banino / Trójmiasto

Ostatnie wizyty

79920 wyświetleń profilu
  1. list = ds_list_create();

    Ale co ma wspólnego ds_create z problemem, że to przeszkadza w modyfikacji kodu? Sprawdź w dokumentacji co ta funkcja robi i wtedy dopiero na nią narzekaj. Bo ona nie ma nic wspólnego z save. Służy do stworzenia listy z danymi (taka tablica w sumie).
  2. Zaczynam się zastanawiać, czy w ogóle rozumiesz co znaczą znaki mniejszości i większości?
  3. bo ja nie wiem gdzie Ty masz ten kod, musisz się zastanowić chwilę co robisz... myślalem, że to w jakimś evencie kolizji czy coś, gdzie bohater umiera. Jak w stepie to oczywiste, że co klatkę obrazu się wykona wiec po 3 klatkach koniec gry. Dostostuj go zatem do swojego kodu którego nie znam. Tylko nie wklejaj go całego.
  4. A co ja napisałem wyżej ? if (global.life > 0) { global.life -=1; } else { if (can_finish == false) { if (alarm[0] == -1) { // zacznij tylko gdy jeszcze się nie odlicza alarm[0] = 60; // 150 to 5 sekund } } else { if (global.pScore >= 500) //Sprawdz czy wynik nadaje sie do highscore,ale musi zostac spelniony warunek punktowy { var s=highscores[| ds_list_size(highscores) - 1]; //Czy punkty kwalifikuja sie na top 10 if (ds_list_size(highscores) < 10 || s[?"score"] <= global.pScore) { room_goto(rm_save_score); exit; // zakoncz wykonywanie eventu step w tej klatce } } room_goto(rm_game_over); } }
  5. Właśnie sie zastanawiałem, dlaczego tam jest >0 ale myślałem, ze tak sobie wymyśliłeś, że 0 = żyje, 1 = nie zyje. Ale ok, w takim razie: if (global.life > 0) { global.life -=1; } else { /// kod od highscore }
  6. w respawnie daj if global.life > 0 i po sprawie. Mam wrażenie, że nie rozumiesz co robi Twój kod. Po co jakieś alarmy do respawnów, skoro to jest zmienna true/false jak mniemam ? umierasz to umierasz, wyłączasz mozliwosc respawna od razu. Możesz nawet tam, gdzie global.life pomniejszasz o 1.
  7. Nic z tego wyżej nie rozumiem. Strzelam jedynie, że gvX i gvY się resetują na 0. Co do flagi - ona nie ma nic wspólnego z game_end(). Game End robi to samo co Alt+F4, albo zakończenie procesu w menedżerze zadań. Ja zrobiłem flagę, dzięki której albo ma się 1 raz włączyć alarm, jeśli jeszcze nie leciał, albo - jeśli już się zakończył o czym mówi właśnie ta flaga - wykonał kod przejścia do następnego roomu.
  8. game_end() zamyka program. Jeśli miałeś to w pierwszej linijce tego kodu, to automatycznie po śmierci zamykała się gra na koniec obecnego stepu. Co do przesuwania sie view - nie wiem jaki masz od tego kod. Jeśli masz śledzenie obiektu i po śmierci ekran się przesuwa (nie skacze), to bym winił... drugą instancję tego samego obiektu. can_finish jest po prostu flagą, czy coś już zostało zrobione czy nie.
  9. To jest porównanie. Ale widzę mój błąd. Połączyłem dwa ify w jeden, a powinienem mieć dwa. //create can_finish = false; // w alarm 0 can_finish = true; // step if (global.life = 0) { if (can_finish == false) { if (alarm[0] == -1) { // zacznij tylko gdy jeszcze się nie odlicza alarm[0] = 150; // 5 sekund } } else { if (global.pScore >= 500) //Sprawdz czy wynik nadaje sie do highscore,ale musi zostac spelniony warunek punktowy { var s = highscores[ | ds_list_size(highscores) - 1]; //Czy punkty kwalifikuja sie na top 10 if (ds_list_size(highscores) < 10 || s[ ? "score"] <= global.pScore) { room_goto(rm_save_score); exit; // zakoncz wykonywanie eventu step w tej klatce } } room_goto(rm_game_over); } } i żeby było widać, dałem teraz 5 sekund, bo 1 to może być za krótko
  10. Nie musisz ustawiać alarmu na -1, on jest tak ustawiony przez GameMakera dla każdego obiektu. I żadnego game_end() gdziekolwiek bo to wyłącza całkiem grę. //create can_finish = false; // w alarm 0 can_finish = true; // step if (global.life = 0) { if (can_finish == false and alarm[0] == -1) { alarm[0] = 30; // 1 sekunda } else { if (global.pScore >= 500) //Sprawdz czy wynik nadaje sie do highscore,ale musi zostac spelniony warunek punktowy { var s = highscores[ | ds_list_size(highscores) - 1]; //Czy punkty kwalifikuja sie na top 10 if (ds_list_size(highscores) < 10 || s[ ? "score"] <= global.pScore) { room_goto(rm_save_score); exit; // zakoncz wykonywanie eventu step w tej klatce } } room_goto(rm_game_over); } }
  11. Zanim pierwszy raz ustawisz alarm[0], to on ma już wartość -1 od początku gry, pewnie dlatego ? Zrób inaczej: // create can_finish = false; // gdzies tam gdzie konczy sie gra i ma poczekać if (<nie zyje>) { if (can_finish == false) { alarm[0] = 30; } else { room_goto(<higscore>); } } // w alarm 0 can_finish = true; Poza tym, game_end(); kończy grę, więc cały kod dalej się nie wykona.
  12. No to ja tu nie widzę alarmu nigdzie. W stepie, czyli kod co klatkę obrazu.
  13. No i co, nikt nie używa tych aktualizacji :( chyba je wyłączę.

    1. I am Lord

      I am Lord

      Bo to powinno być jakoś zintegrowane ze stroną główną, mało kto chyba wchodzi bezpośrednio na forum.  😉

  14. Pewnie nadal nie wywaliłeś kodu od highscore z innego obiektu.
  15. Game Maker Studio 2

    Potwierdzam. Trzeba chwilę poświecić na usunięcie tych funkcji które GM buduje jako kompatybilne (np. teraz instance_create wymaga podania layera, więc GM tworzy funkcję _instance_create() i zmienne globalne, z depthem itp.) - oczywiście można je zostawić, ale jak się usuwa jakiś obiekt to trzeba przepisywać tablicę z listą tych "starych". Nie mniej każda gra w 100% powinna działać w GMS2, a po optymalizacji na nowe funkcje śmigać jeszcze bardziej.
×