Fiche
#1
Bonjour,

J'aimerais faire une liste pour retourner les pseudos des animlive dans mon Staff Radio, j'ai réussi à faire le code, mais le soucis c'est que quand j'ajoute un anim çà ne l'écrit pas dans le fichier "listanim.txt".

J'ai essayé de résoudre ce soucis mais je me bloque, je n'ai aucune erreur en party-line.


Merci de votre aide.

Cordialement

tcl
##############################
####    Fiche AnimLive    ####
##############################

##########################
####       Binds      ####
##########################
 
bind pub *|* !listanim show_anims
bind pub *|* !delanim del_anim
bind pub *|* !addanim add_anim

###########
# addanim #
###########
 
proc add_anim { nick host hand channel arg } {
global  vhostniv2 add_anim
 global add_anim salonstaff
 foreach salonst $salonstaff {
  if {[string equal -nocase $salonst $channel]} {
  foreach vhost $vhostniv2 {
  if [string match -nocase $vhost $host]  {
if {$arg == ""} {
    putquick "NOTICE $nick :\00312- \0031Syntax \0036!addanim pseudo \00312-"
    return 0
}
  putquick "cs access #radio add [lindex $arg 0 end] 4"
  putquick "cs access #radio+ add [lindex $arg 0 end] 3"
  putquick "hs set [lindex $arg 0 end] StaffR@AnimLive.***.org"
  putquick "bs say #radio+ !addnews \00312Bienvenu(e) et félicitation à [lindex $arg 0 end] \0036 qui vient de passer AnimLive. \00312 Claap Claaap :P"
  putquick "NOTICE [lindex $arg 0 end] : \00306Félicitation\00312 [lindex $arg 0 end] \0036, tu viens de passer AnimLive. Merci de taper cette commande pour activer ta Vhost: \00312/hs on ."
  putquick "NOTICE $nick \00303OK. \00312 l'accèss \00304Halfop \00312est bien ajouté pour\0036 [lindex $arg 0 end] \00312sur #Radio et #Radio+" 
  putquick "sajoin [lindex $arg 0 end] #radio,#radio+"
      return 0
 
      set user [lindex $arg 0 end]
	set listanim "./Anims/listanim.txt"
        if {[file exists $listanim]} {
		set file [open $listanim "a+"]
        } else {
            set file [open $listanim "w+"]
        }
 
	  set ppost($host) [expr {[unixtime]}]
        puts $file "\00312 $user \00306a été admis dans staff par\00312 $nick \00312Le\00303 [strftime "%d.%m.%Y"]."
        close $file
}
 
###########
# delanim #
###########
 
bind pub - !delanim del_anim
proc del_anim { nick host hand channel arg } {
global  vhostniv2 delanim
 global del_anim salonstaff
 foreach salonst $salonstaff {
  if {[string equal -nocase $salonst $channel]} {
  foreach vhost $vhostniv2 {
  if [string match -nocase $vhost $host]  {
if {$arg == ""} {
    putquick "NOTICE $nick :\00312- \0031Syntax \0036!delanim pseudo \00312-"
    return 0
}
	putquick "sapart [lindex $arg 0 end] #radio,#radio+"
	putquick "cs access #radio del [lindex $arg 0 end]"
	putquick "cs access #radio+ del [lindex $arg 0 end]"
	putquick "hs del [lindex $arg 0 end]"
	putquick "bs say #radio+ !addnews \00304Demission:\0031 [lindex $arg 0 end] \00312a decidé de démissionner de son poste d'AnimLive. Merci a lui."
	putquick "NOTICE [lindex $arg 0 end] : \00312Tu viens de démissioner. Nous te remercions pour tout ce que tu as fait pour witix. Bonne contnuation à toi."
	putquick "NOTICE $nick \00303OK. \00312L'accès de\00306 [lindex $arg 0 end] \00312a été bien retiré sur #Radio et #Radio+"
    return 0
 
	set listanim "./Anims/listanim.txt"
            set theris [file exists [file join ./ temp_listanim.txt]]
            if {$theris != 0} {
                eval "exec rm -f ./temp_post.txt"
            }
            set tempfile [open [file join ./ temp_listanim.txt] "w+"]
            set file [open $listanim "r+"]
            set ln 1
            while {[eof $file] == 0} {
                set line [gets $file]
                set msg $line
                set dele 0
                foreach prm $arg {
                    if {$ln == $prm} {
                        set dele 1
                    }
                }
                if {$dele == 0} {
                    if {$msg != ""} {
                        puts $tempfile "$msg"
                    }
                }
                set dele 0
                set ln [expr {$ln} +1]
            }
            close $tempfile
            close $file
            eval "exec mv -f ./temp_listanim.txt $listanim"
            return 1
        }  
      }
    }
  }
}
}
}
}
}

 
 
 
############
# listanim #
############
 
proc show_anims { nick host hand channel text } {
global  show_anims vhostniv2 salonstaff
 foreach salonst $salonstaff {
  if {[string equal -nocase $salonst $channel]} {
  foreach vhost $vhostniv2 {
  if [string match -nocase $vhost $host]  {
	set listanim "./Anims/listanim.txt"
			foreach vhost $vhostniv2 {
				if {[string match -nocase $vhost $host]}  {
					if {![file exists $listanim]} {
						putquick "NOTICE $nick :-\00312 Aucun AlimLive n'a été enregistré -"
						return 0
					}
					putquick "NOTICE $nick :-\00312 Début de la liste des AnimLive -"
					set data [open $listanim "r"]
					set numlistanim 0
					while {![eof $data]} { 
						gets $data datalistanim
						incr numlistanim
						if { $datalistanim != "" } {
							putquick "NOTICE $nick :-\00301 $numlistanim - $datalistanim"
						}
					}
					if {[eof $data]} {
                              putquick "NOTICE $nick :- \00312Fin de la liste des AnimLive -"
						close $data
					}
				}
			}
		}
	}
}
}
}


Répondre Avertir


Messages dans ce sujet
Fiche - par Aristide - 21/09/2011, 21:30
RE: Fiche - par CrazyCat - 21/09/2011, 22:25
RE: Fiche - par Aristide - 22/09/2011, 14:51
RE: Fiche - par CrazyCat - 22/09/2011, 15:00

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté