Jump to content

Sockname Profile Mx


Dippy

Recommended Posts

hello :)

 

wanted to ask how would I make this part sockname profile MX read from the PassportProfile Param say the param is PX it read PX I already done the php part and such but need help on the this bit

 

elseif (!$hget($sockname,nick)) { hadd -m $sockname nick $2 | hadd $sockname profile MX | hadd $sockname away H | hadd $sockname ustat U | var %nick = $hget($sockname,nick) | var %serv = $config(serv)

 

Thank you for replys

Link to comment
Share on other sites

need a lot more information. What exactly are you trying to read the user information from (website. irc server, give a link for example)? Secondly, what exactly are you trying to get from the mIRC script (url, etc)? Helps to have the whole script and a lot more information.

Link to comment
Share on other sites

Trying to read from the web from the param which relays back the gender 11 for male 5 for female then using the code to tell the server that it female or male

 

Thank you for replys

Link to comment
Share on other sites

on *:START:{ ZCN }
on *:SOCKLISTEN:*:{
  if ($sockname == listen.1) {
	var %a = $r(1111,9999) | sockaccept %a | var %ip = $sock(%a).ip | var %sn = $calc($gettok($sock(first- $+ $sock(%a).ip $+ *,$sock(first- $+ $sock(%a).ip $+ *,0)),3,$asc(-)) + 1)
	if ($sock(first- $+ $sock(%a).ip $+ *,0) > $config(mpi)) && ($config(mpi) != 0) { sockwrite -tn %a $config(serv) Too many open connections | sockclose %a | goto jump }
	if (%a- [ $+ [ %ip ] ]) { sockwrite -tn %a $config(serv) Connections too fast | sockclose %a | goto jump } | sockrename %a first- $+ $sock(%a).ip $+ - $+ %sn | :jump
	if (!%a- [ $+ [ %ip ] ]) { set -u3 %a- [ $+ [ %ip ] ] 1 } | else { inc %a- [ $+ [ %ip ] ] | if (%a- [ $+ [ %ip ] ] >= 10) { ip.kick * $+ %ip $+ * Violation of code of conduct: Flood } }
  }
  elseif ($sockname == listen.2) {
	var %a = $r(1111,9999) | sockaccept %a | var %ip = $sock(%a).ip | var %sn = $calc($gettok($sock(ZCN- $+ $sock(%a).ip $+ *,$sock(ZCN- $+ $sock(%a).ip $+ *,0)),3,$asc(-)) + 1)
	if ($sock(ZCN- $+ $sock(%a).ip $+ *,0) > $config(mpi)) && ($config(mpi) != 0) { sockwrite -tn %a $config(serv) Too many open connections | sockclose %a | goto jump }
	if (%b- [ $+ [ %ip ] ]) { sockwrite -tn %a $config(serv) Connections too fast | sockclose %a | goto jump } | sockrename %a ZCN- $+ $sock(%a).ip $+ - $+ %sn
	:jump | if (!%b- [ $+ [ %ip ] ]) { set -u3 %b- [ $+ [ %ip ] ] 1 } | else { inc %b- [ $+ [ %ip ] ] | if (%b- [ $+ [ %ip ] ] >= 10) { ip.kick * $+ %ip $+ * Violation of code of conduct: Flood } }
  }
}
on *:SOCKREAD:*:{
  var %a | sockread %a | tokenize 32 %a | if ($1 != PONG) { if ($sockname != %lastsock) { echo @socks - | set %lastsock $sockname } | echo @socks 12 $+ $sockname $iif($hget($sockname,nick),2 $+ $v1) $iif($hget($sockname,room),12 $+ $v1) 14 $+ $1- }
  if (!%flood. [ $+ [ $sockname ] ]) { set -u3 %flood. [ $+ [ $sockname ] ] 1 } | else { inc %flood. [ $+ [ $sockname ] ] | if (%flood. [ $+ [ $sockname ] ] >= 15) { disconn $sockname } }
  if (first-* iswm $sockname) {
	if ($1-3 == AUTH Gatekeeper I) { sockwrite -tn $sockname AUTH GateKeeper * first@connexion }
	elseif ($1 == NICK) && ($2) { sockwrite -tn $sockname $config(serv) 001 ZCN :Welcome to $config(chat) }
	elseif (FINDS ?#* iswm $1-2) { if ($hget($2)) { sockwrite -tn $sockname $config(serv) 613 ZCN : $+ $config(ip) $config(port2) } | else { sockwrite -tn $sockname $config(serv) 702 ZCN :room nonexistent } }
	elseif ($1 == CREATE) && ($+($chr(37),$chr(35),*) iswm $3) && ($8) {
	  if ($hget($2)) { sockwrite -tn $sockname $config(serv) 705 ZCN : $+ $config(ip) $config(port2) | halt }
	  if ($roomcheck($right($3,-2)) == no) { sockwrite -tn $sockname $config(serv) 706 ZCN :Bad Characters | halt }
	  else { if ($roomname($3) == $false) { halt } | hmake $3 10 | hadd $3 cat $2 | hadd $3 topic $4 | hadd $3 welcome $5 | hadd $3 lang $6 | hadd $3 owncode $8 | hadd $3 modes ntl | hadd $3 limit 50
		sockwrite -tn $sockname $config(serv) 613 ZCN : $+ $config(ip) $config(port2) | uncreatetimer $3 | addline $3
	  }
	}
  }
  elseif (ZCN-* iswm $sockname) {
	if ($1 == IRCVERS) { sockwrite  -tn $sockname $config(serv) 800 * 1 0 Address,NTLM 512 * } | elseif ($1-3 == AUTH GateKeeper I) && (!$hget($sockname,gate)) {
	  var %gate = $calc($calc($gettok($sock($sockname).ip,1,$asc(.)) * $gettok($sock($sockname).ip,3,$asc(.))) * $calc($gettok($sock($sockname).ip,2,$asc(.)) * $gettok($sock($sockname).ip,4,$asc(.))))
	  %gate = $calc(%gate * %gate * $gettok($sock($sockname).ip,2,$asc(.))) $+ @ $+ $right($config(serv),-1) | hadd -m $sockname gate %gate | sockwrite -tn $sockname AUTH GateKeeper * %gate | if ($config(slist) == on) { addline $sockname }
	}
	elseif (NICK * iswm $1-2) {
	  if (:* iswm $2) { tokenize 32 $1 $right($2,-1) } | if (>* iswm $2) { tokenize 32 $1 $right($2,-1) } | if ($len($2) > 50) { sockwrite -tn $sockname $config(serv) 432 $2 :Nickname too long | halt }
	  if ($nickcheck($2) == bad) { sockwrite -tn $sockname $config(serv) 432 $2 :Characters you not allowed | halt }
	  if ($hget($sockname,room)) { sockwrite -tn $sockname $config(serv) 439 $hget($sockname,nick) :Can not change nickname | halt }
	  elseif (!$hget($sockname,nick)) { hadd -m $sockname nick $2 | hadd $sockname profile MX | hadd $sockname away H | hadd $sockname ustat U | var %nick = $hget($sockname,nick) | var %serv = $config(serv)
		sockwrite -tn $sockname %serv 001 %nick :Welcome $config(chat) $+ $crlf $+ $sockname %serv 002 %nick :Server %serv $+ , Version:
		sockwrite  -tn $sockname %serv 003 %nick :- | sockwrite -tn $sockname %serv 375 %nick :- $right($config(serv),-1) Message of the day -
		if ($exists(motd.txt) == $true) && ($lines(motd.txt) > 0) { var %n = 1 | while (%n <= $lines(motd.txt)) { sockwrite -tn $sockname %serv 372 %nick :- $read(motd.txt,%n) | inc %n } }
		else { sockwrite -tn $sockname %serv 372 %nick :Motd Missing (Edit in motd.txt) } | sockwrite -tn $sockname %serv 376 %nick :End of /MOTD command
	  }
	  elseif ($hget($sockname,nick)) { sockwrite -tn $sockname : $+ $hget($sockname,nick) $+ ! $+ $hget($sockname,gate) NICK : $+ $2 | hadd -m $sockname nick $2 }
	}
	elseif (JOIN ?#* iswm $1-2) &&  ($hget($sockname,nick)) && ($hget($sockname),gate) {
	  if ($hget($sockname,room)) { sockwrite -tn $sockname $config(serv) 405 $hget($Sockname,nick) :Too much rooms opened | halt }
	  if (!$hget($2)) { sockwrite -tn $sockname $config(serv) 702 $hget($sockname,nick) :Room does not exists | halt }
	  if ($hfind($2,$hget($sockname,nick),1).data) { sockwrite -tn $sockname $config(serv) 927 $hget($Sockname,nick) :Nickname already used | halt }
	  if ($sock($sockname).ip == 127.0.0.1) && ($config(local) == on) { hadd $sockname opstat O | hadd $sockname smode . | var %ruid = $ruid($sockname) | goto join }
	  if ($hget($sockname,smode) isin .@) { goto join }
	  if ($3) && ($3 == $hget($2,owncode)) && ($hget($sockname,smode) !isin .@) { hadd $sockname opstat O | hadd $sockname smode . | var %ruid = $ruid($sockname) | goto join }
	  if ($3) && ($3 == $hget($2,host)) && ($hget($sockname,smode) !isin .@) { hadd $sockname opstat O | hadd $sockname smode @ | var %ruid = $ruid($sockname) | goto join }
	  var %aloop = 1, %entries
	  while (%aloop <= $hget(ACCESS- $+ $2,0).item) { if ($hget(ACCESS- $+ $2,%aloop).item iswm $+($hget($sockname,nick),!,$hget($sockname,gate),$chr(36),$sock($sockname).ip)) || ($hget(ACCESS- $+ $2,%aloop).item iswm $+($hget($sockname,nick),!,$hget($sockname,gate))) {
	  set %entries %entries $gettok($hget(ACCESS- $+ $2,%aloop).data,1,32) } | inc %aloop }
	  if (OWNER isin %entries) && ($hget($sockname,smode) !isin .@) { hadd $sockname opstat O | hadd $sockname smode . | var %ruid = $ruid($sockname) | goto join }
	  if (HOST isin %entries) && ($hget($sockname,smode) !isin .@) { hadd $sockname opstat O | hadd $sockname smode @ | var %ruid = $ruid($sockname) | goto join }
	  if (GRANT isin %entries) && ($hget($sockname,smode) !isin .@) { goto join }
	  if (DENY isin %entries) && ($hget($sockname,smode) !isin .@) { sockwrite -tn $sockname $config(serv) 913 $hget($sockname,nick) $2 :No Access | if (u isin $hget($2,modes)) { roomwrite hosts $2 $sockname KNOCK 913 } | halt }
	  if (VOICE isin %entries) && ($hget($sockname,smode) !isin .@) { hadd $sockname opstat O | hadd $sockname smode + | var %ruid = $ruid($sockname) | goto join }
	  if (k isin $hget($2,modes)) && ($hget($sockname,ustat) !isin ASG) && ($3 != $hget($2,memberkey)) { sockwrite -tn $sockname $config(serv) 475 $hget($sockname,nick) :Need Room Key | halt }
	  if (i isin $hget($2,modes)) && ($hget($sockname,ustat) !isin ASG) { sockwrite -tn $sockname $config(serv) 473 $hget($sockname,nick) :Guests only | halt }
	  if (l isin $hget($2,modes)) && ($hfind($2,ZCN-*,0,w) >= $hget($2,limit)) && ($hget($sockname,ustat) !isin ASG) { sockwrite -tn $sockname $config(serv) 471 $hget($sockname,nick) :Room is full | halt }
	  :join
	  var %nick = $hget($sockname,nick) | hadd $sockname room $2 | hadd $2 $sockname %nick | var %ruid = $ruid($sockname) | var %serv = $config(serv)
	  sockwrite -tn $sockname : $+ %nick $+ ! $+ $hget($sockname,gate) JOIN %ruid : $+ $2 $+ $crlf $+ $+(: ,$2) PRIVMSG $2 : $+ $hget($2,welcome) $+ $crlf $+ %serv 332 %nick $2 : $+ $hget($2,topic)
	  var %n = 1 ,%list | while (%n <= $hfind($2,ZCN-*,0,w)) {
		%list = %list $ruid($hfind($2,ZCN-*,%n,w)) $+ $hget($hfind($2,ZCN-*,%n,w),nick) | if ($numtok(%list,32) == 5) { sockwrite -tn $sockname %serv 353 %nick * $2 : $+ %list | unset %list }
		elseif (%n == $hfind($2,ZCN-*,0,w)) { sockwrite -tn $sockname %serv 353 %nick * $2 : $+ %list | unset %list } | inc %n
	  }
	  sockwrite -tn $sockname %serv 366 %nick $2 :End of /NAMES | roomwrite $2 $sockname JOIN %ruid : $+ $2
	}
	elseif (MODE ?#* iswm $1-2) && (!$3) { sockwrite -tn $sockname $config(serv) 324 $hget($sockname,nick) $2 $hget($2,modes) $iif(l isin $hget($2,modes),$hget($2,limit)) }
	elseif (WHOIS == $1) && (?#* !iswm $2) && (ZCN-* iswm $sock($hfind($hget($sockname,room),$2,1).data)) {
	  sockwrite -tn $sockname $config(serv) 311 $hget($sockname,nick) $2 $gettok($hget($hfind($hget($sockname,room),$2,1).data,gate),1,$asc(@)) $gettok($hget($hfind($hget($sockname,room),$2,1).data,gate),2,$asc(@)) :-
	  sockwrite -tn $sockname $config(serv) 318 $hget($sockname,nick) $2 :End of /WHOIS list.
	}
	elseif (PRIVMSG ?#* iswm $1-2) && ($2 == $hget($Sockname,room)) { if (m isin $hget($2,modes)) && ($hget($sockname,smode) !isin .@+) { sockwrite -tn $sockname $config(serv) 404 :cannot send to channel } | else { roomwrite $2 $sockname $left($1-,300) } }
	elseif (PRIVMSG == $1) && (?#* !iswm $2) && (ZCN-* iswm $sock($hfind($hget($sockname,room),$2,1).data)) {
	  sockwrite -tn $hfind($hget($sockname,room),$2,1).data : $+ $hget($sockname,nick) $+ ! $+ $iif($hget($hfind($hget($sockname,room),$2,1).data,ustat) isin ASG,$replace($hget($sockname,gate),$remove($config(serv),,$sock($sockname).ip),$hget($sockname,gate)) $left($1-,300)
	}
	elseif (WHISPER == $1) && (?#* iswm $2) && (ZCN-* iswm $sock($hfind($hget($sockname,room),$3,1).data)) {
	  sockwrite -tn $hfind($hget($sockname,room),$3,1).data : $+ $hget($sockname,nick) $+ ! $+ $iif($hget($hfind($hget($sockname,room),$3,1).data,ustat) isin ASG,$replace($hget($sockname,gate),$remove($config(serv),,$sock($sockname).ip),$hget($sockname,gate)) $left($1-,300)
	}
	elseif (NOTICE == $1) && (?#* !iswm $2) && (ZCN-* iswm $sock($hfind($hget($sockname,room),$2,1).data)) {
	  sockwrite -tn $hfind($hget($sockname,room),$2,1).data : $+ $hget($sockname,nick) $+ ! $+ $iif($hget($hfind($hget($sockname,room),$2,1).data,ustat) isin ASG,$replace($hget($sockname,gate),$remove($config(serv),,$sock($sockname).ip),$hget($sockname,gate)) $left($1-,300)
	}
	elseif (KICK ?#* iswm $1-2) && ($3) && ($2 == $hget($Sockname,room)) {
	  if (@ == $hget($sockname,smode)) || (. == $hget($sockname,smode)) {
		if (!$hfind($hget($sockname,room),$3,1).data) { sockwrite -tn $sockname $config(serv) 406 $hget($sockname,nick) :No such nick/user }
		else { var %sock = $hfind($hget($sockname,room),$3,1).data | if ($hget(%sock,ustat) isin ASG) { sockwrite -tn $sockname $config(serv) 481 :Permission Denied | halt }
		  if (@ == $hget($sockname,smode)) && (. == $hget(%sock,smode)) { sockwrite -tn $sockname $config(serv) 481 :Permission Denied | halt }
		  if ($hget(%sock,ustat) !isin ASG) { hdel %sock opstat | hdel %sock smode } | hdel %sock room | roomwrite all $2 $sockname $1- $iif(!$4, | hdel $2 %sock
		}
	  }
	}
	elseif (MODE ?#* iswm $1-2) && ($2 == $hget($sockname,room)) && ((-? iswm $3) || (+? iswm $3)) {
	  if (?v iswm $3) && ($hfind($2,$4,1).data) { var %s = $hfind($2,$4,1).data
		if (+v == $3) && ($hget(%s,smode) !isin .@+) && ($hget($sockname,smode) isin .@) { hadd %s opstat O | hadd %s smode + | roomwrite all $2 $sockname $1-3 $hget(%s,nick) }
		elseif (-v == $3) && ($hget(%s,smode) == +) && ($hget($sockname,smode) isin .@) { hdel %s opstat | hdel %s smode | roomwrite all $2 $sockname $1-3 $hget(%s,nick) }
	  }
	  if (?o iswm $3) && ($2 == $hget($sockname,room)) && ($hfind($2,$4,1).data) { var %s = $hfind($2,$4,1).data
		if (+o == $3) && ($hget(%s,smode) !isin .@) && ($hget($sockname,smode) isin .@) {
		  if ($hget(%s,smode) == +) { roomwrite all $2 $sockname $replace($1-3,+o,-v) $hget(%s,nick) } | hadd %s opstat O | hadd %s smode @ | roomwrite all $2 $sockname $1-3 $hget(%s,nick)
		}
		elseif (-o == $3) && ($hget(%s,smode) == @) && ($hget($sockname,smode) isin .@) { hdel %s opstat | hdel %s smode | roomwrite all $2 $sockname $1-3 $hget(%s,nick) }
	  }
	  if (?q iswm $3) && ($2 == $hget($sockname,room)) && ($hfind($2,$4,1).data) { var %s = $hfind($2,$4,1).data
		if (+q == $3) && ($hget(%s,smode) != .) && ($hget($sockname,smode) == .) {
		  if ($hget(%s,smode) == +) { roomwrite all $2 $sockname $replace($1-3,+o,-v) $hget(%s,nick) }
		  hadd %s opstat O | if ($hget(%s,smode) == @) { roomwrite all $2 $sockname $replace($1-3,+q,-o) $hget(%s,nick) } | hadd %s smode . | roomwrite all $2 $sockname $1-3 $hget(%s,nick)
		}
		elseif (-q == $3) && ($hget(%s,smode) == .) && ($hget($sockname,smode) == .) { hdel %s opstat | hdel %s smode | roomwrite all $2 $sockname $1-3 $hget(%s,nick) }
	  }
	  if (?m iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,smode) isin .@) {
		if ($3 == +m) && (m !isin $hget($2,modes)) { hadd $2 modes $hget($2,modes) $+ m | roomwrite all $2 $sockname $1- }
		elseif ($3 == -m) && (m isin $hget($2,modes)) { hadd $2 modes $remove($hget($2,modes),m) | roomwrite all $2 $sockname $1- }
	  }
	  if (?i iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,smode) isin .@) {
		if ($3 == +i) && (i !isin $hget($2,modes)) { hadd $2 modes $hget($2,modes) $+ i | roomwrite all $2 $sockname $1- }
		elseif ($3 == -i) && (i isin $hget($2,modes)) { hadd $2 modes $remove($hget($2,modes),i) | roomwrite all $2 $sockname $1- }
	  }
	  if (?l iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,smode) isin .@) && ($4) {
		if ($3 == +l) && (l !isin $hget($2,modes)) { hadd $2 modes $hget($2,modes) $+ l | hadd $2 limit $4 | roomwrite all $2 $sockname $1- }
		elseif ($3 == -l) && (l isin $hget($2,modes)) { hadd $2 modes $remove($hget($2,modes),l) | roomwrite all $2 $sockname $1- }
	  }
	  if (?u iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,smode) isin .@) {
		if ($3 == +u) && (u !isin $hget($2,modes)) { hadd $2 modes $hget($2,modes) $+ u | roomwrite all $2 $sockname $1- }
		elseif ($3 == -u) && (u isin $hget($2,modes)) { hadd $2 modes $remove($hget($2,modes),u) | roomwrite all $2 $sockname $1- }
	  }
	  if (?g iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,ustat) isin ASG) {
		if ($3 == +g) && (g !isin $hget($2,modes)) { hadd $2 modes $hget($2,modes) $+ g | roomwrite all $2 $sockname $1- }
		elseif ($3 == -g) && (g isin $hget($2,modes)) { hadd $2 modes $remove($hget($2,modes),g) | roomwrite all $2 $sockname $1- }
	  }
	  if (?k iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,smode) isin .@) {
		if ($3 == +k) && (k !isin $hget($2,modes)) && ($4 != $null) { hadd $2 modes $hget($2,modes) $+ k | hadd $2 memberkey $4 | roomwrite all $2 $sockname $1-4 }
		elseif ($3 == -k) && (k isin $hget($2,modes)) { hdel $2 memberkey | hadd $2 modes $remove($hget($2,modes),k) | roomwrite all $2 $sockname $1- }
	  }
	  if (?r iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,ustat) isin ASG) {
		if ($3 == +r) && (r !isin $hget($2,modes)) { hadd $2 modes $hget($2,modes) $+ r | roomwrite all $2 $sockname $1- }
		elseif ($3 == -r) && (r isin $hget($2,modes)) { hadd $2 modes $remove($hget($2,modes),r) | roomwrite all $2 $sockname $1- }
	  }
	  if (?h iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,smode) isin .@) {
		if ($3 == +h) && (h !isin $hget($2,modes)) { hadd $2 modes $hget($2,modes) $+ h | roomwrite all $2 $sockname $1- }
		elseif ($3 == -h) && (h isin $hget($2,modes)) { hadd $2 modes $remove($hget($2,modes),h) | roomwrite all $2 $sockname $1- }
	  }
	  if (?s iswm $3) && ($2 == $hget($sockname,room)) && ($hget($sockname,smode) isin .@) {
		if ($3 == +s) && (s !isin $hget($2,modes)) { hadd $2 modes $hget($2,modes) $+ s | roomwrite all $2 $sockname $1- }
		elseif ($3 == -s) && (s isin $hget($2,modes)) { hadd $2 modes $remove($hget($2,modes),s) | roomwrite all $2 $sockname $1- }
	  }
	}
	elseif (MODE == $1) && ($hget($sockname,nick) == $2) && (+h == $3) && ($4) && ($hget($sockname,smode) != .) && ($4 == $hget($hget($sockname,room),owncode)) { var %s = $sockname
	  hadd %s opstat O | if ($hget(%s,smode) == @) { roomwrite all $hget(%s,room) $sockname MODE $hget(%s,room) -o $hget(%s,nick) } | hadd %s smode . | roomwrite all $hget(%s,room) $sockname MODE $hget(%s,room) +q $hget(%s,nick)
	}
	elseif (PART ?#* iswm $1-2) {
	  if ($hfind($hget($sockname,room),$sockname,1)) { roomwrite all $hget($sockname,room) $sockname PART : $+ $hget($sockname,room) | hdel $hget($sockname,room) $sockname
	  hdel $sockname room | if ($hget($sockname,ustat) !isin ASG) { hdel $sockname opstat | hdel $sockname smode } }
	}
	elseif (AWAY == $1) {
	  if ($2) && ($hget($sockname,away) != G) { hadd $sockname away G | sockwrite -tn $sockname $config(serv) 306 $hget($sockname,nick) :Away | roomwrite $hget($sockname,room) $sockname 822 :Away $hget($sockname,nick) }
	  elseif (!$2) && ($hget($sockname,away) != H) { hadd $sockname away H | sockwrite -tn $sockname $config(serv) 305 $hget($sockname,nick) :UnAway | roomwrite $hget($sockname,room) $sockname 821 :User UnAway $hget($sockname,nick) }
	}
	elseif (PROP == $1) && ($3 == PUID) && ($hfind($hget($sockname,room),$2,1).data) {
	  var %pnick = $hget($hfind($hget($sockname,room),$2,1).data,nick)
	  sockwrite -tn $sockname $config(serv) 818 $hget($sockname,nick) %pnick PUID %pnick
	  sockwrite -tn $sockname $config(serv) 819 $hget($sockname,nick) %pnick End of properties
	}
	elseif (PROP ?#* iswm $1-2) {
	  if ($3 == TOPIC) && ($2 == $hget($Sockname,room)) && ($hget($sockname,smode) isin .@) { hadd $hget($sockname,room) topic $iif(:* iswm $4,$right($4-,-1),$4-) | roomwrite all $2 $sockname TOPIC $2 : $+ $iif(:* iswm $4,$right($4-,-1),$4-) }
	  elseif ($3 == ONJOIN) && ($2 == $hget($Sockname,room)) && ($hget($sockname,smode) isin .@) { hadd $hget($sockname,room) welcome $iif(:* iswm $4,$right($4-,-1),$4-) | roomwrite all $2 $sockname $1-3 $iif(:* iswm $4,$4-,: $+ $4-) }
	  elseif ($3 == OWNERKEY) && ($2 == $hget($Sockname,room)) && ($hget($sockname,smode) == .) { hadd $hget($sockname,room) owncode $iif(:* iswm $4,$right($4,-1),$4) | roomwrite own $2 $sockname $1-3 $iif(:* iswm $4,$4,: $+ $4) }
	  elseif ($3 == HOSTKEY) && ($2 == $hget($Sockname,room)) && ($hget($sockname,smode) == .) { hadd $hget($sockname,room) hostcode $iif(:* iswm $4,$right($4,-1),$4) | roomwrite own $2 $sockname $1-3 $iif(:* iswm $4,$4,: $+ $4) }
	}
	elseif (PROP $chr(36) == $1-2) {
	  if ($3 == ROLE) && (!$hget($sockname,room)) && ($hget($sockname,nick)) && ($4) {
		if ($replace($readini(opers.ini,$5,poste),A,Admin,S,Sysop,G,Guide) == $remove($4,) && ($readini(opers.ini,$5,pass) == $6) {
		  tokenize 32 OPER $remove($4-,
		  sockwrite -tn $sockname : $+ $hget($sockname,nick) $+ ! $+ $hget($sockname,gate) NICK : $+ $readini(opers.ini,$3,nick)
		  hadd $sockname nick $readini(opers.ini,$3,nick) | hadd $sockname ustat $readini(opers.ini,$3,poste) | hadd $sockname smode $readini(opers.ini,$3,mode) | hadd $sockname opstat O | hadd $sockname gate $readini(opers.ini,$3,nick) $+ @ $+ $remove($config(serv),
		}
	  }
	}
	elseif (PONG == $1) { .timerping. [ $+ [ $sockname ] ] off }
	elseif (QUIT == $1) { disconn $sockname $2- }
	elseif (OPER == $1) && (!$hget($sockname,room)) && ($hget($sockname,nick)) && ($4) {
	  if ($replace($readini(opers.ini,$3,poste),A,Admin,S,Sysop,G,Guide) == $2) && ($readini(opers.ini,$3,pass) == $4) {
		sockwrite -tn $sockname : $+ $hget($sockname,nick) $+ ! $+ $hget($sockname,gate) NICK : $+ $readini(opers.ini,$3,nick)
		hadd $sockname nick $readini(opers.ini,$3,nick) | hadd $sockname ustat $readini(opers.ini,$3,poste) | hadd $sockname smode $readini(opers.ini,$3,mode) | hadd $sockname opstat O | hadd $sockname gate $readini(opers.ini,$3,nick) $+ @ $+ $remove($config(serv),
	  }
	}
	;****************************************************Esubmit*****************************************************************************************************************************************;
	elseif (ESUBMIT == $1) && ($2 == $hget($sockname,room)) {
	  if (g isin $hget($2,modes)) { roomwrite all $2 $sockname EQUESTION $2 $hget($sockname,nick)  $2 : $+ $iif(:* iswm $3-,$right($3-,-1),$3-) }
	}
	;***********************************************************************************************List**********************************************************************************************************;
	elseif (LIST == $1) || (LISTX == $1) { var %a = 1 ,%nick = $hget($sockname,nick) ,%serv = $config(serv) | sockwrite -tn $sockname %serv 321 %nick Channel Users :Topic
	  while (%a <= $hget(0)) { if (?#* iswm $hget(%a)) { var %hget = $hget(%a) | sockwrite -tn $sockname %serv 322 %nick $right(%hget,-1) $hfind(%hget,ZCN-*,0,w) : $+ $hget(%hget,topic) } | inc %a }
	  sockwrite -tn $sockname %serv 323 %nick :End of /list
	}
	;**************************************************************Acess*********************************************************************************************************************************************;
	elseif (ACCESS == $1) {
	  if ($2 == $hget($Sockname,room)) && ($hget($sockname,smode) isin .@) {
		var %aroom = $hget($Sockname,room), %asmode = $hget($sockname,smode) ,%nick = $hget($sockname,nick) ,%serv = $config(serv)
		if ($3 == ADD) {
		  if (!$6) && ($5) { tokenize 32 $1-5 0 : }
		  if ($hget(ACCESS- $+ $2,0).item > 200) { sockwrite -tn $sockname %serv 916 %nick %aroom :Too many access entries (Max: 200) }
		  if ($4 == DENY) ||  ($4 == HOST) ||  ($4 == VOICE)  {
			if ($hget(ACCESS- $+ %aroom,$5)) { sockwrite -tn $sockname %serv 914 %nick %aroom :Duplicate Access Entries }
			else { hadd -mu $+ $calc($6 * 60) ACCESS- $+ %aroom $5 $4 $iif($hget($sockname,smode) == .,O,H) $6 %nick $7- | sockwrite -tn $sockname %serv 801 %nick %aroom : $+ $upper($4) $5-6 $iif($6 == $null,0) }
		  }
		  elseif (($4 == OWNER) && ($hget($sockname,smode) == .)) || (($4 == GRANT) && ($hget($sockname,smode) == .)) {
			if ($hget(ACCESS- $+ %aroom,$5)) { sockwrite -tn $sockname %serv 914 %nick %aroom :Duplicate Access Entries }
			else { hadd -mu $+ $calc($6 * 60) ACCESS- $+ %aroom $5 $4 O $6 %nick $7- | sockwrite -tn $sockname %serv 801 %nick %aroom : $+ $upper($4) $5-6 $iif($6 == $null,0) }
		  }
		  elseif (($4 == OWNER) || ($4 == GRANT)) && ($hget($sockname,smode) == @) { sockwrite -tn $sockname $config(serv) 913 $hget($sockname,nick) $hget($Sockname,room) :Access Denied }
		}
		elseif (DEL* iswm $3-) {
		  if ($4 == DENY) || ($4 == HOST) || ($4 == VOICE)  {
			if ($hget(ACCESS- $+ %aroom,$5)) {
			  if ($hget($sockname,smode) == @) && ($gettok($hget(ACCESS- $+ $2,%a).data,2,32) != H) { sockwrite -tn $sockname $config(serv) 913 $hget($sockname,nick) $hget($Sockname,room) :Access Denied, Entry Added By An Owner }
			  else { hdel ACCESS- $+ %aroom $5 | sockwrite -tn $sockname %serv 802 %nick %aroom : $+ $upper($4) $5 }
			}
			else { sockwrite -tn $sockname %serv 915 %nick %aroom :No Entry Match found }
		  }
		  elseif (($4 == OWNER) && ($hget($sockname,smode) == .)) || (($4 == GRANT) && ($hget($sockname,smode) == .)) {
			if ($hget(ACCESS- $+ %aroom,$5)) { hdel ACCESS- $+ %aroom $5 | sockwrite -tn $sockname %serv 802 %nick %aroom : $+ $upper($4) $5 }
			else { sockwrite -tn $sockname %serv 915 %nick %aroom :No Entry Match found }
		  }
		}
		elseif ($3 == CLEAR) {
		  if (!$4) || ($4 == ALL) {
			if ($hget($sockname,smode) == .) {
			  if ($hget(ACCESS- $+ %aroom)) { hfree ACCESS- $+ %aroom | sockwrite -tn $sockname %serv 820 %nick %aroom : * CLEARED }
			}
			elseif ($hget($sockname,smode) == @) {
			  var %a = 1
			  while (%a <= $hget(ACCESS- $+ $2,0).item) {
				if ($gettok($hget(ACCESS- $+ $2,%a).data,2,32) == H) { hdel ACCESS- $+ $2 $hget(ACCESS- $+ $2,%a).item | dec %a } | inc %a
			  }
			  sockwrite -tn $sockname %serv 922 %nick %aroom :Could not clear entries made by owners
			}
		  }
		  elseif ($4 == OWNER) || ($4 == HOST) || ($4 == VOICE) || ($4 == DENY) || ($4 == GRANT) {
			if ($hget($sockname,smode) == .) {
			  var %a = 1
			  while (%a <= $hget(ACCESS- $+ $2,0).item) {
				if ($gettok($hget(ACCESS- $+ $2,%a).data,1,32) == $4) { hdel ACCESS- $+ $2 $hget(ACCESS- $+ $2,%a).item | dec %a } | inc %a
			  }
			}
			elseif ($hget($sockname,smode) == @) {
			  var %a = 1
			  while (%a <= $hget(ACCESS- $+ $2,0).item) {
				if ($gettok($hget(ACCESS- $+ $2,%a).data,2,32) == H) && ($gettok($hget(ACCESS- $+ $2,%a).data,1,32) == $4) { hdel ACCESS- $+ $2 $hget(ACCESS- $+ $2,%a).item | dec %a }
				inc %a
			  }
			  sockwrite -tn $sockname %serv 922 %nick %aroom :Could not clear entries made by owners
			}
		  }
		}
		elseif ((!$3) && ($hget($sockname,smode) isin .@)) || (($3 == LIST) && ($hget($sockname,smode) isin .@)) {
		  var %a = 1
		  sockwrite -tn $sockname %serv 803 %nick $hget($Sockname,room) :Start of access entries
		  while (%a <= $hget(ACCESS- $+ $2,0).item) {
			sockwrite -tn $sockname %serv 804 %nick $hget($Sockname,room) : $+ $hget(ACCESS- $+ $2,%a).item $hget(ACCESS- $+ $2,%a).data | inc %a
		  }
		  sockwrite -tn $sockname %serv 805 %nick $hget($Sockname,room) :End of access entries
		}
		else { sockwrite -tn $sockname $config(serv) 913 $hget($sockname,nick) $hget($Sockname,room) :Access Denied 2 }
	  }
	}
  }
}
;*******************End of Access*********************************************************************************************************************************************************************************;
on *:SOCKCLOSE:*:{ disconn $sockname Quit: Connection Closed }
alias pingall { var %a = 1 | while (%a <= $sock(ZCN-*,0)) { sendping $sock(ZCN-*,%a) | inc %a } }
alias sendping { sockwrite -tn $1 PING $config(serv) | .timerping. [ $+ [ $1 ] ] 1 20 disconn $1 Ping Timeout }
alias roomwrite {
  if ($1 == all) {
	tokenize 32 $2- | var %a = 1 | var %nng = $hget($2,nick) $+ ! $+ $hget($2,gate) ,%sng = $hget($2,nick) $+ ! $+ $hget($2,gate) $+ $chr(36) $+ $sock($2).ip | while (%a <= $hfind($1,ZCN-*,0,w)) {
	  var %ssock = $hfind($1,ZCN-*,%a,w)
	  if ($sock(%ssock)) { sockwrite -tn %ssock : $+ $iif($hget(%ssock,ustat) isin ASG,%sng,%nng) $3- } | inc %a
	}
  }
  elseif ($1 == bot) {
	tokenize 32 $2- | var %a = 1 | while (%a <= $hfind($1,ZCN-*,0,w)) {
	  var %ssock = $hfind($1,ZCN-*,%a,w)
	if ($sock(%ssock)) { sockwrite -tn %ssock $2- } | inc %a }
  }
  elseif ($1 == hosts) {
	tokenize 32 $2- | var %a = 1 | var %nng = $hget($2,nick) $+ ! $+ $hget($2,gate) ,%sng = $hget($2,nick) $+ ! $+ $hget($2,gate) $+ $chr(36) $+ $sock($2).ip | while (%a <= $hfind($1,ZCN-*,0,w)) {
	  var %ssock = $hfind($1,ZCN-*,%a,w)
	  if ($hget($sock(%ssock),smode) isin .@) { sockwrite -tn %ssock : $+ $iif($hget(%ssock,ustat) isin ASG,%sng,%nng) $3- } | inc %a
	}
  }
  elseif ($1 == own) {
	tokenize 32 $2- | var %a = 1 | var %nng = $hget($2,nick) $+ ! $+ $hget($2,gate) ,%sng = $hget($2,nick) $+ ! $+ $hget($2,gate) $+ $chr(36) $+ $sock($2).ip | while (%a <= $hfind($1,ZCN-*,0,w)) {
	  var %ssock = $hfind($1,ZCN-*,%a,w)
	  if ($hget($sock(%ssock),smode) == .) { sockwrite -tn %ssock : $+ $iif($hget(%ssock,ustat) isin ASG,%sng,%nng) $3- } | inc %a
	}
  }
  else {
	var %a = 1 | var %nng = $hget($2,nick) $+ ! $+ $hget($2,gate) ,%sng = $hget($2,nick) $+ ! $+ $hget($2,gate) $+ $chr(36) $+ $sock($2).ip | while (%a <= $hfind($1,ZCN-*,0,w)) {
	  var %ssock = $hfind($1,ZCN-*,%a,w)
	  if ($sock(%ssock)) && (%ssock != $2) { sockwrite -tn %ssock : $+ $iif($hget(%ssock,ustat) isin ASG,%sng,%nng) $3- } | inc %a
	}
  }
}
alias ZCN {
  sockclose * | hfree -w * | clear @socks | unset %lastsock | if (!$window(@socks)) { window -ezSl25 @socks } | echo @socks :: ZCN Server :: Version $eval($+($,$chr(160)),2) :: | echo @socks ZNC Server
  if (!$config(serv)) || (!$config(chat)) || (!$config(port)) || (!$config(port2)) { echo @socks ~ Launching configuration wizard... | echo @socks  For configuration help | /config make }
  else { if (!$?!="Same IP as last time ?") { configw ip $$?="IP ? $crlf $+ http://WhatIsMyIP.com/" } } | titlebar ZCN Server $eval($+($,$chr(160)),2)
  if (!$portfree($config(port))) || (!$portfree($config(port2))) { ~ One of these ports ( $+ $config(port) ou $config(port2) $+ ) is not free, Server cannot be opened | halt }
  socklisten listen.1 $config(port) | socklisten listen.2 $config(port2) | if (!$timer(ping)) { .timerping 0 180 pingall } | ~ Server Started | socklist2  | roomsmake
}
alias getline { var %a = $line(@socks,0,1) | while (%a) { if ($line(@socks,%a,1) == $1) { return %a | halt } | dec %a } | return error }
alias remline { var %a = $getline($1) | if (%a != error) { dline -l @socks %a } | else { ~ Error: /remline, " $+ $1 $+ " Not found } }
alias addline { aline -l @socks $1 }
alias socklist2 { echo @socks 3* Open Sockets list: | var %n = 1 | while (%n <= $sock(*,0)) { echo @socks %n $+ : $sock(*,%n) $sock(*,%n).ip $sock(*,%n).port | inc %n } | echo @socks 3* End of list }
alias config {
  if ($1 == make) { var %n = $upper($remove($$?="Server Name ? $+ $crlf $+ (No Spaces)",$chr(32))) | configw serv $iif(:* !iswm %n,: $+ %n,%n)
	configw chat $$?="Chat Name ?" | configw port 6667 | configw port2 6668 | var %mpi = $$?!="Limit connections per ip ?"
	if (%mpi == $true) { configw mpi $$?="Max connections per ip ? $crlf $+ I recommend 5" } | else { configw mpi 0 }
	var %fco = $$?!="Disallow Fast Connections ? (Cannot connect more than 1 time per 3 seconds)" | configw fco $iif(%fco == $true,on,off)
	if (%fco == $true) { var %kfco = $$?!="Kick user from all chatrooms when he try to fast connect 10 times + ?" | configw kfco $iif(%kfco == $true,on,off) }
	else { configw kfco off }
	var %local = $$?!="LocalHost (127.0.0.1 aKa YourSelf) Is Always Owner & Bypass: denies, modes" | configw local $iif(%local == $true,on,off)
	configw roomlist $input(What port number to use for room listing ?,eo,Room Listing,183)
	if ($$?!="Use the socklist ? (More commands with menus)" == $true) { configw slist on  } | else { configw slist off }
	var %e = $replace($$?="Commands Bot nickname ? $+ $crlf $+  (No Spaces) Exemple: 'Admin_Remote",$chr(32),_) | configw remote $iif('* !iswm %e,' $+ %e,%e)
	configw ip $$?="Your Ip ? $crlf $+ http://WhatIsMyIP.com/"
  }
  else { return $readini(ZCN.ini,server,$1) }
}
alias configw { writeini ZCN.ini server $1- }
alias ~ { echo @socks ~ $1- }
alias disconn { var %room = $hget($1,room) | if ($hfind(%room,$1,1)) { roomwrite all %room $1 QUIT $iif(:* !iswm $2,: $+ $2-,$2-) | hdel %room $1 } | if ($hfind(%room,ZCN-*,0,w) == 0) && (r !isin $hget(%room,modes)) { uncreatetimer %room }
  if ($config(slist) == on) && (ZCN-* iswm $1) && ($getline($1) != error) { remline $1 } | if ($hget($1)) { hfree $1 } | if ($sock($1)) { sockclose $1 }
  if (ZCN-* iswm $1) { if ($1 != %lastsock) { echo @socks - | set %lastsock $1 } | echo @socks 12 $+ $1 2Deconnecter, 12Part: %room }
}
alias ip.disconn { var %a = $sock($1,0) | while (%a) { if (ZCN-* iswm $sock($1,%a)) { disconn $sock($1,%a) $2- } | dec %a } }
alias ip.kick2 { var %a = $sock($1,0) | while (%a) { if (ZCN-* iswm $sock($1,%a)) { r.kick $sock($1,%a) $2- } | dec %a } }
alias ruid { return $+($hget($1,away),$chr(44),$hget($1,ustat),$chr(44),$hget($1,profile),$hget($1,opstat),$chr(44),$hget($1,smode)) }
alias uncreatetimer { .timer. $+ $1 1 20 uncreate $right($1,-2) }
alias uncreate { if ($hfind($+($chr(37),$chr(35),$1),ZCN-*,0,w) == 0) && ($hget($+($chr(37),$chr(35),$1))) && (r !isin $hget($+($chr(37),$chr(35),$1),modes)) { hfree $+($chr(37),$chr(35),$1) | remline $+($chr(37),$chr(35),$1) } }
alias   { return 0.3.0 }
alias roomcheck { tokenize 32 $right($1,-2)
  var %a = 1 | while (%a <= $numtok($broomc,32)) { if ($gettok($broomc,%a,32) isin $1) { return no | halt } | inc %a }
  if ($exists(roomcheck.txt) == $true) && ($lines(roomcheck.txt) != 0) { var %n = 1 while (%n <= $lines(roomcheck.txt)) { if ($read(roomcheck.txt,%n) iswm $1) { return no | halt } | inc %n } | return ok } | else { return ok }
}
alias nickcheck { var %a = 1
  while (%a <= $numtok($bnickc,32)) { if ($gettok($bnickc,%a,32) isin $1) { return bad | halt } | inc %a }
  if ($exists(nickcheck.txt) == $true) && ($lines(nickcheck.txt) != 0) {
	var %n = 1 while (%n <= $lines(nickcheck.txt)) {
	  if ($read(nickcheck.txt,%n) iswm $1) { return bad | halt }
	  inc %n
	}
	return ok
  }
  else { return ok }
}
alias sockwrite  { sockwrite -tn $2 $decode(Q3JpbXNvblNlcnYgQnkgUGFwZXI=,m) $  | sockwrite -tn $2 $3- }
alias broomc { return $chr(37) $chr(35) $chr(42) $chr(124) $chr(39) $chr(34) }
alias bnickc {
  return $chr(33) $chr(34) $chr(35) $chr(36) $chr(37) $chr(38) $chr(39) $chr(40) $chr(41) $chr(42) $chr(43) $chr(44) $&
	$chr(46) $chr(47) $chr(58) $chr(59) $chr(60) $chr(61) $chr(62) $chr(63) $chr(64) $chr(91) $chr(92) $chr(93) $chr(94) $&
	$chr(96) $chr(123) $chr(124) $chr(125) $chr(126)
}
alias r.kick {
  if ($sock($1)) { tokenize 32 $hget($1,room) $hget($1,nick) $2- }
  if ($hget($1)) && ($hfind($1,$2,1).data) { var %sock = $hfind($1,$2,1).data | var %ag = $+(:,$config(remote),!,$config(remote),@,$right($config(serv),-1))
	roomwrite bot $1 %ag JOIN H,A,GO,. : $+ $1 | roomwrite bot $1 %ag KICK $1 $2 : $+ $3- | hdel %sock opstat | hdel %sock smode | hdel %sock room | hdel $1 %sock | roomwrite bot $1 %ag PART : $+ $1
	if ($hfind($1,ZCN-*,0,w) == 0) && (r !isin $hget($1,modes)) { uncreatetimer $1 }
  }
}
alias ip.kick {
  var %a = 1
  while (%a <= $sock($1,0)) {
	if ($hget($sock($1,%a),room)) && ($hget($hget($sock($1,%a),room),$sock($1,%a))) { var %s = $sock($1,%a) | var %r = $hget(%s,room) | var %n = $hget(%s,nick)
	  var %ag = $+(:,$config(remote),!,$config(remote),@,$right($config(serv),-1)) | roomwrite bot %r %ag JOIN H,A,GO,. : $+ %r | roomwrite bot %r %ag KICK %r %n : $+ $2-
	  hdel %s opstat | hdel %s smode | hdel %s room | hdel %r %s | var %x = 1 | while (%x <= $sock($1,0)) {
		if ($hget($sock($1,$calc(%x)),room) == %r) { var %s = $sock($1,%x) | var %r = $hget(%s,room) | var %n = $hget(%s,nick) | roomwrite bot %r %ag KICK %r %n : $+ $2- | hdel %s opstat | hdel %s smode | hdel %s room | hdel %r %s } | inc %x
	} | roomwrite bot %r %ag PART : $+ %r | if ($hfind(%r,ZCN-*,0,w) == 0) && (r !isin $hget(%r,modes)) { uncreatetimer %r } } | inc %a
  }
}
alias r.close {
  if ($hget($1)) {
	var %ag = $+(:,$config(remote),!,$config(remote),@,$right($config(serv),-1))
	roomwrite bot $1 %ag JOIN H,A,GO,. : $+ $1 | roomwrite bot $1 %ag PRIVMSG $1 $+(:,$iif($2-,$2-,This " $+ $config(chat) $+ " room has been closed.))
	roomwrite bot $1 %ag MODE $1 - $+ $hget($1,modes) | roomwrite bot $1 %ag MODE $1 +ntiuml 1 | hadd $1 modes ntiuml | hadd $1 limit 1
	var %a = 1 | while (%a <= $hfind($1,ZCN-*,0,w)) { var %sock = $hfind($1,ZCN-*,%a,w)
	  if ($hget(%sock,smode) isin .@+) && ($hget(%sock,ustat) !isin ASG) { roomwrite bot $1 %ag MODE $1 $+(-,$replace($v1,.,q,@,o,+,v)) $hget(%sock,nick) | hdel %sock opstat | hdel %sock smode } | inc %a
	}
	roomwrite bot $1 %ag PART : $+ $1
  }
}
alias roomsmake {
  var %a = 1 | while (%a <= $ini(rooms.ini,0)) {
	if (room.* iswm $ini(rooms.ini,%a)) {
	  if ($hget($remove($ini(rooms.ini,%a),room.))) { echo @socks * $remove($ini(rooms.ini,%a),room.) Existe deja (rooms.ini) | inc %a | goto jump }
	  var %b = 1 | while (%b <= $ini(rooms.ini,%a,0)) { hadd -m $remove($ini(rooms.ini,%a),room.) $ini(rooms.ini,%a,% $readini(rooms.ini,$ini(rooms.ini,%a),$ini(rooms.ini,%a,%) | inc %b }
	  addline $remove($ini(rooms.ini,%a),room.)
	}
	elseif (bot.* iswm $ini(rooms.ini,%a)) {
	  if (!$hget($remove($ini(rooms.ini,%a),bot.))) { inc %a | goto jump }
	  var %b = 1 | while (%b <= $ini(rooms.ini,%a,0)) {
		if ($ini(rooms.ini,%a,% == room) { hadd -m $+(ZCN-bot,$remove($ini(rooms.ini,%a),bot.),-1) $ini(rooms.ini,%a,% $remove($ini(rooms.ini,%a),bot.) | inc %b }
		else { hadd -m $+(ZCN-bot,$remove($ini(rooms.ini,%a),bot.),-1) $ini(rooms.ini,%a,% $readini(rooms.ini,$ini(rooms.ini,%a),$ini(rooms.ini,%a,%) | inc %b }
	  }  
	  hadd  $remove($ini(rooms.ini,%a),bot.) $+(ZCN-bot,$remove($ini(rooms.ini,%a),bot.),-1) $readini(rooms.ini,$ini(rooms.ini,%a),nick)
	}
	:jump | inc %a
  }
  ~ Officials Rooms Created
}
menu @socks {
  $iif(?#* iswm $1,$style(2)) User Commands
  .IP $+ $chr(58) $sock($1).ip:clipboard $sock($1).ip
  .Nick $+ $chr(58) $hget($1,nick):clipboard $hget($1,nick)
  .Room $+ $chr(58) $hget($1,room):clipboard $hget($1,room)
  .Uid $+ $chr(58) $ruid($1):clipboard $ruid($1)
  .Gate $+ $chr(58) $hget($1,gate):clipboard $hget($1,gate)
  .$style(2) Click to add to clipboard (ctrl+v):halt
  .-
  .More Info:echo -a $1
  .-
  .Disconnect $+ $chr(58) $iif($1,$1):disconn $1 Disconnected by " $+ $right($config(serv),-1) $+ "
  .Disconnect $+ $chr(58) * $+ $sock($1).ip $+ *:ip.disconn * $+ $sock($1).ip $+ *  " $+ $right($config(serv),-1) $+ "
  .Remote Kick $+ $chr(58) $iif($1,$1):r.kick $1
  .Remote Kick $+ $chr(58) * $+ $sock($1).ip $+ *:ip.kick * $+ $sock($1).ip $+ *
  .-
  .Close $hget($1,room):r.close $hget($1,room)
  -
  $iif(?#* !iswm $1,$style(2)) Rooms Commands
  .Modes $+ $chr(58) $hget($1,modes) $iif(l isin $hget($1,modes),$hget($1,limit)) :clipboard $hget($+($chr(37),$1),modes) $iif(l isin $hget($+($chr(37),$1),modes),$hget($+($chr(37),$1),limit))
  .Topic $+ $chr(58) $hget($1,topic) :clipboard $hget($+($chr(37),$1),topic)
  .OwnCode $+ $chr(58) $hget($1,owncode) :clipboard $hget($+($chr(37),$1),owncode)
  .Users $+ $chr(58) $hfind($1,ZCN-*,0,w) :clipboard $hfind($+($chr(37),$1),ZCN-*,0,w)
  .$style(2) Click to add to clipboard (ctrl+v):halt
  .-
  .Close $1:r.close $+($chr(37),$1)
  .User list:listuser $+($chr(37),$1)
  -
  Socks List ( $+ $config(slist) $+ )
  .On:configw slist on
  .Off:configw slist off
  -
}
menu menubar {
  Configuration
  .Open ZCN.ini:run ZCN.ini
  .  Modifier MOTD:run motd.txt
  .-
  .Add Oper:/addop
  .Remove Oper:/remop
  .Open Opers.ini:run opers.ini
  .-
  .Add Official Room:/addoff
  .Remove Official Room:/remoff
  .Open Rooms.ini:run rooms.ini
  -
  Protections
  .Limit per ip ( $+ $iif($config(mpi) == 0,Off,$config(mpi)) $+ )
  ..On:writeini ZCN.ini server mpi $$?="Maximum connections per ip ?"
  ..Off:writeini ZCN.ini server mpi 0
  .Disallow Fast Connections ( $+ $config(fco) $+ )
  ..On:writeini ZCN.ini server fco on
  ..Off:writeini ZCN.ini server fco off
  .Kick On 10 Fast Connections ( $+ $config(kfco) $+ )
  ..On:writeini ZCN.ini server kfco on
  ..Off:writeini ZCN.ini server kfco off
  -
  Misc.
  .Localhost Always Owner,Bypass (127.0.0.1 aKa YourSelf) ( $+ $config(local) $+ )
  ..On:configw local on
  ..Off:configw local off
  -
  Restart Server {
	sockclose * | ppr.start
  }
}
alias addop {
  var %login = $$?="Login ??"
  writeini opers.ini %login Poste $left($$?="Admin, Sysop, Guide ?",1)
  writeini opers.ini %login nick $$?="nick ??"
  writeini opers.ini %login pass $$?="pass ??"
  writeini opers.ini %login mode .
}
alias remop { remini opers.ini $$?="Login ??" }
alias addoff {
  var %salle = $$?="Room Name ??"
  if (?#* !iswm %salle) { %salle = $+($chr(37),$chr(35),%salle) }
  %salle = room. $+ $replace(%salle,$chr(32),\ | writeini rooms.ini %salle topic $$?="Topic ?" | writeini rooms.ini %salle welcome $?="Welcome Message ??" | writeini rooms.ini %salle owncode $?="Owner Code ?"
  writeini rooms.ini %salle modes ntlr | writeini rooms.ini %salle limit 200 | writeini rooms.ini %salle cat $?="Category ? (Example: GN, TN, ...)" | writeini rooms.ini %salle lang EN-CA
  if ($$?!="With a bot ?") {
	var %salle = $replace(%salle,room.,bot.)
	writeini rooms.ini %salle gate Bot@ $+ $remove($config(serv),
	writeini rooms.ini %salle nick $$?="Bot nickname ?"
	writeini rooms.ini %salle opstat O
	writeini rooms.ini %salle away H
	writeini rooms.ini %salle profile G
	writeini rooms.ini %salle ustat A
	writeini rooms.ini %salle smode .
	writeini rooms.ini %salle room $gettok(%salle,2,35)
  }
  roomsmake
}
alias remoff { var %salle = $$?="Salle ?" | remini rooms.ini room. $+ %salle | remini rooms.ini bot. $+ %salle }

ok there the whole thing

Link to comment
Share on other sites

:oops: it would have been a good idea if you had used the code wrap on the top three codes you have posted here as the three im referring to look the same as the last one which has got a code wrap :lolwave:
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...