|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
METEO EN PICWIN (FRANCE ET DOM-TOM)
Information sur la source
Description
Ce code présente la météo française ainsi que celle des DOM-TOM dans une PicWin interactive.
Il dispose d'une champ de recherche et peut donner des prévisions au niveau régional, en plus de donner des éphémérides et températures d'une ville.
Il donne également la carte de vigilance au niveau de la France.
Il tire ses informations du site www.lachainemeteo.com qui donne Matin + Aprem de 0 à 3 jours, Journée au-delà.
Visitez ce site pour comprendre comment fonctionnent les prévisions et comment elles sont présentées.
C'est assez simple, et étant donné qu'une aide est incluse, je ne vais pas tout expliquer ici.
Pour l'installer, vous devez avoir les deux .mrc chargés, GUI-ArKanis est indispensable.
Mettez les deux fichiers directement dans le dossier mIRC et tapez /load -rs Meteo-By-ArKanis.mrc (le deuxième devrait se charger automatiquement)
Tapez ensuite /meteo pour lncer la PicWin
Source
- ;************************
- ; Meteo
- ; By ArKanis
- ; http://www.arkanis.eu
- ;************************
- ; Version 1.3
-
- ; Powered by
- ; www.lachainemeteo.com
-
- alias meteo {
- if (($exists(GUI-ArKanis.mrc)) && (!$script(GUI-ArKanis.mrc))) {
- .load -rs GUI-ArKanis.mrc
- echo 2 -a * Chargement du fichier GUI-ArKanis.mrc effectué
- }
- if (!$isalias(²picwin)) {
- echo 2 -a * Erreur : il faut avoir chargé le fichier GUI-ArKanis.mrc
- if ($isalias(pw.dl)) {
- if ($input.request.y.n(Voulez-vous télécharger le fichier GUI-ArKanis.mrc ?)) pw.dl
- }
- return
- }
- ²picwin @Meteo 500 500 "Meteo"
- titlebar @Meteo By ArKanis
- ²newmenu @Meteo Consulter la météo
- ²newitem @Meteo En France:²meteo.sel France,DOM TOM:²meteo.sel,$chr(9),Changer le jour:²meteo.selday,$chr(9),Fermer:²close @Meteo
- ²newmenu @Meteo Autres écrans
- ²newitem @Meteo Vigilance:²meteo.vigilance,Recherche:²meteo.rech
- ²newmenu @Meteo ?
- ²newitem @Meteo Aide:²meteo.aide,Crédits:²meteo.credits,Désinstaller:²meteo.delete
- ²drawmenu @Meteo $iif($isdir(Meteo),1 1,3 1)
- ²description @Meteo Temps 400
- ²ref @Meteo
- }
-
- alias ²meteo.sel {
- if (!$window(@Meteo)) return
- if ($hget(Meteo,Jour) !isnum 0-9) hadd -m Meteo Jour 0
- if ($1) {
- hadd -m Meteo Link $+(index.php?langue=fr&echeance=,$hget(Meteo,Jour))
- ²meteoopen France
- }
- else {
- ²centre @Meteo -b 40 Sélection d'un DOM-TOM
- ²centre @Meteo 225 Sélectionnez votre DOM-TOM
- ²select @Meteo 100 150 245 200 30 Guadeloupe¥Martinique¥Guyane¥La Réunion¥St Pierre et Miquelon¥Mayotte¥Polynésie Française¥Nouvelle Calédonie¥Wallis et Futuna
- ²button @Meteo 101 200 280 100 20 Sélectionner
- ²description @Meteo 100 Change la région sélectionnée dans une permutation circulaire
- ²description @Meteo 101 Affiche la météo de la région choisie
- }
- }
-
- alias ²meteo.selday {
- if (!$window(@Meteo)) return
- ²centre @Meteo -b 40 Sélection du jour
- var %l = 0¥1¥2¥3¥4¥5¥6
- if ($hget(Meteo,Jour) isnum 0-6) {
- while ($left(%l,1) != $hget(Meteo,Jour)) var %l = $addtok($deltok(%l,1,165),$left(%l,1),165)
- }
- ²select @Meteo 102 200 245 100 30 %l
- ²button @Meteo 103 200 280 100 20 Sélectionner
- ²description @Meteo 103 Donne la météo prévue pour dans X jours pour toutes les demandes à venir
- }
- alias ²meteo.rech {
- ²centre @Meteo -b 40 Recherche
- ²centre @Meteo 70 Entrez le nom de la ville ou son code postal
- ²edit @Meteo 8 200 110 100 20
- ²button @Meteo 9 200 135 100 20 Rechercher
- ²description @Meteo 9 Etablie une liste des résultats trouvés pour sélectionner rapidement une ville
- }
- alias meteo.answer if ($1 == ²meteo.rech) meteo.sclick 9 $2
- alias ²meteo.delete {
- noop $findfile(Meteo/,*,0,.remove $qt($1-))
- .rmdir Meteo
- ²close @Meteo
- window -a "Status Window"
- if ($?!="Souhaitez-vous décharger le fichier $script (contient la Météo) ?") {
- if (!$?!="Voulez-vous GARDER le fichier ?") .timer 1 1 .remove $qt($script)
- .timer 1 1 .unload -rs $qt($script)
- }
- }
- ;**************
- ;Données du GUI
- ;**************
- alias meteo.menu {
- sockclose meteo*
- if (($1) && ($hget(MeteoLocation))) hfree MeteoLocation
- }
- alias meteo.close {
- hfree -w Meteo*
- if ($window(@Meteo.copyVilles)) window -c @Meteo.copyVilles
- }
- on *:close:@Meteo:meteo.close
-
- alias meteo.mouse {
- if (!$window(@Meteo)) return
- var %x = $1, %y = $2, %g
- var %f = $hget(Meteo,Origin), %ox = $gettok(%f,1,32), %oy = $gettok(%f,2,32), %dx = $gettok(%f,3,32), %dy = $gettok(%f,4,32)
- if (($inrect(%x,%y,%ox,%oy,%dx,%dy)) && ($hget(MeteoLocation)) && ($hget(Meteo,Ready))) {
- var %t = 1, %l = MeteoLocation
- while $hget(%l,%t).item {
- var %i = $ifmatch, %d = $hget(%l,%i)
- tokenize 32 %d
- if ($inrect(%x,%y,$1,$2,35,28)) {
- var %g = 1
- if ($hget(MeteoTemp,Loc) == %i) break
- hadd -m MeteoTemp Loc %i
- .²backup @Meteo Villes
- if (!$window(@Meteo.copyVilles)) ²svg @Meteo Villes
- var %ht = $+(MeteoVille,$hget(Meteo,Period))
- var %t1 = $replace(%i,$chr(165),$chr(32)), %t2 = T° : $gettok($hget(%ht,%i),3,32), %dy = 32
- if (%t2 == T° : ø) var %t2, %dy = $calc(%dy - 14)
- var %w = $max($width(%t1,Tahoma,10),$width(%t2,Tahoma,10)), %ox = $calc($1 -4 - %w / 2), %oy = $calc($2 -26)
- drawrect -nr @Meteo 0 1 $calc($1 - %w) %oy $calc(%w +6) %dy
- drawrect -fnr @Meteo 16761024 1 $calc($1 - %w +1) $calc(%oy +1) $calc(%w +4) $calc(%dy -2)
- drawtext -nr @Meteo 0 Tahoma 10 $calc($1 -%w + (%w +6- $width(%t1,Tahoma,10)) /2) $calc(%oy + 2) %t1
- if (%t2) drawtext -nr @Meteo 0 Tahoma 10 $calc($1 -%w + (%w +6- $width(%t2,Tahoma,10)) /2) $calc(%oy +17) %t2
- ²ref @Meteo
- break
- }
- inc %t
- }
- if (%g) return
- }
- if ((!%g) && ($hget(MeteoTemp,Loc))) {
- hdel MeteoTemp Loc
- ²backup @Meteo Villes
- }
- if ((!$hget(MeteoVille,Vigilance)) && ($hget(Meteo,Jour) <= 2) && ($hget(Meteo,Ready)) && (!$hget(@Meteo,Main))) {
- if (($inrect(%x,%y,49,471,56,23)) && ($hget(Meteo,Period) != 0)) {
- hadd -m Meteo Period 0
- ²efface @Meteo 25 60 450 410
- .meteo.fond.apply Meteo/Backup.png
- meteo.fond.apply
- }
- elseif (($inrect(%x,%y,371,471,79,23)) && ($hget(Meteo,Period) != 1)) {
- hadd -m Meteo Period 1
- ²efface @Meteo 25 60 450 410
- .meteo.fond.apply Meteo/Backup.png
- meteo.fond.apply
- }
- }
- }
-
- alias meteo.sclick {
- if (!$window(@Meteo)) return
- if ($1 == 101) {
- var %g = $calc(96 + $findtok(Guadeloupe¥Martinique¥Guyane¥La Réunion¥St Pierre et Miquelon¥Mayotte¥Polynésie Française¥Nouvelle Calédonie¥Wallis et Futuna,$²did(@Meteo,100),1,165))
- hadd -m Meteo Link $+(index.php?langue=fr&echeance=,$hget(Meteo,Jour),&domtom=,%g)
- ²meteoopen $²did(@Meteo,100)
- }
- elseif ($1 == 103) {
- hadd -m Meteo Jour $²did(@Meteo,102)
- ²drawmenu @Meteo 1 1
- }
- elseif ($hget(MeteoTemp,Loc)) {
- hadd -m Meteo Link $+(index_detail.php?langue=fr&echeance=,$hget(Meteo,Jour),&num_ville=,$gettok($hget($+(MeteoVille,$hget(Meteo,Period)),$ifmatch),5,32))
- ²meteoopen $hget(MeteoTemp,Loc)
- }
- elseif ($1 == 9) {
- if ($²did(@Meteo,8)) {
- hadd -m Meteo Link $+(moteur_recherche.php?langue=fr&txt_search=,$ifmatch)
- .meteo.wait
- .²meteoopen
- }
- }
- elseif ($1 == 11) {
- var %v = $replace($²did(@Meteo,10),$chr(32),$chr(165))
- hadd -m Meteo Link $+(index_detail.php?langue=fr&echeance=,$hget(Meteo,Jour),&num_ville=,$hget(MeteoVille,%v))
- ²meteoopen $deltok(%v,-1,165)
- }
- }
- ;*******
- ;Sockets
- ;*******
- alias ²meteoopen {
- if (!$window(@Meteo)) return
- if ($window(@Meteo.copyVilles)) window -c $ifmatch
- if ($show) {
- meteo.wait
- ²centre @Meteo -b 40 $1- $meteo.date($hget(Meteo,Jour))
- if ($hget(Meteo,Jour) <= 2) {
- var %p = 51
- while %p < 451 {
- drawline -nr @Meteo $rgb($calc(30 + %p /2),250,$calc(255 - %p /2)) 2 %p 471 %p 494
- inc %p 2
- }
- drawrect -nr @Meteo 0 1 49 470 402 26
- drawtext -nr @Meteo 8388608 Tahoma 12 60 475 MATIN
- drawtext -nr @Meteo 8388608 Tahoma 12 376 475 APRES-MIDI
- }
- }
- sockclose meteo
- sockopen meteo www.lachainemeteo.com 80
- }
- alias -l meteo.date {
- var %d = $+($chr(40),$date($calc($ctime + 86400 * $1)),$chr(41))
- if ($1 == 0) return aujourd'hui %d
- if ($1 == 1) return demain %d
- if ($1 == 2) return après-demain %d
- else return dans $1 jours %d
- }
- on *:sockopen:meteo:{
- if ($hget(MeteoQueue)) hfree MeteoQueue
- hfree -w MeteoVille*
- hfree -w MeteoTemp
- hadd -m Meteo Period 0
- sockwrite -n $sockname GET $+(http://www.lachainemeteo.com/,$$hget(Meteo,Link)) HTTP/1.0
- sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
- }
-
- on *:sockread:meteo:{
- var %a
- sockread %a
- if ($gettok(%a,1,9) == .Fond_Carte) sockmark $sockname FOND
- elseif (($regex(%a,/background-image:url\('(.+)'\)/gi)) && ($sock($sockname).mark == FOND)) {
- fond.meteo $regml(1)
- sockmark $sockname 0
- }
- elseif ($regex(%a,Menu_Periode_200_([0-9])_J([0-9]))) {
- if ($regml(2) != $hget(Meteo,Jour)) sockmark $sockname 0
- else {
- hadd -m MeteoTemp Heure $regml(1)
- sockmark $sockname VILLES
- if ($exists(Meteo/Backup.png)) drawpic -n @Meteo 50 70 Meteo/Backup.png
- drawrect -nr @Meteo 0 1 49 69 402 402
- ²centre @Meteo 240 Chargement en cours ...
- }
- }
- elseif ($regex(%a,bloc_ephem_j([0-9]))) {
- if ($regml(1) == $hget(Meteo,Jour)) sockmark $sockname Ephemerides
- }
- elseif ($sock($sockname).mark == Ephemerides) {
- if ($regex(%a,/height: 30px;.+>([^>]+)</div>$/i)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(1),$chr(32),$chr(165))
- elseif ($regex(%a,(-?[0-9]+)°C)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($+($regml(1),°C),$chr(32),$chr(165))
- elseif ($regex(%a,/height: 13px;.+">(.+)</div>/U)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(1),<br>,$chr(165),$chr(32),$chr(165))
- elseif ($regex(%a,/(Lever|Coucher) : <[^>]+>([^<]+)</span></div>/i)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(2),$chr(32),$chr(165))
- elseif ($regex(%a,/info([0-9])_ephem/i)) {
- if (($regml(1) isnum 2-) && ($regex(H,%a,/>([^>]+)</div>/i))) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(H,1),$chr(32),$chr(165))
- }
- }
- elseif ($regex(%a,/num_ville=([0-9]+)".+class="Liste_Elt_href">(.+)</a>/gU)) {
- hadd -m MeteoVille Rech $addtok($hget(MeteoVille,Rech),$regml(2),165)
- hadd -m MeteoVille $replace($regml(2),$chr(32),$chr(165)) $regml(1)
- }
- elseif ($regex(%a,/src="/image/logo/lachainemeteo/lcm_60x40.gif"/i)) sockmark $sockname VILLES
- elseif ($sock($sockname).mark == VILLES) {
- if ($regex(%a,/Periode_Temps_([0-1])/i)) hadd -m MeteoTemp Heure $regml(1)
- if ($regex(%a,(-?[0-9]+) &\#176;)) hadd -m $+(MeteoVille,$hget(MeteoTemp,Heure)) $hget(MeteoTemp,Ville) $regml(1) $hget(MeteoTemp,Pic) $hget(MeteoTemp,CP)
- elseif ($regex(%a,num_ville=([0-9]+))) hadd -m MeteoTemp CP $regml(1)
- else {
- if ($regex(%a,src="(.+)" class='Lien_Icone')) {
- var %i = $regml(1), %f = $gettok(%i,-1,47)
- if (!$exists($+(Meteo/,%f))) dl.meteo %i 1
- hadd -m MeteoTemp Pic %f
- }
- var %r = /left\:([0-9]+\.?[0-9]?)px\;top\:([0-9]+\.?[0-9]?)px.+'(.+)'/ig
- if ($regex(%a,%r)) hadd -m MeteoTemp Ville $remove($replace($regml(3),é,é,è,è,ç,ç,$chr(32),$chr(165),#039;,',ï,ï),&) $regml(1) $regml(2)
- }
- }
- }
- on *:sockclose:meteo:{
- if ($hget(Meteo,Link)) hdel Meteo Link
- if ($hget(MeteoVille,Rech)) {
- ²list @Meteo 10 150 200 200 200 $hget(MeteoVille,Rech)
- ²button @Meteo 11 150 405 200 20 Sélectionner
- }
- }
-
- alias -l fond.meteo {
- if (!$isdir(Meteo)) mkdir Meteo
- var %f = $+(Meteo/fond.,$extension($1-))
- if ($exists(%f)) .remove %f
- hadd -m Meteo Fond $1-
- hadd -m Meteo Fond2 %f
- sockclose MeteoFond
- sockopen MeteoFond www.lachainemeteo.com 80
- }
- on *:sockopen:MeteoFond:{
- sockwrite -n $sockname GET $$hget(Meteo,Fond) HTTP/1.0
- sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
- }
-
- on *:sockread:MeteoFond:{
- var %a
- sockread &a
- if ((!$sock($sockname).mark) && ($bfind(&a, 1,$str($crlf,2)))) {
- bcopy &b 1 &a $calc($ifmatch +4) -1
- if ($bvar(&b,0)) bwrite $hget(Meteo,Fond2) -1 -1 &b
- sockmark $sockname 1
- }
- elseif ($bvar(&a,0)) bwrite $hget(Meteo,Fond2) -1 -1 &a
- }
- on *:sockclose:MeteoFond:meteo.fond.apply
- alias -l meteo.fond.apply {
- if (!$window(@Meteo)) return
- var %f = $hget(Meteo,Fond2)
- if ($1-) var %f = $1-
- elseif (!%f) var %f = Meteo/fond.png
- if (!$exists(%f)) return
- var %x = $pic(%f).width, %y = $pic(%f).height, %ox = $calc(250 - %x / 2), %oy = $calc(270 - %y /2)
- drawrect -nr @Meteo 0 1 $calc(%ox -1) $calc(%oy -1) $calc(%x +2) $calc(%y +2)
- drawpic -n @Meteo %ox %oy $shortfn(%f)
- if ($show) {
- hdel -w Meteo Fond*
- hadd -m Meteo Origin %ox %oy %x %y
- if ((!$sock(Meteo.dl)) && (!$hget(MeteoQueue,0).item)) meteo.generate
- }
- }
-
- alias -l dl.meteo {
- hadd -m MeteoQueue $1-
- if ($exists($+(Meteo/,$gettok($1,-1,47)))) .remove $+(Meteo/,$gettok($1,-1,47))
- if ($sock(dl.meteo)) return
- .timer -h 1 500 dl.meteo.do
- }
- alias -l dl.meteo.do {
- var %f = $hget(MeteoQueue,1).item
- if (!%f) {
- if (!$sock(MeteoFond)) meteo.generate
- return
- }
- hadd -m MeteoTemp DL %f
- hadd -m MeteoTemp DLName $+(Meteo/,$gettok(%f,-1,47))
- sockclose Meteo.dl
- sockopen Meteo.dl www.lachainemeteo.com 80
- }
- on *:sockopen:Meteo.dl:{
- sockwrite -n $sockname GET $$hget(MeteoTemp,DL) HTTP/1.0
- sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
- }
- on *:sockread:Meteo.dl:{
- sockread &a
- if ((!$sock($sockname).mark) && ($bfind(&a, 1,$str($crlf,2)))) {
- bcopy &b 1 &a $calc($ifmatch +4) -1
- if ($bvar(&b,0)) bwrite $$hget(MeteoTemp,DLName) -1 -1 &b
- sockmark $sockname 1
- }
- elseif ($bvar(&a,0)) bwrite $$hget(MeteoTemp,DLName) -1 -1 &a
- }
- on *:sockclose:Meteo.dl:{
- hdel MeteoQueue $hget(MeteoTemp,DL)
- hdel -w MeteoTemp DL*
- dl.meteo.do
- }
-
- alias -l meteo.generate {
- if (!$window(@Meteo)) return
- if ($window(@Meteo.copyVilles)) window -c @Meteo.copyVilles
- var %t = 1, %p = MeteoLocation
- if ($hget(%p)) hfree %p
- var %ht = $+(MeteoVille,$hget(Meteo,Period)), %f = $hget(Meteo,Origin), %ox = $gettok(%f,1,32), %oy = $gettok(%f,2,32), %x = $gettok(%f,3,32)
- if ($pic(Meteo/fond.png).width > 350) .copy -o $qt(Meteo/fond.png) "Meteo/Backup.png"
- while $hget(%ht,%t).item {
- var %i = $ifmatch, %d = $hget(%ht,%i)
- tokenize 32 %d
- if (anim !isin $4) drawpic -tn @Meteo 0 $calc($1 + %ox) $calc($2 + %oy) $shortfn($+(Meteo/,$4))
- else drawpic -ctn @Meteo 16777215 $calc($1 + %ox) $calc($2 + %oy) $shortfn($+(Meteo/,$4))
- if ($3 != ø) drawtext -nr @Meteo 0 Tahoma 10 $calc($1 + %ox + 15) $calc($2 + %oy + 25) $+($3,°)
- hadd -m %p %i $calc($1 + %ox) $calc($2 + %oy)
- inc %t
- }
- if (!$hget(MeteoVille,Vigilance)) {
- var %te = $meteo.translate($puttok($asctime(dd mm yyyy),$calc($asctime(dd) + $hget(Meteo,Jour)),1,32)) $iif($hget(Meteo,Jour) <= 2,$iif(!$hget(Meteo,Period),Matin,Après-Midi))
- ²surligne @Meteo 10 $calc(%ox +2) $calc(%oy +2) %te
- }
- if ($hget(MeteoVille,Eph)) {
- tokenize 32 $replace($gettok($ifmatch,$+($calc($hget(Meteo,Period) +1),-),32), ,$chr(165))
- ²surligne @Meteo 12 70 375 $replace($1,$chr(165),$chr(32))
- ²surligne @Meteo -l 12 430 375 $replace($3,$chr(165),$chr(32))
- ²surligne @Meteo 12 70 395 $replace($5,$chr(165),$chr(32))
- ²surligne @Meteo 12 70 415 Lever du soleil : $replace($gettok($1-,-3,32),$chr(165),$chr(32))
- ²surligne @Meteo 12 70 435 Coucher du soleil : $replace($gettok($1-,-2,32),$chr(165),$chr(32))
- ²surligne @Meteo -l 12 430 395 Lune : $replace($gettok($1-,-1,32),$chr(165),$chr(32))
- }
- hadd -m Meteo Ready 1
- ²ref @Meteo
- }
-
- ;*************
- ;Autres écrans
- ;*************
- alias ²meteo.vigilance {
- if (!$window(@Meteo)) return
- ²centre @Meteo -b 40 Carte de vigilance
- meteo.wait
- if ($hget(MeteoLocation)) hfree MeteoLocation
- if ($hget(Meteo,Period) != $null) hdel Meteo Period
- hfree -w MeteoVille*
- hadd -m MeteoVille Vigilance 0 0 ø vigilance.gif
- fond.meteo /image/carte/vigilance/vigilance_fond.gif
- dl.meteo /image/carte/vigilance/vigilance.gif
- hadd -m MeteoTemp Carte Vigilance
- }
-
-
- alias ²meteo.aide {
- if (!$window(@Meteo)) return
- ²centre @Meteo -b 40 Aide
- var %d = drawtext -nr @Meteo 0 Tahoma 12 30
- %d 120 Bienvenue sur l'aide de Meteo (codé par ArKanis)
- %d 140 Cette version très simple permet de connaître la météo en France
- %d 160 ou ses DOM-TOMs et ce de un à six jours.
- %d 180 Pour commencer, choisissez où regarder la météo.
- %d 220 Vous obtiendrez plus d'informations et passant la souris sur une ville
- %d 240 et en cliquant dessus
- }
- alias ²meteo.credits {
- if (!$window(@Meteo)) return
- ²centre @Meteo -b 40 Crédits
- var %d = drawtext -pnr @Meteo 0 Tahoma 12 40
- %d 105 Utilitaire codé par ArKanis
- %d 125 Mon Site :
- ²link @Meteo 96 213 125 "www.arkanis.eu" www.arkanis.eu
- %d 145 Météo, images provenant de :
- ²link @Meteo 97 213 145 "www.lachainemeteo.com" www.lachainemeteo.com
- drawtext -onr @Meteo 0 Tahoma 12 40 220 Remerciements :
- %d 240 A mes testeurs, NeoBlaster et Panthouffle
- %d 260 A mes amis (non cités car trop nombreux pour l'être sans oubli :D)
- %d 280 A ma famille
- %d 325 Deux sites de scripting mIRC :
- ²link @Meteo 98 204 325 "www.ircfr.com" IRCfr
- drawtext -nr @Meteo 0 Tahoma 12 233 325 et
- ²link @Meteo 99 247 325 "www.scriptsdb.org" ScriptsDB
- ²centre @Meteo 355 Codé le 03/02/07 et 04/02/07
- }
-
- ;******
- ;Divers
- ;******
- alias -l meteo.wait {
- if ($show) ²clear @Meteo
- hadd -m Meteo Ready 0
- ²centre @Meteo 240 Chargement en cours ...
- ²ref @Meteo
- }
-
- ;**************
- ;Aliases utiles
- ;**************
- alias -l min return $calc(($1 + $2 - $abs($calc($1 - $2)))/2)
- alias -l max return $calc(($1 + $2 + $abs($calc($1 - $2)))/2)
- alias -l extension return $regsubex($1,(.+)\.([^\.]+)$,\2)
- alias -l meteo.translate {
- tokenize 32 $1-
- if (!$3) return
- var %j = $1, %m = $2, %a = $3
- if (%m < 3) var %n = $calc($int($calc(365.25*(%a - 1))) + $int($calc(30.6*(%m + 13))) + %j - 621049)
- else var %n = $calc($int($calc(365.25 * %a)) + $int($calc(30.6*(%m +1))) + %j - 621049)
- var %d = $iif($calc(%n % 7),$ifmatch,7)
- return $gettok(Lundi Mardi Mercredi Jeudi Vendredi Samedi Dimanche,%d,32)
- }
- ;End Of File
;************************
; Meteo
; By ArKanis
; http://www.arkanis.eu
;************************
; Version 1.3
; Powered by
; www.lachainemeteo.com
alias meteo {
if (($exists(GUI-ArKanis.mrc)) && (!$script(GUI-ArKanis.mrc))) {
.load -rs GUI-ArKanis.mrc
echo 2 -a * Chargement du fichier GUI-ArKanis.mrc effectué
}
if (!$isalias(²picwin)) {
echo 2 -a * Erreur : il faut avoir chargé le fichier GUI-ArKanis.mrc
if ($isalias(pw.dl)) {
if ($input.request.y.n(Voulez-vous télécharger le fichier GUI-ArKanis.mrc ?)) pw.dl
}
return
}
²picwin @Meteo 500 500 "Meteo"
titlebar @Meteo By ArKanis
²newmenu @Meteo Consulter la météo
²newitem @Meteo En France:²meteo.sel France,DOM TOM:²meteo.sel,$chr(9),Changer le jour:²meteo.selday,$chr(9),Fermer:²close @Meteo
²newmenu @Meteo Autres écrans
²newitem @Meteo Vigilance:²meteo.vigilance,Recherche:²meteo.rech
²newmenu @Meteo ?
²newitem @Meteo Aide:²meteo.aide,Crédits:²meteo.credits,Désinstaller:²meteo.delete
²drawmenu @Meteo $iif($isdir(Meteo),1 1,3 1)
²description @Meteo Temps 400
²ref @Meteo
}
alias ²meteo.sel {
if (!$window(@Meteo)) return
if ($hget(Meteo,Jour) !isnum 0-9) hadd -m Meteo Jour 0
if ($1) {
hadd -m Meteo Link $+(index.php?langue=fr&echeance=,$hget(Meteo,Jour))
²meteoopen France
}
else {
²centre @Meteo -b 40 Sélection d'un DOM-TOM
²centre @Meteo 225 Sélectionnez votre DOM-TOM
²select @Meteo 100 150 245 200 30 Guadeloupe¥Martinique¥Guyane¥La Réunion¥St Pierre et Miquelon¥Mayotte¥Polynésie Française¥Nouvelle Calédonie¥Wallis et Futuna
²button @Meteo 101 200 280 100 20 Sélectionner
²description @Meteo 100 Change la région sélectionnée dans une permutation circulaire
²description @Meteo 101 Affiche la météo de la région choisie
}
}
alias ²meteo.selday {
if (!$window(@Meteo)) return
²centre @Meteo -b 40 Sélection du jour
var %l = 0¥1¥2¥3¥4¥5¥6
if ($hget(Meteo,Jour) isnum 0-6) {
while ($left(%l,1) != $hget(Meteo,Jour)) var %l = $addtok($deltok(%l,1,165),$left(%l,1),165)
}
²select @Meteo 102 200 245 100 30 %l
²button @Meteo 103 200 280 100 20 Sélectionner
²description @Meteo 103 Donne la météo prévue pour dans X jours pour toutes les demandes à venir
}
alias ²meteo.rech {
²centre @Meteo -b 40 Recherche
²centre @Meteo 70 Entrez le nom de la ville ou son code postal
²edit @Meteo 8 200 110 100 20
²button @Meteo 9 200 135 100 20 Rechercher
²description @Meteo 9 Etablie une liste des résultats trouvés pour sélectionner rapidement une ville
}
alias meteo.answer if ($1 == ²meteo.rech) meteo.sclick 9 $2
alias ²meteo.delete {
noop $findfile(Meteo/,*,0,.remove $qt($1-))
.rmdir Meteo
²close @Meteo
window -a "Status Window"
if ($?!="Souhaitez-vous décharger le fichier $script (contient la Météo) ?") {
if (!$?!="Voulez-vous GARDER le fichier ?") .timer 1 1 .remove $qt($script)
.timer 1 1 .unload -rs $qt($script)
}
}
;**************
;Données du GUI
;**************
alias meteo.menu {
sockclose meteo*
if (($1) && ($hget(MeteoLocation))) hfree MeteoLocation
}
alias meteo.close {
hfree -w Meteo*
if ($window(@Meteo.copyVilles)) window -c @Meteo.copyVilles
}
on *:close:@Meteo:meteo.close
alias meteo.mouse {
if (!$window(@Meteo)) return
var %x = $1, %y = $2, %g
var %f = $hget(Meteo,Origin), %ox = $gettok(%f,1,32), %oy = $gettok(%f,2,32), %dx = $gettok(%f,3,32), %dy = $gettok(%f,4,32)
if (($inrect(%x,%y,%ox,%oy,%dx,%dy)) && ($hget(MeteoLocation)) && ($hget(Meteo,Ready))) {
var %t = 1, %l = MeteoLocation
while $hget(%l,%t).item {
var %i = $ifmatch, %d = $hget(%l,%i)
tokenize 32 %d
if ($inrect(%x,%y,$1,$2,35,28)) {
var %g = 1
if ($hget(MeteoTemp,Loc) == %i) break
hadd -m MeteoTemp Loc %i
.²backup @Meteo Villes
if (!$window(@Meteo.copyVilles)) ²svg @Meteo Villes
var %ht = $+(MeteoVille,$hget(Meteo,Period))
var %t1 = $replace(%i,$chr(165),$chr(32)), %t2 = T° : $gettok($hget(%ht,%i),3,32), %dy = 32
if (%t2 == T° : ø) var %t2, %dy = $calc(%dy - 14)
var %w = $max($width(%t1,Tahoma,10),$width(%t2,Tahoma,10)), %ox = $calc($1 -4 - %w / 2), %oy = $calc($2 -26)
drawrect -nr @Meteo 0 1 $calc($1 - %w) %oy $calc(%w +6) %dy
drawrect -fnr @Meteo 16761024 1 $calc($1 - %w +1) $calc(%oy +1) $calc(%w +4) $calc(%dy -2)
drawtext -nr @Meteo 0 Tahoma 10 $calc($1 -%w + (%w +6- $width(%t1,Tahoma,10)) /2) $calc(%oy + 2) %t1
if (%t2) drawtext -nr @Meteo 0 Tahoma 10 $calc($1 -%w + (%w +6- $width(%t2,Tahoma,10)) /2) $calc(%oy +17) %t2
²ref @Meteo
break
}
inc %t
}
if (%g) return
}
if ((!%g) && ($hget(MeteoTemp,Loc))) {
hdel MeteoTemp Loc
²backup @Meteo Villes
}
if ((!$hget(MeteoVille,Vigilance)) && ($hget(Meteo,Jour) <= 2) && ($hget(Meteo,Ready)) && (!$hget(@Meteo,Main))) {
if (($inrect(%x,%y,49,471,56,23)) && ($hget(Meteo,Period) != 0)) {
hadd -m Meteo Period 0
²efface @Meteo 25 60 450 410
.meteo.fond.apply Meteo/Backup.png
meteo.fond.apply
}
elseif (($inrect(%x,%y,371,471,79,23)) && ($hget(Meteo,Period) != 1)) {
hadd -m Meteo Period 1
²efface @Meteo 25 60 450 410
.meteo.fond.apply Meteo/Backup.png
meteo.fond.apply
}
}
}
alias meteo.sclick {
if (!$window(@Meteo)) return
if ($1 == 101) {
var %g = $calc(96 + $findtok(Guadeloupe¥Martinique¥Guyane¥La Réunion¥St Pierre et Miquelon¥Mayotte¥Polynésie Française¥Nouvelle Calédonie¥Wallis et Futuna,$²did(@Meteo,100),1,165))
hadd -m Meteo Link $+(index.php?langue=fr&echeance=,$hget(Meteo,Jour),&domtom=,%g)
²meteoopen $²did(@Meteo,100)
}
elseif ($1 == 103) {
hadd -m Meteo Jour $²did(@Meteo,102)
²drawmenu @Meteo 1 1
}
elseif ($hget(MeteoTemp,Loc)) {
hadd -m Meteo Link $+(index_detail.php?langue=fr&echeance=,$hget(Meteo,Jour),&num_ville=,$gettok($hget($+(MeteoVille,$hget(Meteo,Period)),$ifmatch),5,32))
²meteoopen $hget(MeteoTemp,Loc)
}
elseif ($1 == 9) {
if ($²did(@Meteo,8)) {
hadd -m Meteo Link $+(moteur_recherche.php?langue=fr&txt_search=,$ifmatch)
.meteo.wait
.²meteoopen
}
}
elseif ($1 == 11) {
var %v = $replace($²did(@Meteo,10),$chr(32),$chr(165))
hadd -m Meteo Link $+(index_detail.php?langue=fr&echeance=,$hget(Meteo,Jour),&num_ville=,$hget(MeteoVille,%v))
²meteoopen $deltok(%v,-1,165)
}
}
;*******
;Sockets
;*******
alias ²meteoopen {
if (!$window(@Meteo)) return
if ($window(@Meteo.copyVilles)) window -c $ifmatch
if ($show) {
meteo.wait
²centre @Meteo -b 40 $1- $meteo.date($hget(Meteo,Jour))
if ($hget(Meteo,Jour) <= 2) {
var %p = 51
while %p < 451 {
drawline -nr @Meteo $rgb($calc(30 + %p /2),250,$calc(255 - %p /2)) 2 %p 471 %p 494
inc %p 2
}
drawrect -nr @Meteo 0 1 49 470 402 26
drawtext -nr @Meteo 8388608 Tahoma 12 60 475 MATIN
drawtext -nr @Meteo 8388608 Tahoma 12 376 475 APRES-MIDI
}
}
sockclose meteo
sockopen meteo www.lachainemeteo.com 80
}
alias -l meteo.date {
var %d = $+($chr(40),$date($calc($ctime + 86400 * $1)),$chr(41))
if ($1 == 0) return aujourd'hui %d
if ($1 == 1) return demain %d
if ($1 == 2) return après-demain %d
else return dans $1 jours %d
}
on *:sockopen:meteo:{
if ($hget(MeteoQueue)) hfree MeteoQueue
hfree -w MeteoVille*
hfree -w MeteoTemp
hadd -m Meteo Period 0
sockwrite -n $sockname GET $+(http://www.lachainemeteo.com/,$$hget(Meteo,Link)) HTTP/1.0
sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
}
on *:sockread:meteo:{
var %a
sockread %a
if ($gettok(%a,1,9) == .Fond_Carte) sockmark $sockname FOND
elseif (($regex(%a,/background-image:url\('(.+)'\)/gi)) && ($sock($sockname).mark == FOND)) {
fond.meteo $regml(1)
sockmark $sockname 0
}
elseif ($regex(%a,Menu_Periode_200_([0-9])_J([0-9]))) {
if ($regml(2) != $hget(Meteo,Jour)) sockmark $sockname 0
else {
hadd -m MeteoTemp Heure $regml(1)
sockmark $sockname VILLES
if ($exists(Meteo/Backup.png)) drawpic -n @Meteo 50 70 Meteo/Backup.png
drawrect -nr @Meteo 0 1 49 69 402 402
²centre @Meteo 240 Chargement en cours ...
}
}
elseif ($regex(%a,bloc_ephem_j([0-9]))) {
if ($regml(1) == $hget(Meteo,Jour)) sockmark $sockname Ephemerides
}
elseif ($sock($sockname).mark == Ephemerides) {
if ($regex(%a,/height: 30px;.+>([^>]+)</div>$/i)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(1),$chr(32),$chr(165))
elseif ($regex(%a,(-?[0-9]+)°C)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($+($regml(1),°C),$chr(32),$chr(165))
elseif ($regex(%a,/height: 13px;.+">(.+)</div>/U)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(1),<br>,$chr(165),$chr(32),$chr(165))
elseif ($regex(%a,/(Lever|Coucher) : <[^>]+>([^<]+)</span></div>/i)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(2),$chr(32),$chr(165))
elseif ($regex(%a,/info([0-9])_ephem/i)) {
if (($regml(1) isnum 2-) && ($regex(H,%a,/>([^>]+)</div>/i))) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(H,1),$chr(32),$chr(165))
}
}
elseif ($regex(%a,/num_ville=([0-9]+)".+class="Liste_Elt_href">(.+)</a>/gU)) {
hadd -m MeteoVille Rech $addtok($hget(MeteoVille,Rech),$regml(2),165)
hadd -m MeteoVille $replace($regml(2),$chr(32),$chr(165)) $regml(1)
}
elseif ($regex(%a,/src="/image/logo/lachainemeteo/lcm_60x40.gif"/i)) sockmark $sockname VILLES
elseif ($sock($sockname).mark == VILLES) {
if ($regex(%a,/Periode_Temps_([0-1])/i)) hadd -m MeteoTemp Heure $regml(1)
if ($regex(%a,(-?[0-9]+) &\#176;)) hadd -m $+(MeteoVille,$hget(MeteoTemp,Heure)) $hget(MeteoTemp,Ville) $regml(1) $hget(MeteoTemp,Pic) $hget(MeteoTemp,CP)
elseif ($regex(%a,num_ville=([0-9]+))) hadd -m MeteoTemp CP $regml(1)
else {
if ($regex(%a,src="(.+)" class='Lien_Icone')) {
var %i = $regml(1), %f = $gettok(%i,-1,47)
if (!$exists($+(Meteo/,%f))) dl.meteo %i 1
hadd -m MeteoTemp Pic %f
}
var %r = /left\:([0-9]+\.?[0-9]?)px\;top\:([0-9]+\.?[0-9]?)px.+'(.+)'/ig
if ($regex(%a,%r)) hadd -m MeteoTemp Ville $remove($replace($regml(3),é,é,è,è,ç,ç,$chr(32),$chr(165),#039;,',ï,ï),&) $regml(1) $regml(2)
}
}
}
on *:sockclose:meteo:{
if ($hget(Meteo,Link)) hdel Meteo Link
if ($hget(MeteoVille,Rech)) {
²list @Meteo 10 150 200 200 200 $hget(MeteoVille,Rech)
²button @Meteo 11 150 405 200 20 Sélectionner
}
}
alias -l fond.meteo {
if (!$isdir(Meteo)) mkdir Meteo
var %f = $+(Meteo/fond.,$extension($1-))
if ($exists(%f)) .remove %f
hadd -m Meteo Fond $1-
hadd -m Meteo Fond2 %f
sockclose MeteoFond
sockopen MeteoFond www.lachainemeteo.com 80
}
on *:sockopen:MeteoFond:{
sockwrite -n $sockname GET $$hget(Meteo,Fond) HTTP/1.0
sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
}
on *:sockread:MeteoFond:{
var %a
sockread &a
if ((!$sock($sockname).mark) && ($bfind(&a, 1,$str($crlf,2)))) {
bcopy &b 1 &a $calc($ifmatch +4) -1
if ($bvar(&b,0)) bwrite $hget(Meteo,Fond2) -1 -1 &b
sockmark $sockname 1
}
elseif ($bvar(&a,0)) bwrite $hget(Meteo,Fond2) -1 -1 &a
}
on *:sockclose:MeteoFond:meteo.fond.apply
alias -l meteo.fond.apply {
if (!$window(@Meteo)) return
var %f = $hget(Meteo,Fond2)
if ($1-) var %f = $1-
elseif (!%f) var %f = Meteo/fond.png
if (!$exists(%f)) return
var %x = $pic(%f).width, %y = $pic(%f).height, %ox = $calc(250 - %x / 2), %oy = $calc(270 - %y /2)
drawrect -nr @Meteo 0 1 $calc(%ox -1) $calc(%oy -1) $calc(%x +2) $calc(%y +2)
drawpic -n @Meteo %ox %oy $shortfn(%f)
if ($show) {
hdel -w Meteo Fond*
hadd -m Meteo Origin %ox %oy %x %y
if ((!$sock(Meteo.dl)) && (!$hget(MeteoQueue,0).item)) meteo.generate
}
}
alias -l dl.meteo {
hadd -m MeteoQueue $1-
if ($exists($+(Meteo/,$gettok($1,-1,47)))) .remove $+(Meteo/,$gettok($1,-1,47))
if ($sock(dl.meteo)) return
.timer -h 1 500 dl.meteo.do
}
alias -l dl.meteo.do {
var %f = $hget(MeteoQueue,1).item
if (!%f) {
if (!$sock(MeteoFond)) meteo.generate
return
}
hadd -m MeteoTemp DL %f
hadd -m MeteoTemp DLName $+(Meteo/,$gettok(%f,-1,47))
sockclose Meteo.dl
sockopen Meteo.dl www.lachainemeteo.com 80
}
on *:sockopen:Meteo.dl:{
sockwrite -n $sockname GET $$hget(MeteoTemp,DL) HTTP/1.0
sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
}
on *:sockread:Meteo.dl:{
sockread &a
if ((!$sock($sockname).mark) && ($bfind(&a, 1,$str($crlf,2)))) {
bcopy &b 1 &a $calc($ifmatch +4) -1
if ($bvar(&b,0)) bwrite $$hget(MeteoTemp,DLName) -1 -1 &b
sockmark $sockname 1
}
elseif ($bvar(&a,0)) bwrite $$hget(MeteoTemp,DLName) -1 -1 &a
}
on *:sockclose:Meteo.dl:{
hdel MeteoQueue $hget(MeteoTemp,DL)
hdel -w MeteoTemp DL*
dl.meteo.do
}
alias -l meteo.generate {
if (!$window(@Meteo)) return
if ($window(@Meteo.copyVilles)) window -c @Meteo.copyVilles
var %t = 1, %p = MeteoLocation
if ($hget(%p)) hfree %p
var %ht = $+(MeteoVille,$hget(Meteo,Period)), %f = $hget(Meteo,Origin), %ox = $gettok(%f,1,32), %oy = $gettok(%f,2,32), %x = $gettok(%f,3,32)
if ($pic(Meteo/fond.png).width > 350) .copy -o $qt(Meteo/fond.png) "Meteo/Backup.png"
while $hget(%ht,%t).item {
var %i = $ifmatch, %d = $hget(%ht,%i)
tokenize 32 %d
if (anim !isin $4) drawpic -tn @Meteo 0 $calc($1 + %ox) $calc($2 + %oy) $shortfn($+(Meteo/,$4))
else drawpic -ctn @Meteo 16777215 $calc($1 + %ox) $calc($2 + %oy) $shortfn($+(Meteo/,$4))
if ($3 != ø) drawtext -nr @Meteo 0 Tahoma 10 $calc($1 + %ox + 15) $calc($2 + %oy + 25) $+($3,°)
hadd -m %p %i $calc($1 + %ox) $calc($2 + %oy)
inc %t
}
if (!$hget(MeteoVille,Vigilance)) {
var %te = $meteo.translate($puttok($asctime(dd mm yyyy),$calc($asctime(dd) + $hget(Meteo,Jour)),1,32)) $iif($hget(Meteo,Jour) <= 2,$iif(!$hget(Meteo,Period),Matin,Après-Midi))
²surligne @Meteo 10 $calc(%ox +2) $calc(%oy +2) %te
}
if ($hget(MeteoVille,Eph)) {
tokenize 32 $replace($gettok($ifmatch,$+($calc($hget(Meteo,Period) +1),-),32), ,$chr(165))
²surligne @Meteo 12 70 375 $replace($1,$chr(165),$chr(32))
²surligne @Meteo -l 12 430 375 $replace($3,$chr(165),$chr(32))
²surligne @Meteo 12 70 395 $replace($5,$chr(165),$chr(32))
²surligne @Meteo 12 70 415 Lever du soleil : $replace($gettok($1-,-3,32),$chr(165),$chr(32))
²surligne @Meteo 12 70 435 Coucher du soleil : $replace($gettok($1-,-2,32),$chr(165),$chr(32))
²surligne @Meteo -l 12 430 395 Lune : $replace($gettok($1-,-1,32),$chr(165),$chr(32))
}
hadd -m Meteo Ready 1
²ref @Meteo
}
;*************
;Autres écrans
;*************
alias ²meteo.vigilance {
if (!$window(@Meteo)) return
²centre @Meteo -b 40 Carte de vigilance
meteo.wait
if ($hget(MeteoLocation)) hfree MeteoLocation
if ($hget(Meteo,Period) != $null) hdel Meteo Period
hfree -w MeteoVille*
hadd -m MeteoVille Vigilance 0 0 ø vigilance.gif
fond.meteo /image/carte/vigilance/vigilance_fond.gif
dl.meteo /image/carte/vigilance/vigilance.gif
hadd -m MeteoTemp Carte Vigilance
}
alias ²meteo.aide {
if (!$window(@Meteo)) return
²centre @Meteo -b 40 Aide
var %d = drawtext -nr @Meteo 0 Tahoma 12 30
%d 120 Bienvenue sur l'aide de Meteo (codé par ArKanis)
%d 140 Cette version très simple permet de connaître la météo en France
%d 160 ou ses DOM-TOMs et ce de un à six jours.
%d 180 Pour commencer, choisissez où regarder la météo.
%d 220 Vous obtiendrez plus d'informations et passant la souris sur une ville
%d 240 et en cliquant dessus
}
alias ²meteo.credits {
if (!$window(@Meteo)) return
²centre @Meteo -b 40 Crédits
var %d = drawtext -pnr @Meteo 0 Tahoma 12 40
%d 105 Utilitaire codé par ArKanis
%d 125 Mon Site :
²link @Meteo 96 213 125 "www.arkanis.eu" www.arkanis.eu
%d 145 Météo, images provenant de :
²link @Meteo 97 213 145 "www.lachainemeteo.com" www.lachainemeteo.com
drawtext -onr @Meteo 0 Tahoma 12 40 220 Remerciements :
%d 240 A mes testeurs, NeoBlaster et Panthouffle
%d 260 A mes amis (non cités car trop nombreux pour l'être sans oubli :D)
%d 280 A ma famille
%d 325 Deux sites de scripting mIRC :
²link @Meteo 98 204 325 "www.ircfr.com" IRCfr
drawtext -nr @Meteo 0 Tahoma 12 233 325 et
²link @Meteo 99 247 325 "www.scriptsdb.org" ScriptsDB
²centre @Meteo 355 Codé le 03/02/07 et 04/02/07
}
;******
;Divers
;******
alias -l meteo.wait {
if ($show) ²clear @Meteo
hadd -m Meteo Ready 0
²centre @Meteo 240 Chargement en cours ...
²ref @Meteo
}
;**************
;Aliases utiles
;**************
alias -l min return $calc(($1 + $2 - $abs($calc($1 - $2)))/2)
alias -l max return $calc(($1 + $2 + $abs($calc($1 - $2)))/2)
alias -l extension return $regsubex($1,(.+)\.([^\.]+)$,\2)
alias -l meteo.translate {
tokenize 32 $1-
if (!$3) return
var %j = $1, %m = $2, %a = $3
if (%m < 3) var %n = $calc($int($calc(365.25*(%a - 1))) + $int($calc(30.6*(%m + 13))) + %j - 621049)
else var %n = $calc($int($calc(365.25 * %a)) + $int($calc(30.6*(%m +1))) + %j - 621049)
var %d = $iif($calc(%n % 7),$ifmatch,7)
return $gettok(Lundi Mardi Mercredi Jeudi Vendredi Samedi Dimanche,%d,32)
}
;End Of File
Conclusion
J'ai fait ce code car le site www.lachainemeteo.com avait changé la méthode de travail, et celle-ci permet un résultat bien plus beau je trouve :)
Merci à NeoBlaster et Panthouffle pour leur test
Merci à Wims pour son débogage
Le GUI n'est pas tout à fait fini, mais il suffit très largement pour cette Meteo
Il est nécessaire d'avoir AU MOINS mIRC 6.17 , 6.21 est conseillée
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Historique
- 04 février 2007 18:42:43 :
- une parenthèse dans le ON LOAD
- 10 février 2007 21:31:56 :
- Mise à jour du $sockread (qui n'existe pas) - Ajout de var %a pour les sockreads - Plus de texte donnant le jour (France aujourd'hui (10/02/07)) - Correction au niveau de l'affichage des images alors que toutes les infos ne sont pas recueillies - Mise à jour du screenshot et de la description - Correction du traitement des données pour la première ville de la liste venant du site (Montpellier au niveau de la France par exemple)
- 28 juillet 2007 17:40:31 :
- Correction de l'information "Lever/Coucher du Soleil" qui ne fonctionnait plus car le site avait rajouté des balises
- 28 juillet 2007 17:44:16 :
- Mise à jour de la rubrique "Votre code"
Sources du même auteur
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Communiquer de script à script, sans serveur... [ par Alerion ]
Question de servitude.Je suis, comme beaucoup, c'est à la mode ces temps-ci, en réseau avec ma femme.Elle a son script, j'ai mon script, on se connect
Dégradé [ par Bloock ]
Bon voila, je vais faire un lecteur mp3 en picwin, et j'aimerai savoir comment on fait [/b]un dégradé dans une fenêtre Picwin[/b]! Merci d'avance <img
Bannir quelqu'un pour un temps précis [ par djrems ]
Salut :)Je n'ai pas trouvé ce que je cherche ( ou alors j'ai mal cherché ).Donc, j'aimerais kick-ban quelqu'un pour un temps précis ( disons 2mn ) si
Graffiti [ par Naza ]
Salut, je viens de trouver un site, par hasard, qui offre la possibilité de créer ces graffitis en très peu de temps. C'est un générateur en ligne, j
Aide Socket & picwin [ par _VeSpArO_ ]
Salut tout le monde je voulai savoir comment stocker un fichier txt d'un site dans un fichier .txt ou autre dans mon mirc.CAD: telecharger par exemple
Picwin je pense lol jsuis meme pas sur du nom :s [ par Panther007 ]
Salut :) Bon je vous dit en quoi j'aimerais me faire aider , j'aimerais me fabriquer un jeu de Ping pong mais avant il faut que je sache comment utili
Dialog + Picwin [ par DiGhan ]
Bonjour,Voilà , j'ai plusieurs dialog, dans lequel je voudrais inclure des picwin.J'aimerais savoir comment faire pour bouger le dialog quand la title
auto replay apres un certain temps [ par Nunrg ]
le titre c'est simple a faire ma question est un peu plus compliqué...comment faire pour qu'il y ai un message envoyer a un utilisateur admeton apres
Savoir le temps en ligne dun personne [ par AwayZ ]
J'aimerais savoir comment faire pour récuperer le temps connecté d'une personne a un serveur
quelques question [ par KiNdErMaXi ]
voila, j'ai quelques questions a vous poser:*1) est-il possible de faire apparaitre un petit truc. Je m'explique, pointez de la souris la croix en hau
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version

HTC Magic
Entre 429€ et 429€
|