aboutsummaryrefslogtreecommitdiff
path: root/src/game/Player.h
diff options
context:
space:
mode:
authormegamage <none@none>2009-04-11 23:07:07 -0500
committermegamage <none@none>2009-04-11 23:07:07 -0500
commit0010f7ffe38c0432eb337746d71c7129fe74b64b (patch)
tree330a1d3c51a97c286f09ebb87f715ac8fa4b362a /src/game/Player.h
parentdda2fdff33a6d12d6e8f2913fbb439d9b670890f (diff)
[7648] Resolve problems with expected fall damage at near teleport. Author: VladimirMangos
Move near teleport landing code to WorldSession::HandleMoveTeleportAck. This make Player::TeleportTo code working in same way for both far/near teleports. Move mSemaphoreTeleport from WorldObject to Player and merge with DoNotMove (using 2 fields for far/near teleport flag). Skip movement packets until landing confirmation for near teleport from client. --HG-- branch : trunk
Diffstat (limited to 'src/game/Player.h')
-rw-r--r--src/game/Player.h30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/game/Player.h b/src/game/Player.h
index 1c2f7db6505..60b2c7a0a1d 100644
--- a/src/game/Player.h
+++ b/src/game/Player.h
@@ -1663,8 +1663,12 @@ class TRINITY_DLL_SPEC Player : public Unit
bool HasSkill(uint32 skill) const;
void learnSkillRewardedSpells(uint32 id, uint32 value);
- void SetDontMove(bool dontMove);
- bool GetDontMove() const { return m_dontMove; }
+ WorldLocation& GetTeleportDest() { return m_teleport_dest; }
+ bool IsBeingTeleported() const { return mSemaphoreTeleport_Near || mSemaphoreTeleport_Far; }
+ bool IsBeingTeleportedNear() const { return mSemaphoreTeleport_Near; }
+ bool IsBeingTeleportedFar() const { return mSemaphoreTeleport_Far; }
+ void SetSemaphoreTeleportNear(bool semphsetting) { mSemaphoreTeleport_Near = semphsetting; }
+ void SetSemaphoreTeleportFar(bool semphsetting) { mSemaphoreTeleport_Far = semphsetting; }
void CheckExploreSystem(void);
@@ -2057,8 +2061,6 @@ class TRINITY_DLL_SPEC Player : public Unit
bool isAllowedToLoot(Creature* creature);
- WorldLocation& GetTeleportDest() { return m_teleport_dest; }
-
DeclinedName const* GetDeclinedNames() const { return m_declinedname; }
uint8 GetRunesState() const { return m_runes->runeState; }
uint8 GetBaseRune(uint8 index) const { return m_runes->runes[index].BaseRune; }
@@ -2225,8 +2227,6 @@ class TRINITY_DLL_SPEC Player : public Unit
typedef std::list<Channel*> JoinedChannelsList;
JoinedChannelsList m_channels;
- bool m_dontMove;
-
int m_cinematic;
Player *pTrader;
@@ -2291,10 +2291,6 @@ class TRINITY_DLL_SPEC Player : public Unit
uint32 m_groupUpdateMask;
uint64 m_auraRaidUpdateMask;
- // Temporarily removed pet cache
- uint32 m_temporaryUnsummonedPetNumber;
- uint32 m_oldpetspell;
-
// Player summoning
time_t m_summon_expire;
uint32 m_summon_mapid;
@@ -2302,11 +2298,6 @@ class TRINITY_DLL_SPEC Player : public Unit
float m_summon_y;
float m_summon_z;
- // Far Teleport
- WorldLocation m_teleport_dest;
-
- bool m_farsightVision;
-
DeclinedName *m_declinedname;
Runes *m_runes;
private:
@@ -2334,6 +2325,15 @@ class TRINITY_DLL_SPEC Player : public Unit
uint8 m_MirrorTimerFlagsLast;
bool m_isInWater;
+ // Current teleport data
+ WorldLocation m_teleport_dest;
+ bool mSemaphoreTeleport_Near;
+ bool mSemaphoreTeleport_Far;
+
+ // Temporary removed pet cache
+ uint32 m_temporaryUnsummonedPetNumber;
+ uint32 m_oldpetspell;
+
AchievementMgr m_achievementMgr;
ReputationMgr m_reputationMgr;
};