Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
#ifndef _GUILD_STRUCTURE_H_
|
||||
#define _GUILD_STRUCTURE_H_
|
||||
|
||||
#include <map>
|
||||
#include <vector>
|
||||
#include <Community/Guild/GuildConstants.h>
|
||||
|
||||
namespace Guild
|
||||
{
|
||||
// 전방 참조
|
||||
class CGuild;
|
||||
|
||||
struct MemberListInfo
|
||||
{
|
||||
unsigned char m_cRank; // 서열 (한 길드내에선 유니크한 숫자. 길드마스터를 0으로 하여 순차적으로 구성)
|
||||
unsigned char m_cTitle; // 직위 (Guild::Title의 상수를 참고)
|
||||
unsigned char m_cLevel; // 레벨
|
||||
unsigned char m_cClass; // 클래스
|
||||
unsigned char m_cGuildWarFlag; // 길드전쟁 참여 플래그 (Creature::WarFlag의 상수를 참고)
|
||||
|
||||
MemberListInfo()
|
||||
: m_cRank(0), m_cTitle(0), m_cLevel(0), m_cClass(0), m_cGuildWarFlag(0)
|
||||
{ }
|
||||
|
||||
MemberListInfo(unsigned char cRank, unsigned char cTitle, unsigned char cLevel, unsigned char cClass, unsigned char cGuildWarFlag)
|
||||
: m_cRank(cRank), m_cTitle(cTitle), m_cLevel(cLevel), m_cClass(cClass), m_cGuildWarFlag(cGuildWarFlag)
|
||||
{ }
|
||||
};
|
||||
|
||||
struct MemberDetailInfo
|
||||
{
|
||||
unsigned long m_dwFame;
|
||||
unsigned long m_dwGold;
|
||||
|
||||
MemberDetailInfo()
|
||||
: m_dwFame(0), m_dwGold(0)
|
||||
{ }
|
||||
|
||||
MemberDetailInfo(unsigned long dwFame, unsigned long dwGold)
|
||||
: m_dwFame(dwFame), m_dwGold(dwGold)
|
||||
{ }
|
||||
};
|
||||
|
||||
struct MemberInfo
|
||||
{
|
||||
// 변하지 않는 정보
|
||||
unsigned long m_dwCID;
|
||||
char m_strName[MAX_MEMBER_NAME_LEN];
|
||||
|
||||
// 따로 처리되는 정보
|
||||
unsigned long m_dwServerID;
|
||||
TIME m_LeaveGuildTime;
|
||||
unsigned char m_cUpdateCount;
|
||||
|
||||
unsigned char m_cTactics;
|
||||
|
||||
// 가끔 변하는 정보 (변경될 때마다 업데이트)
|
||||
MemberListInfo m_MemberListInfo;
|
||||
|
||||
// 자주 변하는 정보 (일정 횟수 이상 변경되면 업데이트)
|
||||
MemberDetailInfo m_MemberDetailInfo;
|
||||
|
||||
MemberInfo()
|
||||
: m_dwCID(0), m_dwServerID(0), m_cUpdateCount(0), m_cTactics(0), m_MemberListInfo(), m_MemberDetailInfo()
|
||||
{
|
||||
std::fill_n(m_strName, int(MAX_MEMBER_NAME_LEN), 0);
|
||||
::memset(&m_LeaveGuildTime, 0, sizeof(TIME));
|
||||
}
|
||||
};
|
||||
|
||||
typedef std::map<unsigned long, CGuild *> GuildMap;
|
||||
typedef std::map<std::string, CGuild *> GuildNameMap;
|
||||
|
||||
typedef std::vector<MemberInfo> MemberList;
|
||||
typedef std::map<unsigned long, unsigned char> RelationMap; // <GID, cRelation>
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user