AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 get_integer2

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
SPLN
Utilisateur confirmé: Rang ***
avatar

Messages : 588
Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça
Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)

MessageSujet: get_integer2   Sam 10 Avr 2010 - 16:59

Voici une version améliorée de get_integer().
En gros la seule chose qui change c'est qu'il supporte les nombres à virgule ou plutot à '.' à cause de nos chers copains anglais.

Sa seule limite....
La fonction '/' qui arrondi, donc vous aurez maximum:
Nombre.xx

Code:
var a, b, c, d, e, f, g, h, i, j, k;
b = argument0
c = argument1
a = get_string(b,c)
d = 1 //S_c_a Position
f = 0 //Limite Decimal
g = "" //String Final
h = 0 //String P1
i = 0 //String P2
j = 0 //Str_len P2
k = 0 //Real Final

if string_length(a) > 0
{
do
{
e = string_char_at(a,d)
//Entier
if e = '0' or e = '1' or e = '2' or e = '3' or e = '4' or e = '5' or e = '6' or e = '7' or e = '8' or e = '9'
{g += string_copy(e,0,1)}
//Decimal
if e = '.'
{if f = 0 {g += string_copy(e,0,1); f = 1}}
d += 1
} until(d > string_length(a))
}


if f = 1
{
//Partie N/D
h = string_copy(g,0,string_pos('.',g)-1)
i = string_copy(g,string_pos('.',g)+1,string_length(g))
j = string_length(i)
k = real(h) + real(real(i)/power(10,real(j)))
}

if f = 0
{k = real(g)}

return k;

Voilà tout!!!

_________________
SP Lecteur Multimedia
I am an in the GM Quiz!
Revenir en haut Aller en bas
http://sp-lecteur-multimedia.skyrock.com/
Wargamer
*Excellent utilisateur*
avatar

Messages : 6936
Projet Actuel : Bataille de cake au fruits

MessageSujet: Re: get_integer2   Sam 10 Avr 2010 - 17:25

Super super , mais en fait c'est un get double :nah:

_________________

Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
avatar

Messages : 1609
Localisation : Montpellier

MessageSujet: Re: get_integer2   Sam 1 Jan 2011 - 3:48

What about...
Code:
return real(get_string(argument0,string(argument1)))

Non ?

_________________
 
Home is not a place, it's a feeling.
Revenir en haut Aller en bas
master47
Utilisateur confirmé: Rang *****
avatar

Messages : 2368
Projet Actuel :
-------------------
> PacWars
> The Perfect Pattern Studio

MessageSujet: Re: get_integer2   Sam 1 Jan 2011 - 11:33

D-z a écrit:
What about...
Code:
return real(get_string(argument0,string(argument1)))

Non ?

cela peut fonctionner mais ca ne gère en aucun cas les exceptions.

_________________
Suivez la timeline ! The PacWars Timeline
C# .NET, Web & Sound Design.
---
Oldies: http://livegallery.lescigales.org/
Lawl :
Spoiler:
 
Revenir en haut Aller en bas
http://theperfectpattern.tumblr.com
D-z
Utilisateur confirmé: Rang *****
avatar

Messages : 1609
Localisation : Montpellier

MessageSujet: Re: get_integer2   Sam 1 Jan 2011 - 18:36

Certes.

Code:
// get_real(str,def)
var _s,_n,_p,_i,_c;
_s=get_string(argument0,string(argument1))
_p=false
_n=""

for(_i=0;_i<string_length(_n);_i+=1)
 {_c=string_char_at(_s,_i)
 if(ord(_c)>47 && ord(_c)<58) _n+=_c
 if(_c='.' &&!_p) {_n+='.' _p=true}
 }

return real(_n)

Seuls les chiffres et la virgule sont pris en compte. Les virgules multiples sont ignorées.

_________________
 
Home is not a place, it's a feeling.
Revenir en haut Aller en bas
Contenu sponsorisé




MessageSujet: Re: get_integer2   

Revenir en haut Aller en bas
 
get_integer2
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Scripts GML-
Sauter vers: