- Dokumentacja
- Funkcje klienta
- triggerServerEvent
Funkcja
triggerServerEvent
KlientZdarzeniaJak w MTA:SA
Wysyła zdarzenie od gracza do serwera, np. kliknięcie przycisku albo wybór w menu.
Składnia
bool triggerServerEvent(string nazwa [, element zrodlo = localPlayer, ...])Argumenty
nazwastring- Nazwa zdarzenia. Serwer musi je zarejestrować przez
addEvent(nazwa, true). zrodloelement, opcjonalny = localPlayer- Element, który na serwerze będzie widoczny jako
source. ...dowolne, opcjonalny- Argumenty dla funkcji obsługi na serwerze.
Zwraca
true, gdy zdarzenie zostało wysłane.
Przykład
Gracz wciska F2, a serwer sprawdza, czy stać go na naprawę auta.
bindKey("F2", "down", function()
triggerServerEvent("naprawAuto", resourceRoot)
end)
addEvent("naprawAuto", true)
addEventHandler("naprawAuto", resourceRoot, function()
-- client to gracz, który wysłał zdarzenie
local auto = getPedOccupiedVehicle(client)
if not auto then return end
if getPlayerMoney(client) < 500 then
outputChatBox("Naprawa kosztuje $500.", client, 255, 80, 80)
return
end
takePlayerMoney(client, 500)
fixVehicle(auto)
end)
Uwagi
Nie ufaj danym od gracza. Na serwerze używaj zmiennej client, a nie argumentów wysłanych przez gracza, żeby wiedzieć, kto wysłał zdarzenie. Ceny, nagrody i uprawnienia sprawdzaj zawsze na serwerze.
Tak jak w MTA. Zdarzenie niezarejestrowane z true jest odrzucane, a serwer wywołuje onPlayerTriggerInvalidEvent.