##### Binds ##### bind pub - "!raz"
##### Binds #####
bind pub - "!raz" pub:raz
bind pub - "!on" pub:parle
bind pub - "!off" pub:tg
bind pub - "!cmd" pub:cmd
bind pub - "!aide" pub:aide
bind pub - "!bot" pub:bot
bind pub - "!pb" pub:pb
bind pub - "!grade" pub:grade
bind pub - "!degrade" pub:degrade
bind pub - "!tuto" pub:tuto
bind pub - "!dial" pub:dial
bind pub - "!exdial" pub:exdial
bind pub - "!irc" pub:irc
bind pub - "!init" pub:init
bind pub - "!+" pub:ajout
bind join - * entry_msg
## Binds aléatoires ##
bind - "!add" act:add
bind - "!entrymsg" add:entry_msg
##### Proc "join" #####
proc entry_msg { nick uhost handle channel arg } {
global chanactif
if { $channel == $chanactif } {
putserv "notice $nick :$entrymsg" }
}
}
##### Procs aléatoires #####
#proc act:entry_msg { nick uhost handle channel arg } {
# global Shanorck_blabla chanactif
# if { $channel == $chanactif } {
##### Procs de configuration #####
proc pub:raz { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { isop $nick $channel || ishalfop $nick $channel } {
set Shanorck_blabla "ok"
set chanactif "#Mirc"
set entrymsg "Bienvenue sur #Mirc! Tapez !cmd pour la liste des comandes. Veuillez quitter le salon si vous n'avez pas de question, merci."
putquick "PRIVMSG $channel :IA remise à zéro."
} else {
putquick "PRIVMSG $channel :Accès refusé."
}
}
}
proc pub:parle { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { isop $nick $channel || ishalfop $nick $channel } {
set Shanorck_blabla "ok"
putquick "PRIVMSG $channel :IA activée."
} else {
putquick "PRIVMSG $channel :Accès refusé."
}
}
}
proc pub:tg { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { $Shanorck_blabla == "ok" } {
if { isop $nick $channel || ishalfop $nick $channel } {
set Shanorck_blabla "off"
putquick "PRIVMSG $channel :IA désactivée."
} else {
putquick "PRIVMSG $channel :Accès refusé."
}
}
}
}
##### Procs d'aide #####
proc pub:bot { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif && $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] } {
set dest "[lindex $arg 0]"
putserv "NOTICE $dest :Pour mettre un bot (de quizz, uno, etc) sur votre salon, vous devez tout simplement le télécharger (à chercher dans Google) et le configurer afin de le connecter à votre salon."
} else {
putquick "PRIVMSG $channel :Aucun destinataire n'est spécifié."
}
}
}
proc pub:aide { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif && $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] } {
set dest "[lindex $arg 0]"
putserv "NOTICE $dest :Tapez !<commande> pour obtenir de l'info sur celle-ci. (!cmd pour obtenir la liste des commandes)"
} else {
putquick "PRIVMSG $channel :Aucun destinataire n'est spécifié."
}
}
}
proc pub:pb { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif && $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] } {
set dest "[lindex $arg 0]"
putserv "NOTICE $dest :Le webmaster a décidé d'interdire les scripts aux users qui ne sont pas VIP. Pourquoi ? A cause des \"virus\", ces tonnes de proxies envoyés sur les salons officiels dans le but de flooder. Pour remédier à ce problème (si vous êtes VIP), ouvrez une nouvelle remote (Alt+R) puis rentrez par exemple ceci : 4on 1:connect:if (\$network == chat-land) ns identify <pass> ."
} else {
putquick "PRIVMSG $channel :Aucun destinataire n'est spécifié."
}
}
}
proc pub:cmd { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { $Shanorck_blabla == "ok" } {
putserv "NOTICE $nick :4>>>>> Liste des commandes (pour mIRC) <<<<<"
putserv "NOTICE $nick :3Commandes générales :"
putserv "NOTICE $nick :!cmd 7(liste des commandes) / !aide / !bot 7(explique où et comment trouver un bot)"
putserv "NOTICE $nick :3Commandes spécialisées mIRC :"
putserv "NOTICE $nick :4Attention, ce qui est entre crochets est facultatif !"
putserv "NOTICE $nick :!init \[mirc/connect/remote/alias/popup\] 7(affiche les aides d'introduction à mIRC)"
putserv "NOTICE $nick :!grade \[moi\] 7(affiche la syntaxe du grade du type !o+)"
putserv "NOTICE $nick :!degrade \[moi\] 7(affiche la syntaxe du dégrade du type !o-)"
putserv "NOTICE $nick :!tuto \[input/text/var/iif\] 7(affiche les tutoriels et la syntaxe pour certains identifieurs principaux)"
putserv "NOTICE $nick :!dial \[button/icon/edit/list/combo/scroll/link/check/radio/box/text\] 7(affiche toutes les infos sur la table de dialog et ses éléments)"
putserv "NOTICE $nick :!irc \[op,halhop,voice,ban,kick,autre\] 7(affiche certaines commandes IRC à savoir)"
if { isop $nick $channel || ishalfop $nick $channel } {
putquick "NOTICE $nick :4Commandes spéciales pour les helpeurs (halfops ou ops) :"
putquick "NOTICE $nick :!on !off !raz"
}
putserv "NOTICE $nick :4>>>>> Fin de la liste des commandes <<<<<"
}
}
}
proc pub:exdial { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif && $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] } {
set dest "[lindex $arg 0]"
putserv "NOTICE $dest :4Exemple de dialog :"
putserv "NOTICE $dest :dialog ex \{"
putserv "NOTICE $dest :title \"exemple \[par uaip\]\" "
putserv "NOTICE $dest :size -1 -1 100 35"
putserv "NOTICE $dest :option dbu"
putserv "NOTICE $dest :text \"Voici un exemple de dialog\", 1, 10 8 90 7, center"
putserv "NOTICE $dest :button \"Fermer\", 2, 32 20 36 12, cancel"
putserv "NOTICE $dest :\}"
} else {
putquick "PRIVMSG $channel :Aucun destinataire n'est spécifié."
}
}
}
##### Procs avec args #####
proc pub:grade { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] == "moi" } {
putquick "PRIVMSG $channel :Pour se grader : 4on *:input:*:if (<mot> == \$strip(\$1)) \{ cs <grade> \$chan \} ."
} else {
putquick "PRIVMSG $channel :Pour grader un user (en étant soit même gradé) : 4on *:input:*:if (<mot> == \$strip(\$1)) \{ cs <grade> \$chan \$$2 \} ou 4on *:input:*:if (<mot> == \$strip(\$1)) \{ mode \$chan +<grade> \$$2 \} ."
}
}
}
}
proc pub:degrade { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] == "moi" } {
putquick "PRIVMSG $channel :Pour se dégrader : 4on *:input:*:if (<mot> == \$strip(\$1)) \{ cs <degrade> \$chan \} ."
} else {
putquick "PRIVMSG $channel :Pour dégrader un user (en étant soit même gradé) : 4on *:input:*:if (<mot> == \$strip(\$1)) \{ cs <degrade> \$chan \$$2 \} ou 4on *:input:*:if (<mot> == \$strip(\$1)) \{ mode \$chan -<grade> \$2 \} ."
}
}
}
}
proc pub:tuto { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] == "input" } {
putquick "PRIVMSG $channel :Pour créer un event input (syntaxe générale) : 4on *:input:*:if (condition) \{ action \} . De la même manière, pour créer plusieurs events input dans un même code (non contractuel) : 4on *:input:*:if (condition1) \{ action1 \} \| elseif (condition2) \{ action2 \} \| else (condition3) \{ action3 \} ."
} elseif { [lindex $arg 0] == "text" } {
putquick "PRIVMSG $channel :Pour créer un event text (syntaxe générale) : 4on *:text:*:*:if (condition) \{ action \} . De la même manière, pour créer plusieurs events text dans un même code (non contractuel) : 4on *:text:*:*:if (condition1) \{ action1 \} \| elseif (condition2) \{ action2 \} \| else (condition3) \{ action3 \} ."
} elseif { [lindex $arg 0] == "var" } {
putquick "PRIVMSG $channel :Une variable est un outil mobile, sans valeur précise. Il y a 2 façons d'utiliser une var : 4var %var <valeur(nombre)4> mais %var s'effacera directement une fois l'action finie, ou bien 4set %var <valeur(nombre, mot ou phrase)4> mais dans ce cas, pour effacer %var : 4unset %var ."
} elseif { [lindex $arg 0] == "iif" } {
putquick "PRIVMSG $channel :Syntaxe :4 \$iif(<condition(s)>,<action1>,<action2>) . L'action1 sera réalisée si la/les condition(s) est/sont validée(s), sinon, c'est l'action 2 qui sera réalisée. (si l'action 2 n'est pas désirée -> \$iif(<condition(s)>,<action>) )"
} else {
putquick "PRIVMSG $channel :Pour apprendre à scripter, commencez par exploiter la FAQ sur4 www.mirc.fr ."
}
}
}
}
proc pub:dial { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] == "edit" } {
putquick "PRIVMSG $channel :Syntaxe : edit \"texte\", <id>, <x> <y> <w> <h>, \[right,center,multi,pass,read,return,hsbar,vsbar,autohs,autovs,limit N\]"
} elseif { [lindex $arg 0] == "button" } {
putquick "PRIVMSG $channel :Syntaxe : button \"texte\", <id>, <x> <y> <w> <h>, \[default,ok,cancel,flat,multi\]"
} elseif { [lindex $arg 0] == "icon" } {
putquick "PRIVMSG $channel :Syntaxe : icon <id>, <x> <y> <w> <h>, <filename>, <index>, \[noborder,top,left,bottom,right\]"
} elseif { [lindex $arg 0] == "list" } {
putquick "PRIVMSG $channel :Syntaxe : list <id>, <x> <y> <w> <h>, \[sort,extsel,multsel,size,vsbar,hsbar,check\]"
} elseif { [lindex $arg 0] == "text" } {
putquick "PRIVMSG $channel :Syntaxe : text \"texte\", <id>, <x> <y> <w> <h>, \[right,center,nowrap\]"
} elseif { [lindex $arg 0] == "check" } {
putquick "PRIVMSG $channel :Syntaxe : check \"texte\", <id>, <x> <y> <w> <h>, \[left,push,3state\]"
} elseif { [lindex $arg 0] == "radio" } {
putquick "PRIVMSG $channel :Syntaxe : radio \"texte\", <id>, <x> <y> <w> <h>, \[left,push\]"
} elseif { [lindex $arg 0] == "box" } {
putquick "PRIVMSG $channel :Syntaxe : box \"texte\", <id>, <x> <y> <w> <h>, \[?\]"
} elseif { [lindex $arg 0] == "combo" } {
putquick "PRIVMSG $channel :Syntaxe : combo <id>, <x> <y> <w> <h>, \[sort, edit,drop,size,vsbar,hsbar\]"
} elseif { [lindex $arg 0] == "link" } {
putquick "PRIVMSG $channel :Syntaxe : link \"texte\", <id>, <x> <y> <w> <h>"
} elseif { [lindex $arg 0] == "scroll" } {
putquick "PRIVMSG $channel :Syntaxe : scroll \"texte\", <id>, <x> <y> <w> <h>, \[top,left,bottom,right,horizontal,range N,N\]"
} elseif { [lindex $arg 0] == "voc" } {
putquick "PRIVMSG $channel :Vocabulaire relatif au dialog : 4<id> représente le numéro associé à l'élément, 4<x> représente l'espace entre le bord gauche du dialog et le coin haut-gauche de l'élément (c'est l'horizontale), 4<y> représente l'espace entre le haut du dialog et le coin haut-gauche de l'élément (c'est la verticale), 4<w> représente la longueur horizontale de l'élément et 4<h> représente la longueur verticale de celui-ci."
} elseif { [lindex $arg 0] == "option" } {
putquick "PRIVMSG $channel :Voici les différents types d'options pour un dialog : dbu, pixels et notheme."
} else {
putquick "PRIVMSG $channel :Pour voir un exemple de dialog, tapez !exdial puis, une fois le code collé dans vos remotes (Alt+R) tapez /dialog -m ex ex ."
}
}
}
}
proc pub:irc { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] == "ban" } {
putquick "PRIVMSG $channel :Pour bannir :4 /ban \$chan <pseudo> <marqueur(2 conseillé)> 4et pour débannir :4 /mode \$chan -b <pseudo ou host> ."
} elseif { [lindex $arg 0] == "kick" } {
putquick "PRIVMSG $channel :Pour kicker :4 /kick \$chan <pseudo> ."
} elseif { [lindex $arg 0] == "op" } {
putquick "PRIVMSG $channel :Pour s'opper :4 /cs op \$chan , pour se déopper :4 /cs deop \$chan , pour opper un user (en étant soit même op) :4 /mode \$chan +o <pseudo> , pour déopper un user :4 /mode \$chan -o <pseudo> ."
} elseif { [lindex $arg 0] == "halfop" } {
putquick "PRIVMSG $channel :Pour s'halfopper :4 /cs halfop \$chan , pour se déhalfopper :4 /cs dehalfop \$chan , pour halfopper un user (en étant soit même op) :4 /mode \$chan +h <pseudo> , pour déhalfopper un user :4 /mode \$chan -h <pseudo> ."
} elseif { [lindex $arg 0] == "voice" } {
putquick "PRIVMSG $channel :Pour se voicer :4 /cs voice \$chan , pour se dévoicer :4 /cs devoice \$chan , pour voicer un user (en étant soit même op) :4 /mode \$chan +v <pseudo> , pour dévoicer un user :4 /mode \$chan -v <pseudo> ."
} elseif { [lindex $arg 0] == "autre" } {
putquick "PRIVMSG $channel :Pour partir d'un salon :4 /part \$chan , pour revenir :4 /join \$chan , pour partir-revenir :4 /hop , pour prendre un pseudo :4 /nick <pseudo> et pour activer son greet :4 /ns set greet <message> ."
} else {
putquick "PRIVMSG $channel :Les commandes IRC sont à connaître, car elles constituent la majeure partie des actions."
}
}
}
}
proc pub:init { nick uhost handle channel arg } {
global Shanorck_blabla chanactif
if { $channel == $chanactif } {
if { $Shanorck_blabla == "ok" } {
if { [lindex $arg 0] == "mirc" } {
putquick "PRIVMSG $channel :mIRC (nous passerons les détails) est un client pour Windows utilisant le protocole IRC (chat). Il utilise en quelques sorte son propre langage et permet une possibilité d'options élargie par rapport à l'applet. Attention ! Pour l'utiliser sur ce serveur, il faut être VIP."
} elseif { [lindex $arg 0] == "connect" } {
putquick "PRIVMSG $channel :Pour se connecter via mIRC :4 1ère méthode : Aller dans les options (Alt+O), configurez un serveur (irc. network. org) puis choississez votre nickname, fullname, etc. Ensuite cliquez sur \"Connexion au serveur\" et voilà !"
putquick "PRIVMSG $channel :Pour se connecter via mIRC :4 2ème méthode : Vous pouvez directemment taper4 /server -m serveur:port pour vous connecter à un serveur. (le \"-m\" sert à ouvrir une nouvelle fenêtre status... pratique si vous ne voulez pas vous déconnecter de votre serveur actuel)"
} elseif { [lindex $arg 0] == "remote" } {
putquick "PRIVMSG $channel :Les remotes sont les pages qui permettent au développeur d'y laisser ses codes (c'est en fait l'endroit ou l'on écrit les programmes). Pour accéder aux remotes : Alt+R section remote."
} elseif { [lindex $arg 0] == "alias" } {
putquick "PRIVMSG $channel :Les alias sont des commandes spéciales qui permettent d'effectuer une/des action(s) simplement à l'aide d'un mot. Syntaxe :4 alias <nom_de_l'alias> \{ <action> \} (dans la section remotes) ou4 /<nom_de_l'alias> \{ action \} (dans las section alias). Pour accéder aux remotes (Alt+R) et aux alias (Alt+D). "
} elseif { [lindex $arg 0] == "popup" } {
putquick "PRIVMSG $channel :Les popups sont des éléments tels que le panneau de controle (barre menus) ou le menu de la nicklist, etc. Ils utilisent une mise en page particulière fixée à base de points. Contactez les helpers (voices, halfops ou ops) pour obtenir plus d'informations."
} else {
putquick "PRIVMSG $channel :Aucun marqueur spécifié."
}
}
}
}