bbjulien
Messages postés31Date d'inscriptionvendredi 18 juillet 2003StatutMembreDernière intervention18 mars 2004
-
28 nov. 2003 à 18:53
bbjulien
Messages postés31Date d'inscriptionvendredi 18 juillet 2003StatutMembreDernière intervention18 mars 2004
-
29 nov. 2003 à 08:39
salut g un code pour avoir les information sur un serveur de jeux.Mais le format ne convien pas a mon bot alors je veux savoir qq1 peut changer se code et le metre en .mrc
voila merci d avence
putlog "\002gametiger.tcl\002 par \002Ibu\002 14"
putlog " Tapez: .game ou !game (channel)"
################################
# Vérifier une ip sur un salon #
################################
bind pub - !game gametiger:pub:testip
proc gametiger:pub:testip { nick uhost handle channel arg } {
global encorebis
set encore [unixtime]
if {[info exists encorebis]} {
set trop [expr $encore - $encorebis]
if { $trop < 5 } {
putserv "PRIVMSG $channel :Désolé $nick, une demande d'IP toutes les 5 secondes"
return 0
} else {
set encorebis $encore
}
} else {
set encorebis $encore
}
set token [http::geturl http://www.gametiger.net/search?address=$AddrIp]
set fv [open system/testip.txt w+]
puts $fv [http::data $token]
close $fv
http::Finish $token
set LectureFichierAcces "system/testip.txt"
if { [file exists $LectureFichierAcces] == 0 } {
set LectureTemp [open $LectureFichierAcces w+]
close $LectureTemp
}
set LectureTemp "[open $LectureFichierAcces r]"
while {![eof $LectureTemp]} {
set LectureTexteLu [nojoinhtml [gets $LectureTemp]]
if { [string match "*Server Name*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 340 end]"
set gt(server) "[join [gettext $i "> " " </td></tr>"]]"
} elseif { [string match "*Status<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 180 end]"
set gt(status) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*IP:Port<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 90 end]"
set gt(ip) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*>Engine</td>*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 100 end]"
set gt(engine) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*Game<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 100 end]"
set gt(game) "[join [gettext $i "">" " </td></tr>"]]"
} elseif { [string match "*Map<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 100 end]"
set gt(map) "[join [gettext $i "">" " </td></tr>"]]"
} elseif { [string match "*Last Map Change<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(lastmapchange) "[join [gettext $i "">" " ago</td></tr>"]] ago"
} elseif { [string match "*Protocol Version<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(protocol) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*Type of Server<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(type) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*OS<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 110 end]"
set gt(os) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*Password required<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(password) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*Active*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 240 end]"
set gt(players) "[join [gettext $i "">" "</td></tr>"]]"
set i [string first "/" $gt(players)]
set i1 [string range $gt(players) 0 [expr $i-1]]
set i2 [string range $gt(players) [expr $i+1] end]
if { $i1 == $i2 } {
set gt(players) "4$i1/$i2 (FULL)"
} else {
set gt(players) "3$i1/$i2"
}
} elseif { [string match "*Last Check<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(lastcheck) "[join [gettext $i "">" " ago</td></tr>"]] ago"
} elseif { [string match "*Bogo Ping<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 120 end]"
set gt(ping) "[join [gettext $i "">" "</td></tr>"]]"
}
################################
# Vérifier une ip en partyline #
################################
bind dcc - game gametiger:dcc:testip
proc gametiger:dcc:testip { hand idx arg } {
global encorebis
set encore [unixtime]
if {[info exists encorebis]} {
set trop [expr $encore - $encorebis]
if { $trop < 5 } {
putdcc $idx "Désolé $hand, une demande d'IP toutes les 5 secondes"
return 0
} else {
set encorebis $encore
}
} else {
set encorebis $encore
}
set token [http::geturl http://www.gametiger.net/search?address=$AddrIp]
set fv [open system/testip.txt w+]
puts $fv [http::data $token]
close $fv
http::Finish $token
set LectureFichierAcces "system/testip.txt"
if { [file exists $LectureFichierAcces] == 0 } {
set LectureTemp [open $LectureFichierAcces w+]
close $LectureTemp
}
set LectureTemp "[open $LectureFichierAcces r]"
while {![eof $LectureTemp]} {
set LectureTexteLu [nojoinhtml [gets $LectureTemp]]
if { [string match "*Server Name*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 340 end]"
set gt(server) "[join [gettext $i "> " " </td></tr>"]]"
} elseif { [string match "*Status<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 180 end]"
set gt(status) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*IP:Port<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 90 end]"
set gt(ip) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*>Engine</td>*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 100 end]"
set gt(engine) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*Game<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 100 end]"
set gt(game) "[join [gettext $i "">" " </td></tr>"]]"
} elseif { [string match "*Map<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 100 end]"
set gt(map) "[join [gettext $i "">" " </td></tr>"]]"
} elseif { [string match "*Last Map Change<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(lastmapchange) "[join [gettext $i "">" " ago</td></tr>"]] ago"
} elseif { [string match "*Protocol Version<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(protocol) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*Type of Server<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(type) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*OS<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 110 end]"
set gt(os) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*Password required<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(password) "[join [gettext $i "">" "</td></tr>"]]"
} elseif { [string match "*Active*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 240 end]"
set gt(players) "[join [gettext $i "">" "</td></tr>"]]"
set i [string first "/" $gt(players)]
set i1 [string range $gt(players) 0 [expr $i-1]]
set i2 [string range $gt(players) [expr $i+1] end]
if { $i1 == $i2 } {
set gt(players) "4$i1/$i2 (FULL)"
} else {
set gt(players) "3$i1/$i2"
}
} elseif { [string match "*Last Check<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 130 end]"
set gt(lastcheck) "[join [gettext $i "">" " ago</td></tr>"]] ago"
} elseif { [string match "*Bogo Ping<*" "$LectureTexteLu"] } {
set i [string range "$LectureTexteLu" 120 end]"
set gt(ping) "[join [gettext $i "">" "</td></tr>"]]"
}
proc gettext { data start end } {
set index0 [string first $start $data]
set index1 [expr $index0 + [string length $start]]
set index2 [string first $end $data]
set index2 [expr $index2 - 1]
set index [expr $index2 + [string length $end]]
return [string range $data $index1 $index2]
}
proc nojoinhtml { text } {
regsub -all -- {\\} $text {\\\\} text
regsub -all -- {\{} $text {\{} text
regsub -all -- {\}} $text {\}} text
regsub -all -- {\[} $text {\[} text
regsub -all -- {\]} $text {\]} text
regsub -all -- {"} $text {"} text
return "$text"
}