[7038] Fixing known taxi node save in 3.0.3. Cleanup code.

This commit is contained in:
VladimirMangos 2009-01-06 14:10:15 +03:00
parent 221a60266b
commit 1c5456324a
3 changed files with 18 additions and 8 deletions

View file

@ -247,6 +247,15 @@ uint32 PlayerTaxi::GetCurrentTaxiPath() const
return path; return path;
} }
std::ostringstream& operator<< (std::ostringstream& ss, PlayerTaxi const& taxi)
{
ss << "'";
for(int i = 0; i < TaxiMaskSize; ++i)
ss << taxi.m_taximask[i] << " ";
ss << "'";
return ss;
}
//== Player ==================================================== //== Player ====================================================
const int32 Player::ReputationRank_Length[MAX_REPUTATION_RANK] = {36000, 3000, 3000, 3000, 6000, 12000, 21000, 1000}; const int32 Player::ReputationRank_Length[MAX_REPUTATION_RANK] = {36000, 3000, 3000, 3000, 6000, 12000, 21000, 1000};
@ -15347,12 +15356,11 @@ void Player::SaveToDB()
ss << GetUInt32Value(i) << " "; ss << GetUInt32Value(i) << " ";
} }
ss << "', '";
for( i = 0; i < 8; i++ )
ss << m_taxi.GetTaximask(i) << " ";
ss << "', "; ss << "', ";
ss << m_taxi; // string with TaxiMaskSize numbers
ss << ", ";
ss << (inworld ? 1 : 0); ss << (inworld ? 1 : 0);
ss << ", "; ss << ", ";

View file

@ -900,9 +900,7 @@ class MANGOS_DLL_SPEC PlayerTaxi
// Nodes // Nodes
void InitTaxiNodesForLevel(uint32 race, uint32 chrClass, uint32 level); void InitTaxiNodesForLevel(uint32 race, uint32 chrClass, uint32 level);
void LoadTaxiMask(const char* data); void LoadTaxiMask(const char* data);
void SaveTaxiMask(const char* data);
uint32 GetTaximask( uint8 index ) const { return m_taximask[index]; }
bool IsTaximaskNodeKnown(uint32 nodeidx) const bool IsTaximaskNodeKnown(uint32 nodeidx) const
{ {
uint8 field = uint8((nodeidx - 1) / 32); uint8 field = uint8((nodeidx - 1) / 32);
@ -938,11 +936,15 @@ class MANGOS_DLL_SPEC PlayerTaxi
return GetTaxiDestination(); return GetTaxiDestination();
} }
bool empty() const { return m_TaxiDestinations.empty(); } bool empty() const { return m_TaxiDestinations.empty(); }
friend std::ostringstream& operator<< (std::ostringstream& ss, PlayerTaxi const& taxi);
private: private:
TaxiMask m_taximask; TaxiMask m_taximask;
std::deque<uint32> m_TaxiDestinations; std::deque<uint32> m_TaxiDestinations;
}; };
std::ostringstream& operator<< (std::ostringstream& ss, PlayerTaxi const& taxi);
class MANGOS_DLL_SPEC Player : public Unit class MANGOS_DLL_SPEC Player : public Unit
{ {
friend class WorldSession; friend class WorldSession;

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__ #ifndef __REVISION_NR_H__
#define __REVISION_NR_H__ #define __REVISION_NR_H__
#define REVISION_NR "7037" #define REVISION_NR "7038"
#endif // __REVISION_NR_H__ #endif // __REVISION_NR_H__