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:
2025-11-29 20:17:20 +09:00
parent 5d3cd64a25
commit dd97ddec92
11602 changed files with 1446576 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,179 @@
#ifndef _RYL_DBAGENT_GAME_TIME_DB_MANAGER_H_
#define _RYL_DBAGENT_GAME_TIME_DB_MANAGER_H_
#pragma once
#include <map>
#include <vector>
#include <GameTime/GameTimeConstants.h>
#include <Network/Packet/PacketStruct/CastlePacket.h>
#include <DataStorage/SessionData.h>
using namespace GameTime;
using namespace DBAgent;
class CDBComponent;
class CDBComponent;
class CSessionData;
class CGameTimeDBMgr
{
public:
// <20><><EFBFBD><EFBFBD> <20>ð<EFBFBD><C3B0><EFBFBD> <20><><EFBFBD><EFBFBD>ü
struct sGameTime
{
unsigned long m_dwID;
TimeType m_eTimeType; // <20><><EFBFBD><EFBFBD> <20>ð<EFBFBD> Ÿ<><C5B8> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Cycle m_eTimeCycle; // <20><><EFBFBD><EFBFBD> <20>ð<EFBFBD> <20>ֱ<EFBFBD> (<28><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD>, <20>ſ<EFBFBD>, Ư<><C6AF><EFBFBD><EFBFBD>)
Week m_eWeek; // Cycle <20><> Weekly <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
unsigned short m_wYear; // <20>
unsigned char m_cMonth; // <20><>
unsigned char m_cDay; // <20><>
unsigned char m_cHour; // <20>ð<EFBFBD>
unsigned char m_cMinute; // <20><>
unsigned long m_dwDuration; // <20>÷<EFBFBD><C3B7><EFBFBD> Ÿ<><C5B8> (<28><>)
// edith 2009.07.21 <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20>۾<EFBFBD><DBBE><EFBFBD>
unsigned long m_dwValue1; // <20><>Ÿ<EFBFBD>۾<EFBFBD><DBBE><EFBFBD>
unsigned long m_dwValue2; // <20><>Ÿ<EFBFBD>۾<EFBFBD><DBBE><EFBFBD>
sGameTime::sGameTime()
{
m_dwID = 0;
m_eTimeType = TYPE_NONE;
m_eTimeCycle = CYCLE_NONE;
m_eWeek = WEEK_NONE;
m_wYear = 0;
m_cMonth = 0;
m_cDay = 0;
m_cHour = 0;
m_cMinute = 0;
m_dwDuration = 0;
m_dwValue1 = 0;
m_dwValue2 = 0;
}
};
typedef std::map<unsigned long, sGameTime> GameTimeTable;
// <20>Ľ<EFBFBD> <20><><EFBFBD><EFBFBD>ü
struct ParseData
{
typedef bool(*ParseFunc) (sGameTime& gametime, const char* szValue);
const char* m_szColumnName;
ParseFunc m_fnParseFunc;
ParseData(const char* szColumnName, ParseFunc fnParseFunc)
: m_szColumnName(szColumnName), m_fnParseFunc(fnParseFunc) { }
};
typedef std::vector<ParseData> ParseDataArray;
public:
bool LoadGameTimeScript(const char* szFileName);
bool Initialize(CDBComponent& DBComponent);
void InitGameTimeValue(unsigned char cGuildTime, unsigned char cRealmTime,
unsigned char cSiegeTime, unsigned char cMiningTime,
unsigned char cEnterTime, unsigned char cEventTime);
void Process();
void CheckGameTime();
void SendGameTimeInfo(unsigned char cType, bool bUpdateGuildTime, bool bUpdateRealmTime, bool bUpdateSiegeTime, bool bUpdateEnterTime, bool bUpdateEventTime);
void SendGameTimeInfo(unsigned long dwCastleID); // Ư<><C6AF> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ɿ<EFBFBD><C9BF><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
unsigned char GetCurrentGameTime(unsigned char cTimeType) const;
unsigned char GetCurrentGuildTime() const;
unsigned char GetCurrentRealmTime() const;
unsigned char GetCurrentSiegeTime() const;
unsigned char GetCurrentEnterTime() const;
unsigned char GetCurrentMiningTime() const;
// edith 2009.07.21 <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20>۾<EFBFBD><DBBE><EFBFBD>
unsigned char GetCurrentEventTime() const;
bool IsGuildWarTime() const;
bool IsRealmWarTime() const;
bool IsSiegeWarTime() const;
bool IsEnterTime() const;
bool IsMiningTime() const;
// edith 2009.07.21 <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20>۾<EFBFBD><DBBE><EFBFBD>
bool IsEventTime() const;
bool IsGuildWarTime(unsigned char cTime) const;
bool IsRealmWarTime(unsigned char cTime) const;
bool IsSiegeWarTime(unsigned char cTime) const;
bool IsEnterTime(unsigned char cTime) const;
bool IsMiningTime(unsigned char cTime) const;
// edith 2009.07.21 <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20>۾<EFBFBD><DBBE><EFBFBD>
bool IsEventTime(unsigned char cTime) const;
bool IsRealmWarReadyTime() const;
bool IsRealmWarReadyTime(unsigned char cTime) const;
const GameTimeTable& GetGameTimeTable() const { return m_GameTimeTable; }
static CGameTimeDBMgr& GetInstance();
void CheckRealmCount(CTime& startTime, unsigned long* dwRealmCount_Out); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ƚ<><C8BD><EFBFBD><EFBFBD> üũ.
unsigned long GetRealmDuration(void) { return m_dwRealmTime; }
protected:
CGameTimeDBMgr();
~CGameTimeDBMgr();
private:
bool SetGameTimeParseData(ParseDataArray& parseDataArray);
bool IntegrityCheck(); // <20><><EFBFBD><20>˻<EFBFBD>
CTime GetTimeByCycle(sGameTime* lpGameTime, CTime nowTime = 0);
CTime GetWeeklyTime(sGameTime* lpGameTime, CTime nowTime = 0);
CTime GetDailyTime(sGameTime* lpGameTime, CTime nowTime = 0);
CTime GetMonthlyTime(sGameTime* lpGameTime, CTime nowTime = 0);
CTime GetDateTime(sGameTime* lpGameTime, CTime nowTime = 0);
void GetTimeInfo(unsigned char cType, TimeInfo& timeInfo);
void GetNextMonth(CTime* pTime);
private:
unsigned char m_cNowGuildTime; // enum GuildTime
unsigned char m_cNowRealmTime; // enum RealmTime
unsigned char m_cNowSiegeTime; // enum SiegeTime
unsigned char m_cNowEnterTime; // enum EnterTime. <20>׼<EFBFBD><D7BC><EFBFBD> <20>ű<EFBFBD><C5B1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD>
unsigned char m_cNowMiningTime; // enum MiningTime
// edith 2009.07.21 <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20>۾<EFBFBD><DBBE><EFBFBD>
unsigned char m_cNowEventTime; // enum EventTime
GameTimeTable m_GameTimeTable;
CDBComponent* m_lpDBComponent;
unsigned long m_dwRealmTime; // <20><><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD> Ÿ<><C5B8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ִ´<D6B4>.
};
namespace RealmPoint
{
void AddRealmPoint(DBAgent::DataStorage::CSessionData* sessionData, unsigned char cRealmType);
void InitRealmTime(DBAgent::DataStorage::CSessionData* sessionData, TIME* pTime);
};
#endif // _RYL_DBAGENT_GAME_TIME_DB_MANAGER_H_