begin process at 2012 05 27 17:45:31
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Jeux

 > UN PETIT RPG (DEV-C++)

UN PETIT RPG (DEV-C++)


 Information sur la source

Note :
7,67 / 10 - par 3 personnes
7,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Jeux Niveau :Débutant Date de création :04/02/2003 Date de mise à jour :04/02/2003 22:10:53 Vu / téléchargé :7 797 / 487

Auteur : squall51

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

 Description

C'est un petit rpg creer avec seulement des fonction de base, donc tout le monde peut comprendre.J'ai essayer de bien le commenter

Source

  • #include <iostream.h>
  • #include <string.h>
  • #include <stdlib.h>
  • #include <time.h>
  • #include <cstdlib>
  • #include <stdio.h>
  • #define NBMONSTRESMAX 5
  • #define NBLIEUX 5
  • #define DOMMAGE 19
  • #define VITESSE 21
  • #define CHANCE 5
  • int combat(short* force,short* dex,short* vit,short* intel,short*xp,int*classe){ //fonction qui regit les
  • srand(time(0)); //combat:monstres,lieux,dommages...
  • int chxlieu; //choix aléatoire
  • chxlieu = 1+ rand() % NBLIEUX ; //du lieu
  • int chxmonstre; //choix aléatoire
  • chxmonstre =1 + rand() % NBMONSTRESMAX ; //du monstre
  • const char* li;
  • switch (chxlieu){
  • case 1: li="dans une plaine";break;
  • case 2: li="en montagne";break;
  • case 3: li="sur une colline";break; //Les differents lieux
  • case 4: li="dans une grotte";break;
  • case 5: li="dans une foret";break;
  • default:break;
  • }
  • cout<<"\nVous etes "<<li<<endl;
  • const char* adversaire;
  • short forceM,dexM,vitM,intelM;
  • switch (chxmonstre){
  • case 1:adversaire="Ogre";forceM=40;dexM=20;vitM=100;intelM=10;break; //les differents
  • case 2:adversaire="Chauve-souris";forceM=10;dexM=20;vitM=20;intelM=10;break; //monstres
  • case 3:adversaire="Orc berserker";forceM=50;dexM=25;vitM=55;intelM=10;break;
  • case 4:adversaire="Chenille geante";forceM=20;dexM=30;vitM=50;intelM=10;break;
  • case 5:adversaire="Chevalier noir";forceM=60;dexM=30;vitM=100;intelM=30;break;
  • case 6:adversaire="Gobelin";forceM=20;dexM=20;vitM=30;intelM=10;break;
  • default:break;
  • }
  • cout<<"\nVous rencontrez un monstre: "<<adversaire<<endl;
  • short xpgagn; //variable pour compter les pts d'xp
  • xpgagn=(forceM + dexM + vitM + intelM)/10;
  • short dexDep=*dex;
  • int dommageP;
  • int dommageM;
  • short intelP=*intel;
  • short intelM2=intelM;
  • int chanceP;
  • int chanceM;
  • short pvM=vitM;
  • short pvP=*vit;
  • short ptdomP=*force;
  • short ptdomM=forceM;
  • while(pvM>=0 & pvP>=0){ //boucle pour que le combat continue tant que l'un des 2 protagoniste n'est pas mort
  • chanceP=1+rand() % CHANCE * intelP; // chance pour les coups critique
  • chanceM=1+rand() % CHANCE * intelM2; //
  • const char* critik;
  • if (*dex>=dexM){ //Pour savoir qui commence
  • if(chanceP>=100){ //
  • critik="Coup critique!!!!Les points de dommages sont doubles"; // Teste la chance pour savoir si le coup est doublé
  • dommageP=(ptdomP * (1 +rand() % DOMMAGE))/5;} //
  • else{ //
  • critik="coup normal"; // sinon le coup est normal
  • dommageP=(ptdomP * (1 +rand() % DOMMAGE))/10;} //
  • cout<<"\nVotre tour"<<endl;
  • cout<<"Vie du monstre: "<<pvM<<endl;
  • switch (*classe){
  • case 1:cout<<"Vous lui assener un terrible coup de hache"<<endl;break; //
  • case 2:cout<<"Vous lui decocher une volee de fleche"<<endl;break; // phrase differente selon la classe
  • case 3:cout<<"Vous lui lance une enorme boule de feu"<<endl;break;} // du perso
  • cout<<critik<<endl;
  • cout<<"dommage: "<<dommageP<<endl;
  • pvM= pvM - dommageP;
  • cout<<"Point restants: "<<pvM<<endl;
  • *dex=*dex-rand() % VITESSE; //dexterite reduite aléatoirement
  • }
  • else {
  • if(chanceM>=100){ //
  • critik="Coup critique!!!!Les points de dommages sont doubles"; //
  • dommageM=(ptdomM * (1 +rand() % DOMMAGE))/5;} //
  • else{ //
  • critik="coup normal"; //
  • dommageM=(ptdomM * (1 +rand() % DOMMAGE))/10;} //
  • cout<<"\nTour du monstre"<<endl; //
  • cout<<"Vie du joueur: "<<pvP<<endl; // Meme chose mais pour le monstre
  • cout<<critik<<endl; //
  • cout<<"dommage: "<<dommageM<<endl; //
  • pvP= pvP - dommageM; //
  • cout<<"Point restants: "<<pvP<<endl; //
  • dexM=dexM-rand() % VITESSE; //
  • }
  • }
  • short xptotale; // pour diferencier l'xp gagné de l'xp totale
  • xptotale=*xp + xpgagn; //
  • if (pvM<=0){
  • cout<<"Le monstre est mort"<<endl;
  • if ((xptotale)>=100){ //
  • cout<<"\nVous avez gagne: "<<xpgagn<<" pts d'xp"<<endl; //
  • cout <<"\nVous pouvez augmenter de 5 une de vos stats"<<endl //
  • <<"1.Force"<<endl // Si level up, alors on augmente les stats
  • <<"2.Dex"<<endl //
  • <<"3.Vit"<<endl //
  • <<"4.Intel"<<endl; //
  • short carac;
  • cin>>carac;
  • switch (carac){ //
  • case 1:*force=*force + 5;break; //
  • case 2:*dex=*dex + 5;break; // selon la reponse, on augmente une certaine carac
  • case 3:*vit=*vit + 5;break; //
  • case 4:*intel=*intel + 5;break; //
  • default:cout<<"Ce n'est pas un choix valable"<<endl;}
  • xptotale=xptotale - 100; //
  • cout<<"Il vous reste: "<<100-xptotale<<" pts d'xp avant le level up"<<endl; // pour afficher l'xp e t lancer un autre combat
  • combat(&*force,&dexDep,&*vit,&*intel,&xptotale,&*classe); //
  • }
  • else {
  • cout<<"\nVous avez gagne: "<<xpgagn<<" pts d'xp"<<endl; // pour afficher l'xp gagné et restante avant level up
  • cout<<"Il vous reste: "<<100-xptotale<<" pts d'xp avant le level up"<<endl; //
  • short n=pvP; //Pour conserver les pv et ne pas les remettre a 0
  • system("pause");
  • combat(&*force,&dexDep,&n,&*intel,&xptotale,&*classe); //retour au debut de la fonction avec les
  • } // variable modifié(xp et Pv)
  • }
  • else{ // Quand on est mort
  • cout<<"Vous etes mort"<<endl; //
  • }
  • }
  • void jeu(short* force,short* dex,short* vit,short* intel,int* classe,int* objet){ //fonction jeu avec les parametre de
  • srand(time(0)); //perso()
  • char nom[15];
  • short xp=0; //initialisation de l'xp a 0
  • cout<<"Quel est votre nom?"<<endl;
  • cin>>nom;
  • switch (*objet) {
  • case 1:*vit=*vit+5;break; //
  • case 2:*force=*force+5;break; // Pour augmenter les stats selon l'objet
  • case 3:*dex=*dex+5;break; //
  • case 4:*intel=*intel+5;break;} //
  • combat(&*force,&*dex,&*vit,&*intel,&xp,&*classe); //Lancement de combat avec les stats modifiés
  • system("pause");
  • }
  • void perso(){ /*fonction de definition du perso*/
  • cout<<"\nQuel est la classe de votre personage?"<<endl;
  • cout<<"1.Barbare"<<endl
  • <<"2.Archer"<<endl
  • <<"3.Mage"<<endl;
  • int classe;
  • cin>>classe;
  • short force,dex,vit,intel; /*declaration de stats du perso selon sa classe*/
  • switch (classe) {
  • case 1: force=50;dex=30;vit=100;intel=20;break;
  • case 2: force=30;dex=50;vit=80;intel=40;break;
  • case 3: force=25;dex=40;vit=70;intel=65;break;
  • default:cout<<"je n'ai pas compris votre choix"<<endl;}
  • cout<<"\nQuel objet va vous accompagner?"<<endl;
  • cout<<"1.Une armure etincelante:+5 vitalite"<<endl
  • <<"2.Un bracelet de force:+5 force"<<endl
  • <<"3.Un bracelet d'agilite:+5 dexterite"<<endl
  • <<"4.Un baton sertie d'une pierre precieuse:+5 intellingence"<<endl;
  • int objet;
  • cin>>objet;
  • jeu(&force,&dex,&vit,&intel,&classe,&objet);
  • }
  • void aide() //Fonction pour l'explication du principe du jeu
  • {
  • cout<<"\nIl y a 4 stats gere par le jeu:"<<endl
  • <<"1.Force:C'est avec cette statistique que sont calcule les dommages"<<endl
  • <<"2.Dexterite:Cette stat sert pour l'ordre des tours de jeu,c'est la vitesse"<<endl
  • <<"3.Vitalite:C'est le nombre de points de vie"<<endl
  • <<"4.Intelligence:C'est la stats qui compte pour l'attibution d'un coup double"<<endl
  • <<"L'objet choisi au depart augmente une stat.\n"<<endl
  • <<"Il y a level up tout les 100pts d'xp"<<endl;
  • }
  • void main() //fonction main
  • {
  • cout<<"---------------------------Bienvenue sur Fantasy RPG----------------------------"<<endl
  • <<"----------------------------programmed by Squall51------------------------------"<<endl;
  • cout<<"Menu:"<<endl
  • <<"1.Choix du personnage"<<endl
  • <<"2.Principe du jeu"<<endl;
  • int choix;
  • cin>>choix;
  • switch (choix) { //
  • case 1: perso(); break; // Pour renvoyer au bon endroit selon le choix
  • case 2: aide();main();break; //
  • default: main(); //
  • }
  • }
#include <iostream.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <cstdlib>
#include <stdio.h>
#define NBMONSTRESMAX 5
#define NBLIEUX 5
#define DOMMAGE 19
#define VITESSE 21
#define CHANCE 5



int combat(short* force,short* dex,short* vit,short* intel,short*xp,int*classe){  //fonction qui regit les
srand(time(0));                                                                  //combat:monstres,lieux,dommages...
int chxlieu;                         //choix aléatoire
chxlieu = 1+ rand() % NBLIEUX ;      //du lieu
int chxmonstre;                                 //choix aléatoire
chxmonstre =1 + rand() % NBMONSTRESMAX ;        //du monstre
const char* li;
switch (chxlieu){
       case 1: li="dans une plaine";break;
       case 2: li="en montagne";break;
       case 3: li="sur une colline";break;      //Les differents lieux
       case 4: li="dans une grotte";break;
       case 5: li="dans une foret";break;
       default:break;
}
cout<<"\nVous etes "<<li<<endl;
const char* adversaire;
short  forceM,dexM,vitM,intelM;
switch (chxmonstre){
       case 1:adversaire="Ogre";forceM=40;dexM=20;vitM=100;intelM=10;break;              //les differents
       case 2:adversaire="Chauve-souris";forceM=10;dexM=20;vitM=20;intelM=10;break;      //monstres
       case 3:adversaire="Orc berserker";forceM=50;dexM=25;vitM=55;intelM=10;break;
       case 4:adversaire="Chenille geante";forceM=20;dexM=30;vitM=50;intelM=10;break;
       case 5:adversaire="Chevalier noir";forceM=60;dexM=30;vitM=100;intelM=30;break;
       case 6:adversaire="Gobelin";forceM=20;dexM=20;vitM=30;intelM=10;break;
       default:break;
}
cout<<"\nVous rencontrez un monstre: "<<adversaire<<endl;
short xpgagn;                                       //variable pour compter les pts d'xp
xpgagn=(forceM + dexM + vitM + intelM)/10;
short dexDep=*dex;
int dommageP;
int dommageM;
short intelP=*intel;
short intelM2=intelM;
int chanceP;
int chanceM;
short pvM=vitM;
short pvP=*vit;
short ptdomP=*force;
short ptdomM=forceM;
while(pvM>=0 & pvP>=0){          //boucle pour que le combat continue tant que l'un des 2 protagoniste n'est pas mort
chanceP=1+rand() % CHANCE * intelP;        // chance pour les coups critique
chanceM=1+rand() % CHANCE * intelM2;       //
const char* critik;
if (*dex>=dexM){             //Pour savoir qui commence
       if(chanceP>=100){                                          //
critik="Coup critique!!!!Les points de dommages sont doubles";    // Teste la chance pour savoir si le coup est doublé
dommageP=(ptdomP * (1 +rand() % DOMMAGE))/5;}                     //
       else{                                                      //
critik="coup normal";                                             //   sinon le coup est normal
dommageP=(ptdomP * (1 +rand() % DOMMAGE))/10;}                    //
cout<<"\nVotre tour"<<endl;
cout<<"Vie du monstre: "<<pvM<<endl;
switch (*classe){
       case 1:cout<<"Vous lui assener un terrible coup de hache"<<endl;break;    //
       case 2:cout<<"Vous lui decocher une volee de fleche"<<endl;break;         // phrase differente selon la classe
       case 3:cout<<"Vous lui lance une enorme boule de feu"<<endl;break;}       // du perso
cout<<critik<<endl;
cout<<"dommage: "<<dommageP<<endl;
pvM= pvM - dommageP;
cout<<"Point restants: "<<pvM<<endl;
*dex=*dex-rand() % VITESSE;                //dexterite reduite aléatoirement
}
else {
     if(chanceM>=100){                                          //
critik="Coup critique!!!!Les points de dommages sont doubles";  //
dommageM=(ptdomM * (1 +rand() % DOMMAGE))/5;}                   //
     else{                                                      //
critik="coup normal";                                           //
dommageM=(ptdomM * (1 +rand() % DOMMAGE))/10;}                  //
cout<<"\nTour du monstre"<<endl;                                //
cout<<"Vie du joueur: "<<pvP<<endl;                             // Meme chose mais pour le monstre
cout<<critik<<endl;                                             //
cout<<"dommage: "<<dommageM<<endl;                              //
pvP= pvP - dommageM;                                            //
cout<<"Point restants: "<<pvP<<endl;                            //
dexM=dexM-rand() % VITESSE;                                     //
}
}
short xptotale;                                                 // pour diferencier l'xp gagné de l'xp totale
xptotale=*xp + xpgagn;                                          //
if (pvM<=0){
cout<<"Le monstre est mort"<<endl;
if ((xptotale)>=100){                                           //
cout<<"\nVous avez gagne: "<<xpgagn<<" pts d'xp"<<endl;         //
cout <<"\nVous pouvez augmenter de 5 une de vos stats"<<endl    //
     <<"1.Force"<<endl                                          // Si level up, alors on augmente les stats
     <<"2.Dex"<<endl                                            //
     <<"3.Vit"<<endl                                            //
     <<"4.Intel"<<endl;                                         //
short carac;
cin>>carac;
switch (carac){                                                 //
       case 1:*force=*force + 5;break;                          //
       case 2:*dex=*dex + 5;break;                              // selon la reponse, on augmente une certaine carac
       case 3:*vit=*vit + 5;break;                              //
       case 4:*intel=*intel + 5;break;                          //
default:cout<<"Ce n'est pas un choix valable"<<endl;}
xptotale=xptotale - 100;                                                    //
cout<<"Il vous reste: "<<100-xptotale<<" pts d'xp avant le level up"<<endl; //  pour afficher l'xp e t lancer un autre combat
combat(&*force,&dexDep,&*vit,&*intel,&xptotale,&*classe);                   //
}
else {
cout<<"\nVous avez gagne: "<<xpgagn<<" pts d'xp"<<endl;                     // pour afficher l'xp gagné et restante avant level up
cout<<"Il vous reste: "<<100-xptotale<<" pts d'xp avant le level up"<<endl; //
short n=pvP;             //Pour conserver les pv et ne pas les remettre a 0
system("pause");
combat(&*force,&dexDep,&n,&*intel,&xptotale,&*classe);                   //retour au debut de la fonction avec les
}                                                                        // variable modifié(xp et Pv)
}
else{                                                                    // Quand on est mort
cout<<"Vous etes mort"<<endl;                                            //
}
}
void jeu(short* force,short* dex,short* vit,short* intel,int* classe,int* objet){ //fonction jeu avec les parametre de
srand(time(0));                                                                   //perso()
char nom[15];
short xp=0;            //initialisation de l'xp a 0
cout<<"Quel est votre nom?"<<endl;
cin>>nom;
switch (*objet) {
       case 1:*vit=*vit+5;break;                        //
       case 2:*force=*force+5;break;                    // Pour augmenter les stats selon l'objet
       case 3:*dex=*dex+5;break;                        //
       case 4:*intel=*intel+5;break;}                   //
combat(&*force,&*dex,&*vit,&*intel,&xp,&*classe);       //Lancement de combat avec les stats modifiés
system("pause");
}



void perso(){    /*fonction de definition du perso*/
cout<<"\nQuel est la classe de votre personage?"<<endl;
cout<<"1.Barbare"<<endl
    <<"2.Archer"<<endl
    <<"3.Mage"<<endl;
int classe;
cin>>classe;
short force,dex,vit,intel;                               /*declaration de stats du perso selon sa classe*/
switch (classe) {
       case 1: force=50;dex=30;vit=100;intel=20;break;
       case 2: force=30;dex=50;vit=80;intel=40;break;
       case 3: force=25;dex=40;vit=70;intel=65;break;
default:cout<<"je n'ai pas compris votre choix"<<endl;}

cout<<"\nQuel objet va vous accompagner?"<<endl;
cout<<"1.Une armure etincelante:+5 vitalite"<<endl
    <<"2.Un bracelet de force:+5 force"<<endl
    <<"3.Un bracelet d'agilite:+5 dexterite"<<endl
    <<"4.Un baton sertie d'une pierre precieuse:+5 intellingence"<<endl;
int objet;
cin>>objet;
jeu(&force,&dex,&vit,&intel,&classe,&objet);
}

void aide()                       //Fonction pour l'explication du principe du jeu
{
cout<<"\nIl y a 4 stats gere par le jeu:"<<endl
    <<"1.Force:C'est avec cette statistique que sont calcule les dommages"<<endl
    <<"2.Dexterite:Cette stat sert pour l'ordre des tours de jeu,c'est la vitesse"<<endl
    <<"3.Vitalite:C'est le nombre de points de vie"<<endl
    <<"4.Intelligence:C'est la stats qui compte pour l'attibution d'un coup double"<<endl
    <<"L'objet choisi au depart augmente une stat.\n"<<endl
    <<"Il y a level up tout les 100pts d'xp"<<endl;
}



void main()        //fonction main
{
cout<<"---------------------------Bienvenue sur Fantasy RPG----------------------------"<<endl
    <<"----------------------------programmed by Squall51------------------------------"<<endl;
cout<<"Menu:"<<endl
    <<"1.Choix du personnage"<<endl
    <<"2.Principe du jeu"<<endl;
int choix;
cin>>choix;

switch (choix) {                          //
       case 1: perso(); break;            // Pour renvoyer au bon endroit selon le choix
       case 2: aide();main();break;       //
       default: main();                   //
}
}

 Conclusion

Si y'en a qui regarde le code,merci de m'aider a l'ameliorer car il n'est pas fini :p

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • MonRPG.cppTélécharger ce fichier [Réservé aux membres club]Voir ce fichier9 470 octets
  • MonRPG.exeTélécharger ce fichier [Réservé aux membres club]80 384 octets

Télécharger le zip


 Sources du même auteur

Source avec Zip TROUVER LE BON NOMBRE(DEV-C++)

 Sources de la même categorie

Source avec Zip Source avec une capture JEU DES CARTES par eapaceinfo
PROGRAMME DE JEU DE MPT par KerizGarmm
Source avec Zip Source avec une capture JEUX SERPENT par antho974
Source avec Zip Source avec une capture PENDU EN SDL par Damsou91
Source avec Zip STATE MACHINE MODIFICATION MATH BUCKHAM par billybones79

Commentaires et avis

Commentaire de vieuxLion le 05/02/2003 12:33:56

intéressant !
sur le code :
- enlève le int en retour de la fonction combat, car elle ne retourne rien
- change le test while(pvM&gt;=0 & pvP&gt;=0) en while(pvM&gt;=0 && pvP&gt;=0)
- le rappel de main() n'est pas une bonne idée
sur le jeu :
permet une meilleure interactivité... choix des coups,...
fautes d'orthographes : vous lui asseneZ, vous lui decocheZ
Bon courage

Commentaire de squall51 le 05/02/2003 20:24:56

Merci pour les conseil je vais essayer de les suivre pour arranger le programme :p

Commentaire de sniperfou le 12/02/2003 17:29:57

J'aurais bien quelques idéés pour ameliorer ton jeu.

Commentaire de squall51 le 14/02/2003 10:23:11

Ben si t as d autre idée dis les.Parce que la je vais essayer de l'ameliorer ou alors d'en creer un autre carrement on verra

Commentaire de D1m3x le 08/10/2003 18:25:42

Après avoir 'jouer' ton jeu je réalise que c'est très bien inventé, je n'ai pas vraiment le temps de regarder le code j'ai seulement un peu survolé, moi je te conseillerai d'utiliser des graphiques pour en faire un vrai jeu :)

tu peux par exemple commencé à faire ce jeu en 2D avec allegro (assez simple) et puis en 3D avec Ogre, DirectX, opengl,...

bref avec des graphiques ton jeu serait pas mal, bien sur un peu trop petit mais c'est toujours bien pour un début :)

continue comme ça et lache pas le projet :p :)

[DmX]

Commentaire de ZitriX le 30/12/2003 00:11:33

plz quand je compile la source et que j'execute (avec Dev-C++) il se
passe rien...

Commentaire de D1m3x le 31/12/2003 12:41:59

ZitriX, même pas d'erreurs?

Commentaire de Hunter07 le 12/06/2005 14:43:42

Salut,

voila j'ai DL le zip, ouvre le .cpp avec Dev-C++ et qd je compile j'ai les erreurs suivante:

In file included from C:/Dev-Cpp/include/c++/3.4.2/backward/iostream.h:31,
                 from C:\Dev-Cpp\Test\MonRPG.cpp:1:

C:/Dev-Cpp/include/c++/3.4.2/backward/backward_warning.h:32:2:
warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated.

C:\Dev-Cpp\Test\MonRPG.cpp:185: error: `main' must return `int'

Comment régler ces erreurs??? Merci de votre aide

Commentaire de taomar le 28/11/2005 16:28:06

Bonjour à tous,

Je sais que ce commentaire arrive assez tard (juste 5 mois après), mais si cela peut aider ceux qui ont le même problème de compilation que hunter07.
Avec dev-c++, remplacez le "void" de la fonction main() par int et ajoutez un return 0 juste avant le dernier signe de fermeture de paragraphe, soit
int main(){
\\ code
return 0;
}
dev devrait compiler et exécuter ce code. Cependant, il fera toujours son petit commentaire, à propos du "iostream.h". Si vous voulez vous passez de ce commentaire, il faut :
1: aller dans "outils/options du compilateur/repertoires/repertoiresC++.h" et vérifier la présence du chemin : C:\Dev-Cpp\include\c++\3.4.2 sinon il faut l'ajouter;
2: retirer le ".h" de <iostream.h>
3: ajouter "using namespace std;" après les include.

Je pense que ça devrait suffire. ;p

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

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,359 sec (4)

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