eqemu-server/zone/titles.h
Alex King 537b585791
[Cleanup] Use Repositories for Titles (#4608)
* [Cleanup] Use Repositories for Titles

* Update titles.h

* Further use repositories

* Revert "Further use repositories"

This reverts commit 80d5f750f0157657af05497eeade8b45e15dc12a.

* Push

* Update titles.cpp

* Push

* Merge branch 'cleanup/titles_repositories' of https://github.com/EQEmu/Server into cleanup/titles_repositories

* Final push
2025-02-06 23:25:36 -06:00

36 lines
888 B
C++

#ifndef TITLES_H
#define TITLES_H
#include <vector>
#include "../common/repositories/titles_repository.h"
class Client;
class EQApplicationPacket;
class TitleManager
{
public:
TitleManager();
bool LoadTitles();
EQApplicationPacket* MakeTitlesPacket(Client* c);
std::string GetPrefix(int title_set);
std::string GetSuffix(int title_set);
std::vector<TitlesRepository::Titles> GetEligibleTitles(Client* c);
bool IsNewAATitleAvailable(int aa_points, int class_id);
bool IsNewTradeSkillTitleAvailable(int t, int skill_value);
void CreateNewPlayerTitle(Client* c, std::string title);
void CreateNewPlayerSuffix(Client* c, std::string suffix);
bool HasTitle(Client* c, uint32 title_id);
inline const std::vector<TitlesRepository::Titles>& GetTitles() { return titles; }
protected:
std::vector<TitlesRepository::Titles> titles;
};
extern TitleManager title_manager;
#endif