Автор: King 3.10.2008, 11:23
Помогите править скрипты. Антимат пропускает в чат матерные слова и следующим сообщением выдает фразу для замены. Хотелось бы сразу) И не банит. Та же проблема с Op_check. (не банит). Помогите, пожалуйста.
Автор: Nickolya 3.10.2008, 11:48
В op_check'е: заменить
Код
BanMan.Ban(User,"","",0)
на
Код
BanMan.Ban(User,"Попытка входа на защищенный аккаунт",tSetup.Bot,true)
В антимате: заменить в функции ChatArrival заменить
Код
if MainCheck(curUser,msg,0) == 1 then
на
Код
if MainCheck(tUser,msg,0) == 1 then
И если на работает фильтр в привате, то в функции ToArrival меняем
Код
if (GetItemByName(to) ~= nil) then
на
Код
if (Core.GetUser(to) ~= nil) then
Автор: King 3.10.2008, 13:50
не помогло. все равно скрипты не работают. оп чек пишет в главном чате что забанен навсегда, но ничего не происходит...блок вордс вообще не работает =(
Автор: Setuper 6.10.2008, 15:11
opcheck:
Код
tSetup={}
tSetup.sBot="[Bot]PtokaX"
tSetup.sEmail=""
tSetup.tOpSecurity={
["Admin_Nick"]="127.0.0.1",
}
function OpConnected(tUser)
Core.GetUserAllData(tUser)
local sSec=tSetup.tOpSecurity[tUser.sNick]
if sSec then
if sSec==tUser.sIP or sSec=="dynip" then
Core.SendToNick(tUser.sNick,"<"..tSetup.sBot.."> "..
"Вы прошли проверку IP. В случае использования Вашего аккаунта другими лицами, они будут забанены навсегда!")
else
Core.SendToNick(tUser.sNick,"<"..tSetup.sBot.."> "..
"\r\n\t\tВы были забанены за использование аккаунта, который Вам не принадлежит."..
"\r\n\t\tЕсли Вы действительно оператор хаба и просто изменили IP: "..
"\r\n\t\tСообщите об этом администратору: "..tSetup.sEmail)
BanMan.Ban(tUser,"","",true)
end
end
end
В файле Filter.txt надо заменить:
1). пробелы на %s
2). точки на %.
То есть все фрагменты [ _,.] надо заменить на [%s_,%.]
DoPunishment(curUser) заменить на DoPunishment(tUser)
Core.SendPmToOps(Bot,"Юзер "..tUser.sNick.." ("..curUser.sIP..") Написал в чате: "..msg_to_ops) заменяем на Core.SendPmToOps(Bot,"Юзер "..tUser.sNick.." ("..tUser.sIP..") Написал в чате: "..msg_to_ops)
Переписываем функцию DoPunishment:
Код
function DoPunishment(tUser)
if WarnTable == nil then WarnTable = { } end
if WarnTable[tUser.sIP] == nil then WarnTable[tUser.sIP] = { } end
if WarnTable[tUser.sIP]["WARNS"] == nil then WarnTable[tUser.sIP]["WARNS"] = 0 end
if WarnTable[tUser.sIP]["KICK"] == nil then WarnTable[tUser.sIP]["KICK"] = 0 end
Core.SendPmToNick(tUser.sNick,Bot, "Вы получаете предупреждение "..tUser.sNick.." за : Мат в чате.")
WarnTable[tUser.sIP]["WARNS"] = WarnTable[tUser.sIP]["WARNS"] + 1
if WarnTable[tUser.sIP]["WARNS"] >= MaxWarns then
Core.Kick(tUser,"","Вы получаете : "..MaxWarns.." предупреждение,.. и кик в довесок.")
WarnTable[tUser.sIP]["WARNS"] = 0
WarnTable[tUser.sIP]["KICK"] = WarnTable[tUser.sIP]["KICK"] + 1
else
Core.SendPmToNick(tUser.sNick,Bot, "У вас предупреждений "..WarnTable[tUser.sIP]["WARNS"]..", после "..MaxWarns.."-х предупреждений Вы будете кикнуты.")
end
if WarnTable[tUser.sIP]["KICK"] >= MaxKicks then
Core.SendPmToNick(tUser.sNick,Bot, "Вы были забанены за мат")
BanMan.TempBan(tUser,60,"","",false)
WarnTable[tUser.sIP]["WARNS"] = 0
WarnTable[tUser.sIP]["KICK"] = 0
else
Core.SendPmToNick(tUser.sNick,Bot, "У вас "..WarnTable[tUser.sIP]["KICK"].." киков, после "..MaxKicks.."-х киков Вы будете забанены.")
end
SaveToFile(DataFile, WarnTable, "WarnTable")
end
Автор: eL50ff 19.12.2008, 22:35
у меня ваще ошибка [00:06] Синтаксис cannot open block_words\Exept.txt: No such file or directory хотя все на месте...
у меня она была сразу как я скачал файл..
когда кто то матерится еще вот чо
[00:28] Синтаксис ...\scripts\block_words_4.0.lua:121: bad argument #1 to 'GetUserAllData' (table expected, got nil)
попробывал исправить Core.GetUserAllData(sUser) на Core.GetUserAllData(tUser)
и вот [00:29] Синтаксис ...\scripts\block_words_4.0.lua:122: bad argument #1 to 'sub' (string expected, got nil)
блин не пашет(