2022-08-09 07:54:32 +02:00
|
|
|
/*
|
|
|
|
* TileInfo.h, part of VCMI engine
|
|
|
|
*
|
|
|
|
* Authors: listed in file AUTHORS in main folder
|
|
|
|
*
|
|
|
|
* License: GNU General Public License v2.0 or later
|
|
|
|
* Full text of license available in license.txt file, in main folder
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "../GameConstants.h"
|
|
|
|
#include "../Terrain.h"
|
|
|
|
|
|
|
|
class TileInfo
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
|
|
|
|
TileInfo();
|
|
|
|
|
|
|
|
float getNearestObjectDistance() const;
|
|
|
|
void setNearestObjectDistance(float value);
|
|
|
|
bool isBlocked() const;
|
|
|
|
bool shouldBeBlocked() const;
|
|
|
|
bool isPossible() const;
|
|
|
|
bool isFree() const;
|
|
|
|
bool isUsed() const;
|
|
|
|
bool isRoad() const;
|
|
|
|
void setOccupied(ETileType::ETileType value);
|
2022-09-21 11:34:23 +02:00
|
|
|
TTerrain getTerrainType() const;
|
2022-08-09 07:54:32 +02:00
|
|
|
ETileType::ETileType getTileType() const;
|
2022-09-21 11:34:23 +02:00
|
|
|
void setTerrainType(TTerrain value);
|
2022-08-09 07:54:32 +02:00
|
|
|
|
2022-09-23 16:24:01 +02:00
|
|
|
void setRoadType(TRoad type);
|
2022-08-09 07:54:32 +02:00
|
|
|
private:
|
|
|
|
float nearestObjectDistance;
|
|
|
|
ETileType::ETileType occupied;
|
2022-09-21 11:34:23 +02:00
|
|
|
TTerrain terrain;
|
2022-09-23 16:24:01 +02:00
|
|
|
TRoad roadType;
|
2022-08-09 07:54:32 +02:00
|
|
|
};
|