par Tr » jeu. 6 mai 2021 21:32
Salut à tous
j'ai un problème, si quelqu'un peut m'aider à le résoudre, je suis preneur
void achat(int acheteur[], S_joueur achat[])
{
int choix_territoire;
printf("Avec quel territoire voulez-vous acheter ?\n");
scanf("%d", &choix_territoire);
switch (choix_territoire)
{
case 1://si il achat depuis le 1
if(acheteur[1-1] > 1) //on verifie qu'il y a bien des troupes (plus d'une car une reste en défense)
{
printf("\n Qui voulez vous acheter ?");
scanf("%d", &choix_territoire);
if(choix_territoire == 2)
{
versus(acheteur, 0, proprietaire(2, achat), 1);
}
}
}
}
int * proprietaire(int terre, S_joueur player[])
{
if(player[0].Territoire[terre-1] != 0)
{
return player[0].Territoire[terre-1];
}
else if(player[1].Territoire[terre-1] != 0)
{
return player[1].Territoire[terre-1];
}
else if(player[2].Territoire[terre-1] != 0)
{
return player[2].Territoire[terre-1];
}
return NULL;
}
void versus (int acheteur[], int TA, int Defenseur[], int TD)//deroulemnt d'un versus
{
int etat = 0;
printf("\n\n\n%d", acheteur[TA]);
printf("\n\n\n%d", Defenseur[TD]);
}
je vous explique;
Je souhaiterais que le programme proprietaire renvoie le tableau d'un joueur(défenseur), mais quand j'affiche le tableau défenseur dans versus, il affiche 0, alors qu'il devrait afficher 2 (le nb d'unité)
quelqu'un a une idée ?
Merci d'avance
Salut à tous
j'ai un problème, si quelqu'un peut m'aider à le résoudre, je suis preneur
void achat(int acheteur[], S_joueur achat[])
{
int choix_territoire;
printf("Avec quel territoire voulez-vous acheter ?\n");
scanf("%d", &choix_territoire);
switch (choix_territoire)
{
case 1://si il achat depuis le 1
if(acheteur[1-1] > 1) //on verifie qu'il y a bien des troupes (plus d'une car une reste en défense)
{
printf("\n Qui voulez vous acheter ?");
scanf("%d", &choix_territoire);
if(choix_territoire == 2)
{
versus(acheteur, 0, proprietaire(2, achat), 1);
}
}
}
}
int * proprietaire(int terre, S_joueur player[])
{
if(player[0].Territoire[terre-1] != 0)
{
return player[0].Territoire[terre-1];
}
else if(player[1].Territoire[terre-1] != 0)
{
return player[1].Territoire[terre-1];
}
else if(player[2].Territoire[terre-1] != 0)
{
return player[2].Territoire[terre-1];
}
return NULL;
}
void versus (int acheteur[], int TA, int Defenseur[], int TD)//deroulemnt d'un versus
{
int etat = 0;
printf("\n\n\n%d", acheteur[TA]);
printf("\n\n\n%d", Defenseur[TD]);
}
je vous explique;
Je souhaiterais que le programme proprietaire renvoie le tableau d'un joueur(défenseur), mais quand j'affiche le tableau défenseur dans versus, il affiche 0, alors qu'il devrait afficher 2 (le nb d'unité)
quelqu'un a une idée ?
Merci d'avance