Custom Login script
 

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

Custom Login script

Started by Typhoon, 24 September, 2004, 20:02:32

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Typhoon

hope someone can use this :)

-- Custom Login by Typhoon
-- Ripped from Sentinel v2.0
-- http://netfree-network.com/host/Sentinel
-- Commands are 
-- +newlogin 	 - This changes the default login :)
--	+newlogout 	 - This changes the default logout message :)
-- your nick is auto inserted in the midle of the text


BotName = "-Neo-"
sLogins = "Loginout.txt"
Announce = { LogInTable = {} , LogoutTable = {}, }


function Main()
   dofile(sLogins)
   frmHub:RegBot(BotName)
end

function OpConnected(user,data)
      if Announce.LogInTable[user.sName] then
         local msg = Announce.LogInTable[user.sName]
         SendToAll(BotName,msg)
      end
   end  

function DataArrival(user, data)
	data = strsub(data,1,strlen(data)-1)
	local s,e,cmd = strfind( data, "%b<>%s+(%S*)" )
	if cmd == "+newlogin" then
      ChangeLogin(user,data)
   elseif cmd == "+newlogout" then
      ChangeLogout(user,data)
   end
   return 1
end

ChangeLogin = function(user,data)  
            local doGetProfile =  GetProfileName(user.iProfile)
            local s,e,cmd,message,message2 = strfind( data, "%b<>%s+(%S+)%s+(.*)%s:%s(.*)" ) 
         if message == nil or message2 == nil then 
            Announce.LogInTable[user.sName] = "Welcomes "..doGetProfile.." "..user.sName.." Has entered the hub"
				SaveToFile(sLogins,Announce, "Announce")
            user:SendData(BotName,"Standard Login Enabled: "..doGetProfile.." "..user.sName.." Has entered the hub ")
            user:SendData(BotName,"If you want to change it then use this : +newlogin message1 : message2")
         else  
            Announce.LogInTable[user.sName] = "Welcomes "..message.." "..user.sName.." "..message2
            SaveToFile(sLogins,Announce, "Announce")
            user:SendData(BotName,"Login Changed to: "..message.." "..user.sName.." "..message2)  
         end  
         return 1  
      end 
      
      ChangeLogout = function(user,data)  
            local doGetProfile =  GetProfileName(user.iProfile)
            local s,e,cmd,message,message2 = strfind( data, "%b<>%s+(%S+)%s+(.*)%s:%s(.*)" ) 
         if message == nil and message2 == nil then 
            Announce.LogoutTable[user.sName] = "Goodbyes to the "..doGetProfile.." "..user.sName.." Has left the hub"
				SaveToFile(sLogins,Announce, "Announce")
            user:SendData(BotName,"Standard Logout Enabled: "..doGetProfile.." "..user.sName.." Has left the hub ")
            user:SendData(BotName,"If you want to change it then use this : +newlogout message1 : message2")
         else  
            Announce.LogoutTable[user.sName] = "Goodbyes to "..message.." "..user.sName.." "..message2
            SaveToFile(sLogins,Announce, "Announce")
            user:SendData(BotName,"Logout Changed to: "..message.." "..user.sName.." "..message2)  
         end  
         return 1  
      end 
      
      -- Serialize --
function Serialize(tTable, sTableName, hFile, sTab)
	assert(tTable, "tTable equals nil");
	assert(sTableName, "sTableName equals nil");
	assert(hFile, "hFile equals nil");

	assert(type(tTable) == "table", "tTable must be a table!");
	assert(type(sTableName) == "string", "sTableName must be a string!");

	sTab = sTab or "";

	write(hFile, sTab..sTableName.." = {\n" );

	for key, value in tTable do
		local sKey = (type(key) == "string") and format("[%q]",key) or format("[%d]",key);

		if(type(value) == "table") then
			Serialize(value, sKey, hFile, sTab.."\t");
		else
			local sValue = (type(value) == "string") and format("%q",value) or tostring(value);
			write(hFile, sTab.."\t"..sKey.." = "..sValue);
		end

		write(hFile, ",\n");
	end

	write(hFile, sTab.."}");
end
-- Save Table to File --
function SaveToFile(file , table , tablename)
	local hFile = openfile(file, "w");
	Serialize(table, tablename, hFile);
	closefile(hFile);
end
-- Load Table From File --
function LoadFromFile (file)
	assert(readfrom(file),file.." is not found.")
	dostring(read("*all"))
	readfrom()
end

Typhoon?



SMF spam blocked by CleanTalk