Stockage des donn=E9es1

Stockage des données Plein écran

1 de 3

Introduction
Le stockage de données est très important dans un jeux, qu'il soit pour garder des statistique d'un personnage ou d'un tableau de chaine ou encore sur fichier. Dans cet article nous verrons les différentes possibilité que peuvent nous apporter un stockage de données complexe.

Exemple : pour tout les novices, n'avez vou pas déjà rêvé d'avoir une variable contenant plusieures valeures ? ou un tableau qui contient un autre tableau qui lui même contient des Chiffres stocké et de lettres à la fois ?

TYPE RECORD

Une des plus importante partit qu'un programmeur doit savoir est celui des enregistrements. L' enregistrement permet de fabriquer nous même notre propre type. Un enregistrement peut contenir une infinité de valeur de différent type. Voir la déclaration ci dessous.

TmonType = RECORD

Chiffre1 : Integer;

Chiffre2 : Integer;

Chaine1 : String;

Char1 : Char;

End;

Attention : la déclaration doit se trouver sour TYPE.

 

Ainsi on pourra déclarrer sous VAR : mavariable : = TmonType; ---- ou TmonType possède un champ chiffre1,chiffre2,chaine.

 

LES CHAMPS D'ENREGISTREMENT

Un enregistrement est composé de plusieurs champs en fait. Chaque champs possède sont Type bien spécialisé. Delphi étant un language fortement "Typé" nous ne pouvons nous passer de ce type de stockage de données. Donc pour rejoindre un champs il suffit d'utiliser un point, suivit de "ID DE CHAMPS".

Exemple en se fiant sur TmonType décrit plus haut :

Var
Toto : TmonType;

//pour rejoindre le champs chaine 1.

Edit1.Text :=Toto.Chaine1;

//pour insérer une valeur dans chiffre1.

Toto.chiffre1 := 8;

UTILITÉ

Admettons que vous voulez faire un jeux. Votre personnage aura besoin de points de vie, un nom, une liste d'équipement ect...

Un exemple simple de cela :

TYPE

TfeuilleDepersonnage = Record

Nom : Strings[20]; --------------- (on limite à 20 la chaine pour le nom)

Hp : Integer; --------------------- Champs points de vie.

Equipement : Array[1..10] of boolean --------- pour stocker quel item on possède.

End;

End;

Voyez comme c'est simple, pour tester si on a l'épée admetton que ce soit l'item 3 nous ferons :

If Peronnage.Equipement[3] then

// traitement !

COMPLIQUER LES CHOSES

Bon vous êtes rendu bon avec ces concepts ? Compliquons les choses admettons que l'on fasse plusieurs enregistrements liées ensembles ? Regarder Attentivement ce qui suit :

TYPE

Titem = Record

Image : Tbitmap;

Description : String[25];

End;

Tpersonnage = Record

Nom : Strings[25];

Taille : Integer;

Poids : Integer;

Cheveux : String[20];

Hp : Integer;

Item : Array[1..100] of Titem; ß A REMARQUER

End;

End;

Ce n'est donc pour dire que vous pouvez tenter de faire virtuellement ce que vous voulez avec ce genre de stockage de données.

Exemple d'application sur CE :

PROCEDURE CouicouiBlabla ;

Var

Joueur1 : Tpersonnage;

Begin

Joueur1. Nom := 'Super-Roger';

Joueur1.Poids := 300;// trés gros

Joueur1.Taille := 5;

Joueur1.Cheveux := 'Roux';

Joueur1.Hp := 3;

Joueur1.item[5].Image := DxImageLib.Items[1];

Joueur1.Item[5].Description := 'Super-BOOTS-a-super-roger = !!!';

End;

La suite à Venir "Les Fichiers"

Vous Avez des questions ? HOTDOT@SOFTHOME.NET