1 #ifndef KAIK_METALMAP_HDR
2 #define KAIK_METALMAP_HDR
3 
4 #include <vector>
5 
6 struct AIClasses;
7 
8 class CMetalMap {
9 	public:
10 		CMetalMap(AIClasses* ai);
11 		~CMetalMap();
12 
13 		void Init();
14 		int NumSpotsFound;
15 		float AverageMetal;
16 		float3 GetNearestMetalSpot(int builderid, const UnitDef* extractor);
17 		std::vector<float3> VectoredSpots;
18 
19 	private:
20 		void GetMetalPoints();
21 		void SaveMetalMap();
22 		bool LoadMetalMap();
23 
24 		std::string GetCacheName() const;
25 
26 		float3 BufferSpot;
27 		bool Stopme;
28 		int MaxSpots;
29 		int MetalMapHeight;
30 		int MetalMapWidth;
31 		int TotalCells;
32 		int SquareRadius;
33 		int DoubleSquareRadius;
34 		int TotalMetal;
35 		int MaxMetal;
36 		int TempMetal;
37 		int coordx;
38 		int coordy;
39 		//int Minradius;
40 		int MinMetalForSpot;
41 		int XtractorRadius; // in metal map units
42 		int DoubleRadius; // in metal map units
43 		float XtractorRadiusOrg; // in heightmap units
44 		unsigned char* MexArrayA;
45 		unsigned char* MexArrayB;
46 		unsigned char* MexArrayC;
47 		int* TempAverage;
48 
49 		AIClasses* ai;
50 };
51 
52 
53 #endif
54