Deplacement du bonhomme dans un jeu de labyrinthe

Fermé
DEANETEHEI Messages postés 7 Date d'inscription vendredi 20 février 2015 Statut Membre Dernière intervention 3 mars 2015 - 26 févr. 2015 à 23:52
Bonjour les connectés,
Est que quelqu'un pourrai me donner un petit renseignement ou un petit coup de pouce sur cette partie de code que je viens de poster est correct?
Cela consiste à faire le déplacement de mon bonhomme dans un labyrinthe etant donné que j'ai déjà construit le terrain qui va accueillir le bonhomme .
S'il vous plaît, pour l'attention que vous porterez à mon petit code merci.

void Aleatoire(int Laby[HauteurLab][LargeurLab])
{
int Mx,My,xM,yM;
int verif1=0,verif2=0;
int Personaleatoir,Prx,Pry; // le personnage et ses cordonnées dans le labyrinthe
const int MinP=2,MaxP=4; // les personnages

const int MaxX=HauteurLab-2,MaxY=LargeurLab-2; // bornes du labyrinthe
const int MinX=1,MinY=1; // la première et la dernière ligne et colonne sont occupées par les murs

srand(time(NULL)); // initialisation de rand

for(x=1;x<4;x++) // pour effectuer l'opération trois fois afin de positionner les trois personnages
{
do
{
Personaleatoir=( rand() % (MaxP-MinP+1))+MinP; // pour tirer un personnage au hasard
}
while(Personaleatoir==verif1||Personaleatoir==verif2); // pour ne pas tirer le personnage une deuxième fois

do
{
Prx=( rand() % (MaxX-MinX+1))+MinX; // pour tirer une position sur ligne au hasard
Pry=( rand() % (MaxY-MinY+1))+MinY; // pour tirer une position sur colonne au hasard
}
while(Laby[Prx][Pry]!=0); // pour ne pas écraser les autres personnages ni les murs

Laby[Prx][Pry]=Personaleatoir; // pour positionner le personnage tiré au hasard dans une position tirée au hasard aussi
if(Personaleatoir==2)
{
Mx=Prx; // cordonnées du Minotaure
My=Pry;
}

verif2=verif1; // permutation sert à vérifier si un personnage et déjà positionné
verif1=Personaleatoir;
}
while(1) // Boucle infinie où on attend l'action sur une des touches de déplacement
{
if(kbhit())
{
touche=getch();
if(touche == 72)
{
PositionneCurseur(xM,yM);
printf(" ");
y--;
}
if(touche == 80)
{
PositionneCurseur(xM,yM);
printf(" ");
y++;
}
if(touche == 75)
{
PositionneCurseur(xM,yM);
printf(" ");
x--;
}
if(touche == 77)
{
PositionneCurseur(xM,yM);
printf(" ");
x++;
}
if(touche == 13) break;
}
}
A_Laby(LabJeu);
}