Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Kорзина _ Описание Бота

Автор: prapor 18.12.2008, 14:28

Вот скрипт под API2 показывает боту шару, тэг, описание и т.д. Нужно его переделать под API1

 infobot.lua ( 2.8 килобайт ) : 121
 

Автор: Артём 18.12.2008, 14:50

:P http://mydc.ru/ipb.html?act=announce&f=26&id=3 переводи сам это не сложно,но нудновато

Автор: prapor 18.12.2008, 15:45

Цитата(Артём @ 18.12.2008, 14:50) *
:P http://mydc.ru/ipb.html?act=announce&f=26&id=3 переводи сам это не сложно,но нудновато

Для меня это темный лес feel_good.gif Вот и прошу тут помощи

Автор: Setuper 18.12.2008, 15:48

Ну так почитай. Это руководство специально написано для нубов.

Автор: prapor 18.12.2008, 16:44

Цитата(Setuper @ 18.12.2008, 15:48) *
Ну так почитай. Это руководство специально написано для нубов.

Ну исправил, как там написано, ошибки не выскакивают, а толку никакого, бот как был без описания, так и остался

Автор: Setuper 18.12.2008, 17:00

prapor, ты http://mydc.ru/topic605.html руководство читал?
Неужели так сложно скачать оттуда указанный файл, положить его в папку scripts, дописать в твоём скрипте первой строкой: dofile(frmHub:GetPtokaXLocation().."scripts/old_api.lu") и заменить в твоём скрипте OnStartup() на Core.OnStartup()

Ответь это так сложно сделать? Или просто лень это делать?

Автор: prapor 18.12.2008, 17:11

Цитата(Setuper @ 18.12.2008, 17:00) *
prapor, ты http://mydc.ru/topic605.html руководство читал?
Неужели так сложно скачать оттуда указанный файл, положить его в папку scripts, дописать в твоём скрипте первой строкой: dofile(frmHub:GetPtokaXLocation().."scripts/old_api.lu") и заменить в твоём скрипте OnStartup() на Core.OnStartup()

Ответь это так сложно сделать? Или просто лень это делать?

Я так и сделал, спасибо разобрался

Автор: Setuper 18.12.2008, 17:18

Перед функцией GetNickListArrival тоже надо дописать Core.

Код
Core.GetNickListArrival

Автор: prapor 18.12.2008, 18:01

Цитата(Setuper @ 18.12.2008, 17:18) *
Перед функцией GetNickListArrival тоже надо дописать Core.
Код
Core.GetNickListArrival

ага, спасибо большое ;)

Цитата(Setuper @ 18.12.2008, 17:18) *
Перед функцией GetNickListArrival тоже надо дописать Core.
Код
Core.GetNickListArrival

Почему то пропадает описание бота и выдает ошибку: [17:30] Синтакс D:/Hub/scripts/old_api.lu:22: attempt to index local 'tUser' (a nil value)

Да, описание пропадает, когда я перезахожу на хаб

Setuper: помоги! big_smile.gif

Автор: Setuper 18.12.2008, 21:47

Спасибо за найденную ошибку. Ошибка в либе исправлена, качай обновлённую версию файла old_api.lu отсюда: http://mydc.ru/topic605.html

Автор: prapor 18.12.2008, 22:12

Цитата(Setuper @ 18.12.2008, 21:47) *
Спасибо за найденную ошибку. Ошибка в либе исправлена, качай обновлённую версию файла old_api.lu отсюда: http://mydc.ru/topic605.html

Ошибка не пропала. И вот почему описание бота пропадает после перезахода на хаб?

Автор: Setuper 18.12.2008, 22:15

Скачай ещё раз файл, я перезалил.

Ошибка не пропала?

Автор: prapor 18.12.2008, 22:30

Цитата(Setuper @ 18.12.2008, 22:15) *
Скачай ещё раз файл, я перезалил.

Ошибка не пропала?

Во! Спасибо! всё отлично!

Автор: prapor 19.12.2008, 11:02

Цитата(Setuper @ 18.12.2008, 22:15) *
Скачай ещё раз файл, я перезалил.

Ошибка не пропала?

сново появилась эта ошибка: Синтакс D:/Hub/scripts/old_api.lu:22: attempt to index local 'tUser' (a nil value)
только она не сразу появляется, хотя скрипт infobot.lua нормально работает.

Автор: Setuper 19.12.2008, 12:53

обновил old_api.lu

Автор: prapor 20.12.2008, 1:47

Цитата(Setuper @ 19.12.2008, 12:53) *
обновил old_api.lu

Тоже самое :(
Setuper, может ты просто переведешь этот скрипт для API2? big_smile.gif

Автор: Setuper 20.12.2008, 2:55

Ты наверное имел ввиду под API1, а не под API2?

CODE
--------------------------------------------------------------------------------------------------------
-- UserToBotDescription by Nickolya aka AУA™
--------------------------------------------------------------------------------------------------------
-- Конфиг бота:

tUserToBot = {
["Бот"] = {
["sDescription"] = "BOT",
["sNeedClient"] = "StrongDC++",
["sNeedVersion"] = "2.23",
["sNeedConnection"] = "100",
["sNeedHubs"] = "0/0/1",
["sIP"] = "127.0.0.1",
["sMode"] = "A",
["sEmail"] = "email",
["iShare"] = 10932976006,
},
}

--------------------------------------------------------------------------------------------------------
function Main()
tNeedToSendAll = {}
DoNeedDescription()
SendFakeDescription()
SetTimer(1000)
StartTimer()
end

function GetNickListArrival(curUser,sData)
tNeedToSendAll[curUser.sName] = 1
end

function OnTimer()
for sName in pairs(tNeedToSendAll) do
local tNeedUser = GetItemByName(sName)
if tNeedUser and tNeedUser.bConnected then
SendFakeDescription(tNeedUser)
tNeedToSendAll[sName] = nil
end
end
collectgarbage("collect")
end

function SendFakeDescription(curUser)
for i, v in pairs(tUserToBot) do
local sNewMyINFO = v.sMyINFO
local sIPInfo = "$UserIP "..i.." "..v["sIP"]
if not curUser then
SendToAll(sNewMyINFO)
SendToAll(sIPInfo)
else
curUser:SendData(sNewMyINFO)
curUser:SendData(sIPInfo)
end
end
end

function DoNeedDescription()
for i, v in pairs(tUserToBot) do
tUserToBot[i].sMyINFO = "$MyINFO $ALL "..i..
" "..v.sDescription.."<"..(v["sNeedClient"] or "Bot'sDC++")..
" V:"..(v["sNeedVersion"] or "1.00")..
",M:"..(v.sMode or "A")..",H:"..(v["sNeedHubs"] or "0/0/1")..
",S:"..(v.iSlots or 0)..">$ $"..(v["sNeedConnection"] or "BOT")..
"$"..(v.sEmail or "").."$"..(v["iShare"] or 0).."$"
end
end
--------------------------------------------------------------------------------------------------------

Автор: prapor 20.12.2008, 9:57

Да, опечатался big_smile.gif За перевод спасибо, но:
Синтакс D:\Hub\scripts\infobot.lua:36: attempt to index global 'Core' (a nil value)

что ж за напасть такая с этим скриптом :(

Автор: Setuper 20.12.2008, 12:05

исправил

Автор: prapor 20.12.2008, 16:39

Спасибо! Всё работает big_smile.gif