Метод Быстрого Перевода Скриптов Под API_1, Самостоятельный быстрый перевод из API_2 ---> в API_1 |
Здравствуйте, гость ( Вход | Регистрация )
Метод Быстрого Перевода Скриптов Под API_1, Самостоятельный быстрый перевод из API_2 ---> в API_1 |
6.3.2009, 18:52
Сообщение
#21
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
библиотеки надо качать другие!!!!!
PS: пиши в тему самого скрипта!!!!!! |
|
|
6.3.2009, 19:00
Сообщение
#22
|
|
Участник Группа: Пользователи Сообщений: 30 Регистрация: 11.12.2008 Пользователь №: 1 392 Спасибо сказали: 0 раз |
Вот еще присылает когда он включен:
Цитата [21:00:56] <[Chat]Operator's> <•Экзекутор•> *** 03/06/09 21:00:56 В скрипте произошла ошибка: ...л/DC++/хаб и архив,нетрогать!/хаб/scripts/old_api.lu:23: attempt to index local 'a' (a nil value)
|
|
|
6.3.2009, 19:57
Сообщение
#23
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
Мультиботов нельзя переводить этим скриптом - они слишком сложны и невозможно предусмотреть все мелочи.
|
|
|
18.5.2009, 7:30
Сообщение
#24
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
|
|
|
15.8.2009, 8:20
Сообщение
#25
|
|
Освоившийся участник Группа: Модераторы Сообщений: 352 Регистрация: 25.7.2009 Пользователь №: 3 960 Спасибо сказали: 73 раза |
Супер. Спасибо
|
|
|
6.9.2009, 21:59
Сообщение
#26
|
|
Активный участник Группа: Пользователи Сообщений: 63 Регистрация: 6.9.2009 Из: Беларусь Пользователь №: 4 371 Спасибо сказали: 2 раза |
Сделал всё как было написано в 1 посте и ...
Скрипт вроде как заработал, но вот этот как понять: Цитата [21:57] Синтакс D:/0.3.6.0/scripts/old_api.lu:23: attempt to index local 'a' (a nil value)
|
|
|
6.9.2009, 22:12
Сообщение
#27
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
Я добавил проверку и перезалил файл old_api.
Попробуй. |
|
|
9.9.2009, 10:44
Сообщение
#28
|
|
Активный участник Группа: Пользователи Сообщений: 63 Регистрация: 6.9.2009 Из: Беларусь Пользователь №: 4 371 Спасибо сказали: 2 раза |
|
|
|
22.11.2009, 5:51
Сообщение
#29
|
|
Абсолютный новичок Группа: Пользователи Сообщений: 8 Регистрация: 20.11.2009 Пользователь №: 5 119 Спасибо сказали: 0 раз |
Помогите ктонибуть ! По данной методке я решил перевести скрипт на АПИ1 написанный на АПИ2 !
Исправьте ошибки ! И покажите их сдесь , чтоб я увидел !(В скриптах разбираюсь плохо) Раскрывающийся текст Код if frmHub then dofile(frmHub:GetPtokaXLocation().."scripts/old_api.lu") elseif not Core then error("Запуск скрипта возможен только при запущенном хабе!",1) else dofile(Core.GetPtokaXPath().."scripts/old_api.lu") end (код изменён для использования под обе версии API) -- Основные настройки sBotName = "[Инфо]м&ж" -- Имя бота bBotReg = true -- Регистрировать бота на хабе? bBotOP = true -- Бот с ключиком? sBotDesc = "Бот, показывающий ваш пол" -- Описание бота sBotEmail = "steelseries-magadan@mail.ru" -- Email бота sMenuName = "Ваш пол" --Имя меню bSendIfNotSet = true --Отправлять юзеру сообщение при входе, если пол не выбран iSendTimer = 500 -- Время отправки MyINFO, ms -- Как будет выглядить пол в описании? tSex = { o = "[?]", -- Пол не указан m = "[М]", -- Мужской пол w = "[Ж]", -- Женский пол } -- Доступ к командам pUser = { [0] = 1, -- =[Master]= [1] = 1, -- =[OP]= [2] = 1, -- =[ViP]= [3] = 1, -- =[Reg]= [-1] = 1, -- =[UnReg]= } -- Команды cMySex = "mysex" cSexList = "sexlist" cSexListOnline = "sexlistonline" --################################################################################### tTimers = {} tUsers = {} function Core. OnStartup() if sBotName == "" then sBotName = SetMan.GetString(21) elseif bBotReg then Core.RegBot(sBotName,sBotDesc,sBotEmail,bBotOP) end fUsers = Core.GetPtokaXPath().."scripts/MySex.tbl" if loadfile(fUsers) then dofile(fUsers) end end function Core. UserConnected(user) if not tUsers[user.sNick] and bSendIfNotSet then Core.SendToUser(user,"<"..sBotName.."> Пожалуйста, укажите ваш пол!") end for i,v in pairs(Core.GetOnlineUsers(true)) do local s,e,other = string.find(v.sMyInfoString, "%$MyINFO%s$ALL%s%S+%s(.*)$") Core.SendToUser(user,"$MyINFO $ALL "..v.sNick.." "..(tSex[tUsers[v.sNick]] or tSex.o).." "..other) end if pUser[user.iProfile] == 1 then Core.SendToUser(user,"$UserCommand 1 3 "..sMenuName.."\\Указать свой пол\\Мужской$<%[mynick]> !"..cMySex.." m|") Core.SendToUser(user,"$UserCommand 1 3 "..sMenuName.."\\Указать свой пол\\Женский$<%[mynick]> !"..cMySex.." w|") Core.SendToUser(user,"$UserCommand 1 3 "..sMenuName.."\\Посмотреть пол юзеров$<%[mynick]> !"..cSexList.." %[line:m=мальчики/w=девочки или оставьте строку пустой]|") Core.SendToUser(user,"$UserCommand 1 3 "..sMenuName.."\\Посмотреть пол юзеров онлайн$<%[mynick]> !"..cSexListOnline.." %[line:m=мальчики/w=девочки или оставьте строку пустой]|") end end Core. OpConnected = UserConnected Core. RegConnected = UserConnected function SendInfo(tmr) local user = Core.GetUser(tTimers[tmr],true) if user then local s,e,other = string.find(user.sMyInfoString, "%$MyINFO%s$ALL%s%S+%s(.*)$") Core.SendToAll("$MyINFO $ALL "..user.sNick.." "..(tSex[tUsers[user.sNick]] or tSex.o).." "..other) tTimers[tmr] = nil end TmrMan.RemoveTimer(tmr) end function Core. MyINFOArrival(user,data) local tmr = TmrMan.AddTimer(iSendTimer, "SendInfo") tTimers[tmr] = user.sNick end function Core. ChatArrival(user,sData) if pUser[user.iProfile] == 1 then local sData = string.sub(sData, 1, -2) local s,e,cmd = string.find(sData, "%b<>%s+[%!%+%?%#](%S+)") if tCmds[cmd] then tCmds[cmd](user, sData); return true end end end tCmds = { [cMySex] = function(user, sData) local s,e,arg1 = string.find(sData, "%b<>%s+%S+%s+(%S+)") if arg1 then local s,e,other = string.find(Core.GetUserValue(user,1), "%$MyINFO%s$ALL%s%S+%s(.*)$") if arg1 == "m" then tUsers[user.sNick] = "m" Save() Core.SendToAll("$MyINFO $ALL "..user.sNick.." "..tSex.m.." "..other) Core.SendToUser(user,"<"..sBotName.."> Вы выбрали пол: мужской.") elseif arg1 == "w" then tUsers[user.sNick] = "w" Save() Core.SendToAll("$MyINFO $ALL "..user.sNick.." "..tSex.w.." "..other) Core.SendToUser(user,"<"..sBotName.."> Вы выбрали пол: женский.") else Core.SendToUser(user,"<"..sBotName.."> Вы не указали свой пол! Правильно: !mysex <m/w>") end end end, [cSexList] = function(user, sData) local s,e,arg1 = string.find(sData, "%b<>%s+%S+%s+(%S+)") local bm, bw = true, true if arg1 then if arg1 == "m" then bw = false elseif arg1 == "w" then bm = false end end local msg,msgm,msgw,cm,cw = "","Список мальчиков: ","Список девочек: ","","" for i,v in pairs(tUsers) do if bm and v == "m" then msgm = msgm..cm..i cm = ", " end if bw and v == "w" then msgw = msgw..cw..i cw = ", " end end if bm then msg = msg.."\n\n"..msgm end if bw then msg = msg.."\n\n"..msgw end Core.SendPmToUser(user,sBotName,msg) collectgarbage("collect") end, [cSexListOnline] = function(user, sData) local s,e,arg1 = string.find(sData, "%b<>%s+%S+%s+(%S+)") local bm, bw = true, true if arg1 then if arg1 == "m" then bw = false elseif arg1 == "w" then bm = false end end local msg,msgm,msgw,cm,cw = "","Мальчики онлайн: ","Девочки онлайн: ","","" for i,v in pairs(Core.GetOnlineUsers(true)) do if bm and tUsers[v.sNick] and tUsers[v.sNick] == "m" then msgm = msgm..cm..v.sNick cm = ", " end if bw and tUsers[v.sNick] and tUsers[v.sNick] == "w" then msgw = msgw..cw..v.sNick cw = ", " end end if bm then msg = msg.."\n\n"..msgm end if bw then msg = msg.."\n\n"..msgw end Core.SendPmToUser(user,sBotName,msg) collectgarbage("collect") end, } function Save() local hFile = io.open(fUsers, "w") if hFile then Serialize(tUsers, "tUsers", hFile); hFile:close(); end end function Serialize(tTable, sTableName, hFile, sTab) sTab = sTab or ""; hFile:write(sTab..sTableName.." = {\n"); for key, value in pairs(tTable) do if type(value)~= "function" then local sKey = (type(key) == "string") and string.format("[%q]",key) or string.format("[%d]",key); if(type(value) == "table") then Serialize(value, sKey, hFile, sTab.."\t"); else local sValue = (type(value) == "string") and string.format("%q",value) or tostring(value); hFile:write(sTab.."\t"..sKey.." = "..sValue); end hFile:write(",\n"); end end hFile:write(sTab.."}"); end
Причина редактирования: если постишь код надо выделять его как код! + если он объёмный лучше прикреплять в файл или сворачивать в спойлер! УСТНОЕ ПРЕДУПРЕЖДЕНИЕ!
|
|
|
22.11.2009, 16:22
Сообщение
#30
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
Раскрывающийся текст Код if frmHub then dofile(frmHub:GetPtokaXLocation().."scripts/old_api.lu") elseif not Core then error("Запуск скрипта возможен только при запущенном хабе!",1) else dofile(Core.GetPtokaXPath().."scripts/old_api.lu") end -- Основные настройки sBotName = "[Инфо]м&ж" -- Имя бота bBotReg = true -- Регистрировать бота на хабе? bBotOP = true -- Бот с ключиком? sBotDesc = "Бот, показывающий ваш пол" -- Описание бота sBotEmail = "steelseries-magadan@mail.ru" -- Email бота sMenuName = "Ваш пол" --Имя меню bSendIfNotSet = true --Отправлять юзеру сообщение при входе, если пол не выбран iSendTimer = 500 -- Время отправки MyINFO, ms -- Как будет выглядить пол в описании? tSex = { o = "[?]", -- Пол не указан m = "[М]", -- Мужской пол w = "[Ж]", -- Женский пол } -- Доступ к командам pUser = { [0] = 1, -- =[Master]= [1] = 1, -- =[OP]= [2] = 1, -- =[ViP]= [3] = 1, -- =[Reg]= [-1] = 1, -- =[UnReg]= } -- Команды cMySex = "mysex" cSexList = "sexlist" cSexListOnline = "sexlistonline" --################################################################################### tTimers = {} tUsers = {} function Core.OnStartup() if sBotName == "" then sBotName = SetMan.GetString(21) elseif bBotReg then Core.RegBot(sBotName,sBotDesc,sBotEmail,bBotOP) end fUsers = Core.GetPtokaXPath().."scripts/MySex.tbl" if loadfile(fUsers) then dofile(fUsers) end end function Core.UserConnected(user) if not tUsers[user.sNick] and bSendIfNotSet then Core.SendToUser(user,"<"..sBotName.."> Пожалуйста, укажите ваш пол!") end for i,v in pairs(Core.GetOnlineUsers(true)) do local s,e,other = string.find(v.sMyInfoString, "%$MyINFO%s$ALL%s%S+%s(.*)$") Core.SendToUser(user,"$MyINFO $ALL "..v.sNick.." "..(tSex[tUsers[v.sNick]] or tSex.o).." "..other) end if pUser[user.iProfile] == 1 then Core.SendToUser(user,"$UserCommand 1 3 "..sMenuName.."\\Указать свой пол\\Мужской$<%[mynick]> !"..cMySex.." m|") Core.SendToUser(user,"$UserCommand 1 3 "..sMenuName.."\\Указать свой пол\\Женский$<%[mynick]> !"..cMySex.." w|") Core.SendToUser(user,"$UserCommand 1 3 "..sMenuName.."\\Посмотреть пол юзеров$<%[mynick]> !"..cSexList.." %[line:m=мальчики/w=девочки или оставьте строку пустой]|") Core.SendToUser(user,"$UserCommand 1 3 "..sMenuName.."\\Посмотреть пол юзеров онлайн$<%[mynick]> !"..cSexListOnline.." %[line:m=мальчики/w=девочки или оставьте строку пустой]|") end end Core.OpConnected = Core.UserConnected Core.RegConnected = Core.UserConnected function SendInfo(tmr) local user = Core.GetUser(tTimers[tmr],true) if user then local s,e,other = string.find(user.sMyInfoString, "%$MyINFO%s$ALL%s%S+%s(.*)$") Core.SendToAll("$MyINFO $ALL "..user.sNick.." "..(tSex[tUsers[user.sNick]] or tSex.o).." "..other) tTimers[tmr] = nil end TmrMan.RemoveTimer(tmr) end function Core.MyINFOArrival(user,data) local tmr = TmrMan.AddTimer(iSendTimer, "SendInfo") tTimers[tmr] = user.sNick end function Core.ChatArrival(user,sData) if pUser[user.iProfile] == 1 then local sData = string.sub(sData, 1, -2) local s,e,cmd = string.find(sData, "%b<>%s+[%!%+%?%#](%S+)") if tCmds[cmd] then tCmds[cmd](user, sData); return true end end end tCmds = { [cMySex] = function(user, sData) local s,e,arg1 = string.find(sData, "%b<>%s+%S+%s+(%S+)") if arg1 then local s,e,other = string.find(Core.GetUserValue(user,1), "%$MyINFO%s$ALL%s%S+%s(.*)$") if arg1 == "m" then tUsers[user.sNick] = "m" Save() Core.SendToAll("$MyINFO $ALL "..user.sNick.." "..tSex.m.." "..other) Core.SendToUser(user,"<"..sBotName.."> Вы выбрали пол: мужской.") elseif arg1 == "w" then tUsers[user.sNick] = "w" Save() Core.SendToAll("$MyINFO $ALL "..user.sNick.." "..tSex.w.." "..other) Core.SendToUser(user,"<"..sBotName.."> Вы выбрали пол: женский.") else Core.SendToUser(user,"<"..sBotName.."> Вы не указали свой пол! Правильно: !mysex <m/w>") end end end, [cSexList] = function(user, sData) local s,e,arg1 = string.find(sData, "%b<>%s+%S+%s+(%S+)") local bm, bw = true, true if arg1 then if arg1 == "m" then bw = false elseif arg1 == "w" then bm = false end end local msg,msgm,msgw,cm,cw = "","Список мальчиков: ","Список девочек: ","","" for i,v in pairs(tUsers) do if bm and v == "m" then msgm = msgm..cm..i cm = ", " end if bw and v == "w" then msgw = msgw..cw..i cw = ", " end end if bm then msg = msg.."\n\n"..msgm end if bw then msg = msg.."\n\n"..msgw end Core.SendPmToUser(user,sBotName,msg) collectgarbage("collect") end, [cSexListOnline] = function(user, sData) local s,e,arg1 = string.find(sData, "%b<>%s+%S+%s+(%S+)") local bm, bw = true, true if arg1 then if arg1 == "m" then bw = false elseif arg1 == "w" then bm = false end end local msg,msgm,msgw,cm,cw = "","Мальчики онлайн: ","Девочки онлайн: ","","" for i,v in pairs(Core.GetOnlineUsers(true)) do if bm and tUsers[v.sNick] and tUsers[v.sNick] == "m" then msgm = msgm..cm..v.sNick cm = ", " end if bw and tUsers[v.sNick] and tUsers[v.sNick] == "w" then msgw = msgw..cw..v.sNick cw = ", " end end if bm then msg = msg.."\n\n"..msgm end if bw then msg = msg.."\n\n"..msgw end Core.SendPmToUser(user,sBotName,msg) collectgarbage("collect") end, } function Save() local hFile = io.open(fUsers, "w") if hFile then Serialize(tUsers, "tUsers", hFile); hFile:close(); end end function Serialize(tTable, sTableName, hFile, sTab) sTab = sTab or ""; hFile:write(sTab..sTableName.." = {\n"); for key, value in pairs(tTable) do if type(value)~= "function" then local sKey = (type(key) == "string") and string.format("[%q]",key) or string.format("[%d]",key); if(type(value) == "table") then Serialize(value, sKey, hFile, sTab.."\t"); else local sValue = (type(value) == "string") and string.format("%q",value) or tostring(value); hFile:write(sTab.."\t"..sKey.." = "..sValue); end hFile:write(",\n"); end end hFile:write(sTab.."}"); end |
|
|
14.8.2011, 21:16
Сообщение
#31
|
|
Абсолютный новичок Группа: Пользователи Сообщений: 1 Регистрация: 14.8.2011 Пользователь №: 9 585 Спасибо сказали: 0 раз |
Очень хорошая тема! Большое спс!
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последнее сообщение | |
---|---|---|---|---|---|
ВАЖНО: Вопросы Разработчикам Скриптов вопросы по скриптам (мелкие вопросы) |
1 049 | Wariner | 988 185 | 3.2.2019, 12:51 Посл. сообщение: MIKHAIL | |
ВАЖНО: Модули для скриптов RusHub | 26 | Setuper | 45 194 | 21.3.2017, 17:31 Посл. сообщение: Alexey | |
От: Вопросы Разработчикам Скриптов От темы с ID: 173 |
0 | MIKHAIL | 4 317 | 23.1.2015, 0:56 Посл. сообщение: MIKHAIL | |
От: Установка скриптов От темы с ID: 5657 |
0 | MIKHAIL | 4 784 | 29.7.2014, 23:37 Посл. сообщение: MIKHAIL | |
Установка скриптов Нужна помощь по установке |
2 | _wRz_ | 7 283 | 29.7.2014, 16:11 Посл. сообщение: Артём | |
Метод взятия имени/пути скрипта Метод взятия имени/пути этого скрипта в самом скрипте и других |
2 | Karumo | 7 002 | 6.4.2014, 22:24 Посл. сообщение: Alexey | |
От: Вопросы Разработчикам Скриптов От темы с ID: 173 |
29 | Wariner | 25 906 | 28.1.2014, 13:11 Посл. сообщение: Alexey | |
Единая платформа для скриптов Обсуждения вопроса создания единой платформы скриптов |
5 | Enyby | 9 018 | 18.1.2012, 20:15 Посл. сообщение: Setuper | |
Переделка скриптов Прошу помощи |
47 | Fe(one)X | 41 233 | 26.12.2011, 15:04 Посл. сообщение: Ksan | |
Вопросы Разработчикам Скриптов с SQL вопросы по скриптам (мелкие вопросы) |
101 | Wariner | 62 073 | 6.12.2011, 0:34 Посл. сообщение: Enyby | |
Скрипт сервисов перевода PtokaX API2 API2 переводчик translate.google.com |
3 | Phazeus | 11 830 | 6.11.2011, 4:30 Посл. сообщение: MIKHAIL | |
От: Переделка скриптов От темы с ID: 4941 |
6 | Ksan | 9 650 | 12.8.2011, 11:33 Посл. сообщение: Ksan | |
ВАЖНО: Запросы Скриптов Ваши идеи по разработке скриптов под HeXHuB |
36 | Setuper | 49 191 | 16.5.2011, 9:40 Посл. сообщение: ANDRBEST | |
Документация DBHub - Написание скриптов на Perl | 0 | Артём | 7 657 | 20.10.2010, 18:08 Посл. сообщение: Артём | |
Заготовки скриптов для PtokaX Делимся болванками скриптов |
4 | alex82 | 11 714 | 11.10.2010, 2:49 Посл. сообщение: alex82 |
|
Сейчас: 23.11.2024, 0:26 |