może tak jak alarmy w GM? coś na zasadzie : moge_sie_ruszac = false; czas = setTimeout("funkcja"); - chociaż w sumie za pomocą samej zmiennej czas można stwierdzić, czy ustawiono czas ( jest też clearTimeout ).
Spróbuj nie rysować obiektów które są poza ekranem (dodać np. w draw jakąś funkcję która sprawdza, czy obiekt jest w viewie czy nie). Wiem, że to doda trochę kodu do przetworzenia, ale może okazać się, że nie rysowanie tego czego nie widać na ekranie przyspieszy ogólnie FPS (zazwyczaj draw spowalnia grę, przydługie skrypty prędzej powodują klatkowanie).
Da się co najmniej na kilka innych prostszych sposobów to zrobić.
Chociażby z ds_list_shuffle, dzięki czemu pytania będą losowe. Do tego listę pytań (ds_list) też można wsadzić w kolejne ds_list, dzięki czemu pytania będą miały nie tylko losowe odpowiedzi, ale także losową kolejność pojawiania się.
Wiesz co, nie udało mi się sprawdzić, bo odpalałem kilka wątków na raz i tylko jeden miał problemy ale wywalało Windowsowy błąd "Wystąpił problem z aplikacją i zostanie ona zamknięta", oraz taki z czerwonym krzyżykiem, którego treści nie pamiętam (ale nie miał oskinowanego okienka w stylu XP, tylko w stylu CMD).
Odkryłem pewnego buga. Gdy tworzymy jakiś wątek, to znak którego używamy do stworzenia kodu ( " lub ' ) nie może występować w skryptach które wywołujemy.
Np.
GML
_thread3 = thread_create("skrypt();", 0 );
GML (skrypt)
a = "test";
będzie błędne, musi być 'test'.
To pewnie jakiś bug GMa, ale może da się to obejść? Bo niestety dzisiaj godzinę zmarnowałem na szukanie gdzie jest błąd, tymczasem kwestia zamiany " na ' wszystko naprawiła.
Programowania nie nauczysz się w jeden dzień!
Na to trzeba miesiecy. Trzeba wyrobić sobie odpowiednie rozumowanie, poznać język w którym się tworzy, poznać sposoby programowania, zapoznać popularne algorytmy i nabyć sporo umiejętności. To nie jest nauka jazdy, gdzie po 30 godzinach zdajesz egzamin i jesteś kierowcą, to bardziej jak bycie kucharzem. Im więcej i dłużej gotujesz, tym lepiej umiesz łączyć składniki a potrawy (programy) wychodzą lepsze.
Zacznij od przeczytania dokumentacji.
Ojej, poza samym odpowiednikiem tego kodu, trzeba też zrobić połączenie serwer-klient i wiele innych rzeczy, 39dll nie może być alternatywą tylko dla wybranych funkcji GMowych, on jest alternatywą tylko w całości i rozdzielnie z funkcjami mplay_* i funkcji tych nie można łączyć.
Jak ustawiam małą wartośc, np. 5, to krople spadają ciągle z tego samego miejsca, a tak być nie powinno (np. jak chcę zrobić efekt od mżawki, potem kapuśniaczek, deszczyk, deszcz, ulewę i sztorm, zwiększając ilość)
Otóż to, np. poniższy kod wygląda tak samo w większości języków (wyjątkiem będzie Pascal i ew. bash, bo chyba nawet w ruby ten zapis byłby poprawny).
if (1==1) { return true; }