On je peut telecharger C/C+ ou C++???????
SVP !
Merci d´avance!!!
sonic66 t´a répondu !
dev C++, tu le trouves sur telecharger.com par exemple.
MERCI JEANYVESYVES T´ES UN DIEU, JE TAIME
merci de permettre à des petits nouveaux de 15 ans de débuter dans la prog et d´explorer ce monde fabuleux
merci pour tout et vive tes tutos
MDR
Bon je vous l´accorde mon post est inutile :p
Merci !
Je préfert faire avec du C/C++ que avec RPG MAKER
car c´est plus de la vrai programassion!
Mais je débute alors j´aurais beaucoups de questions LOL!
Il ya quoi comme differance entre projet et fichier source? et je doit mettre les codes du jeux sur une pages tout d´un coup ?
Ex:
/ /
--------------------------------------------------
---------
/ /
--------------------------------------------------
---------
typedef struct coords
{
int x;
int y;
} coords;
coords snakepositions[256];
coords headposition;
coords nourriture;
int taillesnake;
int direction; / / 0=droite, 1=bas, 2=gauche, 3=haut
int state; / / Etat du snake 0=ok 1=mort
int flip;
int scrollingvalue;
const char scrolling[] = " Snake, by Christophe Kohler. Le but du jeu est d´attraper la nourriture. Plus le snake mange, plus il grossi. La partie est terminee si le snake se mords la queue ou si il percute un bords... " ;
/ /
--------------------------------------------------
---------
void snakevivant();
void snakemort();
int isCoordsOnSnake( coords Coordonnees);
void PositionneNourriture();
void AfficheBordClignotant();
void snakeintro();
/ /
--------------------------------------------------
---------
void InitialiseGame()
{
int i;
taillesnake=4;
direction=0;
for ( i=0; i<256; i++)
snakepositions[i].x=-1; / / Toutes les cases sont inactives
snakepositions[0].x=17;
snakepositions[0].y=9;
snakepositions[1].x=16;
snakepositions[1].y=9;
snakepositions[2].x=15;
snakepositions[2].y=9;
snakepositions[3].x=14;
snakepositions[3].y=9;
headposition.x=17;
headposition.y=9;
state=2;
flip=0;
scrollingvalue=0;
PositionneNourriture();
}
/ /
--------------------------------------------------
---------
void GameLoop()
{
if ( state==0)
snakevivant();
else if ( state==1)
snakemort();
else if ( state==2)
snakeintro();
}
/ /
--------------------------------------------------
---------
void snakevivant()
{
int i;
char stringtaille[3];
/ / Recupere les entree
if ( KGetRight() )
direction=0;
else if ( KGetDown() )
direction=1;
else if ( KGetLeft() )
direction=2;
else if ( KGetUp() )
direction=3;
/ / Deplace les elements du snake
for ( i=taillesnake-1; i>0; i--) {
snakepositions[i].x=snakepositions[i-1].x;
snakepositions[i].y=snakepositions[i-1].y;
}
/ / Deplace la case de tete
if ( direction==0)
headposition.x+=1;
if ( direction==2)
headposition.x-=1;
if ( direction==1)
headposition.y+=1;
if ( direction==3)
headposition.y-=1;
/ / Test la mort contre le bord
if ( ( headposition.x==0) || ( headposition.x==29) || ( headposition.y==0) || ( headposition.y==19) )
state=1;
/ / Test la mort contre lui meme
if ( isCoordsOnSnake( headposition ) )
state=1;
for ( i=0; i<taillesnake; i++) {
if ( ( headposition.x==snakepositions[i].x) && ( headposition.y==snakepositions[i].y) )
state=1;
}
/ / Ajoute la tete dans le tableau
snakepositions[0].x=headposition.x;
snakepositions[0].y=headposition.y;
/ / Test si on gobe
if ( ( nourriture.x==headposition.x) && ( nourriture.y==headposition.y) ) {
PositionneNourriture();
taillesnake+=2;
}
/ / Affiche cadre
AfficheBordClignotant();
/ / Affiche la nourriture
KSetDisplayColor(GREEN);
KPrintSquare( nourriture.x, nourriture.y ) ;
/ / Affiche le snake
KSetDisplayColor(RED);
for ( i=0; i<taillesnake; i++) {
if ( snakepositions[i].x!=-1) {
if ( ( i%2)==0 )
KSetDisplayColor(PURPLE);
else
KSetDisplayColor(RED);
KPrintBall( snakepositions[i].x, snakepositions[i].y ) ;
}
}
KSetDisplayColor(WHITE);
KPrintBall( headposition.x, headposition.y ) ;
/ / Affiche la taille
sprintf(stringtaille, " %03d", taillesnake);
KPrintString(stringtaille, 30-4, 19);
}
/ /
--------------------------------------------------
---------
void snakemort()
{
int x,y;
int color;
x = rand() % 30;
y = rand() % 20;
color = rand() % MAXCOLOR;
KSetDisplayColor(color);
KPrintSquare(x,y);
x = rand() % 30;
y = rand() % 20;
color = rand() % MAXCOLOR;
KSetDisplayColor(color);
KPrintSquare(x,y);
x = rand() % 30;
y = rand() % 20;
color = rand() % MAXCOLOR;
KSetDisplayColor(color);
KPrintSquare(x,y);
KPrintString("Press Space to Restart", ( 30-22)/2, 9);
/ / Affiche cadre
AfficheBordClignotant();
/ / Test si on veut recommencer
if ( KGetSpace() )
{
InitialiseGame();
state=0; / / Passe direct au jeu
}
}
/ /
--------------------------------------------------
---------
int isCoordsOnSnake( coords Coordonnees)
{
int i;
for ( i=0; i<taillesnake; i++) {
if ( ( Coordonnees.x==snakepositions[i].x) && ( Coordonnees.y==snakepositions[i].y) )
return 1;
}
return 0;
}
/ /
--------------------------------------------------
---------
void PositionneNourriture()
{
do
{
nourriture.x=( rand() % 26)+2;
nourriture.y=( rand() % 16)+2;
} while ( isCoordsOnSnake(nourriture) ) ;
}
/ /
--------------------------------------------------
---------
/ /
--------------------------------------------------
---------
void AfficheBordClignotant()
{
int i;
/ / La variable flip alterne entre 0 et 1
if ( flip==0) flip=1;
else flip=0;
for ( i=0; i<30; i++) { / / On cree une boucle de 0 a 29, on va l´utiliser pour les 4 coins
if ( ( (i+flip)&0x01)==0 ) { / / Si boucle + flip = paire, on rempli le haut et la barre de gauche
KSetDisplayColor(YELLOW);
KPrintSquare(i,0);
if ( i<=19) {
KPrintSquare(0,i);
}
KSetDisplayColor(BLUE);
KPrintSquare(i,19);
if ( i<=19) {
KPrintSquare(29,i);
}
} else / / Si boucle + flip = impaire, on rempli le bas et la barre de droite
{
KSetDisplayColor(YELLOW);
KPrintSquare(i,19);
if ( i<=19) {
KPrintSquare(29,i);
}
KSetDisplayColor(BLUE);
KPrintSquare(i,0);
if ( i<=19) {
KPrintSquare(0,i);
}
}
}
}
/ /
--------------------------------------------------
---------
/ /
--------------------------------------------------
---------
void snakeintro()
{
char localstring[30];
KSetDisplayColor(BLUE);
KPrintString("Snake", ( 30-5)/2, 7);
KPrintString("Press Space to Start", ( 30-20)/2, 9);
/ / Scrolling
strncpy(localstring, &[scrollingvalue], 30);
KPrintString(localstring, 0, 16);
scrollingvalue++;
if ( scrollingvalue>(int)strlen(scrolling)-30)
scrollingvalue=0;
/ / Affiche le bord
AfficheBordClignotant();
/ / Test si on veut recommencer
if ( KGetSpace() )
{
InitialiseGame();
state=0;
}
}
comme sa ?
Ensuite comment je fait pour le tester??
slt c encore moi!!! pour un dernier probleme ( enfin j´espere).
grace a jeanyvesyves j´ai réussi a écrire plusieurs données dans mon fichier . txt
mais maintenant, comment je fais pour toutes les afficher dans mon programme, car quan j´utilise ifstream, il ne m´afiche que la première ligne de donnéés
merci d´avence
Car quand je m´est compiller il n´arrive pas a le faire faut il que je tape d´autre codes avant?
je edonne les codes:
/ /
--------------------------------------------------
---------
/ /
--------------------------------------------------
---------
typedef struct coords
{
int x;
int y;
} coords;
coords snakepositions[256];
coords headposition;
coords nourriture;
int taillesnake;
int direction; / / 0=droite, 1=bas, 2=gauche, 3=haut
int state; / / Etat du snake 0=ok 1=mort
int flip;
int scrollingvalue;
const char scrolling[] = " Snake, by Adrien de Bosset. Le but du jeu est d´attraper la nourriture. Plus le snake mange, plus il grossi. La partie est terminee si le snake se mords la queue ou si il percute un bords... " ;
/ /
--------------------------------------------------
---------
void snakevivant();
void snakemort();
int isCoordsOnSnake( coords Coordonnees);
void PositionneNourriture();
void AfficheBordClignotant();
void snakeintro();
/ /
--------------------------------------------------
---------
void InitialiseGame()
{
int i;
taillesnake=4;
direction=0;
for ( i=0; i<256; i++)
snakepositions[i].x=-1; / / Toutes les cases sont inactives
snakepositions[0].x=17;
snakepositions[0].y=9;
snakepositions[1].x=16;
snakepositions[1].y=9;
snakepositions[2].x=15;
snakepositions[2].y=9;
snakepositions[3].x=14;
snakepositions[3].y=9;
headposition.x=17;
headposition.y=9;
state=2;
flip=0;
scrollingvalue=0;
PositionneNourriture();
}
/ /
--------------------------------------------------
---------
void GameLoop()
{
if ( state==0)
snakevivant();
else if ( state==1)
snakemort();
else if ( state==2)
snakeintro();
}
/ /
--------------------------------------------------
---------
void snakevivant()
{
int i;
char stringtaille[3];
/ / Recupere les entree
if ( KGetRight() )
direction=0;
else if ( KGetDown() )
direction=1;
else if ( KGetLeft() )
direction=2;
else if ( KGetUp() )
direction=3;
/ / Deplace les elements du snake
for ( i=taillesnake-1; i>0; i--) {
snakepositions[i].x=snakepositions[i-1].x;
snakepositions[i].y=snakepositions[i-1].y;
}
/ / Deplace la case de tete
if ( direction==0)
headposition.x+=1;
if ( direction==2)
headposition.x-=1;
if ( direction==1)
headposition.y+=1;
if ( direction==3)
headposition.y-=1;
/ / Test la mort contre le bord
if ( ( headposition.x==0) || ( headposition.x==29) || ( headposition.y==0) || ( headposition.y==19) )
state=1;
/ / Test la mort contre lui meme
if ( isCoordsOnSnake( headposition ) )
state=1;
for ( i=0; i<taillesnake; i++) {
if ( ( headposition.x==snakepositions[i].x) && ( headposition.y==snakepositions[i].y) )
state=1;
}
/ / Ajoute la tete dans le tableau
snakepositions[0].x=headposition.x;
snakepositions[0].y=headposition.y;
/ / Test si on gobe
if ( ( nourriture.x==headposition.x) && ( nourriture.y==headposition.y) ) {
PositionneNourriture();
taillesnake+=2;
}
/ / Affiche cadre
AfficheBordClignotant();
/ / Affiche la nourriture
KSetDisplayColor(GREEN);
KPrintSquare( nourriture.x, nourriture.y ) ;
/ / Affiche le snake
KSetDisplayColor(RED);
for ( i=0; i<taillesnake; i++) {
if ( snakepositions[i].x!=-1) {
if ( ( i%2)==0 )
KSetDisplayColor(PURPLE);
else
KSetDisplayColor(RED);
KPrintBall( snakepositions[i].x, snakepositions[i].y ) ;
}
}
KSetDisplayColor(WHITE);
KPrintBall( headposition.x, headposition.y ) ;
/ / Affiche la taille
sprintf(stringtaille, " %03d", taillesnake);
KPrintString(stringtaille, 30-4, 19);
}
/ /
--------------------------------------------------
---------
void snakemort()
{
int x,y;
int color;
x = rand() % 30;
y = rand() % 20;
color = rand() % MAXCOLOR;
KSetDisplayColor(color);
KPrintSquare(x,y);
x = rand() % 30;
y = rand() % 20;
color = rand() % MAXCOLOR;
KSetDisplayColor(color);
KPrintSquare(x,y);
x = rand() % 30;
y = rand() % 20;
color = rand() % MAXCOLOR;
KSetDisplayColor(color);
KPrintSquare(x,y);
KPrintString("Press Space to Restart", ( 30-22)/2, 9);
/ / Affiche cadre
AfficheBordClignotant();
/ / Test si on veut recommencer
if ( KGetSpace() )
{
InitialiseGame();
state=0; / / Passe direct au jeu
}
}
/ /
--------------------------------------------------
---------
int isCoordsOnSnake( coords Coordonnees)
{
int i;
for ( i=0; i<taillesnake; i++) {
if ( ( Coordonnees.x==snakepositions[i].x) && ( Coordonnees.y==snakepositions[i].y) )
return 1;
}
return 0;
}
/ /
--------------------------------------------------
---------
void PositionneNourriture()
{
do
{
nourriture.x=( rand() % 26)+2;
nourriture.y=( rand() % 16)+2;
} while ( isCoordsOnSnake(nourriture) ) ;
}
/ /
--------------------------------------------------
---------
/ /
--------------------------------------------------
---------
void AfficheBordClignotant()
{
int i;
/ / La variable flip alterne entre 0 et 1
if ( flip==0) flip=1;
else flip=0;
for ( i=0; i<30; i++) { / / On cree une boucle de 0 a 29, on va l´utiliser pour les 4 coins
if ( ( ( i+flip)&0x01)==0 ) { / / Si boucle + flip = paire, on rempli le haut et la barre de gauche
KSetDisplayColor(YELLOW);
KPrintSquare(i,0);
if ( i<=19) {
KPrintSquare(0,i);
}
KSetDisplayColor(BLUE);
KPrintSquare(i,19);
if ( i<=19) {
KPrintSquare(29,i);
}
} else / / Si boucle + flip = impaire, on rempli le bas et la barre de droite
{
KSetDisplayColor(YELLOW);
KPrintSquare(i,19);
if ( i<=19) {
KPrintSquare(29,i);
}
KSetDisplayColor(BLUE);
KPrintSquare(i,0);
if ( i<=19) {
KPrintSquare(0,i);
}
}
}
}
/ /
--------------------------------------------------
---------
/ /
--------------------------------------------------
---------
void snakeintro()
{
char localstring[30];
KSetDisplayColor(BLUE);
KPrintString("Snake", ( 30-5)/2, 7);
KPrintString("Press Space to Start", ( 30-20)/2, 9);
/ / Scrolling
strncpy(localstring, &[scrollingvalue], 30);
KPrintString(localstring, 0, 16);
scrollingvalue++;
if ( scrollingvalue>(int)strlen(scrolling)-30)
scrollingvalue=0;
/ / Affiche le bord
AfficheBordClignotant();
/ / Test si on veut recommencer
if ( KGetSpace() )
{
InitialiseGame();
state=0;
}
}
est-ce qu´on pourrait me donner l´adresse du site de JYY , je suis sur n autre ordi ![]()
regarde sur sa carte de visite
bon tiens ^^
http://www.fvirtman.fr.st
heu...JYY , sur un ordi a mon père quand j´apprend le dev-c++ je clique sur l´image de " L´informatique",dans ton site,puis sur " Tutorial C++ *" , puis par exemple sur " 2.1.3. " Une balle qui rebondit" et me lance dev-c++ avec tes leçons , mais sur un autre ordi à ma mère ça me le met sur une page blanche avec tes leçon , donc commant on peut mettre tes leçons sur dev-c++ sur l´ordi à ma mère ou j´ai télécharger dev-c++? ![]()
non non j´ai rien dit ça marche ![]()
Bonsoir à tous , j´ai un probleme avec mon
" name gen "
en fait , comme vous le savez ( ou pas ) , je suis en train de faire un rpg .
Bon , j´ai commence à penser au scénario , là pas de problèmes , les idées viennent ( ca va dechirer ^^ ) mais , c´est pour les noms des persos , des villes , des lieux etc que ca coince :
j´ai donc decide de faire un petit generateur de noms aleatoires ![]()
mais , j´ai un probleme avec lui , il me sort dix fois le meme nom avant d´en creer un nouveau . .. vous voyez d´où ca peut venir svp ?
http://rafb.net/paste/results/aIIt2E35.html
merci ![]()
sinon , il fait pas de miracles hein , il a une tres forte propension aux " HRTHYUG " , c´est assez limité ![]()
slt c encore moi!!! pour un dernier probleme ( enfin j´espere).
grace a jeanyvesyves j´ai réussi a écrire plusieurs données dans mon fichier . txt
mais maintenant, comment je fais pour toutes les afficher dans mon programme, car quan j´utilise ifstream, il ne m´afiche que la première ligne de donnéés
merci d´avence
voila
SDL_Rect R=Rect(0,0,f->w,f->h);
les -> veulent dire quoi?
extasy : c´est normal, tu ne peut lire qu´une ligne à la fois ( dans ce mode de lecture là en tout cas). recommence à lire autant de fois que c´est nécessaire pour tout lire.
sonic : si tu ne le sais pas, regarde les tuto de jyy AVANT d´apprendre la SDL. ça sert à rien d´essayer tout de suite de faire des trucs compliqué, si tu ne connait pas la base.
si tu ne sais pas ce qu´est un pointeur et une classe tu ne pourra pas utiliser la SDL.
donc lis bien tout les tuto de jyy qu´il y a avant la SDL. s´il sont avant c´est pas pour rien.
je sias ce quest un pointeur et une classe mais je navais jamais jamais vu de ->
sonic66 >
la fleche est la meme chose que ça :
a->b pareil que ( *a).b
extasy89 > oui, fait plusieurs read de suite ![]()