#pragma once
#include <iostream>
#include <raylib.h>
#include <vector>

namespace Morault {
	namespace Maps {
		struct MapTriangle {
			
			Vector2 a, b, c;
			std::string wallAB = "pms:none", wallBC = "pms:none", wallCA = "pms:none"; // if empty, no wall


			bool hasCeiling; std::string ceilingTexture = "pms:SKY"; // sky is special texture
			bool hasFloor;   std::string   floorTexture = "pms:SKY"; // sky is special texture
			
			int heightFloor, heightCeiling;
			
		};

		class Map { // Map element for Shuman 1
		public:
			std::vector<MapTriangle> MapTriangles;
			Map();
			Map(std::string path);
			void LoadMap(std::string path);
			void SaveMap(std::string path);
			~Map();
		};
	}
}