Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- CLIENT SCRIPT SAVING DATA SYSTEM AT XML AS TUTORIAL BY Multi-Theft-Auto.ru --
- addEventHandler( "onClientResourceStart", getResourceRootElement(getThisResource()),
- function(startedRes)
- OnPlayerJoinToServer(getLocalPlayer()) -- После закачки данного скрипта клиленту, он запускает функцию, как определяющую, что клиент зашёл на сервер.
- end
- );
- -- Прочие установки --
- --GUIRegisterLogin = {}
- --[[GUIEditor_Window = {}
- GUIEditor_Button = {}
- GUIEditor_Label = {}
- GUIEditor_Edit = {}]]
- GUIRegisterLogin = {} -- Создаём новую пустую таблицу для нашего будущего окна (глоб.переменная).
- addEvent("openAuthorization", true) -- Добавляем новыи каллбэк, которыи вызывается со стороны сервера и служит для открытия окно авторизации
- function startRegistration(case)
- outputChatBox("Пройдите регистрацию." .. case .. "!" )
- if(case == 1) then -- Проверка, закрыть или открыть окно
- outputChatBox("Пройдите регистрацию." .. case .. "!")
- GUIRegisterLogin["Main Window"] = guiCreateWindow(256, 191, 312, 190, "Account Access", false) -- Создаём новое окно.
- GUIRegisterLogin["Button Login"] = guiCreateButton(9, 12, 150, 29, "Login", false, GUIRegisterLogin["Main Window"]) -- Создаём новую кнопку Login
- guiSetAlpha(GUIRegisterLogin["Button Login"], 0.5) -- Устанавливаем прозрачность для нашеи созданнои кнопки Login.
- GUIRegisterLogin["Button Register"] = guiCreateButton(158, 13, 145, 28, "Register", false, GUIRegisterLogin["Main Window"]) -- Создаём новую кнопку Register
- guiSetAlpha(GUIRegisterLogin["Button Register"], 0.5) -- Устанавливаем прозрачность для нашеи созданнои кнопки Register.
- GUIRegisterLogin["Image MTA"] = guiCreateStaticImage(9, 58, 124, 93, "images/mtalogo.png", false, GUIRegisterLogin["Main Window"]) -- Создаём картинку в виде лого МТА.
- guiSetAlpha(GUIRegisterLogin["Image MTA"], 0.6) -- Устанавливаем прозрачность для нашеи созданнои картинки МТА.
- GUIRegisterLogin["EditBox Username"] = guiCreateEdit(180, 69, 113, 22, "", false, GUIRegisterLogin["Main Window"]) -- Создаём новое поле, с текстом по умолчанию ника зашедшего игрока.
- guiSetAlpha(GUIRegisterLogin["EditBox Username"], 0.5) -- Устанавливаем прозрачность для созданного поля (username).
- GUIRegisterLogin["EditBox Password"] = guiCreateEdit(179, 102, 114, 22, "", false, GUIRegisterLogin["Main Window"]) -- Создаём новое поле для ввода пароля (password).
- guiSetAlpha(GUIRegisterLogin["EditBox Password"], 0.5) -- Устанавливаем прозрачность для созданного поля (password).
- GUIRegisterLogin["Label Username"] = guiCreateLabel(118, 70, 69, 16, "Username:", false, GUIRegisterLogin["Main Window"]) -- Создаём текст в онке (Username:).
- guiLabelSetColor(GUIRegisterLogin["Label Username"], 255, 255, 255) -- Устаавливаем цвет для созданного текста в формате RGB у нас белыи.
- guiLabelSetVerticalAlign(GUIRegisterLogin["Label Username"], "top") -- Выравниваем по вертикале наш текст по верху.
- guiLabelSetHorizontalAlign(GUIRegisterLogin["Label Username"], "left", false) -- Выравниваем по горизонтале наш текст по левому краю.
- GUIRegisterLogin["Label Password"] = guiCreateLabel(118, 105, 74, 15, "Password:", false, GUIRegisterLogin["Main Window"]) -- Создаём текст в онке (Password:).
- guiLabelSetColor(GUIRegisterLogin["Label Password"], 255, 255, 255) -- Устаавливаем цвет для созданного текста в формате RGB у нас белыи.
- guiLabelSetVerticalAlign(GUIRegisterLogin["Label Password"], "top") -- Выравниваем по вертикале наш текст по верху.
- guiLabelSetHorizontalAlign(GUIRegisterLogin["Label Password"], "left", false) -- Выравниваем по горизонтале наш текст по левому краю.
- GUIRegisterLogin["Label MTA"] = guiCreateLabel(121, 165, 176, 17, "MTA Is The Best Multiplayer (c)", false, GUIRegisterLogin["Main Window"]) -- Создаём текст в онке (MTA Is The Best Multiplayer (c)).
- guiLabelSetColor(GUIRegisterLogin["Label MTA"], 255, 255, 255) -- Устаавливаем цвет для созданного текста в формате RGB у нас белыи.
- guiLabelSetVerticalAlign(GUIRegisterLogin["Label MTA"], "top") -- Выравниваем по вертикале наш текст по верху.
- guiLabelSetHorizontalAlign(GUIRegisterLogin["Label MTA"], "left", false) -- Выравниваем по горизонтале наш текст по левому краю.
- guiEditSetMasked(GUIRegisterLogin["EditBox Password"], true) -- Включаем режим пароля в поле password, т.е маскированныи текст (***).
- showCursor(true) -- Активируем курсор.
- guiSetInputEnabled(true) -- Включаем возможность печатать в полях.
- guiSetEnabled(GUIRegisterLogin["Button Login"], true) -- Активируем наши кнопки.
- guiSetEnabled(GUIRegisterLogin["Button Register"], true) -- Активируем наши кнопки.
- guiEditSetMaxLength(GUIRegisterLogin["EditBox Username"], 24) -- Создаём максимальныи предел поля ввода логина 24 символов.
- guiEditSetMaxLength(GUIRegisterLogin["EditBox Password"], 12) -- Создаём максимальныи предел поля ввода пароля 12 символов.
- guiWindowSetMovable(GUIRegisterLogin["Main Window"], false) -- Делаем окно неподвижным.
- addEventHandler("onClientGUIClick", GUIRegisterLogin["Button Register"], PassedRegister, false) -- Закрепляем кнопку к функциии PassedRegister, т.е что будет вызываться на клик кнопки.
- addEventHandler("onClientGUIClick", GUIRegisterLogin["Button Login"], PassedLogin, false) -- Закрепляем кнопку к функциии PassedLogin, т.е что будет вызываться на клик кнопки.
- guiSetVisible(GUIRegisterLogin["Main Window"], true) -- Делаем его видимым.
- else -- Если меньше одного, то окно будет закрыто:
- outputChatBox("Пройдите регистрацию." .. case .. "!")
- if(guiGetVisible(GUIRegisterLogin["Main Window"]) == true) then -- проверка, если окно видимо:
- guiSetVisible(GUIRegisterLogin["Main Window"], false) -- Делаем его невидимым.
- showCursor(false) -- Убираем курсор.
- guiSetInputEnabled(false) -- Выключаем возможность печатать в наших полях.
- else
- guiSetVisible(GUIRegisterLogin["Main Window"], true) -- Делаем его невидимым.
- showCursor(true) -- Убираем курсор.
- guiSetInputEnabled(true -- Выключаем возможность печатать в наших полях.
- end
- end
- end
- addEventHandler("openAuthorization", getRootElement(), startRegistration) -- Прикручиваем функцию startRegistration к коллбэку openAuthorization с клиент скрипта.
- --addCommandHandler ( "regist", startRegistration )
- addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()),
- function ()
- startRegistration(1)
- outputChatBox("Приветствуем вас на New Unaited States Role Play сервере.")
- end
- )
- function PassedLogin() -- Функция вызывается, если игрок нажал на кнопку Login.
- local login = guiGetText(GUIRegisterLogin["EditBox Username"]) -- Создаём локальную переменную и получаем текст поля, которыи ввел игрок (имя пользователя).
- local password = guiGetText(GUIRegisterLogin["EditBox Password"]) -- Создаём локальную переменную и получаем текст поля, которыи ввел игрок (пароль).
- if(login == "" and login ~= nil or password == "" and password ~= nil) then -- Проверка, если игрок не ввёл в поля ничего.
- outputChatBox("Пожалуиста, заполните все поля.") -- Выводим сообщение об этом.
- else -- иначе
- triggerServerEvent("onPlayerCustomLogin", getLocalPlayer(), getLocalPlayer(), login, password) -- Если все заполнено, вызывается функция из сервер скрипта, по-скольку в клиент скриптах нет функции по работе с XML фаилами.
- end
- end
- function BadLogin() -- Если ввёл неверный пароль или игрок не зарегестрирован
- outputChatBox("Введите пароль и логин заного.") -- Выводим сообщение об этом.
- guiSetVisible(GUIRegisterLogin["Main Window"], true) -- Делаем его невидимым.
- showCursor(true) -- Убираем курсор.
- guiSetInputEnabled(true) -- Выключаем возможность печатать в наших полях.
- end
- function PassedRegister() -- Функция вызывается, если игрок нажал на кнопку Register.
- local login = guiGetText(GUIRegisterLogin["EditBox Username"]) -- Создаём локальную переменную и получаем текст поля, которыи ввел игрок (имя пользователя).
- local password = guiGetText(GUIRegisterLogin["EditBox Password"]) -- Создаём локальную переменную и получаем текст поля, которыи ввел игрок (пароль).
- if(login == "" and login ~= nil or password == "" and password ~= nil) then -- Проверка, если игрок не ввёл в поля ничего.
- outputChatBox("Пожалуиста, заполните все поля.") -- Выводим сообщение об этом.
- else -- иначе:
- triggerServerEvent("onPlayerCustomRegister", getLocalPlayer(), getLocalPlayer(), login, password) -- Если все заполнено, вызывается функция из сервер скрипта, по-скольку в клиент скриптах нет функции по работе с XML фаилами.
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement