Работа скрипта на определённом сервере, как сделать?

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

BohdanSatan

Известный
Автор темы
160
40
Приветствую. Хочу сделать биндеры для каждого указанного мной сервера, помогите отредактировать код. Пример: играю на сервере №1, работает скрипт/строки скрипта на этом сервере, и так далее. А то уже надоело переименовывать скрипты в .txt когда играю на другом сервере, а пользуюсь в биндерах в основном нумпадом.
Код:
require "lib.moonloader"
function main()
  if not isSampfuncsLoaded() or not isSampLoaded() then return end
  while not isSampAvailable() do wait(100) end
  while true do wait(0)
    if isKeyJustPressed(VK_NUMPAD1) then
      sampSendChat("/report Админы петухи")
    end
  end
  end
P.S. Видел подобное в скрипте @Salvatore_Ferrari но самому это вырезать не получилось.
 

T1cKz

Известный
596
246
Самое простое, наверное, для таких скриптов проверять по названию сервера.
Ну или записывай данные в текстовый файл и сканируй при входе... но как по мне, тебе проще будет реально сделать по проверке на название/айпишник сервера.
п.с. делается это через эти функи:
Lua:
zstring ip, uint port = sampGetCurrentServerAddress() -- 0B39
zstring name = sampGetCurrentServerName()  -- 0B3A
 

Licht

Известный
238
32
Lua:
 local ip, port = sampGetCurrentServerAddress()
if ip ~= '(ip без порта)' then 
sampAddChatMessage('* Это не{0088f}•', 0xffffff)
 sampAddChatMessage('[]* Я не буду работать на этом!.', 0xffffff)
thisScript():unload()
 end

Вот ещё один вариант кода:
Lua:
    print("Проверка сервера к которому идёт конект.")
        if sampGetCurrentServerAddress() == "ip сервера без порта (:77777 без этого)" then
            gameServer = "имя сервера"
            srv = 1
        else
            print("Сервер не допущен, работа скрипта завершена")
            sampAddChatMessage("[{506077}]{FFFFFF} К сожалению, данный скрипт недоступен для работы на данном сервере.", 0x046D63)
            sampAddChatMessage("[{506077}]{FFFFFF} Свяжитесь с разработчиками, если хотите уточнить возможность решения данной проблемы.", 0x046D63)
            thisScript():unload()
            return
        end
        print("Проверка пройдена, сервер: "..tostring(gameServer))
 
  • Нравится
Реакции: artie и BohdanSatan
Статус
В этой теме нельзя размещать новые ответы.