Nick w MP: Piorun
Na forum: 1584 dni Posty: 897 Piwa: 163 Respekt: 99,7 Głosy: 7
Wysłany: 2011-07-04, 17:07 [LUA] Łączenie zasobów
Operacje na funkcjach 'call' (wykorzystywanie funkcji z jednego zasobu w innych)
1. Przygotowanie funkcji
Każda funkcja, która będzie odwoływana powinna zwracać jakieś wartości (więcej tutaj, dział numer 4). Przykładowa funkcja zwracająca np. nick gracza.
I tak, gdy odwołamy się w jakimś innym zasobie do tej funkcji zwróci ona nam nick gracza.
2. 'export' w Meta.xml
Drugą ważną rzeczą, o której nie można zapomnieć jest dodanie odpowiedniej linijki do pliku Meta.xml. Tak więc otwieramy w/w plik i dodajemy linijkę:
Parametry type i http nie są konieczne.
type - określa po której stronie funkcja ma działać. Jeżeli nie uwzględnimy tego parametru to funkcja będzie działać i po stronie serwera i po stronie klienta.
http - określa, czy funkcja może być wykorzystywana przez serwer http (www).
3. Funkcja 'call'
Przyszła pora na końcowy etap, a konkretnie odwołanie się do funkcji w jakimś innym zasobie. Otwieramy dowolny plik źródłowy (ten z rozszerzeniem .lua) i umieszczamy kod:
W naszym przypadku będzie to wyglądać tak:
Daje nam to tylko odwołanie bez żadnego efektu. Aby uzyskać go wystarczy obłożyć funkcję 'call' zmienną, oraz dodać funkcję outputChatBox:
Dzięki temu po wpisaniu komendy "/test" pojawi się nam nasz nick.
Oczywiście to są przykładowe funkcje. Skrypterzy ułatwiają sobie dzięki temu pracę, bo zamiast kopiować i wklejać ponownie parę linijek kodu, mogą się odwołać do już istniejącej funkcji.
4. Post scriptum
Możecie się również spotkać z poniższymi funkcjami, które również działają jak funkcja 'call':
Na pożegnanie - miłej zabawy z Lua.
Dziękuje jeszcze raz za przeczytanie powyższego tutka.
Pozdrawiam, Piorun.
_________________ Project: San Andreas Projekt serwera RP w MTA. Na razie istniejemy
jako strona na Facebook'u. Możesz nas polubić,
skomentować i oceniać naszą pracę.
Ostatnio zmieniony przez Shaun 2011-07-04, 17:59, w całości zmieniany 1 raz
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach