begin process at 2013 05 23 18:43:30
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > CONVERTISSEUR EURO POUR BOT

CONVERTISSEUR EURO POUR BOT


 Information sur la source

Note :
6 / 10 - par 2 personnes
6,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Niveau :Débutant Date de création :13/07/2004 Date de mise à jour :23/07/2004 16:01:01 Vu :4 829

Auteur : edp3242

Ecrire un message privé
Commentaire sur cette source (16)
Ajouter un commentaire et/ou une note

 Description

Ben, ca sert a convertir les monnaies qui sont devenues euro en euro et vice versa sur un salon.

Source

  • On *:text:*:#: {
  • ;monnaies nationales en euros
  • if ($1 == !fr|euro) { .msg $chan $nick $+ , $2 Francs francais valent $calc($2 / 6.55957) ¤ }
  • elseif ($1 == !fr|bel|euro) { .msg $chan $nick $+ , $2 Francs belges ou luxembougeois valent $calc($2 / 40.3399) ¤ }
  • elseif ($1 == !pes|euro) { .msg $chan $nick $+ , $2 Pesetas espagnols valent $calc($2 / 166.386) ¤ }
  • elseif ($1 == !liv|euro) { .msg $chan $nick $+ , $2 Livres irlandaise valent $calc($2 / 0.787564) ¤ }
  • elseif ($1 == !marks|all|euro) { .msg $chan $nick $+ , $2 Marks allemands valent $calc($2 / 1.95583) ¤ }
  • elseif ($1 == !lires|euro) { .msg $chan $nick $+ , $2 Lires italiennes valent $calc($2 / 1936.27) ¤ }
  • elseif ($1 == !flo|euro) { .msg $chan $nick $+ , $2 Florins hollandais valent $calc($2 / 2.2037) ¤ }
  • elseif ($1 == !sch|euro) { .msg $chan $nick $+ , $2 Schillings autrichiens valent $calc($2 / 13.7603) ¤ }
  • elseif ($1 == !ecus|euro) { .msg $chan $nick $+ , $2 Ecus portugais valent $calc($2 / 200.482) ¤ }
  • elseif ($1 == !marks|fin|euro) { .msg $chan $nick $+ , $2 Marks finlandais valent $calc($2 / 5.94573) ¤ }
  • ;euros en monnaies nationales
  • elseif ($1 == !euro|fr) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 6.55957) Francs francais }
  • elseif ($1 == !euro|fr|bel) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 40.3399) Francs belges ou luxembourgeois }
  • elseif ($1 == !euro|marks|all) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 1.95583) Marks allemands }
  • elseif ($1 == !euro|pes) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 166.386) Pesetas espagnols }
  • elseif ($1 == !euro|liv) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 0.787564) Livres irlandaises }
  • elseif ($1 == !euro|lires) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 1936.27) Lires italiennes }
  • elseif ($1 == !euro|flo) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 2.2037) Florins hollandais }
  • elseif ($1 == !sch|euro) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 13.7603) Schillings autrichiens }
  • elseif ($1 == !euro|ecus) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 200.482) Ecus portugais }
  • elseif ($1 == !euro|marks|fin) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 5.94573) Marks finlandais }
  • }
On *:text:*:#: {
;monnaies nationales en euros

  if ($1 == !fr|euro)  { .msg $chan $nick $+ , $2 Francs francais valent $calc($2 / 6.55957) ¤ }

  elseif ($1 == !fr|bel|euro) { .msg $chan $nick $+ , $2 Francs belges ou luxembougeois valent $calc($2 / 40.3399) ¤ }

  elseif ($1 == !pes|euro) { .msg $chan $nick $+ , $2 Pesetas espagnols valent $calc($2 / 166.386) ¤ }

  elseif ($1 == !liv|euro) { .msg $chan $nick $+ , $2 Livres irlandaise valent $calc($2 / 0.787564) ¤ }

  elseif ($1 == !marks|all|euro) { .msg $chan $nick $+ , $2 Marks allemands valent $calc($2 / 1.95583) ¤ }


  elseif ($1 == !lires|euro) { .msg $chan $nick $+ , $2 Lires italiennes valent $calc($2 / 1936.27) ¤ }

  elseif ($1 == !flo|euro) { .msg $chan $nick $+ , $2 Florins hollandais valent $calc($2 / 2.2037) ¤ }

  elseif ($1 == !sch|euro) { .msg $chan $nick $+ , $2 Schillings autrichiens valent $calc($2 / 13.7603) ¤ }

  elseif ($1 == !ecus|euro) { .msg $chan $nick $+ , $2 Ecus portugais valent $calc($2 / 200.482) ¤ }

  elseif ($1 == !marks|fin|euro) { .msg $chan $nick $+ , $2 Marks finlandais valent $calc($2 / 5.94573) ¤ }


;euros en monnaies nationales

  elseif ($1 == !euro|fr) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 6.55957) Francs francais }

  elseif ($1 == !euro|fr|bel) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 40.3399) Francs belges ou luxembourgeois }

  elseif ($1 == !euro|marks|all) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 1.95583) Marks allemands }

  elseif ($1 == !euro|pes) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 166.386) Pesetas espagnols }

  elseif ($1 == !euro|liv) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 0.787564) Livres irlandaises }

  elseif ($1 == !euro|lires) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 1936.27) Lires italiennes }

  elseif ($1 == !euro|flo) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 2.2037) Florins hollandais }

  elseif ($1 == !sch|euro) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 13.7603) Schillings autrichiens }

  elseif ($1 == !euro|ecus) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 200.482) Ecus portugais }

  elseif ($1 == !euro|marks|fin) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 5.94573) Marks finlandais }

}

 Conclusion

Bon ben c'est tres basique (en meme temps ca fais quelques jours que j'apprends a scripter.
Et puis si quelqu'un pouvait m'expliquer comment le raccourcir ca serait sympa :-)

Et pour le faire fonctionner vous taper !euro|fr <chiffre> !marks|fin|euro <chiffre> ...


 Historique

13 juillet 2004 15:16:00 :
Voila, j'ai mis un seul on text
23 juillet 2004 16:01:01 :
j'ai mis des elseif

 Sources du même auteur

Source avec Zip GÉNÉRATEUR VAN DAMME

 Sources de la même categorie

Source avec Zip CRÉER DU MONDE SUR VOTRE SERVEUR IRC par Averell
AVOIR UNE LISTE D'UTILISATEUR EN COULEURS SELON LEURS SEXE P... par WorldDMT
COMMANDES FANTAISIES ( OP DEOP , VOICE DEVOICE ) ORIGINALES par Orona
Source avec Zip Source avec une capture CORRECTEUR par Orona
Source avec Zip Source avec une capture [DLL] DESSINER COMME LES PICWINS SUR UNE DIALOGBOX (BONUS: J... par uaip

Commentaires et avis

Commentaire de PaDa le 13/07/2004 14:00:12

j'aime "pas trop" la facon dont tu as codé... tu aurais pu faire une table des taux de conversion et ensuite faire un seul on text en considérant les deux monnaies citées c'eut été plus joli et intéressant ... et configurable aussi ... :)

Commentaire de PaDa le 13/07/2004 14:06:10

qq conseils tout de même : $2- < le "moins" est inutile : si il ya un $3 , alors le $calc($2- * ou / gnagna) rendra 0 auquel cas c pas bon . donc $2 suffit .
Ensuite fais un seul on text :
on *:text:*:#:{
if ($1 == !fr|euro) { ... }
}
etc .
Quand tu maitriseras mieux tout ca pourquoi ne pas faire un dialog avec les taux de conversions configurables , que tu mettras dans un fichier .ini ou une hashtable . (fais d'abord une version ou tu les mets dans des variables c plus facile au début et ensuite tu changeras)
Bref plein de trucs a exploiter =)

Commentaire de edp3242 le 13/07/2004 14:52:06

J'ai essayer de le faire avec un seul on text voila ce que j'ai fait:

On *:text:*:#: {

  if ($1 == !fr|euro*)  { .msg $chan $nick $+ , $2 Francs francais valent $calc($2 / 6.55957) ¤ }

  if ($1 == !fr|bel|euro*) { .msg $chan $nick $+ , $2 Francs belges ou luxembougeois valent $calc($2 / 40.3399) ¤ }

  if ($1 == !pes|euro*) { .msg $chan $nick $+ , $2 Pesetas espagnols valent $calc($2 / 166.386) ¤ }

  if ($1 == !liv|euro*) { .msg $chan $nick $+ , $2 Livres irlandaise valent $calc($2 / 0.787564) ¤ }

  if ($1 == !marks|all|euro*) { .msg $chan $nick $+ , $2 Marks allemands valent $calc($2 / 1.95583) ¤ }


  if ($1 == !lires|euro*) { .msg $chan $nick $+ , $2 Lires italiennes valent $calc($2 / 1936.27) ¤ }

  if ($1 == !flo|euro*) { .msg $chan $nick $+ , $2 Florins hollandais valent $calc($2 / 2.2037) ¤ }

  if ($1 == !sch|euro*) { .msg $chan $nick $+ , $2 Schillings autrichiens valent $calc($2 / 13.7603) ¤ }

  if ($1 == !ecus|euro*) { .msg $chan $nick $+ , $2 Ecus portugais valent $calc($2 / 200.482) ¤ }

  if ($1 == !marks|fin|euro*) { .msg $chan $nick $+ , $2 Marks finlandais valent $calc($2 / 5.94573) ¤ }



  if ($1 == !euro|fr*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 6.55957) Francs francais }

  if ($1 == !euro|fr|bel*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 40.3399) Francs belges ou luxembourgeois }

  if ($1 == !euro|marks|all*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 1.95583) Marks allemands }

  if ($1 == !euro|pes*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 166.386) Pesetas espagnols }

  if ($1 == !euro|liv*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 0.787564) Livres irlandaises }

  if ($1 == !euro|lires*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 1936.27) Lires italiennes }

  if ($1 == !euro|flo*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 2.2037) Florins hollandais }

  if ($1 == !sch|euro*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 13.7603) Schillings autrichiens }

  if ($1 == !euro|ecus*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 200.482) Ecus portugais }

  if ($1 == !euro|marks|fin*) { .msg $chan $nick $+ , $2 $+ ¤ valent $calc($2 * 5.94573) Marks finlandais }

}

Ca marche pas, pourquoi?

Commentaire de edp3242 le 13/07/2004 15:14:04

J'ai trouvé mon erreur, Je modifie

Commentaire de winwarrior le 13/07/2004 18:03:52

et voila encore un convertisseur ... enfin pour une fois il y a plusieurs pays ...
voila sinon je vois pas trop comment mieu le coder lol

Bon scripting.

Commentaire de PaDa le 13/07/2004 18:48:14

pour mieux le coder il faudrait déja donner a chaque monnaie un nom sans " | " de facon a pouvoir reconnaitre les monnaies de facon claire ...
ensuite un alias reconnait la premiere monnaie et la deuxième et cherche les taux qu'on a stocké j'sais pas ou... la bonne opération est faite ensuite en repassant toujours a l'euro par exemple ... c pas d'une utilité foudroyante mais c ca ke j'entendais par mieux le coder : faire un truc configurable et pour lequel on pourrait même rajouter des monnaies etc ... j'vais ptet le faire juste pour montrer a edp3242 a la limite ... lol

Commentaire de PaDa le 13/07/2004 19:53:58

A titre pédagogique (LOL) : c'est surement très mal codé surement plein d'erreurs etc je poste juste ca pour donner une idée de ce qui peut etre intéressant ...
fonctionnement : " !convertir Euro|FFR 5 "
pour cui qui a l'alias /dialog -m Convert Convert ...

dialog Convert {
  title "Taux"
  size -1 -1 109 28
  option dbu
  combo 1, 24 2 60 101, size drop
  text "Monnaie", 2, 1 4 21 8
  edit "", 3, 17 17 44 10
  text "Taux", 4, 1 18 14 8
  text "= 1 Euro", 5, 63 18 23 8
  button "+", 6, 86 2 10 10
  button "-", 7, 98 2 10 10
  button "Ok", 8, 88 17 20 10,ok
}
on *:Start:{
hmake Conversions 50
if ($exists(taux.txt)) { hload Conversions taux.txt }
else { hadd Conversions Euro 1 | hsave -o Conversions taux.txt }
}
on *:dialog:Convert:*:*:{
  if ($devent == init) { Conver.update }
  if ($devent == sclick) {
    if ($did == 1) { did -ra $dname 3 $hget(Conversions,$did(1).seltext) }
    if ($did == 6) { hadd Conversions $$?="Nom de la monnaie ? (ex: FFR,Mark)" $$?="Taux de conversion ? (équivalence à 1 Euro)" | Conver.update }
    if ($did == 7) && ($did(1).seltext != Euro) { hdel Conversions $did(1).seltext | Conver.update }
  }
  if ($devent == edit) && ($did(1).seltext != Euro)  { hadd Conversions $did(1).seltext $iif($did(3),$ifmatch,0) }
  if ($devent == close) { hsave -o Conversions taux.txt }
}
alias Conver.update {
  did -r Convert 1,3
  var %x = $hget(Conversions,0).item
  while %x { did -a Convert 1 $hget(Conversions,%x).item | dec %x }
  did -c Convert 1 1
did -ra Convert 3 $hget(Conversions,$did(1).seltext)
}
alias Conversion {
if  (!$hget(Conversions,$1)) || (!$hget(Conversions,$2)) || ($3 !isnum) return ERROR
else return $calc($3 * $hget(Conversions,$2) / $hget(Conversions,$1))
}
On *:text:!convertir *:#: {
msg $chan $nick $+ , $3 $gettok($2,1,124) $+ s valent $round($conversion($gettok($2,1,124),$gettok($2,2,124),$3),2) $gettok($2,2,124) $+ s
}

C'est une piste , ca te fait voir un peu le fonctionnement des hashtables et tu pourras surement faire un truc configurable de cette manière ... et donc intéressant niveau code a défaut de l'être vraiment niveau utilisation j'avoue =)
bonne continuation

Commentaire de PaDa le 13/07/2004 19:56:22

ah oui ... rebootez votre mirc a la première utilisation ou sinan " /hadd -m Conversions Euro 1 " suffira

Commentaire de edp3242 le 13/07/2004 20:03:28

Merci PaDa je vais essayé de comprendre ton code et après je changerai le mien ;)

Commentaire de dutscher le 14/07/2004 01:31:15

c pas mal pour un debutant edp je té mets 6/10 compte tenu de ton niveau

Commentaire de Kerrigan le 14/07/2004 18:55:18

trop de if ! c pas bon faut garder le premier et transformer tous les autres en elseif.

sinon c deja vu ... dommage.

Commentaire de eleve le 15/07/2004 04:58:48

moi j'ai fait un code il y a deja un moment pour convertir fr eur et vis versa.

assez simple mais tout aussi efficace pour bot aussi.

on *:TEXT:!euro *:#:{
  if ($2 == $null) { notice $nick Tu n'as pas précisé la conversation à effectuer }
  else { msg $chan 1,1 4 $2- Euros 7font 4 $calc($2- * 6.55957) 7Francs | halt }
}

on *:TEXT:!franc *:#:{
  if ($2 == $null) { notice $nick Précise la conversation à effectuer }
  else { msg $chan 1,1 4 $2- Francs 7font 4 $calc($2- / 6.55957) 7Euros | halt }
}

voila j'suis pas un grand scripteur alors j'vais etre critiqué :) m'enfin chez moi ça marche

Commentaire de tempusus le 15/07/2004 17:24:25 administrateur CS

bonjour,

pour un debutant je trouve que c'est pas mal. Avec l'aide des scripteurs de ce site je suis sur que tu va vite t'améliorer.

Je te met 6/10 pour cette premiere source :)

cordialement
Tempusus

Commentaire de edp3242 le 15/07/2004 18:03:34

Merci tempusus et Kerrigan sa changerai quoi si je mettai des elseif ?

Commentaire de winwarrior le 15/07/2004 19:05:31

edp3242 > ça accelererai le script (un petit peu) ... et ça évite certaines erreurs =]

Commentaire de Kerrigan le 29/07/2004 19:19:07

si tu met des elseif ça evite au mirc de continuer a tester toues les autres possibilités. Des qu'il en trouve une il s'arrete. Exemple concret, imagine que tu cherches ta montre, tu peux la chercher dans ta chambre dans la cuisne le bureau etc. imaginons qu'avant de faire toues les pieces tu retrouve ta montre. Tu ne vas pas continuer a la chercher alors que tu l'as deja au bras. Pour le mirc c pareil (dans ce cas) dans la mesure ou une seule action va se déclencher a la foi ça ne sert a rien de continuer a chercher les autres possibilité. (on cherche plus qu'on on trouve qqch ... pauvre mmirc, il a du se sentir bete lol)

dsl pour le retard de la réponse gt pas chez moi :D

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2013
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales