Kennylize script in lua 5
 

News:

29 December 2022 - PtokaX 0.5.3.0 (20th anniversary edition) released...
11 April 2017 - PtokaX 0.5.2.2 released...
8 April 2015 Anti child and anti pedo pr0n scripts are not allowed anymore on this board!
28 September 2015 - PtokaX 0.5.2.1 for Windows 10 IoT released...
3 September 2015 - PtokaX 0.5.2.1 released...
16 August 2015 - PtokaX 0.5.2.0 released...
1 August 2015 - Crowdfunding for ADC protocol support in PtokaX ended. Clearly nobody want ADC support...
30 June 2015 - PtokaX 0.5.1.0 released...
30 April 2015 Crowdfunding for ADC protocol support in PtokaX
26 April 2015 New support hub!
20 February 2015 - PtokaX 0.5.0.3 released...
13 April 2014 - PtokaX 0.5.0.2 released...
23 March 2014 - PtokaX testing version 0.5.0.1 build 454 is available.
04 March 2014 - PtokaX.org sites were temporary down because of DDOS attacks and issues with hosting service provider.

Main Menu

Kennylize script in lua 5

Started by Syphrone-NL, 04 May, 2005, 20:29:16

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Syphrone-NL

Hello everybody

Can somebody translate this lua 4 script (kennylize script) to lua 5

-- Kenny Script by ??????Hawk??????
--  31-03-04
Bot = "Kenny"
Botm = "Muter"
kennytext = { 
"*umfl* *uuffum*",
"*lluu* *mlmlff* *umfl* *lfumfl* *umfl*",
"*lmmf* *uullu* *mmmm*",
"*ommlu* *uullu* *lmmf* *ommlu* *mflf*",
"*olomum* *lmmf* *mhhhmmlm*",
"*Mhhl* *mujm* *umfl*",
} 
Kennylizednicks = {}
Mutes = {}
mins = 1000 * 60 * 1


function OnTimer()
	Kennylizednicks = {}
	SendToAll(Bot, " all kennys have gone ! ! !")
	StopTimer()
end


function DataArrival(user, data)
   	if (strsub(data,1,1) == "<") then
   		data=strsub(data,1,strlen(data)-1)
   		s,e,cmd = strfind(data,"%b<>%s+(%S+)")
			if user.bOperator then
      				if (cmd=="+kenny") then
					StopTimer()
					SetTimer(mins)
					StartTimer() 
         				kenylize(user, data)
					return 1
      				elseif (cmd=="+unkenny") then
         				Unkenylize(user, data)
					return 1
      				elseif (cmd=="+showkenny") then
					ShowKennys(user)
					return 1
      				elseif (cmd=="+unkennyall") then
					Kennylizednicks = {}
         				SendToAll(Bot, " all kennys have gone ! ! !")
      					return 1
				elseif (cmd=="+mute") then
					DoMutes(user, data)
					return 1
      				elseif (cmd=="+unmute") then
					UnDoMutes(user, data)
					return 1
      				elseif (cmd=="+showmutes") then
					ShowMutes(user)
					return 1
      				elseif (cmd=="+clearmutes") then
					Mutes = {}
         				SendToAll(Bot, " All muted users can now speak ! ! !")
					return 1
      				end
			end
         			if Kennylizednicks[user.sName] == 1 then
					text=kennytext[random(1, getn(kennytext))]
					SendToAll(user.sName, text)
					return 1
				elseif Mutes[user.sName] == 1 then
					user:SendData(Botm,"You are muted. your message has been blocked ! ! !")
					return 1
				end

	end
	if ( strsub(data, 1, 4) == "$To:" ) then
         	if Kennylizednicks[user.sName] == 1 then
			s,e,g,h,j = strfind(data,"$To:%s+(%S+)%s+From:%s+(%S+)%s+$%b<>%s+(.*)")
			j = kennytext[random(1, getn(kennytext))]
			SendPmToNick(g,h,j)			
			user:SendPM(Botm," you have been kenylized this was sent instead. ' "..j.." '")			
			return 1
		elseif Mutes[user.sName] == 1 then
			user:SendPM(Botm,"You are muted. your message has been blocked ! ! !")
			return 1
		end
	end

end


function DoMutes(user, data)
	local s,e,cmd,usr = strfind(data,"%b<>%s+(%S+)%s+(%S+)")
	local Muted = GetItemByName(usr)
   		if Muted == nil then
      			user:SendData(Botm,"The User is not in the hub ! ! !")
      		else
			if Mutes[Muted.sName] == nil then
         			Mutes[Muted.sName] = 1
         			SendToAll(Botm,Muted.sName.." Has been Muted ! ! !")
      			end
   		end
end



function UnDoMutes(user, data)
	local s,e,cmd,usr = strfind(data,"%b<>%s+(%S+)%s+(%S+)")
	local Muted = GetItemByName(usr)
   		if Muted == nil then
      			user:SendData(Botm,"The User is not in the hub ! ! !")
   		else
      			if Mutes[Muted.sName] == 1 then
         			Mutes[Muted.sName] = nil;
         			SendToAll(Botm, Muted.sName.." Has Been Un-Muted ..")
      			end
   		end
end


function ShowMutes(user)
	local names = ""
		for index, value in Mutes do
			local line = index
			names = names.." "..line.."\r\n"
		end
	user:SendPM(Botm,"\r\n\r\nMuted users..\r\n\r\n"..names)

end




function kenylize(user, data)
	local s,e,cmd,usr = strfind(data,"%b<>%s+(%S+)%s+(%S+)")
	local kennyd = GetItemByName(usr)
   		if kennyd == nil then
      			user:SendData(Bot,"The User is not in the hub ! ! !")
      		else
			if Kennylizednicks[kennyd.sName] == nil then
         			Kennylizednicks[kennyd.sName] = 1
         			SendToAll(Bot,kennyd.sName.." Has been turned in to a Kenny Clone  ! ! !")
      			end
   		end
end

function Unkenylize(user, data)
	local s,e,cmd,usr = strfind(data,"%b<>%s+(%S+)%s+(%S+)")
	local kennyd = GetItemByName(usr)
   		if kennyd == nil then
      			user:SendData(Bot,"The User is not in the hub ! ! !")
   		else
      			if Kennylizednicks[kennyd.sName] == 1 then
         			Kennylizednicks[kennyd.sName] = nil;
         			SendToAll(Bot, kennyd.sName.." Has Returned ..")
      			end
   		end
end


function ShowKennys(user)
	local names = ""
		for index, value in Kennylizednicks do
			local line = index
			names = names.." "..line.."\r\n"
		end
	user:SendPM(Bot,"\r\n\r\nKennylised users..\r\n\r\n"..names)
		
end

Thx in advanced
Owner of 2 public hubs in Palace Network ---> www.palace-network.nl

PPK

"Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris." - Larry Wall

jiten

Maybe this (not really tested):
-- Kenny Script by ??????Hawk??????
--  31-03-04

Bot = "?bot?"
Botm = "?bot?"
kennytext = { 
	"*umfl* *uuffum*",
	"*lluu* *mlmlff* *umfl* *lfumfl* *umfl*",
	"*lmmf* *uullu* *mmmm*",
	"*ommlu* *uullu* *lmmf* *ommlu* *mflf*",
	"*olomum* *lmmf* *mhhhmmlm*",
	"*Mhhl* *mujm* *umfl*",
} 
Kennylizednicks = {}
Mutes = {}
mins = 1000 * 60 * 1

function OnTimer()
	Kennylizednicks = {}
	SendToAll(Bot, "All Kennys have gone ! ! !")
	StopTimer()
end

function ChatArrival(user, data)
	data=string.sub(data,1,string.len(data)-1)
   	s,e,cmd = string.find(data,"%b<>%s+(%S+)")
	if user.bOperator then
		if (cmd=="!kenny") then
			StopTimer()
			SetTimer(mins)
			StartTimer() 
			kenylize(user, data)
			return 1
		elseif (cmd=="!unkenny") then
			Unkenylize(user, data)
			return 1
		elseif (cmd=="!showkenny") then
			ShowKennys(user)
			return 1
		elseif (cmd=="!unkennyall") then
			Kennylizednicks = {}
			SendToAll(Bot, "All Kennys have gone ! ! !")
			return 1
		elseif (cmd=="+mute") then
			DoMutes(user, data)
			return 1
		elseif (cmd=="+unmute") then
			UnDoMutes(user, data)
			return 1
		elseif (cmd=="+showmutes") then
			ShowMutes(user)
			return 1
		elseif (cmd=="+clearmutes") then
			Mutes = {}
			SendToAll(Bot, "All muted users can now speak ! ! !")
			return 1
		end
	end
	if Kennylizednicks[user.sName] == 1 then
		text=kennytext[math.random(1, table.getn(kennytext))]
		SendToAll(user.sName, text)
		return 1
	elseif Mutes[user.sName] == 1 then
		user:SendData(Botm,"You are muted. Your message has been blocked ! ! !")
		return 1
	end
end

function ToArrival(user,data)
       	if Kennylizednicks[user.sName] == 1 then
		s,e,g,h,j = string.find(data,"$To:%s+(%S+)%s+From:%s+(%S+)%s+$%b<>%s+(.*)")
		j = kennytext[math.random(1, table.getn(kennytext))]
		SendPmToNick(g,h,j)			
		user:SendPM(Botm," You have been kenylized this was sent instead. ' "..j.." '")
		return 1
	elseif Mutes[user.sName] == 1 then
		user:SendPM(Botm,"You are muted. Your message has been blocked ! ! !")
		return 1
	end
end

function DoMutes(user, data)
	local s,e,cmd,usr = string.find(data,"%b<>%s+(%S+)%s+(%S+)")
	local Muted = GetItemByName(usr)
	if Muted == nil then
		user:SendData(Botm,"The User is not in the hub ! ! !")
	else
		if Mutes[Muted.sName] == nil then
			Mutes[Muted.sName] = 1
			SendToAll(Botm,Muted.sName.." Has been Muted ! ! !")
		end
	end
end

function UnDoMutes(user, data)
	local s,e,cmd,usr = string.find(data,"%b<>%s+(%S+)%s+(%S+)")
	local Muted = GetItemByName(usr)
	if Muted == nil then
		user:SendData(Botm,"The User is not in the hub ! ! !")
	else
		if Mutes[Muted.sName] == 1 then
			Mutes[Muted.sName] = nil;
			SendToAll(Botm, Muted.sName.." Has Been Un-Muted ..")
		end
	end
end

function ShowMutes(user)
	local names = ""
	for index, value in Mutes do
		local line = index
		names = names.." "..line.."\r\n"
	end
	user:SendPM(Botm,"\r\n\r\nMuted users..\r\n\r\n"..names)
end

function kenylize(user, data)
	local s,e,cmd,usr = string.find(data,"%b<>%s+(%S+)%s+(%S+)")
	local kennyd = GetItemByName(usr)
	if kennyd == nil then
		user:SendData(Bot,"The User is not in the hub ! ! !")
	else
		if Kennylizednicks[kennyd.sName] == nil then
			Kennylizednicks[kennyd.sName] = 1
			SendToAll(Bot,kennyd.sName.." Has been turned in to a Kenny Clone  ! ! !")
		end
	end
end

function Unkenylize(user, data)
	local s,e,cmd,usr = string.find(data,"%b<>%s+(%S+)%s+(%S+)")
	local kennyd = GetItemByName(usr)
	if kennyd == nil then
		user:SendData(Bot,"The User is not in the hub ! ! !")
	else
		if Kennylizednicks[kennyd.sName] == 1 then
			Kennylizednicks[kennyd.sName] = nil;
			SendToAll(Bot, kennyd.sName.." Has Returned ..")
		end
	end
end

function ShowKennys(user)
	local names = ""
	for index, value in Kennylizednicks do
		local line = index
		names = names.." "..line.."\r\n"
	end
	user:SendPM(Bot,"\r\n\r\nKennylised users..\r\n\r\n"..names)
end

SMF spam blocked by CleanTalk