Welcome to Сообщество игровых серверов NETZONA.ORG

Присоединяйтесь к нам сейчас, чтобы получить доступ ко всем нашим функциям. Зарегистрировавшись и войдя в систему, вы сможете создавать темы, публиковать ответы в существующих темах, давать репутацию другим участникам, получать собственный личный мессенджер и многое другое. Это также быстро и совершенно бесплатно, так чего же вы ждете?
  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами Публичной оферты Проекта NetZONA.org: https://netzona.org/help/public-offer/

  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами использования Ваших файлов cookie на Проекте NetZONA.org: https://netzona.org/help/cookies/

  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с Политикой конфиденциальности Проекта NetZONA.org: https://netzona.org/pages/privacy-policy/

  • Ответы на основные вопросы: https://netzona.org/threads/populjarnye-voprosy-i-otvety-na-nix.6122/

  • Приветствуем на сайте, Гость! Приобрести (купить) Информационную услугу (в том числе группу "Проверенный") на Проекте NetZONA.org: https://netzona.org/account/upgrades

GM:PlayerConnect

Статус
В этой теме нельзя размещать новые ответы.

Ледкол

Пользователь
Регистрация
5 Ноя 2015
Сообщения
108
Реакции
0
Баллы
29
Возраст
23
Пол
Необходимо сделать так, чтобы при заходе игрока на сервер, происходила проверка на наличее этого игрока в базе данных (по steam id) или, если игрок есть в базе данных, то проверка на наличие текущего ip этого игрока.
Как мне показалось, что для этого подходит лучше всего hook PlayerConnect. Но он в виде параметра передаёт только имя игрока. Тогда для получения steam id надо перебирать player.GetAll() в поисках игрока с таким же именем, но данный способ небезопасен, потому что имя игрока неуникально.
Есть идеи, что можно использовать вместо этого хука?
 

Hikka

Модератор
Команда форума
Проверенный
Регистрация
29 Сен 2016
Сообщения
555
Реакции
1
Баллы
60
Возраст
30
Пол
http://wiki.garrysmod.com/page/GM/PlayerAuthed
local result = sql.QueryRow("SELECT ячейка FROM таблица WHERE ячейка")
Вот так можно вытащить результат.
if result then print("IP совпал") else print("IP не совпал") end
 
Последнее редактирование:

Ледкол

Пользователь
Регистрация
5 Ноя 2015
Сообщения
108
Реакции
0
Баллы
29
Возраст
23
Пол
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху Снизу