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: 10530
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
1 użytkownik(ów) aktywny(ch) przez ostatnie 15 minut:
gości: 1, userów: 0, ukrytych: 0
Użytkownicy na czacie discord
Wojo (15:06, 27.10.20):
ja kiedyś dostałem awizo 3 dni po odebraniu
gnysek (23:09, 25.10.20):
Mi poczta osatnio dwa dni po obebraniu przesyłki przysłała ponaglenie...
Sutikku (9:59, 25.10.20):
Brzmi jak API kurierów i poczty polskiej, getEtykieta()
adam014 (21:29, 24.10.20):
Nawet bym na juniora go nie wziął, kod w stylu getOpis() i połowa zmiennych po polsku, siedziałem 2 dni nad refactorem i po dwóch klasach zacząłem pisać wszytko od nowa bo termin goni a przejąłem cały projekt na siebie.
gnysek (12:08, 23.10.20):
podobno nie trzeba nosić maseczki jak się wykonuje obwiązki służbowe, czy wchodzenie do sklepu od 10 do 12 też pod to podlega? bo jak ktoś ma DG to cały czas jest w pracy
Wojo (11:27, 23.10.20):
Teraz wprowadzili ograniczenia, że seniorzy nie mogą wychodzić z domu to udaje juniora...
Ranmus (8:57, 23.10.20):
Jeżeli tego nie ogarnia, to to nawet nie jest mid tylko junior
adam014 (21:00, 22.10.20):
Dev od Magento, teoretycznie powinien online zakupy ogarniać xD
Wojo (8:57, 22.10.20):
adam014 to ten koleś może chodzić do sklepów w godzinach 9-12
Borek (8:33, 22.10.20):
Ja też
exp (19:12, 21.10.20):
nie sądziłem, że dożyję
exp (19:11, 21.10.20):
o kurcze almora
gnysek (16:20, 21.10.20):
Też to widziałem, kłótnia niezła była
Chell (11:10, 21.10.20):
przeczytajcie sobie co pisze o JIT, reszta jest wam niepotrzebna xD
Chell (11:09, 21.10.20):
to ja ostatnio z tego zasmialem, bylo wrzuane na phpersow - koddlo.pl/php-8...i-wartego-uwagi
adam014 (17:06, 20.10.20):
Moge umierać, wczoraj spotkałem człowieka który pracuje jako Senior PHP Dev a nie ogarnia podstaw typu psr czy di xD
Konrad-GM (15:30, 19.10.20):
WPF pod C# jest genialny, szkoda, że nie crossplatformowy
gnysek (1:11, 19.10.20):
Ale aplikacja windowsowa okienkowa w C# to zdecyowanie faworyt łatwości programowania (20 lat temu było to Delphi).
gnysek (1:10, 19.10.20):
Na Androida pisze się w różnych rzeczach, ale chodziło o to, że na iOS wcale nie jest lepiej
Flashek (10:45, 18.10.20):
C# można przekonwertowac na każdą platformę
Chell (11:57, 17.10.20):
na tej samej zasadzie, co na windowsa pisze sie w C#
nowy_user (18:16, 16.10.20):
A to na androida przypadkiem nie pisze się w Kotlinie?
Sutikku (18:58, 11.10.20):
Myślałem, że widziałem, dopóki nie wygooglowałem
gnysek (0:26, 11.10.20):
widziałeś kiedyś Objective C ?
Sutikku (15:34, 10.10.20):
pisanie aplikacji mobilnych na androida to jakiś horror
nowy_user (16:53, 5.10.20):
Od dłuższego czasu jedyny nowy to ja.
gnysek (15:07, 5.10.20):
Nikt
I am Lord (10:36, 4.10.20):
Odżył? A ile nowych twarzy się pojawiło?
ANtY (16:37, 28.09.20):
Tylko na forum nadal powolutku się toczy
nowy_user (9:28, 28.09.20):
Tak, to dlatego, że ten rok jest wyjątkowo owocny dla twórców Gmclanu: Bonfire, WoH, Almora, to na pewno przyciąga nowych użytkowników i wzmaga ruch na stronie
Temporal333 (15:40, 23.09.20):
widzę, że GMclan odżył
Borek (22:07, 22.09.20):
Siemanko
Wojo (20:04, 22.09.20):
siemano Borek
Borek (0:29, 22.09.20):
To też prawda...
gnysek (11:23, 21.09.20):
Ale poza zmianami, muszą być jeszcze chętni tworzyć treści.
ANtY (16:14, 20.09.20):
Albo skorzystać z jakiegoś silnika czy jak to się zwie
Borek (17:00, 19.09.20):
No przyznać trzeba, że gmclan wieje PRLem Ostatnio jak zakładałem temat, to poczułem jakbym się 20 lat cofnął Widać, że gnysek coś tam próbuje uzupełniać i w miarę być na bieżąco, ale niestety to chyba trzeba przepisać serwis na nowo
szpaq99 (11:50, 19.09.20):
Nie o taki gmclan nic nie robiłem
Ranmus (12:04, 18.09.20):
Szybciej bym mu wlasnie pomogl z serwisem niz zrobil wlasna gre.
Ranmus (12:03, 18.09.20):
Poza tym gnysek zamiast robic famrefrana, wzialby sie za gmclan, bo nie po to mu przekazalem insygnia wladzy, by sie nic nie zmienialo, jak za moich czasow.
Ranmus (12:01, 18.09.20):
No to przecież mam podobnie. Kwestia priorytetów. Ja przez prawię dekadę nie grałem w gry i nie zajmowałem się już głębiej gamedevem. Ostatnio nadrabiam gry, a gamedev, cóż. Bardziej mnie jednak interesuje webdev. Mam co jakiś czas plany powrotu do gamedeva, ale po prostu nie jestem na to zbyt mocno zmotywowany. Zawsze sobie coś innego znajdę.
nowy_user (11:57, 18.09.20):
Eee tam nie masz czasu Gnysek ma firmę, żone, dzieci, kilka serwisów internetowych na głowie, i jakoś po godzinach kodzi FarmerFrana
Ranmus (8:43, 18.09.20):
Nie robię niestety żadnych gierek, bo nie mam czasu. Jak już to tylko w nie gram.
nowy_user (17:43, 17.09.20):
@Ranmus, co tam u Ciebie, robisz dalej jakieś gierki w gamemakerze czy już tylko godot?
Ranmus (13:51, 17.09.20):
Coś czuję, że GOW5 też będzie na PS4.
Ranmus (13:43, 17.09.20):
Mne ciekawi czy na PS5 będzie w końcu czas gry oraz postępy w achievmentach. Jak nie, to śmiech na sali...
Ranmus (13:42, 17.09.20):
*absolutnie żadnego powodu.
Ranmus (13:42, 17.09.20):
No i elegancko. Zastanawiałem się czy wciągać na premierę, ale po wczorajszych niusach nie mam absolutnie żadnego. Kaska oszczędzona.
gnysek (10:35, 17.09.20):
ale kiedy to będzie, za 1-2 lata
Chell (10:24, 17.09.20):
faktycznie, GoW2 i FFXVI juz zachecily
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.02525 sekund ] [ Liczba zapytań MySQL: 8 ]