2
0
Эх сурвалжийг харах

Fix for starting hero being passable

Tomasz Zieliński 1 жил өмнө
parent
commit
cef25cca03

+ 7 - 0
lib/mapObjects/CGHeroInstance.cpp

@@ -150,6 +150,11 @@ bool CGHeroInstance::isCoastVisitable() const
 	return true;
 }
 
+bool CGHeroInstance::isBlockedVisitable() const
+{
+	return true;
+}
+
 BattleField CGHeroInstance::getBattlefield() const
 {
 	return BattleField::NONE;
@@ -281,6 +286,7 @@ CGHeroInstance::CGHeroInstance():
 	ID = Obj::HERO;
 	secSkills.emplace_back(SecondarySkill::NONE, -1);
 	blockVisit = true;
+	removable = true;
 }
 
 PlayerColor CGHeroInstance::getOwner() const
@@ -301,6 +307,7 @@ void CGHeroInstance::setHeroType(HeroTypeID heroType)
 
 void CGHeroInstance::initHero(CRandomGenerator & rand, const HeroTypeID & SUBID)
 {
+	blockVisit = true;
 	subID = SUBID.getNum();
 	initHero(rand);
 }

+ 1 - 0
lib/mapObjects/CGHeroInstance.h

@@ -301,6 +301,7 @@ public:
 	void updateFrom(const JsonNode & data) override;
 
 	bool isCoastVisitable() const override;
+	bool isBlockedVisitable() const override;
 	BattleField getBattlefield() const override;
 protected:
 	void setPropertyDer(ObjProperty what, ObjPropertyID identifier) override;//synchr