Alias y Popups avanzados: creación de identificadores y menus dinámicos

Alias avanzados: creando nuestros propios identificadores.

    1.- ¿Qué es un identificador "propio"? ¿Y para que nos sirve?: Un identificador "propio" es un identificador que es creado por nosotros, y al igual que todos returnan un valor. Su utilidad es muy grande y estan muy ligados a los eventos. Un ejemplo explicativo de su utilidad:

on *:join:#:{ if ($amigo($nick) == yes) { mode # +o $nick } }

En este ejemplo, hemos creado el identificador $amigo al cual se le pasa un parametro: $nick. De forma que podemos llamar al identificador y si nos returna el valor deseado, ejecutamos determinados comandos.

    2.- Creando nuestros identificadores: El código del indetificador en si va en la seccion alias (o aliases) y sin el símbolo del $. Para verlo mas claro, crearemos el codigo del identificador amigo ($amigo).

amigo {
if ($1 == Ss) { return Yes }
elseif ($1 == Sol) { return Yes }
elseif ($1 == dr4g0nz) { return Yes }
else { return No }
}

¿Esta claro no? Si $1 (que hace referencia al 1º parametro pasado) es igual a esto, return Yes sino return No.

    3.- ¿Por que crear un identificador y no poner el código directamente?: En 1º lugar, con un identificador todo queda mucho mas ordenado y no saturas la sección remote. En 2º lugar y mucho más importante, un identificador puede ser llamado tantas veces como quieras desde distintas partes del código, esto es muy util ya que si una "función" es utilizada varias veces, nos podemos crear un identificador y llamarlo cada vez que sea necesario de esta forma nos ahorramos el tener que repetir el código cada vez que lo necesitemos. El objetivo es ahorrar código y tener un script "limpio y rapido" no lleno de codigo repetitivo por todos lados.

Popups avanzados: menus dinámicos

    1.- ¿Qué es un popups o menu dinámico?: Es aquel que muestra o no determinadas funciones dependiendo de tu status o el del nick seleccionado. Es decir, el menu cambia en función de que tu seas op o no, o que el nick seleccionado sea op o no.

    2.- "Herramientas" necesarias: Para crear estos menus tan solo requerimos de un condicional un tanto peculiar: $iif. Extructura: $iif(condicion,si se cumple has esto, sino has esto otro)

Ejemplo: $iif($me isop $chan,echo -a Soy OP,echo -a No soy OP) Facil, ¿no? Si soy op en el canal, "imprimes" en pantalla Soy OP, si no imprimes No soy OP.

    3.- Ejemplo de un popups dinámico: Aquí os pongo un código de un menu dinámico(va en la seccion popups):

$iif($me isop $chan,Control (Solo @))
.$iif($1 isop $chan,Deop,Op):$iif($1 isop $chan,mode # -oooooo $$1 $2 $3 $4 $5 $6 ,mode # +oooooo $$1 $2 $3 $4 $5 $6)
.$iif($1 isvo $chan,Quitar Voz,Dar voz):$iif($1 isvo $chan,mode # -vvvvvv $$1 $2 $3 $4 $5 $6,mode # +vvvvvv $$1 $2 $3 $4 $5 $6)
.Pateo:/kick # $$1
.Pateo (¿porque?):kick # $$1 $2 $3 $4 $5 $6 $$?="¿Porque le pateas?:"
.Baneos
..Quitar ban: mode -b $$?="¿A quien?"
..Solo Ban:ban $$1 $2 $3 $4 2
..BanKick:ban $$1 $2 $3 $4 2 | kick $1
..Ban Temporal
.....