TheLukLook Opublikowano 6 Grudnia 2012 Udostępnij Opublikowano 6 Grudnia 2012 Nie wiem czy ten temat dać tu czy do początkujących, więc proszę moda o przeniesienie w odpowiednią kategorię. Przechodząc do rzeczy. Chciałbym zrobić w swojej grze opcje typu zmiana rozdzielczości, efekty (śnieg, deszcz), poziom grafiki, głośność dźwięków itd. Jeżeli chodzi o rozdzielczość to wiem, że istnieje taka opcja wbudowana w gm, ale jest to ustawione domyślnie nawet jeśli ktoś ma 640x48 a jest ustawione np. 1920x1080. Jeżeli chodzi o efekty to umiem zrobić np. od jakiegoś momentu aby padał śnieg itd. ale chciałbym aby sami gracze decydowali czy ich komp udźwignie takie efekty i czy warto wyłączyć. Tutaj właśnie pomyślałem o odwołaniu się do innego roomu. np. Mamy menu w którym jest ,,graj" i ,,opcje". Wchodzimy w graj i w tym momencie mamy jakiś poziom do przejścia. Jednak nasz komputer jest zbyt słaby aby udźwignąć tak wielkie obciążenie. Wtedy wchodzimy w ,,opcje'' i wyłączamy te efekty. W tym momencie ,,jakaś linijka kodu'' powinna sprawdzać czy dany sprite jest na ,,włącz" czy na ,,wyłącz". Teraz mamy grafike i znowu wiem, że można ustawić domyślnie, ale nie można jej zmienić. Zastanawiając się przez dłuższy czas wykąbinowałem, aby po protu podmienić teksturki z lepszych na gorsze, ale wyszło by to zbyt dużo roboty i czasu. Czy znacie może jakieś rozwiązanie (chodzi o linijkę kodu, a nie na 3 strony) na zainicjowaniu takiej funkcji w grze? Proszę o przesłaniu załącznika z przykładem, gdyż to ułatwi całkowicie sprawę :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 6 Grudnia 2012 Udostępnij Opublikowano 6 Grudnia 2012 Pobaw się zmiennymi globalnymi, następnie w grze ustaw warunki odwołujące się do nich. Zmienne globalne działają wszędzie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
FanXX Opublikowano 7 Grudnia 2012 Udostępnij Opublikowano 7 Grudnia 2012 Kiedyś bawiłem się tym co kolega, używałem opcje plików ini jako nazwe "config.cfg", buttony miały dwa sprity (0 i 1) a w ini zapisywały się: [system] Fullscreen = 1 ... Polecam po kliknieciu zapisac jego index i gdy wynosi zero to obiekt powodujący snieg sie usuwa :D @Edit w razie coś sluze pomocą, fajnie jest jak ktos komuś pomaga w sensie odwrotnym i bierzącym O_o Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
TheLukLook Opublikowano 7 Grudnia 2012 Autor Udostępnij Opublikowano 7 Grudnia 2012 Próbowałem z full screenem i się udała, ale tak apropos, to to jest na f4 xD. Jeszcze takie pytanko, da się zrobić tak, aby stworzył się objekt po naciśnięciu w innym roomie sprita? np. W menu zaznaczam, że chce mieć śnieg i w roomie lvl 1 tworzy się objekt (0,0), który tworzy śnieg. Z tym problemem borykam się od dawna, bo chce dodać jakieś medale np. Jeżeli zabije tego gościa to daje mi medal w innym roomie :D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 7 Grudnia 2012 Udostępnij Opublikowano 7 Grudnia 2012 Po naciśnięciu sprita global.snieg = 1; i w creation code danego rooma if( global.snieg ) instance_create( ... ); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hunter112 Opublikowano 8 Grudnia 2012 Udostępnij Opublikowano 8 Grudnia 2012 a jeśli chcesz, żeby po każdym włączeniu gry były takie same ustawienia to ustawienia.ini [dane] snieg = 1 fullscreen=1 obj_snieg: CREATE GML ini_open(ustawienia.ini) ini_read_real(dane,snieg,1) global.snieg=ini_read_real(dane,snieg,1) ini_close() if global.snieg=0 { instance_destroy } w kliknięciu na przycisk GML ini_open(ustawienia.ini) ini_write_real(dane,snieg,0) ini_close() Powinno działać :D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
szmalu Opublikowano 8 Grudnia 2012 Udostępnij Opublikowano 8 Grudnia 2012 Jeśli obj_śnieg to pojedynczy płatek śniegu, to czy nie będzie to zbyt mało efektywne rozwiązanie? tzn. żeby każdy cały czas tworzący się obiekt sprawdzał ustawienia i się w razie czego usuwał? Pytam serio, bo nie wiem tego. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 8 Grudnia 2012 Udostępnij Opublikowano 8 Grudnia 2012 To dajesz ten kod do obiektu który tworzy te płatki, jeśli niema być śniegu to go usuwasz, proste. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
szmalu Opublikowano 8 Grudnia 2012 Udostępnij Opublikowano 8 Grudnia 2012 W takim razie pierwszy kod powinien być w step, nie w create. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 8 Grudnia 2012 Udostępnij Opublikowano 8 Grudnia 2012 Lol, to da te same rezultaty( czyli zero optymalizacji )... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lechu4444 Opublikowano 8 Grudnia 2012 Udostępnij Opublikowano 8 Grudnia 2012 Jeśli chcecie robić śnieg z obiektów to wam gratuluje pomysłu. Na pewno to będzie działało na Core i7, choć i to nie jest pewne. Takie rzeczy robi się na surface'ach, animacji nie robi się przez speed tylko wylicza się pozycje x i y. Inaczej będzie wieszało kompa. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
szmalu Opublikowano 8 Grudnia 2012 Udostępnij Opublikowano 8 Grudnia 2012 Lol, to da te same rezultaty( czyli zero optymalizacji )... Lol, tak, ale jak będzie w create to zmiana ustawień przyciskiem nie będzie działać, według tego kodu. EDIT: Mówię oczywiście o tym kodzie GML ini_open(ustawienia.ini) ini_read_real(dane,snieg,1) global.snieg=ini_read_real(dane,snieg,1) ini_close() if global.snieg=0 { instance_destroy } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hunter112 Opublikowano 8 Grudnia 2012 Udostępnij Opublikowano 8 Grudnia 2012 Jeśli obj_śnieg to pojedynczy płatek śniegu, to czy nie będzie to zbyt mało efektywne rozwiązanie? tzn. żeby każdy cały czas tworzący się obiekt sprawdzał ustawienia i się w razie czego usuwał? Pytam serio, bo nie wiem tego. Kto by każdy płatek śniegu dawał do innego obiektu? Było by to głupie i nieoptymalne. Pisząc obj_snieg chodziło mi o emiter śniegu. Lol, to da te same rezultaty( czyli zero optymalizacji )... ediepl, TheLukLook prosił o prosty, krótki kod. EDIT: Lol, to da te same rezultaty( czyli zero optymalizacji )... Lol, tak, ale jak będzie w create to zmiana ustawień przyciskiem nie będzie działać, według tego kodu. EDIT: Mówię oczywiście o tym kodzie GML ini_open(ustawienia.ini) ini_read_real(dane,snieg,1) global.snieg=ini_read_real(dane,snieg,1) ini_close() if global.snieg=0 { instance_destroy } Rzeczywiście, nie doczytałem, myślałem, że jest room_opcje, tam ustawiasz, a potem, gdy się otwiera room_gra, to wtedy sprawdza w ini i usuwa emiter lub nie. A jeśli miało by to w stepie być to, oczywiście ten kod nie ma sensu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się