SerweryWłasny serwerDla twórcówForumFAQDokumentacjaBezpieczeństwo
Pobierz launcher
  1. Dokumentacja
  2. Funkcje wspólne
  3. addCommandHandler

Funkcja

addCommandHandler

Rejestruje komendę czatu i konsoli (np. /auto). Gdy gracz ją wpisze, wywoływana jest funkcja. Na serwerze funkcja dostaje gracza, nazwę komendy i kolejne słowa jako osobne argumenty; u klienta nazwę komendy i słowa. Ta sama komenda może mieć kilka funkcji, także z różnych zasobów. Komenda znika razem z zasobem, który ją dodał.

Składnia

Serwer

bool addCommandHandler(string commandName, function handler [, bool restricted = false, bool caseSensitive = false])

Klient

bool addCommandHandler(string commandName, function handler)

Argumenty

commandNamestring
Nazwa komendy bez ukośnika.Nie ma go w MTA:SA
handlerfunction
Serwer: function(player, commandName, ...), klient: function(commandName, ...).Nie ma go w MTA:SA
restrictedbool, opcjonalny = false
Przyjmowany dla zgodności ze starszymi skryptami. Uprawnienia sprawdzaj w funkcji, np. przez hasObjectPermissionTo.Nie ma go w MTA:SA
caseSensitivebool, opcjonalny = false
true = /Auto i /auto to różne komendy (tylko serwer).Nie ma go w MTA:SA

Różnice względem MTA:SA

  • Argumenty zaznaczone innym kolorem różnią się od MTA:SA.

W MTA:SA

addCommandHandler()

Zwraca

true, gdy komenda została dodana.

Przykład

Komenda /hp 50 ustawia zdrowie gracza; liczba przychodzi jako tekst.

addCommandHandler("hp", function(player, command, value)
    local hp = tonumber(value)
    if not hp then
        outputChatBox("Użycie: /" .. command .. " <0-100>", player, 255, 80, 80)
        return
    end
    setElementHealth(player, math.max(0, math.min(100, hp)))
end)

Zobacz też