Fizyka liny (prawie jak w Worms)

Przykład pokazuje sposób zaimplementowania fizyki liny podobnej do tej znanej z serii Worms. Różnicą jest to że lina się nie zgina. Kod może być trudny do zrozumienia dla początkujących.

Autor: Platyna

Rozmiar
12 KB
Autor
Platyna
Ocena
8/10
16 głosów
Komentarze
Komentarze (łącznie 14):
Platyna (Czw., 31 Gru. 09, 00:31)
#1

Jest to remake mojego przykładu który dawno temu wrzucałem na forum. :P
Na GMClanie był już przykład pokazujący jak zrobić linę, ale był on bardzo słaby i niedopracowany :)

S
slash (Czw., 31 Gru. 09, 08:27)
#2

Przyznam, że po części się zawiodłem, a po części jestem pozytywnie zaskoczony :) . Rozczarował mnie fakt, że ta lina nie jest wrażliwa na teren i nie da się nią osiągać dziwnych kształtów jak w Wormsach (po prostu nie doczytałem napisu "PRAWIE jak w Worms"). Z drugiej strony, przyciąganie jest bardzo pro i nawet Wormsy się chowają :P . Kod jak dla mnie zagmatwany, ale dla początkujących będzie łatwiej, bo całość podzieliłeś na wiele Eventów, do czego ja nie jestem przyzwyczajony.

10/10.

Muuuuczek567 (Czw., 31 Gru. 09, 08:38)
#3

Normalnie poczułem się, jakbym grał w Wormsy :)
Prawie identyczne zachowanie się liny (jeśli nie liczyć niezginania się liny), czyli PRAWIE jak w Worms.
Cel przykładu spełniony. 10/10

Roki (Czw., 31 Gru. 09, 08:57)
#4

Fajna linka :D
Daje 10/10, może kiedyś użyje, a stary przykład, tworzyłeś chyba dla mojego starego konta, CP-Player, jak chciałem robić Liero ;p

R
Rafik01 (Czw., 31 Gru. 09, 09:34)
#5

10/10

Ale znalazłem buga. Przykład testowany na wersji 6.0. Gdy celownik zniżymy jak najbardziej w dół ( 270 stopni ) i spróbujemy wystrzelić linę, wyświetla błąd.:
"ERROR in
action number 1
of End Step Event
for object player:

Error in code at line 12:

kat=((v+a/2)/(2*pi*len))*360; //wyliczamy kąt o jaki się przemieścimy w tej klatce

at position 20: Division by 0."

S
slash (Czw., 31 Gru. 09, 09:56)
#6

Rafik, wystarczy do dzielnika dodać wartość 0.000001. Dobrze, że Platyna tego nie dodał, bo by się z kolei każdy dziwił, skąd się to wzięło :P ...

Platyna (Czw., 31 Gru. 09, 10:30)
#7

Ja ten błąd wyczaiłem chwilę po tym jak przykład umieściłem. Nie chciało mi się już drugi raz wysyłać więc stwierdziłem, że jeżeli ktoś przykład zrozumie to to już będzie w stanie sam sobie poprawić. A jak ktoś będzie bezmyślnie kopiował to będzie miał z drobnym bugiem :D

Roki (Czw., 31 Gru. 09, 10:38)
#8

Mi sie nie przyda na razie, więc nie musiałem kopiować ;p

M
~Mimek (Czw., 31 Gru. 09, 12:38)
#9

Bardzo dobry przykład. Kod wcale nie jest taki trudny ;)

Platyna (Czw., 31 Gru. 09, 12:41)
#10

No wiesz, na GMClanie jest masa osób które nie widzą co to cosinus, nie mówiąc już o wyliczaniu składowej wektora. Taki Michaś jeszcze nie dawno nie wiedział co to jest pierwiastek :P
Ty to jesteś kozak to dla ciebie to zrozumiałe jest.

M
~Mimek (Czw., 31 Gru. 09, 12:46)
#11

Kozak jak kozak, ale jeśli ktoś chce brać się za programowanie, to podstawowe funkcje matematyczne należy znać.

Platyna (Czw., 31 Gru. 09, 12:49)
#12

Nie zgodzę się. Nie wydaje mi się by wszyscy musieli je znać już w podstawówce. Ważne by prędzej czy później je poznali.

Roki (Czw., 31 Gru. 09, 13:02)
#13

Ja robie gry od kąd mam 10 lat, już 3 lata xD
Wtedy to ładowałem grafike GM'a i ustawiałem tylko chodzenie lewo, prawo, góra, dół, bez zmiany spr, bez obliczeń matematycznych, a była gra :D

M
~Mimek (Czw., 31 Gru. 09, 13:02)
#14

Otóż to, Platyna. To chciałem powiedzieć moim poprzednim komentarzem.

Najnowsze wersje GameMakera:

Stabilna
2024.13.1.193 • 2024.13.1.242
wydana 186 dni temu
LTS
2022.0.3.85 • 2022.0.3.99
wydana 321 dni temu
Beta
2024.1400.0.907 •
2024.1400.0.896
 0.17.0

wydana  6 dni temu
= IDE, = Runtime, = GMRT
Użytkownicy online
1 użytkownik aktywny:
gości: 1,
(~ostatnie 15 minut)
Discord
56 użytkowników online na discordzie:
RogerDodg3r, Miłosz, Draczeq, Nikas, Alice, LeD, Carl-bot, Saus, pABLO, 21Lancz, p..., Kysiu, lethian, Cosplyfanka, Wielki Druid, Kuzyn, OdrzuconyKrakers, 𝕳𝖚𝖌𝖔 𝕲𝖔𝖓𝖝𝖆𝖑𝖊𝖝, m..., Kalor, Morro, r..., Threef, Cysior, HappyOrange, Moldis, Pako, Arrekin, Destiny, Dyno, 🆅🅸🆃🅾74🅼, szmalu, Korodzik, Sporekula, Kandif, sutikku, 𝕯𝖎𝖆𝖓𝖆, Marco, Voytec, Danieo, bagno, 🧁Spookcake👻, Tidżi, Mtax, MrTesterr, RuLing, s..., l..., Cebul, moeglich, d..., Add92, Krzysiek1250, h..., Shockah, xVANiLL
Shoutbox
gnysek (16:01, 16.10.25)
To już google decyduje. Mam wrażenie, ze po datach obcina stare treści.
S
Sutikku (10:42, 14.10.25)
Ja jeszcze trafiam na fora jak szukam konkretnych haseł (chociażby wczoraj zepsuty pendrive który się identyfikuje jako Phison 2307 Boot ROM). Teraz projekty opensource często mają społeczności na discordzie i tam jest tona przydatnych informacji ale niedostępna poza discordem. Fajnie by to było wyeksponować
Korodzik (04:24, 14.10.25)
A w sumie to forum się normalnie indeksuje w wyszukiwarkach? Bo ja stwierdziłem, że np. w Google ciężko znaleźć cokolwiek z gmclanowego forum. Większość tematów jest chyba nieindeksowana od dawna...
S
Sutikku (08:44, 13.10.25)
mam niedokończony projekt bota, którego dodaje się do discorda, a on synchronizuje wiadomości z discorda -> na readonly forum. Wtedy treści mogą być indeksowane z wyszukiwarek i łatwo dostępne bez logowania. No ale leży w czyśćcu i czeka.
Wojo (11:52, 11.10.25)
Może kiedyś powróci moda na fora internetowe. Pamiętam w sumie, że czasami aktywność rosła i malała, ale tak pusto to chyba jeszcze nigdy nie było i myślę, że ta cała migracja użytkowników jest zasługą Discorda i zmiany czasów. Po prostu lata dwudzieste spowodowały zmiany trendów w internecie
S
Sutikku (09:06, 08.10.25)
najwyższa pora zopensourcować kod gmclanu!
gnysek (10:33, 06.10.25)
Może tak zrobię :D Jak znajdę czas :D
I am Lord (10:49, 01.10.25)
Tutaj powinna być na głównej jakaś wielka informacja o tym że na Discordzie teraz wszystko jest
Wojo (20:34, 17.07.25)
Discordy i Facebooki pogrzebały erę forów internetowych...
gnysek (10:36, 04.07.25)
Bo wszyscy piszą na discordzie :)
Starsze wpisy znajdziesz w Archiwum.
Ankieta
Ile zarobiłeś do tej pory na grach stworzonych w GM?