PtokaX forum

Archive => Archived 4.0 boards => Request for Lua 4 scripts => Topic started by: angelsanges on 11 February, 2004, 00:54:52

Title: a little bot...
Post by: angelsanges on 11 February, 2004, 00:54:52
a little bot that checks minimum & maximum slots for DSL & T3?

minSlotDSL=1
maxSlotDSL=2
minSlotT3=2
maxSlotT3=3

just an example
Title:
Post by: nErBoS on 11 February, 2004, 02:07:26
Hi,

I hope it helps,

--Requested by Woodster
--Made by nErBoS

Bot = "MSlot-Checker"

minSlotDSL = 3
maxSlotDSL = 5
minSlotT3 = 3
maxSlotT3 = 5


function Main()
frmHub:RegBot(Bot)
end

--This function takes more memory, but searches the user slots when they speak or refresh userlist, in case if you want to remove.
function DataArrival(user, data) --remove from here
if strfind(user.sMyInfoString, "DSL") then
local _,b, sltdsl = strfind(user.sMyInfoString,"S:(%x+)")
sltdsl = sltdsl*1
if (sltdsl < minSlotDSL) then
user:SendPM(Bot, "You must have "..minSlotDSL.." slot open at least.")
user:Disconnect()
elseif (sltdsl > maxSlotDSL) then
user:SendPM(Bot, "You must have "..maxSlotDSL.." slot open in max.")
user:Disconnect()
end
end

if strfind(user.sMyInfoString, "T3") then
local _,b, sltt3 = strfind(user.sMyInfoString,"S:(%x+)")
sltt3 = sltt3*1
if (sltt3 < minSlotT3) then
user:SendPM(Bot, "You must have "..minSlotT3.." slot open at least.")
user:Disconnect()
elseif (sltt3 > maxSlotT3) then
user:SendPM(Bot, "You must have "..maxSlotT3.." slot open in max.")
user:Disconnect()
end
end
end --to here

-- This function only checks when the users connects
function NewUserConnected(user, data)
if strfind(user.sMyInfoString, "DSL") then
local _,b, sltdsl = strfind(user.sMyInfoString,"S:(%x+)")
sltdsl = sltdsl*1
if (sltdsl < minSlotDSL) then
user:SendPM(Bot, "You must have "..minSlotDSL.." slot open at least.")
user:Disconnect()
elseif (sltdsl > maxSlotDSL) then
user:SendPM(Bot, "You must have "..maxSlotDSL.." slot open in max.")
user:Disconnect()
end
end

if strfind(user.sMyInfoString, "T3") then
local _,b, sltt3 = strfind(user.sMyInfoString,"S:(%x+)")
sltt3 = sltt3*1
if (sltt3 < minSlotT3) then
user:SendPM(Bot, "You must have "..minSlotT3.." slot open at least.")
user:Disconnect()
elseif (sltt3 > maxSlotT3) then
user:SendPM(Bot, "You must have "..maxSlotT3.." slot open in max.")
user:Disconnect()
end
end
end

Best regards, nErBoS