1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-06 09:09:40 +02:00

Merge pull request #144 from vcmi/fix/teleportMultiExitPoints

Support for exit selection between multiple teleport exit points
This commit is contained in:
ArseniyShestakov
2015-12-05 03:12:17 +03:00
13 changed files with 108 additions and 57 deletions

View File

@@ -286,7 +286,7 @@ public:
bool isEntrance() const;
bool isExit() const;
virtual void teleportDialogAnswered(const CGHeroInstance *hero, ui32 answer, std::vector<ObjectInstanceID> exits) const = 0;
virtual void teleportDialogAnswered(const CGHeroInstance *hero, ui32 answer, TTeleportExitsList exits) const = 0;
static bool isTeleport(const CGObjectInstance * dst);
static bool isConnected(const CGTeleport * src, const CGTeleport * dst);
@@ -307,7 +307,7 @@ class DLL_LINKAGE CGMonolith : public CGTeleport
protected:
void onHeroVisit(const CGHeroInstance * h) const override;
void teleportDialogAnswered(const CGHeroInstance *hero, ui32 answer, std::vector<ObjectInstanceID> exits) const override;
void teleportDialogAnswered(const CGHeroInstance *hero, ui32 answer, TTeleportExitsList exits) const override;
void initObj() override;
public:
@@ -334,7 +334,7 @@ public:
class DLL_LINKAGE CGWhirlpool : public CGMonolith
{
void onHeroVisit(const CGHeroInstance * h) const override;
void teleportDialogAnswered(const CGHeroInstance *hero, ui32 answer, std::vector<ObjectInstanceID> exits) const override;
void teleportDialogAnswered(const CGHeroInstance *hero, ui32 answer, TTeleportExitsList exits) const override;
static bool isProtected( const CGHeroInstance * h );
public: