Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
GuildMgr.h
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6#ifndef SF_GUILDMGR_H
7#define SF_GUILDMGR_H
8
9#include "Guild.h"
10#include "Platform/Singleton.h"
11
13{
14 friend class Skyfire::Singleton<GuildMgr, Skyfire::NullMutex>;
15
16private:
17 GuildMgr();
18 ~GuildMgr();
19
20public:
21 Guild* GetGuildByLeader(uint64 guid) const;
22 Guild* GetGuildById(uint32 guildId) const;
23 Guild* GetGuildByGuid(uint64 guid) const;
24 Guild* GetGuildByName(std::string const& guildName) const;
25 std::string GetGuildNameById(uint32 guildId) const;
26
28 void LoadGuildRewards();
29
30 void LoadGuilds();
31 void AddGuild(Guild* guild);
32 void RemoveGuild(uint32 guildId);
33
34 void SaveGuilds();
35
37
39 void SetNextGuildId(uint32 Id) { NextGuildId = Id; }
40
41 uint32 GetXPForGuildLevel(uint8 level) const;
42 std::vector<GuildReward> const& GetGuildRewards() const { return GuildRewards; }
43
44 void ResetTimes(bool week);
45protected:
49 std::vector<uint64> GuildXPperLevel;
50 std::vector<GuildReward> GuildRewards;
51};
52
53#define sGuildMgr Skyfire::Singleton<GuildMgr, Skyfire::NullMutex>::instance()
54
55#endif
std::uint8_t uint8
Definition Define.h:79
std::uint32_t uint32
Definition Define.h:77
#define UNORDERED_MAP
Definition Guild.h:324
Guild * GetGuildById(uint32 guildId) const
Definition GuildMgr.cpp:45
GuildContainer GuildStore
Definition GuildMgr.h:48
Guild * GetGuildByName(std::string const &guildName) const
Definition GuildMgr.cpp:65
void ResetTimes(bool week)
Definition GuildMgr.cpp:556
std::vector< GuildReward > GuildRewards
Definition GuildMgr.h:50
void LoadGuildRewards()
Definition GuildMgr.cpp:494
void RemoveGuild(uint32 guildId)
Definition GuildMgr.cpp:23
void AddGuild(Guild *guild)
Definition GuildMgr.cpp:18
uint32 NextGuildId
Definition GuildMgr.h:47
uint32 GenerateGuildId()
Definition GuildMgr.cpp:34
uint32 GetXPForGuildLevel(uint8 level) const
Definition GuildMgr.cpp:96
Guild * GetGuildByGuid(uint64 guid) const
Definition GuildMgr.cpp:54
std::vector< GuildReward > const & GetGuildRewards() const
Definition GuildMgr.h:42
void LoadGuilds()
Definition GuildMgr.cpp:103
Guild * GetGuildByLeader(uint64 guid) const
Definition GuildMgr.cpp:87
std::string GetGuildNameById(uint32 guildId) const
Definition GuildMgr.cpp:79
std::vector< uint64 > GuildXPperLevel
Definition GuildMgr.h:49
void LoadGuildXpForLevel()
Definition GuildMgr.cpp:445
void SetNextGuildId(uint32 Id)
Definition GuildMgr.h:39
void ResetReputationCaps()
UNORDERED_MAP< uint32, Guild * > GuildContainer
Definition GuildMgr.h:46
void SaveGuilds()
Definition GuildMgr.cpp:28