49 lines
731 B
C
49 lines
731 B
C
#ifndef LABYRINTH_H
|
|
#define LABYRINTH_H
|
|
|
|
#include "coor.h"
|
|
|
|
enum Color{
|
|
WHITE,
|
|
GREEN,
|
|
ORANGE,
|
|
BLUE
|
|
};
|
|
|
|
enum Direction{
|
|
UP,
|
|
RIGHT,
|
|
DOWN,
|
|
LEFT
|
|
};
|
|
|
|
typedef struct Node{
|
|
short south;
|
|
short east;
|
|
|
|
short visited;
|
|
int dp;
|
|
|
|
enum Color color;
|
|
enum Direction direction;
|
|
} Node;
|
|
|
|
typedef struct Labyrinth {
|
|
Node** at;
|
|
int x_size;
|
|
int y_size;
|
|
|
|
coor start;
|
|
coor end;
|
|
} Labyrinth;
|
|
|
|
Labyrinth* newLabyrinth(int n, int m);
|
|
void resetLabyrinth(Labyrinth* Labyrinth);
|
|
void removeLabyrinth(Labyrinth* labyrinth);
|
|
|
|
void find_path(Labyrinth* labyrinth);
|
|
|
|
void printLab(Labyrinth* labyrinth);
|
|
void printLabWith(Labyrinth* labyrinth, char wall, char floor, char corner);
|
|
|
|
#endif |