Guardian
 

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

Guardian

Started by Troubadour, 25 November, 2003, 22:19:50

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Troubadour

Just started a new bot called Guardian.

--Version 0.1
-- description, faq, lol, network, rules and oprules txt file reading.
-- script announcer in the mainchat
-- ops and vip announcing in the mainchat
-- hubstats on timer (default = 60 minutes)
-- welcome to any new user
-- profile based inbuilt hubfunction assignment for ptokax 0.3.3.0
-- multiple help files

--Version 0.2
-- more hubstats assigned
-- addprofile Moderator
-- bugfixed bot reaction in mainchat

*Download here*

Is tested with PtokaX DC Hub 0.3.3.0 build 15.18 [debug]

We also seek translators for any language besides Dutch and English.

-- Guardian by Troubadour & [NL]-=DJ_Bert=-
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

MrBuitenhuizenJunior

Hello,

This script has a lot of features, nice script. I like the  "!stat"  commando   8)


[NL]MrBuitenhuizen

pHaTTy

not bad for a new bot but here you go, a little effiencent

function DataArrival(curUser, data) 

s,e,cmd = strfind(data,"%b<>%s++(%S+)")
if cmd ~= nil then cmd = (strsub(cmd,1,strlen(cmd)-1)) 


			if (cmd=="!help") and curUser.iProfile == nil then
			SendUserhelp(curUser)
			return 1	
		end
			if (cmd=="!help") and curUser.iProfile == 0 then 
			SendMasterhelp(curUser) 
						return 1	
		end
			if (cmd=="!help") and curUser.iProfile == 1 then 
			SendOpshelp(curUser) 
						return 1	
		end
			if (cmd=="!help") and curUser.iProfile == 2 then 
			SendViphelp(curUser) 
						return 1	
		end
			if (cmd=="!help") and curUser.iProfile == 3 then 
			SendReghelp(curUser) 
						return 1	
		end
			if (cmd=="!help") and curUser.iProfile == 4 then 
			SendModeratorhelp(curUser) 
						return 1	
		end
			if (cmd=="!lol") then 
			SendLol(curUser) 
						return 1	
		end
			if (cmd=="!rules") then 
			SendRules(curUser) 
						return 1	
		end
			if (cmd=="!network") then 
			SendNetwork(curUser) 
						return 1	
		end
			if (cmd=="!faq") then 
			SendFaq(curUser) 
						return 1	
		end
			if (cmd=="!description") then 
			SendDescription(curUser)
		return 1


instead of many checks shorten it down into all one check

also its a shame this script wont function properly but a nice try if this is your first :)) here we go i will give you a head start on what you were trying to accomplish

function DataArrival(curUser, data) 
	s,e,cmd = strfind(data,"%b<>%s++(%S+)")
		if cmd ~= nil then cmd = (strsub(cmd,1,strlen(cmd)-1)) 

			if (cmd=="!help") then
				if curUser.iProfile == nil then
					SendUserhelp(curUser)
					return 1	
				elseif curUser.iProfile == 0 then
					SendMasterhelp(curUser) 
					return 1	
				elseif curUser.iProfile == 1 then 
					SendOpshelp(curUser) 
					return 1	
				elseif curUser.iProfile == 2 then 
					SendViphelp(curUser) 
					return 1	
				elseif curUser.iProfile == 3 then 
					SendReghelp(curUser) 
					return 1	
				elseif curUser.iProfile == 4 then 
					SendModeratorhelp(curUser) 
					return 1	
				end
			elseif (cmd=="!lol") then 
				SendLol(curUser) 
				return 1	
			elseif (cmd=="!rules") then 
				SendRules(curUser) 
				return 1	
			elseif (cmd=="!network") then 
				SendNetwork(curUser) 
				return 1	
			elseif (cmd=="!faq") then 
				SendFaq(curUser) 
				return 1	
			elseif (cmd=="!description") then 
				SendDescription(curUser)
				return 1
			elseif (cmd == "!op") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!drop") then 
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!ban") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!unban") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!nickban") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!getbanlist") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!getinfo") then 
				if curUser.iProfile == 2 or curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!me") then
				AddAChatter(user)
				return 0
			elseif (cmd == "!gag") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!ungag") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!banip") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!ipinfo") then 
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd =="!iprangeinfo") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!userinfo") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!stat") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!reloadtxt") then
				if curUser.iProfile == 1 or curUser.iProfile == 0 or curUser.iProfile == 4 then 
					return 0
				elseif curUser.iProfile == nil then 
					curUser:SendPM(BOTName, "you are not allowed to use this command")
				end
			elseif (cmd == "!restartscripts") and curUser.iProfile == 0 then
				return 0
			elseif (cmd == "!restart") and curUser.iProfile == 0 then
				return 0
			elseif (cmd == "!topic") and curUser.iProfile == 0 or curUser.iProfile == 4 then
				return 0

		end 
	end
end

l8rr

-phatz ;)
Resistance is futile!

pHaTTy

oK you had a few glitches etc the script did not work anyways, end missing on new user connect and put at bottom, ive fixed it, but then i decided to rewrite it all anyways so here goes


--Version 0.3
-- fixed a bug with new user connect
-- totally rewrittne by Phatty
-- enhanced functions and cut down on some to give effiecency

--Version 0.2
-- more hubstats assigned
-- addprofile Moderator
-- bugfixed bot reaction in mainchat

--Version 0.1
-- description, faq, lol, network, rules and oprules txt file reading.
-- script announcer in the mainchat
-- ops and vip announcing in the mainchat
-- hubstats on timer (default = 60 minutes)
-- welcome to any new user
-- profile based inbuilt hubfunction assignment
-- multiple help files

------------Thanks------------------------------------------------------------
--[NL]Xantia for watching our hub, during script-writing and for some ideas --
------------------------------------------------------------------------------

BOTName ="Guardian"
Version ="Guardian 0.3"
Creators ="Origainally by Troubadour and [NL]-=DJ_Bert=-"

sUserCount = frmHub:GetUsersCount()
sHubName = frmHub:GetHubName()
sHubDesc = frmHub:GetHubDescr()
sRedirect = frmHub:GetRedirectAddress()
sMaxUsers = frmHub:GetMaxUsers()
sMinShare = frmHub:GetMinShare(3)
sCurrentShare = frmHub:GetCurrentShareAmount(3)

function Main() 
	frmHub:UnregBot(BOTName)
	frmHub:RegBot(BOTName)
	SendToAll("( >>>>  "..Version.." Started"..date(" the %d/%m-%Y at %X ").."  <<<< )")
	TimeSpanInMinutes = 60				  --> sets Hubstats time in minutes
	BOTNameInfo = "$MyINFO $ALL "..BOTName.." <++V:0.2 Guardian,C:Troubadour and [NL]-=DJ_Bert=-> $ $Black Light"..strchar( 1 ).."$guardian@nederfun.no-ip.com$" 
	SendToAll(BOTNameInfo)
	AddProfile("Moderator", 4269273088)
	SetTimer(TimeSpanInMinutes*60000) 
	StartTimer()
end 

function OnTimer()
	SendAdMessage()
end 

function SendAdMessage()
	upline = "============H=U=B==S=T=A=T=S=========="
	underline = "======================================="
	hubstats = "\r\n\r\n"..upline.."\r\n"..
		 "      ?Script Version:    		 "..Version.."\r\n"..
		 "      ?Script Creator:	  	  	 "..Creators.."\r\n"..
		 "      ?Hub Name: 		    	 "..sHubName.."\r\n"..
		 "      ?Hub Description:   		 "..sHubDesc.."\r\n"..
		 "      ?Hub Adress:		   	 nederfun.no-ip.com \r\n"..
		 "      ?Owner:		 	 Troubadour".."\r\n"..
		 "      ?Online Users:			 "..sUserCount.."\r\n"..
		 "      ?Redirect Adress:   		 "..sRedirect.."\r\n"..
		 "      ?Maximum Users:  	 	 "..sMaxUsers.."\r\n"..
		 "      ?Minimum Share:   		 "..sMinShare.." in bytes".."\r\n"..
		 "      ?Total Share in the hub:   		 "..sCurrentShare.." in bytes".."\r\n"..
		 "      ?Hub Network:	 		 !network".."\r\n"..
		 "      ?Hub Rules:    			 !rules".."\r\n"..underline.."\r\n".." "

		SendToAll(BOTName, hubstats)
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 (cmd=="!help") then 
			if user.iProfile == nil then 
				SendUserhelp(user) 
				return 1 
			elseif user.iProfile == 0 then 
				SendMasterhelp(user) 
				return 1 
			elseif user.iProfile == 1 then 
				SendOpshelp(user) 
				return 1 
			elseif user.iProfile == 2 then 
				SendViphelp(user) 
				return 1 
			elseif user.iProfile == 3 then 
				SendReghelp(user) 
				return 1 
			elseif user.iProfile == 4 then 
				SendModeratorhelp(user) 
				return 1 
			end 
		elseif (cmd=="!lol") then 
			SendLol(user) 
			return 1 
		elseif (cmd=="!rules") then 
			SendRules(user) 
			return 1 
		elseif (cmd=="!network") then 
			SendNetwork(user) 
			return 1 
		elseif (cmd=="!faq") then 
			SendFaq(user) 
			return 1 
		elseif (cmd=="!description") then 
			SendDescription(user) 
			return 1 
		elseif (cmd == "!op") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!drop") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!ban") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!unban") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!nickban") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!getbanlist") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!getinfo") then 
			if user.iProfile == 2 or user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!me") then 
			AddAChatter(user) 
			return 0 
		elseif (cmd == "!gag") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!ungag") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!banip") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!ipinfo") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd =="!iprangeinfo") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!userinfo") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!stat") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!reloadtxt") then 
			if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
				return 0 
			elseif user.iProfile == nil then 
				user:SendPM(BOTName, "you are not allowed to use this command") 
			end 
		elseif (cmd == "!restartscripts") and user.iProfile == 0 then 
			return 0 
		elseif (cmd == "!restart") and user.iProfile == 0 then 
			return 0 
		elseif (cmd == "!topic") and user.iProfile == 0 or user.iProfile == 4 then 
			return 0 
		end
	end 
end 


function OpConnected(user)
	SendToAll(BOTName, "[OPS] "..user.sName.." has joined the hub") 
end

function OpDisconnected(user)
	SendToAll(BOTName, "[OPS] "..user.sName.." has left the hub") 
end

function UserDisconnected(user)
	if user.iProfile == 2 then
		SendToAll(BOTName, "[VIP] "..user.sName.." has left the hub") 
	end
end

function NewUserConnected(user)
	if user.iProfile == 2 then
		SendToAll(BOTName, "[VIP] "..user.sName.." has joined the hub") 
	elseif user.iProfile == nil then
		SendToNick(BOTName, "Welcome to the [NL]Holland Hub" )
	end
end
	

function DoRead(user)
	while 1 do 
		line = read() 
		if line == nil then break end
			user:SendPM(BOTName, line)
		end 
	readfrom() 
end

function SendOprules(user) 
	readfrom("Guardian/oprules.txt") 
	DoRead(user)
end


function SendRules(user) 
	readfrom("Guardian/rules.txt") 
	DoRead(user) 
end

function SendNetwork(user) 
	readfrom("Guardian/network.txt") 
	DoRead(user) 
end

function SendLol(user) 
	readfrom("Guardian/lol.txt") 
	DoRead(user)
end

function SendFaq(user) 
	readfrom("Guardian/faq.txt") 
	DoRead(user)
end

function SendDescription(user) 
	readfrom("Guardian/description.txt") 
	DoRead(user) 
end

function SendUserhelp(user) 
	readfrom("Guardian/userhelp.txt") 
	DoRead(user)  
end

function SendMasterhelp(user) 
	readfrom("Guardian/masterhelp.txt") 
	DoRead(user)  
end

function SendOpshelp(user) 
	readfrom("Guardian/opshelp.txt") 
	DoRead(user)  
end

function SendViphelp(user) 
	readfrom("Guardian/viphelp.txt") 
	DoRead(user) 
end

function SendReghelp(user) 
	readfrom("Guardian/reghelp.txt") 
	DoRead(user) 
end

function SendModeratorhelp(user) 
	readfrom("Guardian/moderatorhelp.txt") 
	DoRead(user) 
end


l8rr

-phatty
Resistance is futile!

tezlo

since you speak efficiency..
ptokazcommands = {
	op = 1, drop = 1, ban = 1, unban = 1, nickban = 1, getbanlist = 1,
	getinfo = 1, gag = 1, ungag = 1, banip = 1, ipinfo = 1, iprangeinfo = 1,
	userinfo = 1, restart = 1, restartscripts = 1 }

local s, e, cmd, args = strfind(data, "^%b<> %!(%a+)%s*(.*)%|$")
if s and ptokazcommands[cmd] then
	if user.iProfile == 1 or user.iProfile == 0 or user.iProfile == 4 then 
		return 0
	elseif user.iProfile == nil then
		SendPM(BOTName, "you are not allowed to use this command") 
	end

this will save you 50 lines of repeating code
similar thing can be done with the textfiles

..

tezlo

speaking of glitches..
you must have noticed that usercount and currentshare stay the same since script restart
you need to re-evaluate them on newuser or sendad or whenever

and IF you decide to stick to the same naming convention as ptokaz..
make it iUserCount iCurrentShare etc

pHaTTy

he he he

dont tell me :P

i just made a quick rewrite in 2mins, helping not writing it for them :P
Resistance is futile!

Troubadour

Newest version of Guardian now available.

--Version 0.4
-- included SUPERVIP single announcement
-- added !showreg command
-- included announcement by name (Master, Moderator, Operator)
-- included total share ammount in hubstats
-- included current uptime in hubstats


Download Guardian 0.4

-Troubadour-
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

turkiye


Troubadour

#9
tezlo thnx for the hint!
Just finished Guardian0.5

--Version 0.5
-- included !myip for users to find out their IP
-- included !myversion to check your client version
-- added Guest account
-- disabled total share and total usercount in hubstats
-- redefined functions using variables (thanks to tezlo)

*   Download Guardian0.5  English  *

*  Download Guardian0.5 Spanish  *

P.S. graag gedaan, turkiye (*dutch for your welcome*)

-Troubadour-
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

mmx

i still can't get it to run, can u help?

Troubadour

just unpack the *.rar file in your ptokax scripts directorie!
That should do the trick!
It is allready for ptokax 0.3.3.0 (included inbuild commands from that version)

-Troubadour-
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

mmx

ok! - onl problem i use 0.326

mmx

i got it to work :P

Xander007

Ok, Im traslating this Bot to spanish but I have tested this versi?n on TD 4 and I need some help about translate the description file !!!

Troubadour

Send me a mail at my e-mail adress, so i can send the newest version to you (so you can start translating Guardian 0.6) I will translate all txt files to english as well, so you can understand it better.

-Troubadour-
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

Troubadour

#16
Guardian

All files translated to english.

--Version 0.6

-- included announcement by name when leaving the hub (Master, Operator)
-- fixed total share and total usercount in hubstats
-- included !logfile to see when your ops login and logout
-- included /fav (dc++ command) in hubstats so people can put your hub to their favorites with one single command in mainchat.


**Download Guardian 0.6  **

-Troubadour-
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

Xander007

#17
Guardian V0.6 Spanish

All files translated to spanish.

I didnt verify this bot in spanish becaus I havent got the new ptokax version. :(

***Download Guardian 0.6 Spanish***




by

GORDOS HUB
gordos.no-ip.com

Xander007

#18
Sorry. Guardian bot was crazy, but I restarted the hub and allthing is good.


Sorry for my english.

Troubadour

It should be ok, cause i tested it before releasing!
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

Troubadour

--Version 0.7
-- included !mmop (sends all ops a message)
-- included !massmess (sends all people in the hub a pm with the message)
-- included search for badfile names
-- included name of the script translator in hubstats

** Download Guardian 0.7 **

-Troubadour-
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

IceCoder


IceCoder

Some good functions   :D

SaintSinner

all very good functions
   


Troubadour

#24
thanks.
Will be updated saturday 13 dec 2003.
Then Guardian 0.8 will be released!

Troubadour
Regards,

Troubadour

** Guardian Forum **

hubaddy:   nederfun.no-ip.com

SMF spam blocked by CleanTalk