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:

Stabilna
2024.11.0.179 • 2024.11.0.227
wydana  2 dni temu
LTS
2022.0.3.85 • 2022.0.3.99
wydana 18 dni temu
Beta
2024.1100.0.713 •
2024.1100.0.726
 0.14.0

wydana 10 dni temu
= IDE, = Runtime, = GMRT
Użytkownicy online
1 użytkownik aktywny:
gości: 1,
(~ostatnie 15 minut)
Discord
37 użytkowników online na discordzie:
🧁Cupcake🧁, Alice, Carl-bot, Wielki Druid, Kowu, LadyLush, GMRussell, fervi, 𝕳𝖚𝖌𝖔 𝕲𝖔𝖓𝖝𝖆𝖑𝖊𝖝, Kalor, PhysX ᴺⱽᴵᴰᴵᴬ, r..., antek, HappyOrange, Arrekin, Rozen, MagnusArias, yazaa, Domeen0, Dyno, szmalu, LeD, ZYGZAK, Miłosz, blackamul, Ulti, bagno, Sporek, Danieo, Mtax, Huder, l..., moeglich, s..., Add92, Shockah, PeekoHiko
Shoutbox
Uzjel (20:17, 10.12.24)
Cały ruch przeniósł się na Discorda.
MagnusArias (17:43, 01.12.24)
O matko... a ja tutaj jestem od ponad 15 lat i czasami zaglądam... biernie bo biernie, ale czasem wpadnę
gnysek (11:46, 17.11.24)
Witamy, witamy!
baca (12:22, 16.11.24)
To już 25 lat.. Witam po paru latach nieobecności.
gnysek (11:05, 15.11.24)
Natomiast obecne forum istnieje od 2004, jak z iglu.cz na gmclan.org przeszliśmy i od tego czasu nie było resetów danych.
gnysek (12:35, 13.11.24)
Ogólnie GMCLAN istnieje 22 lata, ale na to trofeum nie zrobiłem (jeszcze xD)
Chell (20:41, 08.11.24)
wow, ta emotka w ogóle nie wygląda jak : O xD
Chell (20:40, 08.11.24)
tylko? :O 4tk ma 15
Borek (18:12, 07.11.24)
Właśnie dostałem powiadomienie z forum, że jestem na GMClanie 18 lat :D Ja pierdzielę...
S
Sutikku (08:43, 18.10.24)
TIL, gamemaker jest starszy ode mnie
Starsze wpisy znajdziesz w Archiwum.
Ankieta
Ile zarobiłeś do tej pory na grach stworzonych w GM?