parse arg port' 'string
ADDRESS(port)
OPTIONS RESULTS
'GETMYNICK'
MyNick = RESULT
'USERHOST' MyNick
MyHost = RESULT
parse var MyHost myusername'@'mydynamic'.'mydomain
parse var string ':'tnick'!'username'@'dynamic'.'domain' MODE 'channel' 'action' 'target
'GETCHANNEL'
checkchannel = RESULT
if checkchannel = channel then do
'GETUSERS'
UserChan = RESULT
opstatus = find(UserChan,'@'Mynick)
if opstatus = 0 then exit
end
if MyNick = TNick then exit;
V = '1f'x
OK = 0
Number = length(action)
DeOp = delstr(action,2)
Version = ' |LaMeR KiLLeR|'
if number=5 then do
if DeOp ~= '+' then do
'SAY' '/kick' channel Tnick 'MassDeOP from 'V'YOU'V' detected!' version
end
end
if pos('+b',action) ~= 0 then do
if index(target,MyNick)>0 then OK=1
if index(target,MyUsername)>0 then OK=1
if index(target,MyDynamic)>0 then OK=1
if index(target,Mydomain)>0 then OK=1
end
if OK=1 then do
'SAY' '/deop' channel Tnick
'SAY' '/bandel' channel target
'SAY' '/ban' channel '*!*@*.'domain
'SAY' '/kick' channel Tnick 'Banning? Go get busy!' version
end
if channel="" then exit
if pos('o',action) ~= 0 then exit
if pos('v',action) ~= 0 then exit
if pos('-b',action) ~= 0 then exit
if pos('+b',action) ~= 0 then exit
if open(chanlist,"ENV:LamerKiller/MODE","r") then do
do while ~eof(chanlist)
modekick=1
t = readln(chanlist)
if channel~=word(t,1) then modekick=0
t = delword(t,1,1)
if pos(action,t) ~= 0 then modekick=0
if modekick=1 then do
open(userlist,"ENV:LaMeRKiLLeR/UserList","READ")
do while ~eof(userlist)
modeuser = readln(userlist)
HIGH=0;
MID=0;
LOW=0;
TOTAL=0;
parse var modeuser unick'!'uusername'@'udynamic'.'udomain status modepro wordkick
if unick~="*" then do
if upper(tnick)=upper(unick) then MID=1;
end
if udynamic~="*" then do
if dynamic=udynamic then LOW=2;
end
if uusername~="*" then do
if uusername=username then HIGH=1;
end
if udomain~="*" then do
if domain=udomain then LOW=2;
end
TOTAL=LOW+HIGH+MID
if TOTAL>2 then do
if modepro="FREEMODE" then modekick=0
end
end
end
if modekick=1 then do
'SAY' '/kick' channel Tnick 'Mode ('action') of channel' channel 'is 'V'NOT'V' allowed! ' version
addsub = delstr(action,2,1)
contreaction = delstr(action,1,1)
if addsub = '+' then 'SAY' '/mode' channel '-'contreaction
if addsub = '-' then 'SAY' '/mode' channel '+'contreaction
end
end
en
