PL/getPlayerPing: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Tłumaczenie napisane od początku, na podstawie wersji angielskiej.)
 
Line 18: Line 18:
function sprawdzPingi() -- tworzymy funkcję...
function sprawdzPingi() -- tworzymy funkcję...
   for _, gracz in ipairs( getElementsByType("player") ) do -- ...a w niej pętlę 'for' sprawdzającą wszystkich graczy...
   for _, gracz in ipairs( getElementsByType("player") ) do -- ...a w niej pętlę 'for' sprawdzającą wszystkich graczy...
       if ( getPlayerPing( racz) >= 500 ) then -- ...i jeżeli ping któregoś z nich przekroczy 500...
       if ( getPlayerPing( gracz) >= 500 ) then -- ...i jeżeli ping któregoś z nich przekroczy 500...
         kickPlayer( gracz, "Twój ping jest zbyt wysoki (ponad 500)!" ) -- ...to wyrzucamy go z serwera
         kickPlayer( gracz, "Twój ping jest zbyt wysoki (ponad 500)!" ) -- ...to wyrzucamy go z serwera
       end
       end

Latest revision as of 09:24, 11 April 2018

Dzięki tej funkcji możesz pobrać aktualny stan pingu danego gracza. Ping to inaczej liczba milisekund, określająca ile czasu zajmuje transmisja pakietów danych wysyłana z klienta na serwer (oraz vice versa).

Składnia

int getPlayerPing ( player thePlayer )

Składnia OOP Pomocy, nie rozumiem!

Metoda: player:getPing(...)
Wartość: .ping

Wymagane argumenty

  • thePlayer: Element gracza, którego ping chcesz zmierzyć.

Wynik

Zwraca ping wybranego gracza w postaci liczby całkowitej. Zwraca false, jeżeli gracza nie znaleziono.

Przykłady

Click to collapse [-]
Przykład nr 1: Serwer

Ten przykład co 5 sekund wyrzuca z serwera graczy, których ping przekroczył 500ms.

function sprawdzPingi() -- tworzymy funkcję...
   for _, gracz in ipairs( getElementsByType("player") ) do -- ...a w niej pętlę 'for' sprawdzającą wszystkich graczy...
      if ( getPlayerPing( gracz) >= 500 ) then -- ...i jeżeli ping któregoś z nich przekroczy 500...
         kickPlayer( gracz, "Twój ping jest zbyt wysoki (ponad 500)!" ) -- ...to wyrzucamy go z serwera
      end
   end
end
setTimer( sprawdzPingi, 5000, 0 ) -- nie zapominamy również o timerze, który będzie wywoływał naszą funkcję co 5s
Click to collapse [-]
Przykład nr 2: Klient

Ten przykład dodaje komendę o nazwie 'ping', która będzie sprawdzać ping gracza, i jeżeli przekroczy on 100ms - gracz zostanie o tym poinformowany.

function sprawdzPing() --tworzymy funkcję, w której...
   local ping = getPlayerPing( getLocalPlayer() ) -- ...sprawdzamy ping gracza...
   if ( ping > 100 ) then -- ...i jeżeli przekroczy on 100...
      outputChatBox( "Twój ping jest dosyć wysoki (ponad 100), postaraj się go zmniejszyć." ) -- ...informujemy o tym gracza
   end
end
addCommandHandler( "ping", sprawdzPing ) -- obowiązkowo podłączamy również funkcję pod commandHandler


Autor: GabWas; utworzono: 13:01, 21 Lip 2016 (CEST)
Author: GabWas; created: 11:01, 21 Jul 2016 (UTC)

Zobacz również