;=========================================================================== ; Nova`Script v1.0 — script mIRC officiel du network ChatNova ; Serveur : irc.chatnova.fr:6697 (SSL) ; https://chatnova.fr/script-mirc.html ; ; Installation : Fichiers → Nova-Script.mrc → glisser dans la fenêtre mIRC ; (ou Alt+R → File → Load → sélectionner le fichier) ;=========================================================================== on *:LOAD:{ echo -a 4,1 · Nova`Script v1.0 chargé · /nova pour ouvrir le menu · if (%nova.setup != done) { .timer 1 1 nova.setup } } ; ── Réglages par défaut (première installation) ────────────────────────── alias -l nova.setup { set %nova.autojoin on set %nova.banner on set %nova.antiflood on set %nova.sounds on set %nova.theme on set %nova.setup done echo -a 9,1 Nova`Script configuré avec les réglages par défaut. Tape /novacfg pour les changer. } ; ── Connexion ────────────────────────────────────────────────────────────── alias nova.connect { if ($network != ChatNova) { server -m irc.chatnova.fr +6697 } else { echo -a Déjà connecté à ChatNova. } } on *:CONNECT:{ if ($network == ChatNova) { if (%nova.banner == on) { nova.ascii } if (%nova.autojoin == on) { .timer 1 2 nova.join } } } alias -l nova.join { join #accueil echo -a 9,1 » Bienvenue sur ChatNova ! /nova pour le menu, /nova.salons pour rejoindre d'autres channels. } alias -l nova.ascii { echo -a 12 ______________________________________ echo -a 12 / _____ _ _ _ _ \ echo -a 12 | / ____| | | | | \ | | | echo -a 12 | | | | |__ __ _| |_| \| | _____ ____ _ | echo -a 12 | | | | '_ \ / _` | __| . ` |/ _ \ \ / / _` | | echo -a 12 | | |____| | | | (_| | |_| |\ | (_) \ V / (_| | | echo -a 12 | \_____|_| |_|\__,_|\__|_| \_|\___/ \_/ \__,_| | echo -a 12 \______________________________________________ / echo -a 12 Nova`Script v1.0 — chatnova.fr } ; ── Menu principal ─────────────────────────────────────────────────────── alias nova { echo -a 4,1 ┌─ Nova`Script ────────────────────────────── echo -a 4,1 │ /nova.connect → se connecter à ChatNova echo -a 4,1 │ /nova.salons → rejoindre les salons principaux echo -a 4,1 │ /nova.identify pw → s'identifier (NickServ) echo -a 4,1 │ /nova.register pw email → enregistrer son pseudo echo -a 4,1 │ /nova.jeux → mini-jeux ChatNova (#jeux) echo -a 4,1 │ /nova.site → ouvrir chatnova.fr echo -a 4,1 │ /novacfg → fenêtre de configuration echo -a 4,1 └───────────────────────────────────────────── } alias nova.salons { join #accueil join #blabla join #geek join #musique join #jeux } alias nova.identify { if ($1 == $null) { echo -a 4,1 Usage: /nova.identify | halt } msg NickServ IDENTIFY $1- } alias nova.register { if ($2 == $null) { echo -a 4,1 Usage: /nova.register | halt } msg NickServ REGISTER $1 $2 } alias nova.jeux { echo -a 4,1 Rejoins #jeux et tape !jeu pour lancer une partie (Poker, Motus, UNO, échecs, bataille navale, Puissance 4…). join #jeux } alias nova.site { url -a https://chatnova.fr } ; ── Habillage couleur des messages ──────────────────────────────────────── alias nova.theme { if (%nova.theme == on) { set %nova.theme off echo -a Nova`Script : habillage désactivé. } else { set %nova.theme on echo -a Nova`Script : habillage activé. } } on *:TEXT:*:#:{ if (%nova.theme == on) { if ($nick isop #) { echo $chan 4<@ $+ $nick $+ > $1- } elseif ($nick isvoice #) { echo $chan 9<+ $+ $nick $+ > $1- } } } ; ── Protection anti-flood ──────────────────────────────────────────────── ; Compte les messages par pseudo/salon, ignore temporairement au-delà du seuil. on *:TEXT:*:#:{ if (%nova.antiflood != on) { return } inc -u8 %nova.fl. [ $+ [ $nick ] ] if (%nova.fl. [ $+ [ $nick ] ] >= 8) { ignore -u60 $nick echo -a 4,1 Nova`Script : $nick mis en ignore 60s (flood détecté sur $chan). } } alias nova.antiflood { if (%nova.antiflood == on) { set %nova.antiflood off | echo -a Anti-flood désactivé. } else { set %nova.antiflood on | echo -a Anti-flood activé. } } ; ── Sons d'alerte (message privé reçu) ──────────────────────────────────── on *:TEXT:*:?:{ if (%nova.sounds == on) { if ($exists($mircdir $+ sounds\nova-pv.wav)) { splay -q $mircdir $+ sounds\nova-pv.wav } else { beep 1 } } } alias nova.sounds { if (%nova.sounds == on) { set %nova.sounds off | echo -a Sons désactivés. } else { set %nova.sounds on | echo -a Sons activés. } } ; ── Fenêtre de configuration graphique ──────────────────────────────────── dialog -l novacfg { title "Nova`Script — Configuration" size -1 -1 210 150 option dbu check "Rejoindre les salons auto à la connexion", 1, 10 10 190 10 check "Bannière ASCII à la connexion", 2, 10 26 190 10 check "Protection anti-flood", 3, 10 42 190 10 check "Sons sur message privé", 4, 10 58 190 10 check "Habillage couleur des messages", 5, 10 74 190 10 button "Enregistrer", 6, 10 110 90 16, ok button "Fermer", 7, 110 110 90 16, cancel } alias novacfg { dialog -m novacfg novacfg } on *:DIALOG:novacfg:init:0:{ did -c novacfg 1 did -c novacfg 2 did -c novacfg 3 did -c novacfg 4 did -c novacfg 5 if (%nova.autojoin == on) { did -c novacfg 1 } if (%nova.banner == on) { did -c novacfg 2 } if (%nova.antiflood == on) { did -c novacfg 3 } if (%nova.sounds == on) { did -c novacfg 4 } if (%nova.theme == on) { did -c novacfg 5 } } on *:DIALOG:novacfg:sclick:6:{ set %nova.autojoin $iif($did(novacfg,1).state == 1, on, off) set %nova.banner $iif($did(novacfg,2).state == 1, on, off) set %nova.antiflood $iif($did(novacfg,3).state == 1, on, off) set %nova.sounds $iif($did(novacfg,4).state == 1, on, off) set %nova.theme $iif($did(novacfg,5).state == 1, on, off) echo -a Nova`Script : réglages enregistrés. dialog -c novacfg } ; ── Menus contextuels ──────────────────────────────────────────────────── menu nicklist { Nova`Script .Whois: /whois $$1 .Ignorer 10 min: /ignore -u600 $$1 .- .Site ChatNova: nova.site } menu channel { Nova`Script .Ouvrir #jeux: /join #jeux .Ouvrir #musique: /join #musique .- .Configuration: novacfg } menu status { Nova`Script .Se connecter: nova.connect .Rejoindre les salons: nova.salons .- .Configuration: novacfg .Site chatnova.fr: nova.site } menu menubar { Nova`Script .Connexion ChatNova: nova.connect .Rejoindre les salons: nova.salons .Mini-jeux (#jeux): nova.jeux .- .Configuration: novacfg .- .chatnova.fr: nova.site }