Nasze strony: gmclan.org gameonly.pl ps-plus.pl gameswithgold.pl n-switch.pl hmt.pl
Fastbar
Powrót do strony głównej
Trzymaj pliki na gmclan.org!
Game Maker w pytaniach i odpowiedziach!
Polska dokumentacja
Tabela wyników ligi 24
Pobierz GM
Akademia GMCLANu
Wiadomości
Kategoria: wszystkie :: game maker :: kącik programowania :: inne

Wielkie zmiany i nowości w GML pod koniec roku !!!

Na taką informację czekaliśmy od dawna. GameMakerStudio 2 w końcu czekają konkretne zmiany, poprawiające i dodające mnóstwo brakujących funkcjonalności do języka GML!!!

Pełna lista tutaj: www.yoyogames.c...updates-in-2019 - ale postaram się wam przybliżyć o co chodzi (zwłaszcza tym który angielski sprawia problemy).

Dereferencje tablic i struktur.
GMS 2 wprowadził zmianę, która pozwala wstawić tablicę do tablicy. Tak naprawdę teraz tablice 2D to własnie tablica w tablicy. Niestety, odczyt takiej zagłębionej tablicy nie jest łatwy, trzeba bowiem "podtablicę" przypisać najpierw do zmiennej.
Zmiany to poprawią i będzie można napisać tak:
kod:var a = my_array[1][4][0][2];To samo dotyczy map, list i gridów:
kod:var a = my_list[| 5][# 5, 6][? "key"]; // odczyt 5 elementu listy, potem pozycji 5,6 grida, potem klucza mapy w tymże gridzie
Skrypty i funkcje można napisać teraz wszędzie i przypisać do zmiennej.
Zamiast tworzyć skrypt, od teraz będzie można napisać:
kod:function my_script(a,b){return a+b;}Poza faktem, że można zrezygnować z argument0,...,.argment15, można też przypisać funkcję do zmiennej (jak w JS) i ta zmienna automatycznie zostaje nazwą funkcji. Powala to też na tymczasowe funkcje:
kod:var my_script = function(a,b){return a+b;} // bez "var" funkcja będzie globalnaMinusem jest to, że takie funkcje stracą dostęp do zmiennych tymczasowych zdefiniowanych poza nimi.
Wszystkie istniejące skrypty zostaną przekonwertowane po odpaleniu w GMS 2.3 do nowego formatu, a domyślnie zostanie argument0, argument1 itp.
Funkcje będzie też można dzięki temu zrobić w jednym pliku, a nie każda osobno. Będzie trzeba się przestawić z mówienia "skrypt" na "własna funkcja" - chociaż na finalne nazewnictwo poczekamy, na forum YYG już są na ten temat narzekania.

Lekkie obiekty
Będzie można zdefiniować własne obiekty, bez jakichkolwiek wbudowanych zmiennych (x, y, image_index itp.) - coś na zasadzie "struct" z innych języków czy właśnie obiektu z Javascriptu.
kod:
var a = {
name: "Buty z borsuka",
price: 500,
def: 20,
desc: "Te buty zrobiłem ręcznie",
can_buy: function() { return global.gold > price; }
};

konstruktor "new"
konstruktor "new" pozwoli na utworzenie instancji obiektu (coś jak instance_create dla lekkich obiektów).
kod:
function Item(n,p){
name = n;
price = p;
};
var buty = new Item("Gwiezdne kapcie", 300);

Łapanie wyjątków
GMS2 wprowadzi funkcjonalność wyłapywania błędów w grze, bez wywalania fatal errorów.
kod:
try {
var b = my_array[-1];
} catch ex {
// w zmiennej ex będzie błąd, zapewne "Index out of bounds" w tym przypadku
} finally {
// kod który będzie wykonany zawsze po try-catch, w sumie to bez finally za klamrą też powinien się wykonać
}

Garbage collector
Będzie usuwał zmienne które wyparowały z pamięci. Nie jest jeszcze jasne czy, ds_xxx też znikną, jak nie będą przypisane do żadnej zmiennej, bo tego YYG nie napisało. Ale logicznym by było, zeby tak się stało.


 

autor: gnysek | data dodania: 10:01, 5.04.2019 | odsłon: 7064
Komentarze
stron: 1

1


av

Konrad-GM (21:11, 5.04.2019)

Jeszcze warto wspomnieć, że operator 'new' tworzy obiekt, który może mieć własne metody definiowane tak jak inne funkcje

function Item(n,p){
name = n;
price = p;
can_buy = function () { return global.gold > price; }
};
var buty = new Item("Gwiezdne kapcie", 300);

av

Pieter (12:04, 6.04.2019)

lul. tyle lat a GM nadal korzysta z GML? Już lepiej by było gdyby przepieli się na V8 albo Lua, wyszło by im to na dobre.

av

Temporal (13:40, 6.04.2019)

Fajnie gnysek, że nie linkujesz newsa z yoyo strony, tylko jednak robisz własną wersję z własnymi przykładami. Szanuję.

av

gnysek (11:59, 8.04.2019)

Dzięki

av

BONUS GMC (21:02, 10.10.2019)

i to są te wielkie zmiany tak

av

gnysek (10:44, 11.12.2019)

Rok się nie skończył

stron: 1

1



Dodaj komentarz:
Treść:
Menu
Panel użytkownika
Jesteś niezalogowany!

Nie masz konta? Zarejestruj się
Użytkownicy on-line
2 użytkownik(ów) aktywny(ch) przez ostatnie 15 minut:
gości: 1, userów: 1, ukrytych: 0
Adriann
Użytkownicy na czacie discord
SimianVirus7 (17:50, 28.05.20):
Ja mam zamiar kupić export na androida, fajnie jakby też jakaś promocja z tego wynikła
nowy_user (17:15, 28.05.20):
Na forum YoYo zadyma, sfrustrowani użytkownicy strajkują i żądają obniżenia cen licencji na konsole. Poszła już nawet petycja w tej sprawie, a niektórzy grożą zainstalowaniem Unity!
SimianVirus7 (21:26, 24.05.20):
GMS 2 Line Counter
SimianVirus7 (21:26, 24.05.20):
Dobra, Dzięki Threef, poszukałem i jest jakaś alternatywa do gms2
SimianVirus7 (21:18, 24.05.20):
szukam i chyba chodzi Ci o GMLPal
Threef (21:16, 24.05.20):
Do GMS1 był zewnętrzny program który podawał statystyki
SimianVirus7 (11:54, 24.05.20):
Można gdzieś zobaczyć podsumowanie ile linijek kodu jest napisane w całym projekcie? Wydaje mi się, że w gms1 gdzieś taka opcja była, a w gms2?
gnysek (13:15, 21.05.20):
Ranma kolejny raz robi na mnie cesję domeny i kolejny raz qpa
nowy_user (15:17, 11.05.20):
Jakieś jeszcze są, ale raczej mniej spektakularne. Żadnych znajomych twarzy nie dostrzegłem. Jakiś mecz w ping ponga w biurze.. czy inne mniej ciekawe rzeczy.
gnysek (11:19, 11.05.20):
Jeszcze jakieś są ?
nowy_user (21:16, 10.05.20):
Nie no, tak serio to Allie wrzucała różne filmiki z YoYo House na Discorda
nowy_user (20:50, 10.05.20):
Mam swoje źródła ;-) Przy okazji, czy pomylił Cię ktoś kiedyś na ulicy z Sebastianem Vettelem? Wyglądacie bardzo podobnie.
gnysek (23:27, 9.05.20):
Wow, skąd to masz
nowy_user (17:32, 8.05.20):
Ok, w takim razie wrzucam : www.youtube.com...h?v=p2X8VJjphY4
gnysek (14:33, 8.05.20):
Na tym jest tylko mieszkanie, nas nie ma: www.youtube.com...h?v=3Fonyl0gQWY
gnysek (14:29, 8.05.20):
Pewnie po pijaku
gnysek (14:28, 8.05.20):
Eeee, dawaj ten film
nowy_user (20:42, 7.05.20):
Filmu nie chcę wrzucać bez Twojej zgody (chociaż uspokajam - nie ma tam gorszących scen ;d tylko kulturalne śniadanko . Zazdroszczę przygody, musiałeś poznać wielu dzisiejszych GM'owych wyjadaczy.
nowy_user (20:40, 7.05.20):
Chyba tak, można się natknąć na jakieś filmiki na YT z yoyo house. Na jednym z nich Ty nawet występujesz w głównej roli co ciekawe na tym samym filmie jest też Nocturne, gwiazda wielkiej rangi na gmc ( dla tych, którzy nie odwiedzają gmc - Nocturne to gość o reputacji mniej więcej takiej, jaką u nas ma Tymon).
gnysek (14:25, 7.05.20):
Mają je jeszcze? Ten w którym ja mieszkałem, należał do Mike'a.
nowy_user (17:32, 6.05.20):
Hej, wiedzieliście, że YoYo ma swoje tzw. YoYo house, w którym przetrzymuje (dobrowolnie) swoich zagranicznych pracowników? To jest chyba coś na wzór domku Big Brothera, ciekawe...
SimianVirus7 (21:27, 4.05.20):
No u mnie się w sumie nic nie zmieniło, oprócz tego, że w pracy mam mniej zleceń i zamiast 8 godzin robię 3-4, chociaż od dzisiaj ma to wrócić na dawne tory :/
Sutikku (2:44, 4.05.20):
u mnie też izolacja to złoto, nonstop obiadki w domu, żyć nie chorować
gnysek (22:32, 3.05.20):
ja bym się cieszył izloacją, ale mam 3 baby w domu i do córki jeszcze córka sąsiadów wpada czasem
Threef (11:55, 2.05.20):
Mam alergię więc jestem szczęśliwy że nie muszę wychodzić.
Threef (11:54, 2.05.20):
Ja tam się fizycznie i psychicznie czuję doskonale.
Ignatus (10:49, 1.05.20):
Ranmus , dziękuje za wsparcie! Teraz dopiero odczytałem
exp (0:57, 1.05.20):
świra można dostać od tej izolatki
exp (0:57, 1.05.20):
psychicznie chyba nikt teraz nie jest w najlepszym stanie
ANtY (20:39, 30.04.20):
tylko fizycznie i to też tak se
SimianVirus7 (18:07, 30.04.20):
a zdrowi zdrowi dziękować
exp (0:20, 30.04.20):
co tam słychać gmclanowicze, wszyscy zdrowi?
Adriann (16:18, 29.04.20):
O, dziękuję bardzo
Konrad-GM (15:59, 29.04.20):
Propa chyba dalej ma go na gmclanowym uploaderze gmclan.org/up993.html
Adriann (14:20, 29.04.20):
Ma ktoś może Spartana Propy na dysku?
Threef (16:29, 28.04.20):
;D
gnysek (15:50, 28.04.20):
No ja czekam na cesję, to po Twojej stronie leży
Ranmus (15:21, 28.04.20):
Jak będziemy w Gdańsku, to możemy zrobić spotkanie po latach już z rodzinami
Ranmus (15:19, 28.04.20):
Btw. musimy się w końcu zgadać na cesję domeny.
Ranmus (15:18, 28.04.20):
@gnysek: Jestem dopiero na etapie pieluch.
Ranmus (15:16, 28.04.20):
I byłby na pierwszym roku studiów.
Wojo (15:15, 28.04.20):
Gdyby gmclan był człowiekiem to by już mógł legalnie kupić alkohol
Ranmus (15:09, 28.04.20):
Lata lecą, więc i ja jakiś czas temu zapuściłem korzenie.
gnysek (14:42, 28.04.20):
Zaraz, zaraz, co? Ranma też jesteś ojcem?!
Ranmus (13:47, 28.04.20):
Wsparte!
Ranmus (13:45, 28.04.20):
Dobra, nie było pytania, doczytałem na końcu wspieraczki.
Ranmus (13:44, 28.04.20):
Rozumiem, że trzeba je samemu wydrukować tak? Niestety nie mam aktualnie dostępu do kolorowej drukarki, choć mam w planach kupno. Czy wszystkie gry aktualnie wymagają koloru?
Ranmus (13:40, 28.04.20):
O proszę, kolekcjonuję planszówki od 3 lat, ale ostatnio przystopowałem ze względu na dziecko. Niestety roll & write nigdy nie próbowałem, bo trochę nie moja bajka, ale z chęcią wesprę i zamówię dla mojej kobiety.
Ignatus (9:22, 26.04.20):
Bardzo dziękuję Udało się już zebrać prawie 1600% zakładanego celu więc jest spoko
nowy_user (18:07, 24.04.20):
Ignatus rewelacja! Ja sam uwielbiam robić gry planszowe (hobbistyczne) a od zeszłego roku robię grę hybrydową ( gra + apka zrobiona w GM).Twoja inicjatywa jest super, będę śledził, jak to się dalej potoczy, bo będę chciał pójść podobną ścieżką! Jeszcze raz gratulacje!
Ankieta
» Ile powinny trwać tury Ligi 24?
24h
48h
54h (piątek od 18:00)
7 dni
inna długość (podałem w komentarzu ankiety)

GMCLAN to serwis o programie Game Maker i nie tylko.
[ Polityka prywatności ]
Copyright © 2002-2020. GMCLAN.ORG
Wszelkie prawa zastrzeżone. Kopiowanie materiałów bez zgody redakcji zabronione!
© 2002-2017 Ranmus (ranmus.pl), © 2017-2020 {=|=} fable_inside();

[ Czas generowania strony: 0.03589 sekund ] [ Liczba zapytań MySQL: 8 ]