pour mon projet d'informatique, je dois coder un jeux dont le but est d'aligner des tuiles ayant des symboles de formes ou de couleurs identiques (mais pas les deux) de façon à réaliser des combinaisons rapportant un maximum de points.. Et pour cela j'utilise la fonction Color() (ci-dessous) :
cependant lorsque je l'appelle dans ma fonction d'affichage (ci-dessous):
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include "Project.h"
#include <time.h>
void affiche_main_joueur1(struct joueur tab_joueur[])
{
int couleur = 0;
int *p_couleur = &couleur;
int i = 0;
colorToInt_v2(tab_joueur, p_couleur);
gotoligcol(7,70);
printf("Votre main : \n");
gotoligcol(9,70);
for (i = 0; i< 6; i++)
{
switch(couleur)
{
case 1 :
Color(12,0);
printf("%d-%c ", i,shapeToChar(tab_joueur[0].main_joeur[i].shape));
break;
case 2 :
Color(3,0);
printf("%d-%c ", i,shapeToChar(tab_joueur[0].main_joeur[i].shape));
break;
case 3 :
Color(6,0);
printf("%d-%c ", i,shapeToChar(tab_joueur[0].main_joeur[i].shape));
break;
case 4 :
Color(6,0);
printf("%d-%c ", i,shapeToChar(tab_joueur[0].main_joeur[i].shape));
break;
case 5 :
Color(13,0);
printf("%d-%c ", i,shapeToChar(tab_joueur[0].main_joeur[i].shape));
break;
case 6 :
Color(14,0);
printf("%d-%c ", i,shapeToChar(tab_joueur[0].main_joeur[i].shape));
break;
case 7 :
printf("%d-%c ", i,shapeToChar(tab_joueur[0].main_joeur[i].shape));
break;
}
}
}
Qui est censée afficher la main du joueur en couleur (12-rouge 3-turquoise 6-vert 13-violet 14-jaune 15-blanc), la main du joueur est affiché en blanc :
Pourtant lorsque j'utilise la fonction color() dans un test.c elle fonctionne très bien.
Je cherche depuis un bon moment et je ne trouve pas l'erreur...
Pourriez-vous m'aider svp !
merci d'avance!
- Edité par ValentinDavis 1 novembre 2019 à 23:59:13
j'ai bien vérifié et la variable couleur correspond à un des 'case' du 'switch' à chaque fois vu qu'elle affiche l'élément de la main du joueur quand meme
Je ne connais pas SetConsoleTextAttribute, une lecture de 3s de sa doc dit "Sets the attributes of characters written to the console screen buffer by the WriteFile or WriteConsole function, or echoed by the ReadFile or ReadConsole function. This function affects text written after the function call." et toi tu utilises printfpour tes écritures. J'espère que ça t'aidera.
Après vérification , c’était une erreur d’algorithmie !
merci pour votre aide !
Probléme d'affichage avec la fonction Color !
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
En recherche d'emploi.