Communauté Eggdrop
[Bug] TCL Radio par Blacknight - Version imprimable

+- Communauté Eggdrop (https://forum.eggdrop.fr)
+-- Forum : Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum : Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+--- Sujet : [Bug] TCL Radio par Blacknight (/showthread.php?tid=1620)



TCL Radio par Blacknight - ShowDowN - 27/04/2016

Code :
##################################################
#             TCL animation radio    v1.3        #
#               by BlackNight                    #
#             GNU/GPL licence                    #
# ---------------------------------------------- #
# !aideradio* (*dispo sur v1.4) :                #
#   Aide aux commandes user:                     #
#  - !animr : Qui est à l'antenne                #
#  - !radio : Donne le lien pour écouter         #
#  - !dedi <pseudo - dédi> : demande de dédi     #
#  - Msg Botnick dedi                            "
#  - !demande <titre - artiste> : demande titre  #
##################################################
# ---------------------------------------------- #
# !cmdr* :                                       #
#   Aide aux commandes anim radio:               #
#  - !onair : Met l'anim "OnAir"                 #
#  - !offair : Met l'anim "OffAir"               #
##################################################

##################################################
#   Configuration du script d'animation radio    #
##################################################
# Le nom de votre radio                          #
set radioname "Radio Osiris";
# Le lien pour écouter votre radio               #
set radiourl "http://radioosiris.radio12345.com/";
# Le salon de votre radio                        #
set radiochan "#radio-Osiris";
##################################################

############################################################
# Merci de ne plus rien éditer en dessous de cette ligne   #
# si vous ne connaissez pas le langage TCL                 #
############################################################

#############
# les binds #
#############

bind raw - "001" idbot
bind pub - !anim animr
bind pub - !radio radior
bind pub - !dedi dedir
bind pub - !demande demander
bind pub - !onair onairr
bind pub - !offair offairr
bind MSGM - "*dedi*" dedim

#############
# les procs #
#############

proc idbot { from keyword text } {
global passidbot nsnick
putquick "PRIVMSG $nsnick :identify $passidbot"
}

proc putfast {arg} {
append arg "\n"
putdccraw 0 [string length $arg] $arg
}

set anim "0";

proc animr { nick uhost handle channel arg } {
 global radioname radiourl radiochan anim
  if ![string compare -nocase $channel "$radiochan"] {
      if {$anim != "0"} {
putfast "NOTICE $nick :\002\00305 $anim \00306 aux platines sur \00303$radiourl\003\002"
  } else {
putfast "NOTICE $nick :\002\00304Personne n'est à l'antenne actuellement\002\003"  
     }
  }
}

proc radior { nick uhost handle channel arg } {
 global radioname radiourl radiochan anim
  if ![string compare -nocase $channel "$radiochan"] {
      if {$anim != "0"} {
putfast "NOTICE $nick :\002\00306Ecoute $radioname sur \00303$radiourl \00306Actuellement \00305 $anim \00306est aux platines \002\003"
     } else {
putfast "NOTICE $nick :\002\00306Ecoute $radioname sur \00303$radiourl \00306Actuellement \00305 Personne \00306 n'est aux platines \002\003"
 
     }
  }
}

proc dedir { nick uhost handle channel arg } {
 global radioname radiourl radiochan anim
  if ![string compare -nocase $channel "$radiochan"] {
         if {[lindex $arg 0]!=""} {
      if {$anim != "0"} {
     set dedi [lrange $arg 0 end]
putfast "PRIVMSG $anim :\002\00305$nick \00306Te demande une dédicasse :\"$dedi\"radio-fashion"
putfast "NOTICE $nick :\002\00305$nick \00306Ta dédicasse (\"$dedi\") à bien été envoyée à \00305$anim\002\003"
unset dedi
  } else {
putfast "NOTICE $nick :\002\00304Personne n'est à l'antenne actuellement\002\003"
     }
  }  else {
putfast "NOTICE $nick :\002\00304Pour envoyer une dédicasse, la syntaxe correcte est: !dedi <pseudo - dédi>. exemple: !dedi CharleS - j'adore ton pseudo\002\003"
}
}
}

proc dedim { nick host channel arg } {
 global radioname radiourl radiochan anim
         if {[lindex $arg 1]!=""} {
      if {$anim != "0"} {
     set dedi [lrange $arg 1 end]
putfast "PRIVMSG $anim :\002\00305$nick \00306Te demande une dédicasse :\"$dedi\"radio-fashion"
putfast "NOTICE $nick :\002\00305$nick \00306Ta dédicasse (\"$dedi\") à bien été envoyée à \00305$anim\002\003"
unset dedi
  } else {
putfast "NOTICE $nick :\002\00304Personne n'est à l'antenne actuellement\002\003"
     }
  }  else {
putfast "NOTICE $nick :\002\00304Pour envoyer une dédicasse, la syntaxe correcte est: /dedi <pseudo - dédi>. exemple: /dedi CharleS - j'adore ton pseudo\002\003"
}

}

proc demander { nick uhost handle channel arg } {
 global radioname radiourl radiochan anim
  if ![string compare -nocase $channel "$radiochan"] {
         if {[lindex $arg 0]!=""} {
      if {$anim != "0"} {
     set demande [lrange $arg 0 end]
putfast "PRIVMSG $anim :\002\00305$nick \00306Te demande le morceau :\"$demande\"radio-fashion"
putfast "NOTICE $nick :\002\00305$nick \00306Ta demande (\"$demande\") à bien été envoyée à \00305$anim\002\003"
unset demande
  } else {
putfast "NOTICE $nick :\002\00304Personne n'est à l'antenne actuellement\002\003"
     }
  }  else {
putfast "NOTICE $nick :\002\00304Pour envoyer une demande, la syntaxe correcte est: !demande <titre - artiste>. exemple: !demande Whenever,wherever - Shakira\002\003"
}
}
}


proc onairr { nick uhost handle channel arg } {
 global radioname radiourl radiochan anim
  if ![string compare -nocase $channel "$radiochan"] {
if {[isop $nick $channel] || [ishalfop $nick $channel]} {
putfast "NOTICE $nick :\002\00306Tu es maintenant \00304OnAir.\00306N'oublie pas de te mettre OffAir en quittant l'antenne (!offair) \002\003"
putfast "SAMODE $channel +o $nick"
set anim $nick
     } else {
putfast "NOTICE $nick :\002\00304Accès refusé. Il faut être minimum Halfop pour se mettre OnAir.\002\003"
 
     }
  }
}

proc offairr { nick uhost handle channel arg } {
 global radioname radiourl radiochan anim
  if ![string compare -nocase $channel "$radiochan"] {
   if ![string compare -nocase $anim "$nick"] {
putfast "NOTICE $nick :\002\00306Tu es maintenant \00304OffAir\00306. Merci d'avoir animé $radioname\002\003"
putfast "SAMODE $channel -o $nick"
set anim 0
     } else {
putfast "NOTICE $nick :\002\00304Accès refusé. Il faut être OnAir pour se mettre OffAir.\002\003"
 
     }
  }
}


putlog "AnimRadio By BlackNight: chargé."


Voici donc mon code. Et ma question est peut être con mais... comment peut on mettre plusieurs salon dans la TCL ?

Dans cette partie : 

[font=Monaco, Consolas, Courier, monospace]# Le salon de votre radio                        #[/font]

[font=Monaco, Consolas, Courier, monospace]set radiochan "#radio-Osiris";[/font]

[font=Monaco, Consolas, Courier, monospace]j'ai testé : [/font]
[font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace]set radiochan "#radio-Osiris";"#autrechan"[/font][/font]
[font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace]set radiochan "#radio-Osiris""#autrechan";[/font][/font][/font]
[font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace]set radiochan "#radio-Osiris [/font][/font][/font][/font][font=Monaco, Consolas, Courier, monospace]#autrechan";[/font]
[font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace]set radiochan "#radio-Osiris;#autrechan"[/font][/font]

[font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace]Mais rien n'y fait sa ne fonctionne que sur un seul salon, le premier.[/font][/font]

[font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace]Ensuite j'ai testé en mettant plusieurs radio.tcl pour chaque salon mais la, l'eggdrop ne prend en compte que le dernier radio4.tcl (nom que j'ai donné)[/font][/font]

[font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace]Avez vous une solution ?[/font][/font]

[font=Monaco, Consolas, Courier, monospace][font=Monaco, Consolas, Courier, monospace]Prenez votre temps j'en demande beaucoup Smile[/font][/font]

En fait c'est bon j'ai laissé tombé ce code la et j'ai repris celui de Djkenny (shoutcast.tcl) et c'est parfait ! j'ai eu du mal pour certaine commande (le +A et +B car pas de fichier d'aide mais parfait) Vous pouvez clore le sujet Smile