aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Reputation/ReputationMgr.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Reputation/ReputationMgr.h')
-rw-r--r--src/server/game/Reputation/ReputationMgr.h25
1 files changed, 10 insertions, 15 deletions
diff --git a/src/server/game/Reputation/ReputationMgr.h b/src/server/game/Reputation/ReputationMgr.h
index d665a3ef556..d2490dae1ba 100644
--- a/src/server/game/Reputation/ReputationMgr.h
+++ b/src/server/game/Reputation/ReputationMgr.h
@@ -70,11 +70,11 @@ class TC_GAME_API ReputationMgr
void SaveToDB(CharacterDatabaseTransaction trans);
void LoadFromDB(PreparedQueryResult result);
public: // statics
- static const int32 PointsInRank[MAX_REPUTATION_RANK];
+ static std::set<int32> const ReputationRankThresholds;
static const int32 Reputation_Cap;
static const int32 Reputation_Bottom;
- static ReputationRank ReputationToRank(int32 standing);
+ static ReputationRank ReputationToRank(FactionEntry const* factionEntry, int32 standing);
public: // accessors
uint8 GetVisibleFactionCount() const { return _visibleFactionCount; }
uint8 GetHonoredFactionCount() const { return _honoredFactionCount; }
@@ -83,10 +83,7 @@ class TC_GAME_API ReputationMgr
FactionStateList const& GetStateList() const { return _factions; }
- FactionState const* GetState(FactionEntry const* factionEntry) const
- {
- return factionEntry->CanHaveReputation() ? GetState(factionEntry->ReputationIndex) : nullptr;
- }
+ FactionState const* GetState(FactionEntry const* factionEntry) const;
FactionState const* GetState(RepListID id) const
{
@@ -101,19 +98,15 @@ class TC_GAME_API ReputationMgr
int32 GetReputation(uint32 faction_id) const;
int32 GetReputation(FactionEntry const* factionEntry) const;
int32 GetBaseReputation(FactionEntry const* factionEntry) const;
+ int32 GetMinReputation(FactionEntry const* factionEntry) const;
+ int32 GetMaxReputation(FactionEntry const* factionEntry) const;
ReputationRank GetRank(FactionEntry const* factionEntry) const;
ReputationRank GetBaseRank(FactionEntry const* factionEntry) const;
- uint32 GetReputationRankStrIndex(FactionEntry const* factionEntry) const
- {
- return ReputationRankStrIndex[GetRank(factionEntry)];
- };
+ std::string GetReputationRankName(FactionEntry const* factionEntry) const;;
- ReputationRank const* GetForcedRankIfAny(FactionTemplateEntry const* factionTemplateEntry) const
- {
- ForcedReactions::const_iterator forceItr = _forcedReactions.find(factionTemplateEntry->Faction);
- return forceItr != _forcedReactions.end() ? &forceItr->second : nullptr;
- }
+ ReputationRank const* GetForcedRankIfAny(FactionTemplateEntry const* factionTemplateEntry) const;
+ ReputationRank const* GetForcedRankIfAny(uint32 factionId) const;
public: // modifiers
bool SetReputation(FactionEntry const* factionEntry, int32 standing)
@@ -149,6 +142,8 @@ class TC_GAME_API ReputationMgr
void SetInactive(FactionState* faction, bool inactive) const;
void SendVisible(FactionState const* faction) const;
void UpdateRankCounters(ReputationRank old_rank, ReputationRank new_rank);
+ int32 GetFactionDataIndexForRaceAndClass(FactionEntry const* factionEntry) const;
+
private:
Player* _player;
FactionStateList _factions;