-
Postów
1 472 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Treść opublikowana przez Muuuuczek567
-
A budynki można spokojnie zrobić, używając primitive 2D.
-
Łoł... Wiesz, nad grą GTA (mówię o trójce i późniejszych, bo są 3D) pracował długie miesiące cały sztab doświadczonych grafików, programistów itd. A Ty jesteś sama i dopiero zaczynasz. Pomogę Ci, ale raczej powinnaś zabrać się za inny, łatwiejszy projekt. Co do sygnalizacji, trzeba użyć eventów Alarm, żeby odmierzało czas potrzebny do zmiany świateł. Alarm 0: kolor = 'zielony'; alarm[1]=room_speed*5 Alarm 1: kolor = 'żółty'; alarm[2]=room_speed*2 itd. Żeby samochody mogły jeździć po stworzonym przez Ciebie mieście, musisz stworzyć waypointy (takie miejsca, do ktorych podążają samochody), a potem użyć funkcji mp_potential_step (sprawi, że samochody zaczną jeździć do wybranego celu). Ze wsiadaniem jest o tyle kłopot, że kod będzie dość długi. Powiem tylko, że będzie zawierał w sobie prędkość pojazdu, zmienną sprawdzającą, czy w samochodzie jest już ktoś inny i odległość od pojazdu. To nie jest takie łatwe.
-
Lepiej ustaw parenta. Robiąc to, nie będziesz się musiał rozpisywać, tak jak Cordoba.
-
Co do funkcji sprawdzających kolizje, możesz użyć place_free i place_empty. Najpierw wszystkie Step, potem kolizje, potem End Step. HuderLord podał kolejność.
-
Step -> End Step. Wpisany tam kod wykona się po Stepie i po kolizji, ale przed Drawem. E: nie ma tak, że najpierw jeden obiekt wykona wszystkie eventy, potem drugi obiekt, trzeci itd. Najpierw wszystkie obiekty, po kolei (poczynając od tego z najmniejszym id, czyli tego stworzonego jako pierwszy) wykonają jeden event, potem po kolei drugi, trzeci itd.
-
Sprawdzanie, czy pozycja wolna?
Muuuuczek567 odpowiedział(a) na cysior temat w Pytania początkujących
Tak naprawdę mogłoby być: GML for(i = 1; i <= 9; i += 1) for(j = 1; i <= 9; j += 1) global.siatka[j,i] = collision_point(32+32*i,32+32*j,all,true,true) jeśli pogodzisz się z tym, że w miejscu, w ktorym nie ma obiektu, tablica nie ma wartości 0, a -4. -
Madness: Accelerant Pasjans Saper Tetris Bomberman Space Invaders i klony Jets'n'Guns N
-
W Collision: visible = true lub: sprite_index = /nazwa sprite'a/
-
Można też używać funkcji point_distance|point_direction tylko raz na Step dla danego obiektu, przypisując ich wartości do zmiennych. Używanie tych funkcji kilka/dziesiąt razy na Step nie jest potrzebne.
-
mask_index to zmienna, nie funkcja. Przypisz znakiem równości.
-
Pfff... Gdy naciśniesz "P", to po kodzie zmieniania sprite'a powinieneś przypisać do mask_index nazwę tego sprite'a, który ma być wyświetlany. Tak samo po "B" i po każdym innym.
-
No to problem chyba jest rozwiązany. Wraz ze zmianą sprite'a dopisuj kod do zmiany maski. Zmienna mask_index.
-
Eee... Nie wiem, o co Ci teraz chodzi. Używasz eventu Draw?
-
Jeśli w evencie naciśnięcia slotu ustawiasz t1 na true, to musi działać. Ewentualnie po tym daj kod: show_message("działa") Problemem może być, że jeśli zmieniasz sprite'a lub skalujesz go, to maska też się zmienia lub skaluje. Ponadto, jeśli rysujesz sprite'y w evencie Draw, to maska nie działa dla wszystkich narysowanych sprite'ów, tylko dla tego ustawionego jako sprite początkowy.
-
@ANtY: lol Daj w Step: if(x != xprevious)||(y != yprevious) image_angle = point_direction(xprevious,yprevious,x,y)
-
Załaduj do zmiennej cały tekst z pliku, edytuj odpowiednim kodem, a potem zapisz ten tekst do pliku. Nie napiszę znowu kodu, bo jest to wystarczająco proste, żerbyś mógł to sam zrobić, zresztą gdzieś na forum był przykład.
-
Efekt ognia, niezbyt dopracowany. To są grafiki z platformówki, którą przestałem robić 3 dni po zaczęciu pracy nad nią :/ A to jest z już skończonej gry. Można ustawić dowolną ilość min i wielkość mapy (tzn. max 30x30).
-
A tam, skreślam cały post
-
Frank Klepacki - Hell March
-
Sposób pierwszy, jeśli się nie mylę, jest wolniejszy od drugiego. mouse_x i mouse_y są liczone niezależnie od viewa (tzn. jeśli najedziesz kursorem na lewy górny róg okna, to mouse_x będzie równe view_xview - i tak samo z mouse_y). W sposobie drugim barierę zrobić bardzo łatwo. W End Step object1: GML with(all) if(x < 100) x = 100 x = xprevious Ja kiedyś robiłem jeszcze inaczej, po prostu dawałem obiekt (u Ciebie listę) daleko poza planszą i tam ustawiałem viewa. Nie martwiłem się o żadne niewidzialne ściany, ale sposób to nie najszybszy.
-
Mówiłem o tych mieszkańcach Afryki, do których misjonarze jeszcze nie dotarli. Czyli według ciebie, inteligencja i wartość człowieka zależą od tego, gdzie się urodził. Smutne. Co do teorii strun, trochę trudno mi się z nią zgodzić. O ile się nie mylę, teoria strun zakłada istnienie bytów o wielkości 10^-39 m, z których wszystko jest złożone.
-
KAŻDY "filozoficzny" temat jest czytany przez >10 liczbę userów GMClanu. Co za fenomen. @Alternative: jesteś w moim wieku, a oleju w głowie masz tyle, co przeciętny 10-latek. No patrz - a oni się nie zabijają. Dlaczego? Do przemyślenia. Ja bym poszedł do pokoju siostry :P
-
Alien Territory - Oficjalne Testy! v0.18
Muuuuczek567 odpowiedział(a) na Borek temat w Gear-Studio.com
To wg Crackkk-GM świadczy o poziomie GMClanu, Arkariusie. -
Draw GML x=view_xview+0 y=view_yview+0 draw_sprite( sprite_index, image_index, x, y)
-
Tzn. nie nazwę, tylko ten drugi człon :)