Rozumiem, że serwer może wykonać funkcję klienta i odwrotnie. Mimo to muszę przyznać, że o ile separacja serwera i klienta ma wyjść na dobre, to mi sprawia to straszną trudność z poziomu logiki kodu, a czasami realizacji. Mój tok myślenia wygląda tak, że parametr id, który gracz przekazuje za pomocą komendy, musi zostać wykorzystany przez serwer, który wykona funkcję klienta getWorld() na kliencie gracza o tym id i zwróci wynik, który zostanie wykorzystany przez gracza wykonującego komendę.
Pisanie kodu sprawiało przyjemność, dopóki nie musiałem tworzyć korelacji pomiędzy klientem i serwerem, ale teraz jest to wręcz frustrujące.
EDIT:
Udało mi się wykonać coś takiego w ramach ćwiczeń:
Przez co przeniosłem gracza o wskazanym pid (wskazałem na siebie, ale powinno działać na innych). Problem pojawia się, gdy funkcja klienta zwraca wartość, na której mi zależy. Następujący zapis:
Wyświetla mi jedynie true. Zapewne callClientFunc zwraca true, jeśli wykona funkcję, albo coś takiego. Nie mam zielonego pojęcia, jak wydobyć wartość zwracaną przez funkcję klienta.
Pisanie kodu sprawiało przyjemność, dopóki nie musiałem tworzyć korelacji pomiędzy klientem i serwerem, ale teraz jest to wręcz frustrujące.
EDIT:
Udało mi się wykonać coś takiego w ramach ćwiczeń:
Code:
callClientFunc(pid, "setPosition", x, y, z);
Code:
local test = callClientFunc(pid, "getWorld");
print(test);