Авторизация  
PINGVIN

Проверка серийного номера

В теме 9 сообщений

Здравствуйте! Помогите пожалуйста. Надо написать скрипт на проверку серийника. Если серийника и логина в списке нет - человека кикает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, PINGVIN сказал:

Здравствуйте! Помогите пожалуйста. Надо написать скрипт на проверку серийника. Если серийника и логина в списке нет - человека кикает

Код есть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, HomoS сказал:

Код есть?

Нет, надо написать готовый, чтоб взять и просто вставить логины и серийники))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С wiki, немного переделал:

local allowedAccountSerials =
{
    ["3ash8"] = {"9C9F3B55D9D7BB7135FF274D3BF444E4"},
    ["test5"] = {"1D6F76CF8D7193792D13789849498452"},
}

addEventHandler("onPlayerLogin", root,
    function(_, account)
        local playerSerial, allowedSerials = getPlayerSerial(source), allowedAccountSerials[getAccountName(account)] or {}
        
        for i = 1, #allowedSerials do
            if allowedSerials[i] == playerSerial then
                return
            end
        end
        
        kickPlayer(source)
    	cancelEvent()
    end
)

И дать права ресурсу в ACL.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Спойлер
34 минуты назад, HomoS сказал:

С wiki, немного переделал:



local allowedAccountSerials =
{
    ["3ash8"] = {"9C9F3B55D9D7BB7135FF274D3BF444E4"},
    ["test5"] = {"1D6F76CF8D7193792D13789849498452"},
}

addEventHandler("onPlayerLogin", root,
    function(_, account)
        local playerSerial, allowedSerials = getPlayerSerial(source), allowedAccountSerials[getAccountName(account)] or {}
        
        for i = 1, #allowedSerials do
            if allowedSerials[i] == playerSerial then
                return
            end
        end
        
        kickPlayer(source)
    	cancelEvent()
    end
)

 

Спасибо

Спойлер
34 минуты назад, HomoS сказал:

С wiki, немного переделал:



local allowedAccountSerials =
{
    ["3ash8"] = {"9C9F3B55D9D7BB7135FF274D3BF444E4"},
    ["test5"] = {"1D6F76CF8D7193792D13789849498452"},
}

addEventHandler("onPlayerLogin", root,
    function(_, account)
        local playerSerial, allowedSerials = getPlayerSerial(source), allowedAccountSerials[getAccountName(account)] or {}
        
        for i = 1, #allowedSerials do
            if allowedSerials[i] == playerSerial then
                return
            end
        end
        
        kickPlayer(source)
    	cancelEvent()
    end
)

 

А как можно сделать уведомление человеку, чтоб при кике - ему выдавало ошибку "У вас нет доступа к подключению!"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@PINGVIN

wiki:

bool kickPlayer ( player kickedPlayer, [ player/string responsiblePlayer, string reason = "" ] )

Замени kickPlayer на:
 

kickPlayer(source, "Причина")

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
8 минут назад, HomoS сказал:

@PINGVIN

wiki:


bool kickPlayer ( player kickedPlayer, [ player/string responsiblePlayer, string reason = "" ] )

Замени kickPlayer на:
 


kickPlayer(source, "Причина")

 

спасибо большое

47 минут назад, HomoS сказал:

@PINGVIN

wiki:


bool kickPlayer ( player kickedPlayer, [ player/string responsiblePlayer, string reason = "" ] )

Замени kickPlayer на:
 


kickPlayer(source, "Причина")

 

По итогу не работает, ресурс прописан в ацл, логин и серийник закомментированы, но я могу свободно играть на сервере

_Ev3d29Nizw.jpg

  • xD 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
10 минут назад, HomoS сказал:

@PINGVIN потому что скрипт написан для тех, кто логинится.


local allowedAccountSerials = {['HomoS'] = {"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"}}

addEventHandler("onPlayerJoin", root,
    function ()
        local playerSerial, allowedSerials = getPlayerSerial(source), allowedAccountSerials[getPlayerName(source)] or {}
        
        if #allowedSerials > 0 then
            for i = 1, #allowedSerials do
                if allowedSerials[i] == playerSerial then
                    return
                end
            end
        end
        
        kickPlayer(source, "Вашего Serial нет в базе.")
        cancelEvent()
    end)

 

mta-serial-script.PNG

Спасибо, все работает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

  • Похожий контент

    • От Tyrka
      Видел на одном из серверов КРМП ( greentech rp ) коробку передач. Не могли бы подсказать как это лучше всего сделать и так что бы это было максимально правдоподобно. Желательно на клавишу w - газ , s - тормоз и например y - сцепление. Заранее спасибо.