1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-25 22:42:04 +02:00

Select random object template instead of first

This commit is contained in:
nordsoft
2023-09-30 01:19:18 +02:00
parent 811680c4c5
commit ce62ab3e66
7 changed files with 28 additions and 26 deletions

View File

@@ -17,6 +17,7 @@
VCMI_LIB_NAMESPACE_BEGIN
class CGObjectInstance;
class CRandomGenerator;
class RmgMap;
namespace rmg {
@@ -35,8 +36,8 @@ public:
int3 getVisitablePosition() const;
bool isVisitableFrom(const int3 & tile) const;
const Area & getAccessibleArea() const;
void setTemplate(TerrainId terrain); //cache invalidation
void setAnyTemplate(); //cache invalidation
void setTemplate(TerrainId terrain, CRandomGenerator &); //cache invalidation
void setAnyTemplate(CRandomGenerator &); //cache invalidation
int3 getTopTile() const;
int3 getPosition(bool isAbsolute = false) const;
@@ -45,7 +46,7 @@ public:
const CGObjectInstance & object() const;
CGObjectInstance & object();
void finalize(RmgMap & map); //cache invalidation
void finalize(RmgMap & map, CRandomGenerator &); //cache invalidation
void clear();
private:
@@ -73,7 +74,7 @@ public:
const int3 & getPosition() const;
void setPosition(const int3 & position);
void setTemplate(const TerrainId & terrain);
void setTemplate(const TerrainId & terrain, CRandomGenerator &);
const Area & getArea() const; //lazy cache invalidation
const int3 getVisibleTop() const;
@@ -81,7 +82,7 @@ public:
bool isGuarded() const;
void setGuardedIfMonster(const Instance & object);
void finalize(RmgMap & map);
void finalize(RmgMap & map, CRandomGenerator &);
void clear();
private: