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

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

MyDC.ru _ Kорзина _ Block_words And Op_check

Автор: King 3.10.2008, 11:23

Помогите править скрипты. Антимат пропускает в чат матерные слова и следующим сообщением выдает фразу для замены. Хотелось бы сразу) И не банит. Та же проблема с Op_check. (не банит). Помогите, пожалуйста.

 Scripts.rar ( 3.84 килобайт ) : 22
 

Автор: 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)

блин не пашет(