Tak til Drayzer som så venligt prøvede at rippe min 'rank' og sige det var hans (
http://www.testmax.dk/For.....list-Hjaelp-plz.aspx )
Note: Der vil komme løbende opdateringer af dette script.
Så er tiden kommet til at lave et point system osv :)
(HUSK at ændre #DIN-KANAL til din channel)
Commands:
Til scripts:
$auth(<nick>)
points <nick> give <antal>
points <nick> take <antal>
- For ops:
!giv-points <antal> <nick>
!del-points <antal> <nick>
!flyby (slår enten flyby fra eller til)
!caps <hvor mange procent CAPS der er max, uden % tegnet>
!caps on/off
!badchannel add #channel <grund>
!badchannel del #channel
!badchannel grund #channel
!badchannel list
!adv (slår enten anti-advertise til eller fra)
For alle:
!auth (hvis den ikke kan finde dit auth)
!reg
!cashup (hvis du er under 20, reset til 50)
!dice 20-100
!djoin (dice join)
!rank
!top5
Ved godt det er lidt rodet, fordi nogle er kommandoerne hører til andre spil også, og så længe det virker, er det vel godt nok :)
Du kan sætte %logo som dit logo, det er medregnet i scriptet (f.eks: /set %logo [DZ]) og det ville stå som: [DZ] tekst her [DZ].
Håber det kan bruges :)
PS: Dette script fungerer ikke godt med andre, så hvis det ikke virker optimalt, så brug kun dette :)
alias homechan { return #DIN-KANAL }
alias game {
if ($prop == read) { return $readini($+($1,.ini),$2,$3) }
if ($1 == write) { writeini $+($2,.ini) $3- }
if ($1 == dice) && ($2 == start) {
var %sp = $readini(dice.ini,dice,spillere), %p = $gettok(%sp,$r(1,$numtok(%sp,32)),32), %pot = $readini(dice.ini,dice,pot)
if ($numtok(%sp,32) == 1) { points %p give %pot | msg $homechan %logo Ikke nok deltagere! %logo | remini dice.ini dice | halt }
points %p give %pot | msg $homechan %logo Vinderen af de %pot points er %p - tillykke! %logo | write -c dice.ini }
}
alias auth { return $readini(auths.ini,nicks,$address($1,3)) }
raw 354:*:{
writeini auths.ini nicks $address($2,3) $3
if (%mm) {
if ($3) { msg $homechan %logo $2 er nu authed som $3 %logo }
if (!$3) { msg $homechan %logo Kunne ikke finde $2 $+ 's auth %logo }
unset %mm
}
}
raw 319:*:{ var %i = 1 | while (%i <= $numtok($3-,32)) { if ($bcheck($remove($gettok($3-,%i,32),@,+))) { ban -k %bchan $2 3 $v1 } | inc %i } | unset %bchan }
on *:part:$($homechan):{ if (%flyby. [ $+ [ $address($nick,3) ] ]) { ban -u120 $chan $nick 3 | notice $nick %logo Flyby er ikke tilladt %logo } | remini auths.ini nicks $address($nick,3) }
on *:quit:{ remini auths.ini nicks $address($nick,3) }
on *:join:$($homechan):{
if (!%bc.s) { set %bchan $chan | whois $nick | set -u10 %bc.s 1 }
if ($game(main,settings,flyby).read == on) { set -u10 %flyby. [ $+ [ $address($nick,3) ] ] $nick } | who $nick n%na
}
alias points {
var %x = $auth($1)
if (!$2) { return $iif($readini(points.ini,points,%x) >= 1,$v1,0) }
if ($2) { writeini points.ini points %x $calc($readini(points.ini,points,%x) $iif($2 == give,+,-) $3) }
}
alias spam.set {
if (%spam. [ $+ [ $1 ] ]) { halt }
if (!%spam. [ $+ [ $1 ] ]) { set -u10 %spam. [ $+ [ $1 ] ] 1 }
}
on *:text:*:$($homechan):{
if ($1 == !auth) {
if (!$auth($nick)) { set -u5 %mm 1 | who $nick n%na }
if ($auth($nick)) { msg $chan %logo $nick er allerede authed som $v1 %logo }
}
if ($nick !isop $chan) && ($nick !isvoice $chan) {
if ($capscheck($1-) > $game(main,settings,caps%).read) && ($len($1-) > 20) { ban -u60 $chan $nick 3 | kick $chan $nick %logo Caps tilladt: $+($game(main,settings,caps%).read,%) - Du brugte: $+($capscheck($1-),%) %logo }
if ($advcheck($1-)) && ($game(main,settings,adv).read == on) {
inc %adv. [ $+ [ $iif($auth($nick),$v1,$address($nick,3)) ] ]
var %x = %adv. [ $+ [ $iif($auth($nick),$v1,$address($nick,3)) ] ]
if (%x == 1) { notice $nick %logo Reklame er ikke tilladt ( $+ $advcheck($1-) $+ ) (Advarsel: $+(%x,/4) $+ ) %logo }
if (%x == 2) { kick $chan $nick %logo Reklame er ikke tilladt ( $+ $advcheck($1-) $+ ) (Advarsel: $+(%x,/4) $+ ) %logo }
if (%x == 3) { ban -u600 $chan $nick 3 | kick $chan $nick %logo Reklame er ikke tilladt ( $+ $advcheck($1-) $+ ) (Advarsel: $+(%x,/4) $+ ) %logo }
if (%x == 4) { ban $chan $nick 3 | kick $chan $nick %logo Reklame er ikke tilladt ( $+ $advcheck($1-) $+ ) (Advarsel: $+(%x,/4) $+ ) %logo | unset %adv. [ $+ [ $iif($auth($nick),$v1,$address($nick,3)) ] ] }
}
}
if ($left($1,1) == !) {
spam.set $1
if (!$auth($nick)) { halt }
}
if ($nick isop $chan) {
if ($1 == !giv-points) && ($3 ison $chan) { points $3 give $2 | msg $chan %logo $nick har givet $3 $2 points %logo }
if ($1 == !del-points) && ($3 ison $chan) { points $3 take $2 | msg $chan %logo $nick har taget $2 points fra $3 %logo }
if ($1 == !reset-points) && ($3 ison $chan) { writeini points.ini points $auth($3) $2 | msg $chan %logo $3 har nu $2 points %logo }
if ($1 == !flyby) { writeini main.ini settings flyby $iif($game(main,settings,flyby).read == on,off,on) | msg $chan %logo Anti-flyby er nu $game(main,settings,flyby).read %logo }
if ($1 == !caps) {
if (!$2) { msg $chan %logo !caps on/off/% }
if ($2 isnum) { writeini main.ini settings caps% $remove($2,%) | msg $chan %logo $+($remove($2,%),%) caps er nu tilladt %logo }
if ($2 == on) || ($2 == off) { writeini main.ini settings caps $ifmatch | msg $chan %logo Anti-caps er nu $ifmatch %logo }
}
if ($1 == !badchannel) {
if ($2 == add) && ($left($3,1) == $chr(35)) { writeini main.ini badchannels $3- $iif(!$4,Bad channel kicker) | msg $chan %logo Tilføjede $3 med success %logo }
if ($2 == del) && ($bcheck($3)) { remini main.ini badchannels $3 | msg $chan %logo Slettede $3 med success %logo }
if ($2 == grund) && ($bcheck($3)) { msg $chan %logo $3 grund: $bcheck($3) %logo }
if ($2 == list) { var %i = 1 | while (%i <= $ini(main.ini,badchannels,0)) { var %x = $addtok(%x,$ini(main.ini,badchannels,%i),44) | inc %i } | notice $nick %logo $replace(%x,$chr(44),$+($chr(44),$chr(32))) %logo }
}
if ($1 == !adv) { writeini main.ini settings adv $iif($game(main,settings,adv).read == on,off,on) | msg $chan %logo Anti-advertise er nu $game(main,settings,adv).read %logo }
}
if ($1 == !reg) { var %x = $iif($2 ison $chan,$2,$nick) | msg $chan %logo %x er $auth(%x) og har $points(%x) points %logo }
if ($1 == !cashup) {
if ($timer(0)) { msg $chan %logo Du kan ikke bruge cashup når et spil er igang! %logo | halt }
if ($points($nick) > 20) { msg $chan %logo $nick $+ , du har points nok, stop med at nasse %logo }
if ($points($nick) < 21) { writeini points.ini points $auth($nick) 50 | msg $chan %logo $nick har nu 50 points %logo }
}
if ($1 == !top5) { top5 $chan }
if ($1 == !rank) {
var %n = $iif($2 ison $chan,$2,$nick)
set %rank.a 1
set %rank.b $ini(points.ini,points,0)
set %rank.c $ini(points.ini,points,$auth(%n))
set %rank.d $readini(points.ini,points,$auth(%n))
set %rank.e %rank.B
while (%rank.a <= %rank.b) {
if ($ini(points.ini,points,%rank.a) == %rank.c) {
inc %rank.a
}
if ($readini(points.ini,points,$ini(points.ini,points,%rank.a)) < %rank.d) {
dec %rank.e
}
inc %rank.a
}
msg $chan %logo %n er nummer %rank.e ud af $ini(points.ini,points,0) med %rank.d points. %logo
unset %rank.*
}
if ($1 == !dice) {
if ($2 isnum 20-100) && (!$game(dice,dice,spillere).read) {
if ($points($nick) < $2) { msg $chan %logo Du har ikke nok points ( $+ $points($nick) $+ ) %logo | halt }
game write dice dice pot $2 | game write dice dice points $2 | points $nick take $2 | game write dice dice spillere $nick | msg $chan %logo Dice er startet på $2 af $nick - skriv !djoin for at joine. %logo | msg $chan %logo I har 1 minut til at joine! %logo | .timer 1 60 game dice start }
}
if ($1 == !djoin) && ($game(dice,dice,spillere).read) {
if ($nick isin $game(dice,dice,spillere).read) { msg $chan %logo Du er allerede med i spillet! %logo | halt }
if ($points($nick) < $game(dice,dice,points).read) || (!$points($nick)) { msg $chan %logo Du har ikke nok points ( $+ $points($nick) $+ ) %logo | halt }
game write dice dice pot $calc($game(dice,dice,pot).read + $game(dice,dice,points).read) | game write dice dice spillere $game(dice,dice,spillere).read $nick | points $nick take $game(dice,dice,points).read | msg $chan %logo $nick har joinet dice'en (Pulje: $game(dice,dice,pot).read $+ ) %logo
}
}
alias top5 {
set %rank.1 1,0 | set %rank.2 2,0 | set %rank.3 3,0 | set %rank.4 4,0 | set %rank.5 5,0
var %i = 1
while (%i <= $ini(points.ini,points,0)) {
top5_sort $readini(points.ini,points,$ini(points.ini,points,%i)) $ini(points.ini,points,%i)
inc %i
}
.timer 1 1 msg $1 %logo Rank 1: $iif($gettok(%rank.1,1,44) !isnum,$v1,Ingen) med $gettok(%rank.1,2,44) points. %logo
.timer 1 2 msg $1 %logo Rank 2: $iif($gettok(%rank.2,1,44) !isnum,$v1,Ingen) med $gettok(%rank.2,2,44) points. %logo
.timer 1 3 msg $1 %logo Rank 3: $iif($gettok(%rank.3,1,44) !isnum,$v1,Ingen) med $gettok(%rank.3,2,44) points. %logo
.timer 1 4 msg $1 %logo Rank 4: $iif($gettok(%rank.4,1,44) !isnum,$v1,Ingen) med $gettok(%rank.4,2,44) points. %logo
.timer 1 5 msg $1 %logo Rank 5: $iif($gettok(%rank.5,1,44) !isnum,$v1,Ingen) med $gettok(%rank.5,2,44) points. %logo
}
alias top5_sort {
if ($1 > $gettok(%rank.1,2,44)) { set %rank.5 %rank.4 | set %rank.4 %rank.3 | set %rank.3 %rank.2 | set %rank.2 %rank.1 | set %rank.1 $2 $+ $chr(44) $+ $1 }
elseif ($1 > $gettok(%rank.2,2,44)) { set %rank.5 %rank.4 | set %rank.4 %rank.3 | set %rank.3 %rank.2 | set %rank.2 $2 $+ $chr(44) $+ $1 }
elseif ($1 > $gettok(%rank.3,2,44)) { set %rank.5 %rank.4 | set %rank.4 %rank.3 | set %rank.3 $2 $+ $chr(44) $+ $1 }
elseif ($1 > $gettok(%rank.4,2,44)) { set %rank.5 %rank.4 | set %rank.4 $2 $+ $chr(44) $+ $1 }
elseif ($1 > $gettok(%rank.5,2,44)) { set %rank.5 $2 $+ $chr(44) $+ $1 }
}
alias maxcaps { return $game(main,settings,caps).read }
alias capscheck { var %i = 1 | while (%i <= $len($1-)) { var %c.l = $mid($1-,%i,1) | if (%c.l isalpha) { if (%c.l isupper) { var %c.u = $calc(%c.u + 1) } | var %c.t = $calc(%c.t + 1) } | inc %i } | return $round($calc(%c.u / %c.t * 100),0) }
alias bcheck { return $game(main,badchannels,$1).read }
alias advcheck {
var %i = 1
while (%i <= $numtok($1-,32)) { var %o = $gettok($1-,%i,32)
if ($left(%o,4) == www.) && ($count(%o,.) >= 2) { var %x = $addtok(%x,%o,32) }
if ($left(%o,7) == http://) && ($count(%o,.) >= 1) { var %x = $addtok(%x,%o,32) }
if ($left(%o,1) == $chr(35)) && ($len(%o) > 1) { var %x = $addtok(%x,%o,32) }
inc %i
}
return %x
}