ПОМОГИТЕ, Как дать определенному нику права администратора в любом скрипте ? |
Здравствуйте, гость ( Вход | Регистрация )
ПОМОГИТЕ, Как дать определенному нику права администратора в любом скрипте ? |
18.1.2015, 0:31
Сообщение
#21
|
|
Местный Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз |
а вот по поводу этой функции она же проще? можно же просто её дописать в любой скрипт и будет функционировать Нельзя просто взять и запихнуть произвольный кусок кода в любой скрипт. Обработка команд, как правило, отличается в каждом скрипте. Следовательно, и код для каждого скрипта будет свой.
|
|
|
18.1.2015, 0:49
Сообщение
#22
|
|
Начинающий Группа: Пользователи Сообщений: 13 Регистрация: 17.1.2015 Пользователь №: 12 937 Спасибо сказали: 0 раз |
Нельзя просто взять и запихнуть произвольный кусок кода в любой скрипт. Обработка команд, как правило, отличается в каждом скрипте. Следовательно, и код для каждого скрипта будет свой. ну вот эту функцию можно ли в самый первый код скрипта управления который яя скинул. чтоб в нем эта функция там была CODE --################################################################################### -- HubMenuPro v.1 by ZVER -- API2 (PtokaX 0.4.x.x) --################################################################################### Menu = "Меню хаба\\" UserMenu = "Юзер\\" AdminMenu = "Управление\\" ScriptEasy = false --Упрощенное меню управления скриптами Prefix = "!" --################################################################################### function OnStartup() local tTmp = SetMan.GetHubBot() bot = tTmp.sNick end function UserConnected(user) local t = ProfMan.GetProfilePermissions(user.iProfile) --Глобальные команды Core.SendToUser(user,"$UserCommand 1 3 "..Menu.."Помощь$<%[mynick]> "..Prefix.."help|") Core.SendToUser(user,"$UserCommand 1 3 "..Menu.."Показать ваш IP адрес$<%[mynick]> "..Prefix.."myip|") if t then if t.bGetInfo then Core.SendToUser(user,"$UserCommand 1 2 "..UserMenu.."Показать информацию$<%[mynick]> "..Prefix.."getinfo %[nick]|") if t.bDrop or t.bKick or t.bTempBan or t.bBan or t.bMassMsg then Core.SendToUser(user,"$UserCommand 0 2") end end if t.bMassMsg then Core.SendToUser(user,"$UserCommand 1 2 "..UserMenu.."Сообщение от имени бота$<%[mynick]> "..Prefix.."frombot %[nick] %[line:Введите текст сообщения]|") if t.bDrop or t.bKick or t.bTempBan or t.bBan then Core.SendToUser(user,"$UserCommand 0 2") end end if t.bDrop then Core.SendToUser(user,"$UserCommand 1 2 "..UserMenu.."Отключить$<%[mynick]> "..Prefix.."disconnect %[nick]|") end if t.bKick then Core.SendToUser(user,"$UserCommand 1 2 "..UserMenu.."Кикнуть$<%[mynick]> "..Prefix.."drop %[nick] %[line:Причина]|") end if t.bTempBan then Core.SendToUser(user,"$UserCommand 1 2 "..UserMenu.."Бан 1 час$<%[mynick]> "..Prefix.."tempban %[nick] 1h %[line:Причина]|") Core.SendToUser(user,"$UserCommand 1 2 "..UserMenu.."Бан 24 часа$<%[mynick]> "..Prefix.."tempban %[nick] 1d %[line:Причина]|") end if t.bBan then Core.SendToUser(user,"$UserCommand 1 2 "..UserMenu.."Постоянный бан$<%[mynick]> "..Prefix.."ban %[nick] %[line:Причина]|") end --Управление хабом if t.bTopic then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Топик\\Установить топик$<%[mynick]> "..Prefix.."topic %[line:Введите текст]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Топик\\Очистить топик$<%[mynick]> "..Prefix.."topic off|") end if t.bRefreshTxt then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Текстовые файлы\\Перезап. текст. файлы$<%[mynick]> "..Prefix.."reloadtxt|") end if t.bMassMsg then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Рассылка сообщений\\Массовая рассылка$<%[mynick]> "..Prefix.."massmsg %[line:Введите текст сообщения]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Рассылка сообщений\\Рассылка ОПам$<%[mynick]> "..Prefix.."opmassmsg %[line:Введите текст сообщения]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Сообщение от имени бота$<%[mynick]> "..Prefix.."frombot %[line:Ник] %[line:Введите текст сообщения]|") end --Списки банов if t.bGetBans then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Список банов$<%[mynick]> "..Prefix.."getbans|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Список временных банов$<%[mynick]> "..Prefix.."gettempbans|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Список постоянных банов$<%[mynick]> "..Prefix.."getpermbans|") Core.SendToUser(user,"$UserCommand 0 3") end --Временные баны if t.bTempBan then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Временный бан$<%[mynick]> "..Prefix.."nicktempban %[line:Ник] %[line:Время (m = минут, h = часов, d = дней, w = недель)] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Временный бан IP$<%[mynick]> "..Prefix.."tempbanip %[line:Укажите IP] %[line:Время (m = минут, h = часов, d = дней, w = недель)] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Временный бан IP (полный)$<%[mynick]> "..Prefix.."fulltempbanip %[line:Укажите IP] %[line:Время (m = минут, h = часов, d = дней, w = недель)] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 0 3") end if t.bTempUnban then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Снять временный бан$<%[mynick]> "..Prefix.."tempunban %[line:IP или ник]|") Core.SendToUser(user,"$UserCommand 0 3") end --Постоянные баны if t.bBan then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Бан$<%[mynick]> "..Prefix.."nickban %[line:Ник] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Бан IP$<%[mynick]> "..Prefix.."banip %[line:Укажите IP] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Бан IP (полный)$<%[mynick]> "..Prefix.."fullbanip %[line:Укажите IP] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 0 3") end if t.bUnban then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны\\Снять бан$<%[mynick]> "..Prefix.."unban %[line:Ник или IP]|") Core.SendToUser(user,"$UserCommand 0 3") end --Списки диапазонов банов if t.bGetRangeBans then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Список диапазонов банов $<%[mynick]> "..Prefix.."getrangebans|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Список временных банов диапазонов$<%[mynick]> "..Prefix.."getrangetempbans|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Список постоянных банов диапазонов$<%[mynick]> "..Prefix.."getrangepermbans|") Core.SendToUser(user,"$UserCommand 0 3") end --Временные баны диапазонов if t.bRangeTempBan then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Временный бан диапазона$<%[mynick]> "..Prefix.."rangetempban %[line:Начальный IP диапазона] %[line:Конечный IP диапазона] %[line:Время (m = минут, h = часов, d = дней, w = недель)] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Временный бан диапазона (полный)$<%[mynick]> "..Prefix.."fullrangetempban %[line:Начальный IP диапазона] %[line:Конечный IP диапазона] %[line:Время (m = минут, h = часов, d = дней, w = недель)] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 0 3") end if t.bRangeTempUnban then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Снять временный бан диапазона$<%[mynick]> "..Prefix.."tempunban %[line:Начальный IP диапазона] %[line:Конечный IP диапазона]|") Core.SendToUser(user,"$UserCommand 0 3") end --Постоянные баны диапазонов if t.bRangeBan then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Бан диапазона$<%[mynick]> "..Prefix.."rangeban %[line:Начальный IP диапазона] %[line:Конечный IP диапазона] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Бан диапазона (полный)$<%[mynick]> "..Prefix.."fullrangeban %[line:Начальный IP диапазона] %[line:Конечный IP диапазона] %[line:Причина]|") Core.SendToUser(user,"$UserCommand 0 3") end if t.bRangeUnban then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Баны диапазонов\\Снять бан диапазона$<%[mynick]> "..Prefix.."rangepermunban %[line:Начальный IP диапазона] %[line:Конечный IP диапазона]|") Core.SendToUser(user,"$UserCommand 0 3") end --Управление пользователями if t.bAddRegUser then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Управление пользователями\\Зарегистрировать пользователя$<%[mynick]> "..Prefix.."addreguser %[line:Ник] %[line:Пароль] %[line:Имя профиля]|") end if t.bDelRegUser then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Управление пользователями\\Удалить регистрацию$<%[mynick]> "..Prefix.."delreguser %[line:Ник]|") end --Управление скриптами if t.bRestartScripts then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\Посмотреть список$<%[mynick]> "..Prefix.."getscripts|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\Перезапустить скрипты$<%[mynick]> "..Prefix.."restartscripts|") Core.SendToUser(user,"$UserCommand 0 3") if ScriptEasy then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\Перезапуск$<%[mynick]> "..Prefix.."restartscript %[line:Имя файла]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\Старт$<%[mynick]> "..Prefix.."startscript %[line:Имя файла]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\Стоп$<%[mynick]> "..Prefix.."stopscript %[line:Имя файла]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\Сдвинуть вверх$<%[mynick]> "..Prefix.."scriptmoveup %[line:Имя файла]|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\Сдвинуть вниз$<%[mynick]> "..Prefix.."scriptmovedown %[line:Имя файла]|") else tScripts = ScriptMan.GetScripts() for script in pairs(tScripts) do local CurScript = tScripts[script].sName Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\"..CurScript.."\\Перезапуск$<%[mynick]> "..Prefix.."restartscript "..CurScript.."|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\"..CurScript.."\\Старт$<%[mynick]> "..Prefix.."startscript "..CurScript.."|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\"..CurScript.."\\Стоп$<%[mynick]> "..Prefix.."stopscript "..CurScript.."|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\"..CurScript.."\\Сдвинуть вверх$<%[mynick]> "..Prefix.."scriptmoveup "..CurScript.."|") Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Скрипты\\"..CurScript.."\\Сдвинуть вниз$<%[mynick]> "..Prefix.."scriptmovedown "..CurScript.."|") end end end end end OpConnected = UserConnected RegConnected = UserConnected function ChatArrival(user,data) data = string.sub(data,1,string.len(data)-1) local t = ProfMan.GetProfilePermissions(user.iProfile) local s,e,pre,cmd = string.find(data, "^%b<>%s+(%p)(%S+)") local s,e,param = string.find(data, "^%b<>%s+%p%S+%s+(.+)") if pre == Prefix then if t then if t.bRestartScripts then if cmd and cmd == "scriptmoveup" then if param then result = ScriptMan.MoveUp(param) if result then ToOps(user.sNick..": Скрипт "..param.." перемещён вверх на одну позицию.") else ToUser(user,"Ошибка: скрипт "..param.." переместить не удалось.") end else ToUser(user,"<"..bot.."> Ошибка. Вы должны указать имя файла.") end return true elseif cmd and cmd == "scriptmovedown" then if param then result = ScriptMan.MoveDown(param) if result then ToOps(user.sNick..": Скрипт "..param.." перемещён вниз на одну позицию.") else ToUser(user,"Ошибка: скрипт "..param.." переместить не удалось.") end else ToUser(user,"<"..bot.."> Ошибка. Вы должны указать имя файла.") end return true end end if t.bDrop then if cmd and cmd == "disconnect" then if param then local CurUser = Core.GetUser(param) if CurUser then Core.Disconnect(CurUser) else ToUser(user,"Ошибка: юзер "..param.." не найден на хабе") end else ToUser(user,"Ошибка: Вы должны указать ник.") end return true end end if t.bMassMsg then if cmd and cmd == "frombot" then local s,e,nick,msg = string.find(param, "^(%S+)%s+(.+)$") if nick and msg then local CurUser = Core.GetUser(nick) if CurUser then FromBot(CurUser,msg) ToUser(user,"Сообщение отправлено") ToOps(user.sNick.." отправил сообщение от имени бота юзеру "..nick.." :"..msg) else ToUser(user,"Ошибка: юзер "..nick.." не найден на хабе") end else ToUser(user,"Ошибка синтаксиса. Синтаксис: "..Prefix.."frombot <ник> <текст сообщения>") end return true end end end end end function ToUser(user,msg) Core.SendToUser(user,"<"..bot.."> "..msg) end function ToOps(msg) Core.SendToOps("<"..bot.."> "..msg) end function FromBot(user,msg) Core.SendPmToUser(user,bot,msg) end вот сюда в самый конец. чтоб она выполняла команду регистрации которая как раз таки и есть в этом скрипте. В нем происходит регистрация админов вот этот кусок из этого скрипта CODE --Управление пользователями if t.bAddRegUser then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Управление пользователями\\Зарегистрировать пользователя$<%[mynick]> "..Prefix.."addreguser %[line:Ник] %[line:Пароль] %[line:Имя профиля]|") end if t.bDelRegUser then Core.SendToUser(user,"$UserCommand 1 3 "..AdminMenu.."Управление пользователями\\Удалить регистрацию$<%[mynick]> "..Prefix.."delreguser %[line:Ник]|") end можно ли сделать это? |
|
|
18.1.2015, 0:49
Сообщение
#23
|
|
Местный Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз |
Добавил.
Если будете искать команду в скрипте, то имейте ввиду, что она находится не в конце, поскольку, как я уже 2 раза писал, нельзя просто взять и запихнуть что угодно в любую строку скрипта. |
|
|
18.1.2015, 1:14
Сообщение
#24
|
|
Начинающий Группа: Пользователи Сообщений: 13 Регистрация: 17.1.2015 Пользователь №: 12 937 Спасибо сказали: 0 раз |
спасибо добрый человек сейчас попробую разобраться. Очень благодарен. Давно пользуюсь твоей программой очень полезная штука. Ждал всегда её обновлений чтоб поддерживала новые ptokax
я нашёл куда вписано это вроде заменил команду а вот пароль куда вписать? всё я разобрался. Ты просто слов нет. СПАСИБО! |
|
|
18.1.2015, 1:15
Сообщение
#25
|
|
Местный Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз |
|
|
|
18.1.2015, 1:17
Сообщение
#26
|
|
Начинающий Группа: Пользователи Сообщений: 13 Регистрация: 17.1.2015 Пользователь №: 12 937 Спасибо сказали: 0 раз |
|
|
|
Похожие темы
|
Сейчас: 23.11.2024, 0:44 |