mirror of
https://github.com/glest/glest-source.git
synced 2025-08-10 18:34:05 +02:00
Fixed the god-awful indentation
This commit is contained in:
@@ -25,212 +25,242 @@ using Shared::Platform::float32;
|
||||
using Shared::Util::RandomGen;
|
||||
using Shared::Graphics::Vec2i;
|
||||
|
||||
namespace Shared { namespace Map {
|
||||
namespace Shared {
|
||||
namespace Map {
|
||||
|
||||
enum MapSurfaceType {
|
||||
st_Grass = 1,
|
||||
st_Secondary_Grass,
|
||||
st_Road,
|
||||
st_Stone,
|
||||
st_Ground
|
||||
enum MapSurfaceType {
|
||||
st_Grass = 1,
|
||||
st_Secondary_Grass,
|
||||
st_Road,
|
||||
st_Stone,
|
||||
st_Ground
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
static const int MAX_TITLE_LENGTH = 128;
|
||||
static const int MAX_AUTHOR_LENGTH = 128;
|
||||
static const int MAX_DESCRIPTION_LENGTH = 256;
|
||||
static const int MAX_DESCRIPTION_LENGTH_VERSION2 = 128;
|
||||
static const int MAX_TITLE_LENGTH = 128;
|
||||
static const int MAX_AUTHOR_LENGTH = 128;
|
||||
static const int MAX_DESCRIPTION_LENGTH = 256;
|
||||
static const int MAX_DESCRIPTION_LENGTH_VERSION2 = 128;
|
||||
|
||||
static const int MIN_MAP_CELL_DIMENSION = 16;
|
||||
static const int MAX_MAP_CELL_DIMENSION = 1024;
|
||||
static const int MIN_MAP_CELL_DIMENSION = 16;
|
||||
static const int MAX_MAP_CELL_DIMENSION = 1024;
|
||||
|
||||
static const int MIN_MAP_CELL_HEIGHT = 0;
|
||||
static const int MAX_MAP_CELL_HEIGHT = 20;
|
||||
static const int DEFAULT_MAP_CELL_HEIGHT = 10;
|
||||
static const int MIN_MAP_CELL_HEIGHT = 0;
|
||||
static const int MAX_MAP_CELL_HEIGHT = 20;
|
||||
static const int DEFAULT_MAP_CELL_HEIGHT = 10;
|
||||
|
||||
static const int MIN_MAP_FACTIONCOUNT = 1;
|
||||
static const int MAX_MAP_FACTIONCOUNT = 8;
|
||||
static const int DEFAULT_MAP_FACTIONCOUNT = 8;
|
||||
static const int MIN_MAP_FACTIONCOUNT = 1;
|
||||
static const int MAX_MAP_FACTIONCOUNT = 8;
|
||||
static const int DEFAULT_MAP_FACTIONCOUNT = 8;
|
||||
|
||||
static const int DEFAULT_MAP_CELL_WIDTH = 128;
|
||||
static const int DEFAULT_MAP_CELL_LENGTH = 128;
|
||||
static const int DEFAULT_MAP_CELL_WIDTH = 128;
|
||||
static const int DEFAULT_MAP_CELL_LENGTH = 128;
|
||||
|
||||
static const MapSurfaceType DEFAULT_MAP_CELL_SURFACE_TYPE = st_Grass;
|
||||
static const MapSurfaceType DEFAULT_MAP_CELL_SURFACE_TYPE = st_Grass;
|
||||
|
||||
static const int DEFAULT_MAP_CELL_HEIGHT_FACTOR = 3;
|
||||
static const int DEFAULT_MAP_WATER_DEPTH = 4;
|
||||
static const int DEFAULT_CLIFF_HEIGHT = 0;
|
||||
static const int DEFAULT_MAP_CELL_HEIGHT_FACTOR = 3;
|
||||
static const int DEFAULT_MAP_WATER_DEPTH = 4;
|
||||
static const int DEFAULT_CLIFF_HEIGHT = 0;
|
||||
|
||||
enum MapVersionType {
|
||||
mapver_1 = 1,
|
||||
mapver_2,
|
||||
enum MapVersionType {
|
||||
mapver_1 = 1,
|
||||
mapver_2,
|
||||
|
||||
mapver_MAX
|
||||
};
|
||||
mapver_MAX
|
||||
};
|
||||
|
||||
static const int MAP_FORMAT_VERSION = mapver_MAX - 1;
|
||||
static const int MAP_FORMAT_VERSION = mapver_MAX - 1;
|
||||
|
||||
struct MapFileHeader {
|
||||
int32 version;
|
||||
int32 maxFactions;
|
||||
int32 width;
|
||||
int32 height;
|
||||
int32 heightFactor;
|
||||
int32 waterLevel;
|
||||
int8 title[MAX_TITLE_LENGTH];
|
||||
int8 author[MAX_AUTHOR_LENGTH];
|
||||
union {
|
||||
int8 description[MAX_DESCRIPTION_LENGTH];
|
||||
struct {
|
||||
int8 short_desc[MAX_DESCRIPTION_LENGTH_VERSION2];
|
||||
int32 magic; // 0x01020304 for meta
|
||||
int32 cliffLevel;
|
||||
int32 cameraHeight;
|
||||
int8 meta[116];
|
||||
} version2;
|
||||
};
|
||||
};
|
||||
struct MapFileHeader {
|
||||
int32 version;
|
||||
int32 maxFactions;
|
||||
int32 width;
|
||||
int32 height;
|
||||
int32 heightFactor;
|
||||
int32 waterLevel;
|
||||
int8 title[MAX_TITLE_LENGTH];
|
||||
int8 author[MAX_AUTHOR_LENGTH];
|
||||
union {
|
||||
int8 description[MAX_DESCRIPTION_LENGTH];
|
||||
struct {
|
||||
int8 short_desc[MAX_DESCRIPTION_LENGTH_VERSION2];
|
||||
int32 magic; // 0x01020304 for meta
|
||||
int32 cliffLevel;
|
||||
int32 cameraHeight;
|
||||
int8 meta[116];
|
||||
} version2;
|
||||
};
|
||||
};
|
||||
|
||||
void toEndianMapFileHeader(MapFileHeader &header);
|
||||
void fromEndianMapFileHeader(MapFileHeader &header);
|
||||
void toEndianMapFileHeader(MapFileHeader &header);
|
||||
void fromEndianMapFileHeader(MapFileHeader &header);
|
||||
|
||||
class MapInfo {
|
||||
public:
|
||||
class MapInfo {
|
||||
public:
|
||||
|
||||
Vec2i size;
|
||||
int players;
|
||||
int hardMaxPlayers;
|
||||
string desc;
|
||||
Vec2i size;
|
||||
int players;
|
||||
int hardMaxPlayers;
|
||||
string desc;
|
||||
|
||||
MapInfo() {
|
||||
size = Vec2i(0, 0);
|
||||
players = 0;
|
||||
hardMaxPlayers = 0;
|
||||
desc = "";
|
||||
}
|
||||
};
|
||||
|
||||
// ===============================================
|
||||
// class Map
|
||||
// ===============================================
|
||||
|
||||
class MapPreview {
|
||||
public:
|
||||
static const int maxHeight = 20;
|
||||
static const int minHeight = 0;
|
||||
|
||||
private:
|
||||
struct Cell {
|
||||
int surface;
|
||||
int object;
|
||||
int resource;
|
||||
float height;
|
||||
};
|
||||
|
||||
struct StartLocation {
|
||||
int x;
|
||||
int y;
|
||||
};
|
||||
|
||||
RandomGen random;
|
||||
string title;
|
||||
string author;
|
||||
string desc;
|
||||
string recScn;
|
||||
int type;
|
||||
int h;
|
||||
int w;
|
||||
int heightFactor;
|
||||
int waterLevel;
|
||||
int cliffLevel;
|
||||
int cameraHeight;
|
||||
//Cell **cells;
|
||||
std::vector<std::vector<Cell> > cells;
|
||||
|
||||
int maxFactions;
|
||||
//StartLocation *startLocations;
|
||||
std::vector<StartLocation> startLocations;
|
||||
int refAlt;
|
||||
|
||||
bool fileLoaded;
|
||||
string mapFileLoaded;
|
||||
bool hasChanged;
|
||||
|
||||
public:
|
||||
MapPreview();
|
||||
~MapPreview();
|
||||
|
||||
bool getHasChanged() const {
|
||||
return hasChanged;
|
||||
}
|
||||
void setHasChanged(bool value) {
|
||||
hasChanged = value;
|
||||
}
|
||||
|
||||
float getHeight(int x, int y) const;
|
||||
bool isCliff(int x, int y);
|
||||
MapSurfaceType getSurface(int x, int y) const;
|
||||
int getObject(int x, int y) const;
|
||||
int getResource(int x, int y) const;
|
||||
int getStartLocationX(int index) const;
|
||||
int getStartLocationY(int index) const;
|
||||
int getHeightFactor() const {
|
||||
return heightFactor;
|
||||
}
|
||||
int getWaterLevel() const {
|
||||
return waterLevel;
|
||||
}
|
||||
int getCliffLevel() const {
|
||||
return cliffLevel;
|
||||
}
|
||||
int getCameraHeight() const {
|
||||
return cameraHeight;
|
||||
}
|
||||
|
||||
bool inside(int x, int y);
|
||||
|
||||
void setRefAlt(int x, int y);
|
||||
void setAdvanced(int heightFactor, int waterLevel, int cliffLevel, int cameraHeight);
|
||||
void setTitle(const string &title);
|
||||
void setDesc(const string &desc);
|
||||
void setAuthor(const string &author);
|
||||
|
||||
int getH() const {
|
||||
return h;
|
||||
}
|
||||
int getW() const {
|
||||
return w;
|
||||
}
|
||||
int getMaxFactions() const {
|
||||
return maxFactions;
|
||||
}
|
||||
string getTitle() const {
|
||||
return title;
|
||||
}
|
||||
string getDesc() const {
|
||||
return desc;
|
||||
}
|
||||
string getAuthor() const {
|
||||
return author;
|
||||
}
|
||||
|
||||
void glestChangeHeight(int x, int y, int height, int radius);
|
||||
void pirateChangeHeight(int x, int y, int height, int radius);
|
||||
void changeSurface(int x, int y, MapSurfaceType surface, int radius);
|
||||
void changeObject(int x, int y, int object, int radius);
|
||||
void changeResource(int x, int y, int resource, int radius);
|
||||
void changeStartLocation(int x, int y, int player);
|
||||
|
||||
void setHeight(int x, int y, float height);
|
||||
void setSurface(int x, int y, MapSurfaceType surface);
|
||||
void setObject(int x, int y, int object);
|
||||
void setResource(int x, int y, int resource);
|
||||
|
||||
void flipX();
|
||||
void flipY();
|
||||
void copyXY(int x, int y, int sx, int sy); // destination x,y = source sx,sy
|
||||
void swapXY(int x, int y, int sx, int sy);
|
||||
void reset(int w, int h, float alt, MapSurfaceType surf);
|
||||
void resize(int w, int h, float alt, MapSurfaceType surf);
|
||||
void resetFactions(int maxFactions);
|
||||
void randomizeHeights(bool withReset, int minimumHeight, int maximumHeight, int chanceDevider, int smoothRecursions);
|
||||
void randomizeFactions();
|
||||
void smoothSurface(bool limitHeights);
|
||||
void switchSurfaces(MapSurfaceType surf1, MapSurfaceType surf2);
|
||||
|
||||
void loadFromFile(const string &path);
|
||||
void saveToFile(const string &path);
|
||||
|
||||
void resetHeights(int height);
|
||||
void realRandomize(int minimumHeight, int maximumHeight, int chanceDivider, int smoothRecursions);
|
||||
void applyNewHeight(float newHeight, int x, int y, int strenght);
|
||||
|
||||
bool hasFileLoaded() const {
|
||||
return fileLoaded;
|
||||
}
|
||||
string getMapFileLoaded() const {
|
||||
return mapFileLoaded;
|
||||
}
|
||||
|
||||
static bool loadMapInfo(string file, MapInfo *mapInfo, string i18nMaxMapPlayersTitle, string i18nMapSizeTitle, bool errorOnInvalidMap = true);
|
||||
static string getMapPath(const vector<string> &pathList, const string &mapName, string scenarioDir = "", bool errorOnNotFound = true);
|
||||
static vector<string> findAllValidMaps(const vector<string> &pathList,
|
||||
string scenarioDir, bool getUserDataOnly = false, bool cutExtension = true,
|
||||
vector<string> *invalidMapList = NULL);
|
||||
};
|
||||
|
||||
MapInfo() {
|
||||
size = Vec2i(0,0);
|
||||
players = 0;
|
||||
hardMaxPlayers = 0;
|
||||
desc = "";
|
||||
}
|
||||
};
|
||||
|
||||
// ===============================================
|
||||
// class Map
|
||||
// ===============================================
|
||||
|
||||
class MapPreview {
|
||||
public:
|
||||
static const int maxHeight = 20;
|
||||
static const int minHeight = 0;
|
||||
|
||||
private:
|
||||
struct Cell {
|
||||
int surface;
|
||||
int object;
|
||||
int resource;
|
||||
float height;
|
||||
};
|
||||
|
||||
struct StartLocation {
|
||||
int x;
|
||||
int y;
|
||||
};
|
||||
|
||||
RandomGen random;
|
||||
string title;
|
||||
string author;
|
||||
string desc;
|
||||
string recScn;
|
||||
int type;
|
||||
int h;
|
||||
int w;
|
||||
int heightFactor;
|
||||
int waterLevel;
|
||||
int cliffLevel;
|
||||
int cameraHeight;
|
||||
//Cell **cells;
|
||||
std::vector<std::vector<Cell> > cells;
|
||||
|
||||
int maxFactions;
|
||||
//StartLocation *startLocations;
|
||||
std::vector<StartLocation> startLocations;
|
||||
int refAlt;
|
||||
|
||||
bool fileLoaded;
|
||||
string mapFileLoaded;
|
||||
bool hasChanged;
|
||||
|
||||
public:
|
||||
MapPreview();
|
||||
~MapPreview();
|
||||
|
||||
bool getHasChanged() const { return hasChanged; }
|
||||
void setHasChanged(bool value) { hasChanged = value; }
|
||||
|
||||
float getHeight(int x, int y) const;
|
||||
bool isCliff(int x,int y);
|
||||
MapSurfaceType getSurface(int x, int y) const;
|
||||
int getObject(int x, int y) const;
|
||||
int getResource(int x, int y) const;
|
||||
int getStartLocationX(int index) const;
|
||||
int getStartLocationY(int index) const;
|
||||
int getHeightFactor() const{return heightFactor;}
|
||||
int getWaterLevel() const{return waterLevel;}
|
||||
int getCliffLevel() const{return cliffLevel;}
|
||||
int getCameraHeight() const{return cameraHeight;}
|
||||
|
||||
bool inside(int x, int y);
|
||||
|
||||
void setRefAlt(int x, int y);
|
||||
void setAdvanced(int heightFactor, int waterLevel, int cliffLevel, int cameraHeight);
|
||||
void setTitle(const string &title);
|
||||
void setDesc(const string &desc);
|
||||
void setAuthor(const string &author);
|
||||
|
||||
int getH() const {return h;}
|
||||
int getW() const {return w;}
|
||||
int getMaxFactions() const {return maxFactions;}
|
||||
string getTitle() const {return title;}
|
||||
string getDesc() const {return desc;}
|
||||
string getAuthor() const {return author;}
|
||||
|
||||
void glestChangeHeight(int x, int y, int height, int radius);
|
||||
void pirateChangeHeight(int x, int y, int height, int radius);
|
||||
void changeSurface(int x, int y, MapSurfaceType surface, int radius);
|
||||
void changeObject(int x, int y, int object, int radius);
|
||||
void changeResource(int x, int y, int resource, int radius);
|
||||
void changeStartLocation(int x, int y, int player);
|
||||
|
||||
void setHeight(int x, int y, float height);
|
||||
void setSurface(int x, int y, MapSurfaceType surface);
|
||||
void setObject(int x, int y, int object);
|
||||
void setResource(int x, int y, int resource);
|
||||
|
||||
void flipX();
|
||||
void flipY();
|
||||
void copyXY(int x, int y, int sx, int sy); // destination x,y = source sx,sy
|
||||
void swapXY(int x, int y, int sx, int sy);
|
||||
void reset(int w, int h, float alt, MapSurfaceType surf);
|
||||
void resize(int w, int h, float alt, MapSurfaceType surf);
|
||||
void resetFactions(int maxFactions);
|
||||
void randomizeHeights(bool withReset,int minimumHeight, int maximumHeight, int chanceDevider, int smoothRecursions);
|
||||
void randomizeFactions();
|
||||
void smoothSurface(bool limitHeights);
|
||||
void switchSurfaces(MapSurfaceType surf1, MapSurfaceType surf2);
|
||||
|
||||
void loadFromFile(const string &path);
|
||||
void saveToFile(const string &path);
|
||||
|
||||
void resetHeights(int height);
|
||||
void realRandomize(int minimumHeight, int maximumHeight, int chanceDivider, int smoothRecursions);
|
||||
void applyNewHeight(float newHeight, int x, int y, int strenght);
|
||||
|
||||
bool hasFileLoaded() const {return fileLoaded;}
|
||||
string getMapFileLoaded() const { return mapFileLoaded; }
|
||||
|
||||
static bool loadMapInfo(string file, MapInfo *mapInfo, string i18nMaxMapPlayersTitle,string i18nMapSizeTitle,bool errorOnInvalidMap=true);
|
||||
static string getMapPath(const vector<string> &pathList, const string &mapName, string scenarioDir="", bool errorOnNotFound=true);
|
||||
static vector<string> findAllValidMaps(const vector<string> &pathList,
|
||||
string scenarioDir, bool getUserDataOnly=false, bool cutExtension=true,
|
||||
vector<string> *invalidMapList=NULL);
|
||||
};
|
||||
|
||||
}}// end namespace
|
||||
}// end namespace
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user