on *:load:{ echo -a ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~> echo -a Anti Idle Script echo -a In einem Chan müssen eine bestimmte Zahl echo -a an Wörtern geschrieben werden. echo -a Dann bekommt man Voice und kann in den echo -a anderen Chan joinen. echo -a Die beiden Chans und die Anzahl der echo -a Wörter muss eingestellt werden. echo -a (Rechtsklick im Chan ist ein Menu) echo -a Viel Spass beim Zwangschatten *g* echo -a ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~> } menu channel { Idleconfig .Channel:/set %logchan $?="Bitte gib den Channel ein bei dem der Idle überprüft werden soll" .aktiven Channel loggen:/set %logchan $active .Kickchannel:/set %kickchan $?="Bitte gib den Channel ein in dem gekickt werden soll" .aktiven Channel kicken:/set %kickchan $active .anzahl Wörter:/set %min.anz.worte $?="Bitte gib die Anzahl der Wörter ein, ab der der Einlass gewährt wird" .alte Nicks löschen:/nicks.loeschen } alias chan.count { return %logchan } alias datum { return $asctime(yyyymmdd) } alias datei.name { return nicks.idl } $asctime(yyyymmddhhnnss) alias gzeile { ; $1 nick ; $2 datei ; $3 zeile ; return zeile ; -> datum %anzahl1 %anzahl2 %anzahl3 %anzahl4 %anzahl5 %anzahl6 %anzahl7 var %zeile_in = var %zeile_out = var %anzahl1 = var %anzahl2 = var %datum1 = %zeile_in = $readini($2, $chan.count, $1) if $len(%zeile_in) == 0 { %zeile_out = $datum $anzahl_worte($3) 0 0 0 0 0 0 } else { %zeile_out = $datum %datum1 = $gettok(%zeile_in, 1, 32) %anzahl1 = $gettok(%zeile_in, 2, 32) %anzahl2 = $anzahl_worte($3) if ($calc($datum - %datum1) == 0) { inc %anzahl1 %anzahl2 %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 3, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 4, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 5, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 6, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 7, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 8, 32) %zeile_out = %zeile_out %anzahl1 } if ($calc($datum - %datum1) == 1) { %zeile_out = %zeile_out %anzahl2 %anzahl1 %anzahl1 = $gettok(%zeile_in, 3, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 4, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 5, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 6, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 7, 32) %zeile_out = %zeile_out %anzahl1 } if ($calc($datum - %datum1) == 2) { %zeile_out = %zeile_out %anzahl2 0 %anzahl1 %anzahl1 = $gettok(%zeile_in, 3, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 4, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 5, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 6, 32) %zeile_out = %zeile_out %anzahl1 } if ($calc($datum - %datum1) == 3) { %zeile_out = %zeile_out %anzahl2 0 0 %anzahl1 %anzahl1 = $gettok(%zeile_in, 3, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 4, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 5, 32) %zeile_out = %zeile_out %anzahl1 } if ($calc($datum - %datum1) == 4) { %zeile_out = %zeile_out %anzahl2 0 0 0 %anzahl1 %anzahl1 = $gettok(%zeile_in, 3, 32) %zeile_out = %zeile_out %anzahl1 %anzahl1 = $gettok(%zeile_in, 4, 32) %zeile_out = %zeile_out %anzahl1 } if ($calc($datum - %datum1) == 5) { %zeile_out = %zeile_out %anzahl2 0 0 0 0 %anzahl1 %anzahl1 = $gettok(%zeile_in, 4, 32) %zeile_out = %zeile_out %anzahl1 } if ($calc($datum - %datum1) == 6) { %zeile_out = %zeile_out %anzahl2 0 0 0 0 0 %anzahl1 } if ($calc($datum - %datum1) > 6) { %zeile_out = %zeile_out %anzahl2 0 0 0 0 0 0 } } return %zeile_out } alias anzahl_worte { ; $1 zeile ; return anzahl der worte in der zeile größer 3 var %temp = 1 var %i = 1 var %j = 1 while (%i <= $len($1)) { if ($mid($1, %i, 1) == $chr(32)) { if (%i > $calc(%j + 3)) { inc %temp } %j = %i } inc %i } return %temp } alias worte_zahl { ; $1 nick ; $2 datei ; return anzahl var %anzahl var %datum1 var %zeile_in %zeile_in = $readini($2, $chan.count, $1) if ($len(%zeile_in) == 0) { %anzahl = 0 } else { %datum1 = $gettok(%zeile_in, 1, 32) if ($calc($datum - %datum1) == 0) { %anzahl = $calc($gettok(%zeile_in, 2, 32) + $gettok(%zeile_in, 3, 32)) inc %anzahl $gettok(%zeile_in, 4, 32) inc %anzahl $gettok(%zeile_in, 5, 32) inc %anzahl $gettok(%zeile_in, 6, 32) inc %anzahl $gettok(%zeile_in, 7, 32) inc %anzahl $gettok(%zeile_in, 8, 32) } if ($calc($datum - %datum1) == 1) { %anzahl = $calc($gettok(%zeile_in, 2, 32) + $gettok(%zeile_in, 3, 32)) inc %anzahl $gettok(%zeile_in, 4, 32) inc %anzahl $gettok(%zeile_in, 5, 32) inc %anzahl $gettok(%zeile_in, 6, 32) inc %anzahl $gettok(%zeile_in, 7, 32) } if ($calc($datum - %datum1) == 2) { %anzahl = $calc($gettok(%zeile_in, 2, 32) + $gettok(%zeile_in, 3, 32)) inc %anzahl $gettok(%zeile_in, 4, 32) inc %anzahl $gettok(%zeile_in, 5, 32) inc %anzahl $gettok(%zeile_in, 6, 32) } if ($calc($datum - %datum1) == 3) { %anzahl = $calc($gettok(%zeile_in, 2, 32) + $gettok(%zeile_in, 3, 32)) inc %anzahl $gettok(%zeile_in, 4, 32) inc %anzahl $gettok(%zeile_in, 5, 32) } if ($calc($datum - %datum1) == 4) { %anzahl = $calc($gettok(%zeile_in, 2, 32) + $gettok(%zeile_in, 3, 32)) inc %anzahl $gettok(%zeile_in, 4, 32) } if ($calc($datum - %datum1) == 5) { %anzahl = $calc($gettok(%zeile_in, 2, 32) + $gettok(%zeile_in, 3, 32)) } if ($calc($datum - %datum1) == 6) { %anzahl = $gettok(%zeile_in, 2, 32) } } return %anzahl } alias nicks.loeschen { var %zeile_in var %zeile_nr var %datum1 var %sektion %zeile_nr = 1 while (%zeile_nr <= $lines($datei.name)) { %zeile_in = $read($datei.name, %zeile_nr) if ($left(%zeile_in, 1) == [) { %sektion = $mid(%zeile_in, 2, $calc($len(%zeile_in) - 2)) } else { %datum1 = $right($gettok(%zeile_in, 1, 32), 8) if ($calc($datum - %datum1) > 6) { remini $datei.name %sektion $gettok(%zeile_in, 1, 61) } } inc %zeile_nr } } on *:text:*:%logchan: { writeini $datei.name $chan.count $nick $gzeile($nick, $datei.name, $1-) if (($nick !isvoice %logchan) && ($worte_zahl($nick, $datei.name) >= %min.anz.worte)) { mode %logchan +v $nick invite $nick %kickchan } } on *:join:%kickchan: { if ($worte_zahl($nick, $datei.name) < %min.anz.worte) { ban -k %kickchan $nick 300 Schreibe mehr Wörter im chan %logchan , dann darfst du wieder rein! } }