CSC8501_Advanced_Programming_For_Games / MazeGeneration / Dijkstra.h
Dijkstra.h
Raw
#pragma once
#include <vector>
#include <random>
#include <algorithm>
#include "MazeGenerator.h"
#include "PathGenerator.h"

class Dijkstra : public PathGenerator
{
public:
	void MazeSearch(char** maze, uint32_t mazeHeight, uint32_t mazeWidth, PathGenerator::Location startpoint, uint32_t exit_y, uint32_t exit_x);
private:
	static constexpr uint32_t Maze_Char_Space = PathGenerator::Maze_Char_Space; // " " 
	static constexpr uint32_t Maze_Char_Wall = PathGenerator::Maze_Char_Wall; // X 
	static constexpr uint32_t Maze_Char_Path = PathGenerator::Maze_Char_Path; // o 

	static constexpr uint32_t Maze_Char_Exit = PathGenerator::Maze_Char_Exit; // E
	static constexpr uint32_t Maze_Char_Start = PathGenerator::Maze_Char_Start; // S

	struct distance {
		uint32_t y;
		uint32_t x;
	};
};