10/02/2010, 14:15
Petit extrait de code du Motus :
Ce système me permet d'effacer les scores chaque lundi; il est facile de l'adapter afin d'inclure/exclure d'autres jours.
tcl
# effacer les scores automatiquement chaque semaine (0 = non, 1 = oui)
# remarque : il est nécessaire que le bot soit en fonction au jour et
# à l'heure choisis pour que la remise à zéro puisse avoir lieu.
variable clearscoresweekly "1"
# si l'effacement automatique des scores chaque semaine est activé,
# quel jour aura-t-il lieu ?
variable clearscores_day "lundi"
# à quelle heure ?
# (format 24h, mettez un 0 devant les valeurs inférieures à 10)
# exemples : "05h15" = 5h15 "00h00" = minuit "17h05" = 17h05
variable clearscores_time "05h15"
(...)
variable clearscores_time [split $motus::clearscores_time "h"]
if { $motus::clearscoresweekly } { bind time - "[lindex $motus::clearscores_time 1] [lindex $motus::clearscores_time 0] * * *" motus::clear_scores_weekly }
(...)
##### Effacement des scores chaque semaine
proc motus::clear_scores_weekly {min hour day month year} {
if { [lindex [ctime [unixtime]] 0] == [string map -nocase {lundi Mon mardi Tue mercredi Wed jeudi Thu vendredi Fri samedi Sat dimanche Sun} $motus::clearscores_day] } {
motus::archive_scores
variable scores ""
motus::ecrit_scores
set current_time [split [lindex [ctime [unixtime]] 3] ":"]
if { [channel get $motus::motus_chan motus] == 1 } { puthelp "PRIVMSG $motus::motus_chan :[color warning]\002Remise à zéro hebdomadaire des scores du Motus." }
}
}
Ce système me permet d'effacer les scores chaque lundi; il est facile de l'adapter afin d'inclure/exclure d'autres jours.