Variable Long -> int [Résolu]

Signaler
Messages postés
266
Date d'inscription
vendredi 8 juillet 2005
Statut
Membre
Dernière intervention
26 juin 2008
-
Messages postés
266
Date d'inscription
vendredi 8 juillet 2005
Statut
Membre
Dernière intervention
26 juin 2008
-
Voilà, c'est à mon tour de poser une question ^^

Alors, je suis en train de refaire, et améliorer HLirc, mais je suis devant un problème...

Pour envoyer des requêtes rcon(en gros admin...), il me faut demander un challenge, une sorte de pass de transaction.

Pour les nouveaux serveur Half-life(serveurs source) ce pass se
demande via une socket udp et nous est renvoyé de cette manière :

255 255 255 255 065 181 116 043 
015



181 116 043 
015 représente le code que je cherche. 
Cependant ces 4 suites de chiffres sont de type long... je sais pas comment les changer en int.
181 116 043 
015
=
875835443

Voilà... si quelqu'un peut m'aider, ça serait très gentil :) que le code soit mirc, javascript ou autre ça m'intéresse quand même :)

J'avais trouvé un script permettant de changer pour le type float... si ça peut aider qq1 qui s'y connait plus que moi :

;; Converts from float32 (4 bytes) to decimal - by noob
alias unfloat {
  echo -a $1
  if ($gettok($1,4,32) >= 100) return error
  var %x 4, %f , %b
  while (%x > 1) { %f = %f $+ $base($gettok($1,%x,32),10,2,8) | dec %x }
  echo -a %f ?
  var %m 1 $+ $mid(%f,10,23) , %e $calc($base($mid(%f,2,8),2,10) -127) , %x 24
  while (%x > 0) { dec %x | %b = $calc( %b + 2 ^ $calc(%x + %e) * $mid( %m , $calc(24 - %x) , 1 ) ) }
  return $calc(%b / 2^23)
}

exemple : $unfloat(102 169 187 68) = 1501.28125
ça convertit un nombre float en int.

Merci beaucoup :)



--------------------------------
Signature des parents :

2 réponses

Messages postés
1726
Date d'inscription
vendredi 12 septembre 2003
Statut
Membre
Dernière intervention
13 juin 2009
1
"exemple : $unfloat(102 169 187 68) = 1501.28125

ça convertit un nombre float en int."



heu un int t'as pas de virgule



le float étant plus grand que le type long, ça marcherait pas cet addon avec ton nombre? oO





-1337 connexion-
Messages postés
266
Date d'inscription
vendredi 8 juillet 2005
Statut
Membre
Dernière intervention
26 juin 2008

Bon hé bien en fait j'ai réussi à régler mon problème...

Il n'y a pas réellement besoin de traduire les 4bytes, mais de les redonner plus difficilement que d'habitude ^^

Au lieu de lancer normalement mes requetes aux serveurs Half-life, je
suis obligé maintenant de placer ces requêtes dans des variables
binaires pour ensuite les envoyer par socket... :/ Si c'est pas chiant !

Merci quand même :)

------------------------------

Signature des parents :