DobryZiom Opublikowano 18 Sierpnia 2010 Udostępnij Opublikowano 18 Sierpnia 2010 Witam. Mam dla was pierwszą wersję mojego silnika 2-3D: Crazy City. Miałem w nim robić grę ale jestem w domu co jakieś 2 tygodnie na weekend(pracuje, teraz troszkę choruje) więc postanowiłem podarować go wam.Moim zdaniem silnik może przydać się początkującym jaki i zaawansowanym użytkownikom GM'a. Wszystkie funkcje starałem się pisać zrozumiale(ale za bardzo mi chyba nie wyszło :D). FUNKCJONALNOŚĆ: ->2D: GML spr_Poz() - Funkcję tę należy zawsze dodać w create każdego obiektu. Zmienne niezbędne do pozycji spr_SetDir("folder\") - Funkcja ta ustala folder z którego będą wczytywane zasoby graficzne spr_GetDir() - Funkcja zwraca folder z którego aktualnie czytane są zasoby graficzne spr_Load("obraz.format") - Funkcja wczytuje grafikę, ustawia orgin na środku i włącza transparent spr_LoadTo3D("obraz.format",transparent) - Wczytuje grafikę, ustawia orgin na 0,0 i ustawia transparent na podany spr_SetSprite(sprite) - Nadaje objektowi spriteya i rysuje go spr_SetSprite2(sprite) - Nadaje objektowi spriteya, rysuje go i okręca o 90stopni(to dla samochodów) ->3D: GML d3d_Poz() - to samo co spr_Poz() d3d_GetTexture(sprite) - Wczytuje texture ze spriteya d3d_DrawBlock(x,y,z,z2,textura) - Rysuje Blok od x i y objektu do wyznaczonego x i y na wysokościach z-z2 oraz o podanej texturze d3d_DrawFloor(x,y,z,z2,textura) - Rysuje "Ścianę"(ukośna,pionowa,pozioma...) i działa jak d3d_DrawBlock d3d_DrawFloor2(x,y,x2,y2,z,z2,textura) - To co wyżej tyle że możemy dokładniej wybrać pozycje(x i y) d3d_DrawTree(x,y,z,z2,textura) - Rysuje drzewo d3d_CreateMask(obj_maska) - Tworzy objekt maski(jeśli owy mamy) ->Fizyka i AI(tylko samochód...ledwo tknięte): GML fia_CarCreate("gracz",przyspieszenie,maxspeed,tył,skręt,hamowanie,friction) - Funkcja ta tworzy zmienne potrzebne nam do stworzenia samochodu. Nie zmieniajcie "gracz" na nic innego. fia_CarStep(gora,dol,lewo,prawo,hamulec) - Funkcja tworzy(jak na razie cienką)fizykę jazdy samochodem. ->Muzyka: GML mus_SetDir("folder\") - Wybiera folder z którego czytana będzie muzyka mus_GetDir() - zwraca folder... mus_Load("muza.mp3") - Dodaje utwór do listy utworów mus_Play() - Zaczyna odtwarzać po kolei utwory z listy mus_Stop() - Zatrzymuje odtwarzanie mus_Left() - Odtwarza poprzedni utwór mus_Right() - Następny utwór mus_SetMusic(numer) - odtwarza utwór o podanym numerze(dostaje go każdy dodany utwór...od 0) ->dźwięki(XeAudiere.dll) GML snd_SetDir("folder\") - -||- snd_GetDir() - -||- snd_Load("dzwiek.wav") - -||- snd_Free(snd) - Funkcja ta zwalnia dźwięk z pamięci. Rób to zawsze...najlepiej na końcu gry snd_Play(snd) - -||- snd_Stop(snd) - -||- snd_Repeat(snd,true?) - Czy Loopować dźwięk(odtwarzany nonstop) snd_ef_CarEngine(snd,prędkość) - Effekt Silnika samochodu. Za prędkość wstawiamy ile razy ma mnożyć "obroty". Polecam 1.5 - 2 snd_ef_DisToBot(snd,odległość,gracz) - Effekt dzięki któremu im bot będzie dalej od gracza tym ciszej go będzie słychać ->Mapy(Silnik Crazy City posiada drobny MapEditor(dzięki GMClan)) GML map_Load("mapa.map") - Funkcja ta wczytuje mapę i korzysta przy tym z map_ObjCreate map_ObjCreate() - Tej funkcji nie używamy CREDITS: -Wszystko robiłem sam prócz: -> XeAudiere wykorzystany do uzyskania dźwięków - Dzięki YXE -> Przykład MapEditora i pomoc przy zapisie-odczycie map - GMClan -> Grafika z neta, ulice z gry al'a gta z tego forum(nie pamiętam nazwy), auta z gta2 DOWNLOAD: 13,5mb Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Arekadiusz Opublikowano 18 Sierpnia 2010 Udostępnij Opublikowano 18 Sierpnia 2010 Od razu po włączeniu aplikacji Crazy City pokazało mi się: ___________________________________________ COMPILATION ERROR in Script: spr_Load Error in code at line 2: sprite=sprite_add(string(global.spr_dir)+argument0,1,1,1,0,0,0,0) ^ at position 66: Wrong number of arguments to function or script. EDIT: A po włączeniu MapEditora: ___________________________________________ COMPILATION ERROR in Script: spr_Load Error in code at line 2: var sprite;sprite=sprite_add(string(global.spr_dir)+argument0,1,1,1,0,0,0,0)sprite_s et_offset(sprite,sprite_get_width(sprite)/2,sprite_get_height(sprite)/2)return sprite ^ at position 65: Wrong number of arguments to function or script. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Adriann Opublikowano 18 Sierpnia 2010 Udostępnij Opublikowano 18 Sierpnia 2010 Nie działa:< Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Makary155 Opublikowano 18 Sierpnia 2010 Udostępnij Opublikowano 18 Sierpnia 2010 Polecam pousuwać aliasy pojedyńczych (a nawet 2 linijkowych) gmowych funkcji, bo to tylko komplikuje sprawę. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DobryZiom Opublikowano 18 Sierpnia 2010 Autor Udostępnij Opublikowano 18 Sierpnia 2010 Arekadiusz i Adriann: Pisałem to pod GM7 i pewnie pod nim trzeba to odpalić... Makay155:Mi to nie komplikuje sprawy :) Wole tak...pisałem ten silnik dla siebie i tak mi zawsze jest wygodniej. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DobryZiom Opublikowano 18 Sierpnia 2010 Autor Udostępnij Opublikowano 18 Sierpnia 2010 Oto exeki, żeby pokazać że działa. Wsadzić do folderu Crazy City: klik Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 18 Sierpnia 2010 Udostępnij Opublikowano 18 Sierpnia 2010 Makay155:Mi to nie komplikuje sprawy :) Wole tak...pisałem ten silnik dla siebie i tak mi zawsze jest wygodniej. ależ komplikuje sprawę. dla GMa Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DobryZiom Opublikowano 19 Sierpnia 2010 Autor Udostępnij Opublikowano 19 Sierpnia 2010 mam tu kilka jedno linijkowych skryptów ale nie powstawiałem za wszystko argumentów...zrobiłem tak abym miał wygodnie, gdyż wiem co będę robił :) 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ę