Ten artykuł został stworzony dla starszych wersji GameMakera i może nie być aktualny.

Z klocków na kod

Sobota, 11 Września 2004, 21:37
Czas czytania 11 minut, 45 sekund
Zgodne z GM: gm5 gm6 gm7 gm8
Artykuł zawierający opisy podstawowych klocków, dzięki któremu będzie nam łatwiej przejść z klocków na GML
Ten artykuł posiada kilka stron.
Napewno spotykając się z Game Makerem zadawaliśmy sobie pytanie: "Jak zacząć przygodę z GML?". W tym artykule postaram się wam z tym pomóc.
Skrypty podzielę tak na kategorię, jak jest to w klockach. Przydatne informacje dam w "//" Dzięki nim w kodzie GML możemy pisać komentarze, ale o tym później.

Więc zacznijmy.

PAMIĘTAJ! Jeżeli chcesz mieć działanie równoznaczne z other, to dajesz na początku with(other). Jeżeli ma to być z innym objektem to with(nazwaobjektu).

Zakładka Move.

Ramka Move
Start moving in a direction - action_move("111111111",5); // założenie w tym jest takie, że każda z tych jedynek oznacza kierunek. Jest to tak jak w klocku i np. 2 jedynka oznacza pójście w górę. Liczba na samym końcu oznacza prędkość. Jeżeli po liczbie oznaczającej prędkość dopiszemy +speed będzie się to będziemy mieli taki wynik jaki mamy po zaznaczeniu relative.

Set direction nand speed of motion - motion_set(0,5); // pierwsza cyfra oznacza kierunek, a druga prędkość. W przypadku gdy chcemy zrobić to na relative, to przed pierwszą liczbą dajemy direction+ a przy drugiej speed+

Set the horizontal speed - hspeed=5 // wartość liczbowa to prędkość. Jeżeli chcemy dać na to Relative, to po tym piszemy +hspeed

Set the vertical speed - vspeed=5 // wartość liczbowa to prędkość. Jeżeli chcemy dać na to Relative, to po tym piszemy +vspeed

Move towards a point - move_towards_point(0,0,5) // pierwsza cyfra oznacza X, druga Y, a trzecia Speed. Jak w innych przypadkach jak chcemy relative to dodajemy X+ , jeżeli do wartości Y to Y+ , a jak speed to speed+ . Oczywiście dajemy to przed daną liczbą.

Set a path for instance - path_index=nazwa_path; // nazwa_path zastępujesz własną nazwą
speed=0; // tu ustalasz prędkość
path_position=0; // a tu pozycję

Set the gravity - gravity_direction=0 // kierunek grawitacji, jeżeli chcemy relative to dopisujemy +gravity_direction
gravity=0 // moc grawitacji. Jeśli ma być relative to dajemy na końcu +gravity.

Set the friction - friction=0 // wartość ustala moc wiatru, jeżeli chcemy żeby był Relative, to dopisujemy +friction

Ramka Jump

Jump to a given position - x=0 // jak relative chcecie, to dopisujecie przed liczbą x+
y=0 // jeżeli ma być relative to dopisujecie y+ przed wartością liczbową

Jump to a start position - x=xstart;
y=ystart;


Jump to a random position - move_random(0,0); // pierwsza wartość liczbowa oznacza snap hor, a druga snap vert

Snap to a grid - move_snap(16,16); // liczby te oznaczają wielkość grida

Ramka React

Reverse horizontal direction - hspeed*=-1

Reverse vertical direction - vspeed*=-1

Move to a contact position (z solid) - move_contact_solid(0,-1); // pierwsza liczba oznacza wartość direction, a druga maximum

Move to a contact position (z all) - move_contact_all(0,-1); // wartości są tak samo oznaczane jak powyżej

Bounce against objects (z solid) - move_bounce_solid(false); // jeżeli chcemy not precisely piszemy false, a jak precisely to true

Bounce against objects (z all) - move_bounce_all(false); // oznaczenie wartości tak jak powyżej

Z klocków na kod
Komentarze (łącznie 11):
l
~lion (Sob., 11 Wrz. 04, 21:48)
#1

Nie lepiej najpierw go skończyć, a potem dodawać?:]

Marmot (Sob., 11 Wrz. 04, 22:00)
#2

Chciałem żeby beginnerzy już mieli :) . Pozatym codzienne dodawanie nowego to dobre na naukę. Stopniowa nauka jest najlepsza.

A
Sadam (Sob., 11 Wrz. 04, 22:02)
#3

Marmot się wycwanił - Będzie codziennie dodawał po kilka definicji i że niby daje codziennie upy :D

Marmot (Sob., 11 Wrz. 04, 22:05)
#4

Jutro postaram się dać przynajmniej cały Move i fragment następnego, bo dzisiaj chciałem napisać część tego arta jako zapowiedź, a narazie jestem troszkę... śpiący :)

A
Anaconda (Nie., 12 Wrz. 04, 11:19)
#5

Hehe Marmot, ukradłeś mi pomysł na tutka :P

Marmot (Nie., 12 Wrz. 04, 11:38)
#6

:P

Marmot (Nie., 12 Wrz. 04, 17:16)
#7

Poprawiłem arta bo ten execute script troszkę zadługi był :)

l
lion (śro., 15 Wrz. 04, 17:46)
#8

Wescie napiszcie cos troche bardziej potrzebniejszego, bo po co beginerom kod jak maja gotowe klocki :] a zreszta sie tutaj nie wysililes, uzyc action decodera to nie problem

Marmot (Wto., 11 Paź. 05, 23:32)
#9

Wiecie co? Dopiero teraz zauważyłem, że to jest najdłuższy art na GMCLAN XD .

B
Belar (Sob., 27 Maj. 06, 14:11)
#10

Napisane zbyt skomplikowanie wg mnie =/ Jetsem początkujący i chcialbym się nauczyca tu... zonk

P
Patrysław (Beaver Interactive) (Nie., 28 Maj. 06, 11:08)
#11

W 'Download->Game Maker->Narzędzia' masz Action Decodera, a w 'Artykuły->Game Maker' znajduje się FAQ. Poza tym przeczesz tutoriale i przykłady. Możesz też pytać się na forum.

Najnowsze wersje GameMakera:

LTS
2026.0.0.16 • 2022.0.3.99
wydana 151 dni temu
Beta
2026.100.0.1182 •
2026.100.0.1126
•
 GMRT beta 0.22.4

wydana  4 dni temu
= IDE, = Runtime, = GMRT
Użytkownicy online
1 użytkownik aktywny:
gości: 1,
(~ostatnie 15 minut)
Discord
41 użytkowników online na discordzie:
Miłosz, 🧁Cupcake🧁, MorDan, Nikas, Alice, Nitro Slav, 21Lancz, Carl-bot, h..., Fox, GibkiKaktus, s..., GMRussell, Tidżi, r..., Threef, Uzjel, Skini, LolikZabijaka, Pako, Kandif, yazaa, Dyno, szmalu, sgames, tomqz, Danieo, bagno, Arrekin, Mtax, MrTesterr, Morti, 𝓐𝓷𝓪𝓼𝓽𝓪𝓼𝓲𝓪, l..., Cebul, Borek, moeglich, g..., Add92, Shockah, exigo
Shoutbox
Wojo (11:49, 26.10.26)
Nie ma ruchu - narzekacie, jest ruch - narzekacie. Nie są to gry z najwyższej półki, ale każdy robi tak jak potrafi. Za starych gmclanowych czasów było wiele produkcji amatorskiej jakości, ale dzięki temu forum tętniło życiem.
Borek (16:08, 25.10.26)
Chodzi mi o ten INPUT, jedna linia, ciężko się tutaj pizse :) Ja wiem, że retro, ale trochę QoL nie zaszkodzi :D
gnysek (16:00, 25.10.26)
A co jest nienormalnego? :D Jest takie jak zawsze było, pełne retro ;) Zerknę, w następny weekend planuję lekki update strony. 3 wpisy to nie tragedia, ale jak będzie wiecej AI slopu to pewnie zacznę kasować.
Borek (19:01, 24.10.26)
Kurde, forum zaczyna zalewać gówno z Claude twórców... :/ ale w sumie jakiś ruch jest :D. P.S. gnysek weź ogarnij tu jakieś normalne okno do pisana shoutów, bo to jakaś masakra jest...
gnysek (23:05, 08.10.26)
Były takie próby, widać co z tego wyszło ;)
Kuzyn (17:06, 08.10.26)
może forum musi rozszerzyć działalność mocniej i skupiać ogólnie polski gamedev hihi
S
Sutikku (18:26, 05.10.26)
zapytaj onet zamknęło działalność, wizaz zamknęło działalność, krajobraz nie jest łatwy
Wojo (16:30, 28.09.26)
To świadczy o tym, że gmclan ma jeszcze duży potencjał, ale niestety nie jest on wykorzystywany tak jak należy.
Adriann (12:33, 28.09.26)
No włąśnie kurcze..nic tu się nie dzieje od lat a i tak wchodzę prawie coddziennie :D
Kuzyn (12:04, 19.09.26)
:] :]
Starsze wpisy znajdziesz w Archiwum.
Ankieta
Ile zarobiłeś do tej pory na grach stworzonych w GM?