Files
Client/Server/RylServerProject/RylServerLibrary/Network/Packet/PacketStruct/GameLogPacket.h
LGram16 dd97ddec92 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>
2025-11-29 20:17:20 +09:00

119 lines
4.6 KiB
C++

#ifndef _GAME_LOG_PACKET_H_
#define _GAME_LOG_PACKET_H_
#include <Network/Packet/PacketBase.h>
namespace GAMELOG
{
namespace CMD
{
enum Packet
{
DefaultInfo = 1,
ItemInfo = 2,
EquipInfo = 3,
};
enum LogType
{
CHAR_LOGIN = 1, // 로그인
CHAR_LOGOUT = 2, // 로그아웃
PICKUP = 3, // 아이템 집기 - 돈 포함
DROP = 4, // 아이템 버리기 - 돈 포함
BUY_ITEM = 5, // 아이템 사기 - 돈 포함
SELL_ITEM = 6, // 아이템 팔기 - 돈 포함
BEFORE_EXCHANGE = 7, // 아이템 교환 전의 교환창 아이템 - 돈 포함
AFTER_EXCHANGE = 8, // 아이템 교환 전의 교환창 아이템 - 돈 포함
USE_ITEM = 9, // 아이템 사용 - 돈 포함
UPGRADE_ITEM = 10, // 아이템 업그레이드 - 돈 포함
INSTALL_SOCKET = 11, // 아이템 소켓에 보석 박기
GET_QUEST_ITEM = 12, // 퀘스트 아이템 얻기
GET_QUEST_REWARD = 13, // 퀘스트 보상 얻기 - 돈 포함
REMOVE_QUEST_ITEM = 14, // 퀘스트 아이템 제거
REPAIR_ITEM = 15, // 아이템 수리 - 돈 포함
ADMIN_DROP = 16, // 운영자 명령으로 아이템 떨구기 - 돈 포함
CHAR_LOGIN_INVENTORY_GOLD = 17, // 캐릭터 로그인시 인벤토리 돈
CHAR_LOGIN_DEPOSIT_GOLD = 18, // 캐릭터 로그인시 창고 돈
CHAR_LOGOUT_INVENTORY_GOLD = 19, // 캐릭터 로그아웃시 인벤토리 돈
CHAR_LOGOUT_DEPOSIT_GOLD = 20, // 캐릭터 로그아웃시 창고 돈
DEPOSIT_RENT_GOLD = 21, // 창고 대여료
FAME_GET_BATTLE = 22, // 전투로 얻은 명성
FAME_LOSE_BATTLE = 23, // 전투로 잃은 명성
FAME_GET_CAMP = 24, // 요새로 얻은 명성
FAME_LOSE_CAMP = 25, // 요새로 잃은 명성
QUEST_GET_REWARD = 26, // 퀘스트 수행으로 얻은 보상
CHANGE_RIDE = 27, // 라이더 타기 로그
MAX_LOG_TYPE = 28
};
};
namespace PACKET
{
enum Flags
{
ITEM_INFO = (1 << 0),
EQUIP_INFO = (1 << 1)
};
enum
{
MAX_SOCKET_NUM = 8,
MAX_ATTRIBUTE_NUM = 35
};
#pragma pack(1)
struct DefaultInfo : public PktBase
{
time_t m_dwTime;
unsigned long m_dwFirstUID; // 행위자의 UID
unsigned long m_dwFirstCID; // 행위자의 CID
unsigned long m_dwGold; // 행위로 인해서 영향을 받게 된 금액
unsigned long m_dwSecondUID; // 대상자의 UID
unsigned long m_dwSecondCID; // 대상자의 CID
unsigned short m_usPosX; // 사건이 일어난 장소(X)
unsigned short m_usPosY; // 사건이 일어난 장소(Y)
unsigned short m_usPosZ; // 사건이 일어난 장소(Z)
unsigned char m_cCommand; // 사건 종류
unsigned char m_cFlags; // 기타 정보(아이템 정보인지.. 장비 정보가 따라 붙는지 등..)
};
struct ItemInfo : public DefaultInfo
{
unsigned __int64 m_dwItemUID;
unsigned short m_usItemProtoTypeID;
unsigned char m_cTakeType;
unsigned char m_cItemAmount;
unsigned char m_cItemPosX;
unsigned char m_cItemPosY;
unsigned char m_cItemPosZ;
unsigned char m_cItemExtra; // 추가 정보
};
struct EquipInfo : public ItemInfo
{
unsigned short m_usRuneSocket; // 룬 소켓 내용
unsigned char m_cUpgradeStep; // 업그레이드 단계
unsigned char m_cMaxSocket; // 현재 뚫려 있는 소켓 수
unsigned char m_cMaxDurability; // 최대 내구도
unsigned char m_cSocket[MAX_SOCKET_NUM]; // 소켓 내용
short m_usAttribute[MAX_ATTRIBUTE_NUM]; // 속성 내용
};
#pragma pack()
};
};
#endif