PtokaX forum

Archive => Archived 5.0 boards => Finished Scripts => Topic started by: Zigurds on 05 March, 2005, 20:10:02

Title: Nickbot
Post by: Zigurds on 05 March, 2005, 20:10:02
--------------------------------------------------------------------------------------------------------------------
-- -NICKBOTS-   
-- Scripts for chek nick (allowed only letters) and symbols in nick and description
-- Latvian hub Alfa
--------------------------------------------------------------------------------------------------------------------
---specific name to allow

detektors = "-DETEKTORS-"
detektiivs = "-DETEKTIIVS-"
restart = "-RESTART-"
statbots = "-STATBOTS-"


ANTIWORDS = { "?","!","*","#"}   --symbol nick or description



function ValidateNickArrival(curUser, Data)
   local nick = curUser.sName
   local aapsis = string.sub(nick,1,1)
   local labs=nil
   local goodies="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
   local xxx=string.len(goodies)

   for i=1,xxx  do
      if (aapsis == string.sub(goodies,i,i)) then labs=1 end
   end
----------------------------------------------------------------------------------------------------------------------
   if (labs==nil) and (curUser.sName ~= detektors ) and (curUser.sName ~= detektiivs ) and (curUser.sName ~= restart ) and (curUser.sName ~= statbots ) then

      curUser:SendPM("<-NICKBOTS->","Nick only letter!")
--      SendToOps("<-NICKBOTS->","*** Users <"..curUser.sName.."> IP <" ..curUser.sIP.."> niks nesaakas ar burtu! Disconnect:)")
      curUser:Disconnect()
   end
      if(string.len(curUser.sName) > 20) and curUser.iProfile == -1 then
           curUser:SendPM("<-NICKBOTS->","Nick not long for 20 ziimeem!")
--      SendToOps("<-NICKBOTS->","*** Users <"..curUser.sName.."> IP <" ..curUser.sIP.."> niks par garu! Disconnect:)")
           curUser:Disconnect()
   end
      if(string.len(curUser.sName) < 3) and curUser.iProfile == -1 then
           curUser:SendPM("<-NICKBOTS->","Nick not short for 3 ziimeem!")
--      SendToOps("<-NICKBOTS->","*** Users <"..curUser.sName.."> IP <" ..curUser.sIP.."> niks par iisu! Disconnect:)")
           curUser:Disconnect()
   end
     if((string.find (curUser.sName, " ", 1, 1) ) or (string.find (curUser.sName, "?", 1, 1) )) and curUser.iProfile == -1 then
           curUser:SendPM("<-NICKBOTS->","Nick not space!")
--      SendToOps("<-NICKBOTS->","*** Users <"..curUser.sName.."> IP <" ..curUser.sIP.."> nikaa atstarpes! Disconnect:)")
          curUser:Disconnect()
   end

end

function MyINFOArrival(curUser, Data)
      if (curUser.bOperator == nil) then
         for i,v in ANTIWORDS do   
         Find = string.lower(Data)      
               if string.find(Find,v)  then                   
         curUser:SendPM("<-NICKBOTS->","Nick or description not symbols")
--   SendToOps("<-NICKBOTS->","*** Users <"..curUser.sName.."> IP <" ..curUser.sIP.."> nikaa hubsofta simboli! Disconnect:)")
         curUser:Disconnect()
         do return end
         end
      end
   end
end