AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 createList

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

Messages : 1279
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

MessageSujet: createList   Jeu 8 Mar 2012 - 15:02

Bonjour,

J'ai recréé le script pour créer des listes car raz-le-bol d'écrire "ds_list_add(nom_de_ma_liste,valeur)" 50 fois par jour....

Voici ce que ça donne:
Code:
//HEADER: (texte,separateur, real);

/*DESCRIPTION:
 * Sript qui permet de creer une liste
 * à partir d'une chaine de mots/chiffres sépararé
 * par un sépérateur défini.
 */

/*ARGUMENTS:
 * 0: Texte à disséquer.
 * 1: Séparateur.
 * 2: real, indique s'il sagit de chiffres ou d'une chaine.
 */


var text, separator, list, length, word;

text=argument0; //Le texte à séparer.
separator=argument1; //On récupére le caractère qui sert de séparateur.
list= ds_list_create(); //On creer la liste à renvoyer.
length=string_length(text); //La longeur du texte.
word=''; //Variable qui sert à stocker les mots.


//On parcourt tout les caractères du texte.
for ( i=1; i<=length; i+=1 ) {
   
    //On récupére le caractère parcourut.
    character = string_copy(text,i,1);
   
    //Si le caractère n'est pas le séparateur on l'ajoute à la chaine "word".
    if(  character!=separator )
        word+=character;
    else{
    //Sinon on ajoute la chaine/chiffre "word" à la list et on la vide.
        if(argument2) word=real(word);
        ds_list_add(list,word);
        word='';
    }
}
//On retourne la liste creée.
return list;

Il prend trois arguments:
0: Ce que vous voulez écrire dans votre liste.
1: Le caractère qui va séparé vos valeurs
2: S'il s'agit de chiffres ou de texte.

Voici un exemple d'utilisation:
Code:
ma_liste_de_fruits=createList(
'Fraise|'+
'Framboise|'+
'Banane|',
'|',
0);

Code:
ma_liste_de_proportions=createList(
'2|'+
'5|'+
'120|',
'|',
1);

Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
avatar

Messages : 1608
Localisation : Montpellier

MessageSujet: Re: createList   Jeu 8 Mar 2012 - 15:25

Simple, efficace. Me gusta.

_________________
 
Home is not a place, it's a feeling.
Revenir en haut Aller en bas
M@d_Doc
Modérateur
avatar

Messages : 6597
Localisation : 47°44'8.04
Projet Actuel : aucun

MessageSujet: Re: createList   Jeu 8 Mar 2012 - 15:26

idem, c'est le genre de fonction qui manque terriblement à gm par défaut, et je suis content de pas avoir à réfléchir sur ce genre de trucs, merci ^^

_________________
Tous les icones de gm utilisables sur le cbna ICI
Revenir en haut Aller en bas
http://www.lecbna.org
Contenu sponsorisé




MessageSujet: Re: createList   

Revenir en haut Aller en bas
 
createList
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: