Mute
 

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

Mute

Started by kepp, 10 November, 2003, 17:34:39

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

kepp

A simple mute script?
on command Mute all or one user?
and unmute all ofcorse
unmute user...

Guarding    

Tuben

#1
Maybe this

--// Made by Tuben --\\

BotName = "-Mute-"

function Main()
frmHub:RegBot(BotName)
LoadMute()
end

Mutes = {}
MuteAll = 1

function LoadMute()
readfrom("Mute.txt")
	while 1 do
	local line = read()
      if line == nil then
	 break
	 else
	 User = strsub(line, 1, strfind(line, ";")-1)
         Reason = strsub(line, strfind(line, ";")+1,-1)			
	 Mutes[User] = Reason		
	 end
	 end
	 readfrom()
         end
function WriteMute()
	writeto("Mute.txt")
	for User,Reason in Mutes do
	write(User..";"..Reason.."\r\n")
	end
	writeto()
	end
function GetArgs2(sdata)
	local _,_, arg1,arg2 = strfind(sdata,"%S+%s+%S+%s+(%S+)%s+(.*)")
	return arg1,arg2
      end  
function GetArgs5(sdata)
	local _,_, arg4,arg5 = strfind(sdata,"$To:%s+%S+%s+From:%s+%S+%s+$%S+%s+%S+%s+(%S+)%s+(.*)")
	return arg4,arg5
      end	
function GetArgs1(sdata)
	local _,_, arg1 = strfind(sdata,"%s+%S+%s+(.+)")
	return arg1
      end
function GetArgs4(sdata)
	local _,_, arg4 = strfind(sdata,"$To:%s+%S+%s+From:%s+%S+%s+$%S+%s+%S+%s+(.*)")
	return arg4
      end
	function DataArrival(curUser,sdata)
		if (strsub(sdata,1,4) == "$To:") or strfind(sdata,"<")  then 
		   sdata = strsub(sdata,1,-2)	
		   local _,_,   check,cmd = strfind(sdata,"$To:+%s+(%S+)%s+From:+%s+%S+%s+$+%S+%s+(%S+)")
		   local _,_,   cmd = strfind(sdata,"%b<>%s+(%S+)")		
		if (check == Bot_Name) or (strsub(sdata,1,1) ~= "$") and curUser.bOperator then
		if (cmd=="+mute") then 
		   DoMute(curUser,sdata)
		   return 1	
		elseif (cmd=="+unmute") then
		    DoUnMute(curUser,sdata)
		    return 1
		elseif (cmd=="+muteall") then
		    DoMuteAll(curUser)
		    return 1
		    end
                    end
                    end					   	
		if (strsub(sdata,1,1) == "<") and not curUser.bOperator then
		   if MuteAll == 0 then
                      return 1;
                      else
                      return 0;
		      end                     	
                      sdata=strsub(sdata,1,-2)
		      local _,_, User = strfind(sdata,"<(%S+)>%s+.*")		   	
		      for i,n in Mutes do	
			if i == User then
				curUser:SendData(BotName,"You are banned from the main chat beacuse: "..n)
				return 1	
                   		end
			        end 	
		                end
                                end
			  function DoMute(curUser,sdata)
				if strsub(sdata,1,4) == "$To:" then
				   arg1,arg2 = GetArgs5(sdata)
			           else
				   arg1,arg2 = GetArgs2(sdata)
		                   end
				    if arg1~=nil and arg2~=nil then
					Mutes[arg1] = arg2
					WriteMute()
					curUser:SendData(BotName,"User: "..arg1.." is now muted from main chat bacuse: "..arg2);
			                end
                                        end
					function DoUnMute(curUser,sdata)
				        	if strsub(sdata,1,4) == "$To:" then
				   		   arg1 = GetArgs4(sdata)
			                           else
				                   arg1 = GetArgs1(sdata)
		                                   end
				    		if arg1~=nil then
					           Mutes[arg1] = nil
					           WriteMute()
					           curUser:SendData(BotName,"User: "..arg1.." is now unmuted");
			                           end
                                                   end
                                       function DoMuteAll(curUser)
						if MuteAll == 1 then
                                                   MuteAll = 0
                                                   SendToAll(BotName,"The chat is now muted.")
						   return 1
						elseif MuteAll == 0 then
                                                   MuteAll = 1
                                                   SendToAll(BotName,"The chat can now be used.")
						   return 1
                   				   end
                                                   end  


And then create a txt whit the name "Mute.txt" in the
same folder as the script.

And write in the first line in Mute.txt Users;Reason


"Edit"

Commandsen ?r:

+mute
+unmute

"EDIT2" fuck

Forgot muteall ;)

I have changed the script.

+muteall type +muteall agin too unmuteall ;)
+mute
+unmute

And it is only for ops and it mutes not ops only evrybody else
-Dark-Mind-[ DOWNLOAD ]

kepp

Guarding    

SMF spam blocked by CleanTalk