11 Condizioni If – Else – Elseif


Prima di cominciare dovete sapere gli esempi base che abbiamo scelto : PIZZA e’ il nick, #mondoscript e’ il canale e la reazione a tutte le condizioni e ‘ { mondoscript }

Spiegazione CondizioniEsempiSpiegazione esempio
=== E’ uguale a (case sensitive)if ($nick === PIZZA) { mondoscript }Se il nick e’ PIZZA rispettando maiuscole e minucole
== E’ uguale a (non e’ case sensitive)if ($nick == PIZZA) { mondoscript }Se il nick e’ PIZZA in tutti i casi
= E’ uguale a (non case sensitive)if ($nick == PIZZA) { mondoscript }Se il nick e’ PIZZA in tutti i casi
>= e’ piu grande o ugualeif (2 >= 1) { mondoscript }Se 2 e’ maggiore o uguale a 1
<= e’ minore o uguale aif (1 <= 2) { mondoscript }Se 1 e minore o uguale a 2
> e’ maggiore dif (2 > 1) { mondoscript }se 2 e’ maggiore di 1
< e’ piu piccolo diif (1 < 2) { mondoscript }Se 2 e’ piu piccolo di 1
// e’ multiplo diif (2 // 4) { mondoscript }Se 2 e’ multiplo di 4
\\ non e’ multiplo diif (3 \\ 5) { mondoscript }Se 3 non e’ MULTIPLO di 5
isin e’ l’argomento 1 trovato nell’argomento 2if (beta isin betatester) { mondoscript }Se beta e’ betatester in tutti i casi
isinsc e’ l’argomento 1 trovato nell’argomento 2 (case sensitive)if (betA isincs betAtester) { mondoscript }Se beta e’ betatester CASE SENSITIVE
isnum e’ l’argomento 1 in un numero nello spazio dell’argomento 2if (4 isnum 2-100) { mondoscript }SE 4 e’ un numero fra 2 e 200
isletter e’ l’argomento 1 in base alle lettere dell’argomento 2if (b isletter abcd) { mondoscript }Se b e’ la lettera trovata in abcd
ison l’argomento corrisponde alla presenza nel canale nell’argomento 2if (pizza ison $chan) { mondoscript }Se pizza e’ nel canale
isop l’argomento corrisponde allo stato di OPeratore nell’argomento 2if (pizza isop $chan) { mondoscript }Se pizza e’ op nel canale
isvo l’argomento corrisponde allo stato di Voice nell’argomento 2if (pizza isvo $chan) { mondoscript }Se pizza e’ voice nel canale
ishelp l’argomento corrisponde allo stato di HELPER nell’argomento 2 (no UNDERNET)if (pizza ishelp $chan) { mondoscript }Se pizza e’ helper nel canale
ischan Sei nel canale specificato nell’argomento 2if (#mondoscript ischan) { mondoscript }Se #mondoscript e’ il tuo canale
isauto L’argomento 1 nella tua autoOp listif (pizza isauto #mondoscrpt) { mondcript }Se pizza e’ autOP in #mondoscript
isignore L’argomento 1 nella tua Ignore list con la flag dell’argomento 2if (pizza!*@* isignore p) { mondoscript }Se pizza e’ in ignore col p swich attivo
isprotect L’argomento 1 nella tua Protect List per il canale nell’argomento 2if (pizza!*@* isprotect #mondoscript) { mondoscript }Se pizza e’ protetto in #mondoscript
isnotify L’argomento 1 nella tua Notify Listif (Pizza isnotify) { mondoscript }Se pizza e’ nelle tua notify list

Tutti questi argomenti posso essere invertiti di segno aggiungento!

ESEMPIO:

!isop l’argomento corrisponde allo stato di NON OPERATORE nell’argomento 2

Ora occorre sapere come si processano gli spazi

if ( 2 == 1 ) { mondoscript } SBAGLIATO!!! prima di 2 e dopo 1 non vanno spazi
if 2 == 1 mondoscript SBAGLIATO!! Mancano le parentesi
if 2 == 1 { mondoscript } SBAGLIATO mancano ()
if (2 == 1) {mondoscript} Sbagliato ci vuole lo spazio prima di “m” e dopo “t”

Esempio corretto : if (2 == 1) { mondoscript }

Quindi per if, esleif, ed else la forma corretta sara’:

if (Condizione) { reazione } elseif (condizione) { Reazione } else { Reazione }

Passiamo alla pratica con un esempio semplice:

if (pizza ison #mondoscript) { msg ciao pizza benvenuto in #mondoscript }

elseif (pizza ison #altro-canale) { msg Torna su #mondoscript }

COMMENTO:

La prima riga dice che il nick se PIZZA sara’ su #mondoscript, invierai a lui il messaggio “ciao pizza benvenuto su #mondoscript”.

La seconda riga quindi l’elseif non verra’ considerata in quanto la prima e’ TRUE.

Quando la prima riga dara’ risposta FALSA si esegura’ la seconda riga e quindi l’elseif e in questo caso invieremo il messaggio ” Torna su #mondoscript “

Ora che abbiamo capito questo, sara’ molto facile comprendere anche come funzionano queste righe:

if (pizza ison #mondoscript) { msg ciao pizza benvenuto in #mondoscript }

elseif (pizza ison #altro-canale) { msg Torna su #mondoscript }

else { msg cosa fai stasera? }

In questo caso se if e elseif daranno risposta FALSA verra’ eseguito il mgs “cosa fai stasera” Come ultima cosa guardiamo come legare 2 condizioni e associarli ad una reazione: if ((condizione1) && (condizione2)) { reazione } in questo caso useremo il carattere && per separare le condizioni , e dobbiamo anche ricordarci che dobbiamo inserire una nuova () per far si che si verifichi la reazione.


Autore: Antani