maj
This commit is contained in:
@@ -5,14 +5,23 @@
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <graphe.h>
|
||||
#include <graph.h>
|
||||
#include "plateau_init.h"
|
||||
#include "update_queue.h"
|
||||
#include "deplacement.h"
|
||||
|
||||
|
||||
void deplacement(int** p, int* tete, int* queue) {
|
||||
|
||||
|
||||
|
||||
|
||||
void deplacement (struct adresse* pointeur, char* sens) {
|
||||
|
||||
|
||||
int** plateau = pointeur -> plateau;
|
||||
|
||||
unsigned char* tete = pointeur -> tete;
|
||||
|
||||
unsigned char* queue = pointeur -> queue;
|
||||
|
||||
|
||||
/* affectations des commandes aux touches du jeu */
|
||||
@@ -21,95 +30,95 @@ void deplacement(int** p, int* tete, int* queue) {
|
||||
|
||||
if (Touche() == XK_Left) {
|
||||
|
||||
p[tete[0]][tete[1]] = 0;
|
||||
plateau[tete[0]][tete[1]] = 0;
|
||||
|
||||
p[tete[0]][tete[1] - 1] = 1;
|
||||
plateau[tete[0]][tete[1] - 1] = 1;
|
||||
|
||||
p[queue[0]][queue[1]] = 0;
|
||||
plateau[queue[0]][queue[1]] = 0;
|
||||
|
||||
tete[1] = tete[1] - 1;
|
||||
|
||||
sens = "gauche";
|
||||
*sens = "gauche";
|
||||
|
||||
}
|
||||
|
||||
if (Touch() == XK_Right) {
|
||||
|
||||
p[tete[0]][tete[1]] = 0;
|
||||
plateau[tete[0]][tete[1]] = 0;
|
||||
|
||||
p[tete[0]][tete[1] + 1] = 1;
|
||||
plateau[tete[0]][tete[1] + 1] = 1;
|
||||
|
||||
p[queue[0]][queue[1]] = 0;
|
||||
plateau[queue[0]][queue[1]] = 0;
|
||||
|
||||
tete[1] = tete[1] + 1;
|
||||
|
||||
sens = "droite";
|
||||
*sens = "droite";
|
||||
|
||||
}
|
||||
|
||||
if (Touch() == XK_Up) {
|
||||
|
||||
p[tete[0]][tete[1]] = 0;
|
||||
plateau[tete[0]][tete[1]] = 0;
|
||||
|
||||
p[tete[0] - 1][tete[1]] = 1;
|
||||
plateau[tete[0] - 1][tete[1]] = 1;
|
||||
|
||||
p[queue[0]][queue[1]] = 0;
|
||||
plateau[queue[0]][queue[1]] = 0;
|
||||
|
||||
tete[0] = tete[0] - 1;
|
||||
|
||||
sens = "haut";
|
||||
*sens = "haut";
|
||||
}
|
||||
|
||||
if (Touch() == XK_down) {
|
||||
if (Touch() == XK_Down) {
|
||||
|
||||
p[tete[0]][tete[1]] = 0;
|
||||
plateau[tete[0]][tete[1]] = 0;
|
||||
|
||||
p[tete[0] + 1][tete[1]] = 1;
|
||||
plateau[tete[0] + 1][tete[1]] = 1;
|
||||
|
||||
p[queue[0]][queue[1]] = 0;
|
||||
plateau[queue[0]][queue[1]] = 0;
|
||||
|
||||
tete[0] = tete[0] + 1;
|
||||
|
||||
sens = "bas";
|
||||
*sens = "bas";
|
||||
|
||||
}
|
||||
|
||||
else {
|
||||
|
||||
if ( strcmp(sens,"bas") == 1) {
|
||||
if ( strcmp(*sens,"bas") == 1) {
|
||||
|
||||
p[tete[0] + 1][tete[1]] = 1;
|
||||
plateau[tete[0] + 1][tete[1]] = 1;
|
||||
|
||||
p[queue[0]][queue[1]] = 0;
|
||||
plateau[queue[0]][queue[1]] = 0;
|
||||
|
||||
tete[0] = tete[0] + 1;
|
||||
}
|
||||
|
||||
if ( strcmp(sens, "haut") ==1) {
|
||||
if ( strcmp(*sens, "haut") ==1) {
|
||||
|
||||
p[tete[0] - 1][tete[1]] = 1;
|
||||
plateau[tete[0] - 1][tete[1]] = 1;
|
||||
|
||||
p[queue[0]][queue[1]] = 0;
|
||||
plateau[queue[0]][queue[1]] = 0;
|
||||
|
||||
tete[0] = tete[0] -1;
|
||||
|
||||
}
|
||||
|
||||
if ( strcmp(sens, "droite") ==1) {
|
||||
if ( strcmp(*sens, "droite") ==1) {
|
||||
|
||||
p[tete[0]][tete[1] + 1] = 1;
|
||||
plateau[tete[0]][tete[1] + 1] = 1;
|
||||
|
||||
p[queue[0]][queue[1]] = 0;
|
||||
plateau[queue[0]][queue[1]] = 0;
|
||||
|
||||
tete[1] = tete[1] + 1;
|
||||
|
||||
}
|
||||
|
||||
if ( strcmp(sens, "gauche") ==1) {
|
||||
if ( strcmp(*sens, "gauche") ==1) {
|
||||
|
||||
p[tete[0]][tete[1] - 1] = 1;
|
||||
plateau[tete[0]][tete[1] - 1] = 1;
|
||||
|
||||
p[queue[0]][queue[1]] = 0;
|
||||
plateau[queue[0]][queue[1]] = 0;
|
||||
|
||||
tete[1] = tete[1] - 1;
|
||||
|
||||
@@ -120,12 +129,11 @@ void deplacement(int** p, int* tete, int* queue) {
|
||||
|
||||
/* mise à jour de la position de queue dans le plateau */
|
||||
|
||||
maj_queue(queue, p);
|
||||
maj_queue(queue, plateau);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return p;
|
||||
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user