In questa sessione puoi assegnare dei livelli a determinati utenti.
Puoi assegnare determinati livelli agli amici e altri livelli ai "nemici".
In pratica, quando qualcuno entrerà su un canale nel quale sei
op, se sarà riconosciuto come amico, sarà, per esempio,
oppato automaticamente dallo script o, se sarà riconosciuto come
nemico, sarà bannato al volo.
I livelli vengono classificati con numeri.
Ecco un esempio di User List valida:
50:*!*corral@*.nasa.gov
60:*!*peppoz@*.helios.nd.edu
80:*!*^mccoy@*.smc.it
90:*!*RoSe@*.wlfdle1.on.wave.home.com
100:*!*peppoz@darwin.helios.nd.edu
Utilizzare 3 al posto di 50 non comporta nessun cambiamento
sul funzionamento dello script.
mIRC assegna valore 1 a tutti gli utenti che non hanno assegnato un valore
nella User List.
Se assegni un livello ad un tipo di utenti, ci saranno comandi
associati a quel particolare livello, non credete?
Così funzionano le liste di utenti.
Una serie di comandi differenziati per i vari livelli.
Possiamo, per esempio, dire allo script che se joinerà un utente
di livello 90, lo script dovrà opparlo al volo (quindi il livello
90 sarà la Auto Op List), se joinerà un utente di livello
50 sarà bannato senza bisogno che si debba intervenire (quindi
il livello 50 sarà la Shitlist, ossia la lista delle merde che
ci stanno sulle palline :o))))
Nell'esempio precedente, ho assegnato livello 100 a me stesso.
A che serve assegnarsi un livello?
Immaginiamo che quel cattivone di Turk187 voglia bannarmi da #kaos.
Il mio script rileva il ban, lo confronta con la ures list e vede che
l'host del ban corrisponde al mio.
Che fa in questo caso?
Posso impostare un comando che deoppi Turk187, tolga il ban, insulti pubblicamente
il Turko e lo kicki con una frase tipo "Sei un buco senza fondo".
Sarebbe carino, no? eheheheheh
I comandi relativi alle liste utenti sono di questo tipo:
on 80:JOIN:#:{ if ($me isop #) { mode # +o $nick | halt
}
Immaginiamo che nella user List ci sia
80:Gaietta!*@*
Siamo sul canale #kaos e ci arriva il messaggio
[18:10] *** Gaietta (~Gaietta@renoir.ciens.ucv.ve) has
joined #kaos
Il nostro script controlla se Gaietta!Gaietta@renoir.ciens.ucv.ve
è presente nella User List.
Trova un Gaietta!*@*
L'utente che ha joinato è classificato come un utente di livello
80.
Che succede a questo punto?
Lo script si passa al setaccio i comandi nei remote e trova la benedetta
riga
on 80:JOIN:#:{
if ($me isop #) {
mode # +o $nick
halt
}
else {
echo -a Se fossi stato Op su #, avresti oppato $nick
halt
}
}
a queto punto esegue il comando assegnato.
Eccovi la traduzione di tale comando.
Quando un utente di livello 80 (on 80) joina (:JOIN) un
canale qualsiasi (:#) allora fai questo (:{) :
se sono op nel canale # (if ($me isop #)) oppa il nuovo entraro
(mode # +o $nick) e interrompi l'operazione (| halt), se
non sono op (else) manda un echo nella finestra attiva (echo
-a) con la scritta "Se fossi stato Op su #kaos, avresti oppato
Gaietta" e interrompe l'operazione (halt).
Tutto chiaro? Speriamo di si :o))
Comandi
per la User List
Per aggiungere o rimuovere utenti dalla User List non si
deve necessariamente intervenire sui remotes in modo diretto, ossia editando
la lista a mano, ci sono comandi appositi.
Signori e signore, sono lieto di presentarvi la lista dei comandi disponibili
:o**
/auser [-a] {livello|nick|address}
Questo comando permette di aggiungere un utente alla User List.
Alcuni esempi:
/auser 1,2,3 furbetta
Questo comando aggiunge furbetta alla user list con livello 1, 2 e 3 (se
un utente è già presente con quel nick, verrà rimpiazzato
dal nuovo nick. Lo stesso vale per gli address).
/auser -a 1,2,3 RaSt[a]
Questo comando aggiunge i livelli 1, 2 e 3 all'utente RaSt[a].
Se questo utente non è presente nella User List, verrà creato
un nuovo "add".
/auser -a =1,2,3 Nick
Questo comando funziona esattamente come il primo con la
divverenza che se un utente è già presente con quel nick,
non verrà rimpiazzato dal nuovo nick. Lo stesso vale per
gli address).
/guser {level} {nick} [type]
Questo comando funziona esattamente come il precedente, con la differenza
che effettua l'aggiunta eseguendo una scansione del nick e aggiungendo
l'hostmask specificata
Facciamo un esempio.
/guser 80 }}OvErKiL 1
Questo comando cercherà l'utente }}OvErKiL e lo aggiungerà
alla User List con la hostmask 1.
Attenzione: l'utente dovrà essere online.
/ruser {nick o nick! o address o nick [tipo]}
Questo comando elimina dalla User List un nick o un address.
Esempi esplicativi (cazzo quanto sto diventando prfessionale!!!!)
/ruser MOgan
Questo comando elimina MOgan dalla User List.
/ruser 1,2,3 Scroto
Questo comando elimina Scroto dai livelli 1, 2 e 3 della
User List.
/ruser 1,2,3 Yanko 1
Questo comando elimina l'hostmask 1 di Yanko dai livelli
1, 2 e 3.
/ruser Vm!
Questo comano elimina tutti gli utenti che hanno il nick
che comincia per Vm dalla User List.
L'opzione ! può venire usata per tutti i tipi di comandi /ruser
sopra elencati.
Lista delle
Hostmask
tipo 0: *!ident@primo.secondo.terzo.com
tipo 1: *!*ident@primo.secondo.terzo.com
tipo 2: *!*@primo.secondo.terzo.com
tipo 3: *!*ident@*.secondo.terzo.com
tipo 4: *!*@*.secondo.terzo.com
tipo 5: nick!ident@primo.secondo.terzo.com
tipo 6: nick!*ident@primo.secondo.terzo.com
tipo 7: nick!*@primo.secondo.terzo.com
tipo 8: nick!*ident@*.secondo.terzo.com
tipo 9: nick!*@*.secondo.terzo.com
|