72 lines
2.1 KiB
C++
72 lines
2.1 KiB
C++
#pragma once
|
|
/*
|
|
玩家仓库的背包的处理类,玩家的仓库包括了多个背包
|
|
*/
|
|
|
|
|
|
//玩家的仓库背包
|
|
class CDeportBag:
|
|
public CUserItemContainer
|
|
{
|
|
public:
|
|
typedef CUserItemContainer Inherited;
|
|
CDeportBag()
|
|
{
|
|
m_hasLoadDbData =false; //是否装载过DB的数据
|
|
}
|
|
public:
|
|
/*** 覆盖CUserItemContainer父类的函数集 ***/
|
|
virtual VOID SendDeleteItem(const CUserItem *pUserItem,INT_PTR nLogIdent) const ;
|
|
virtual VOID LogNewItem(const CUserItem *pUserItem, const CStdItem *pStdItem, LPCSTR lpSender, const INT_PTR nLogIdent) const ;
|
|
virtual VOID LogItemCountChange(const CUserItem *pUserItem, const CStdItem *pStdItem, const INT_PTR nCountChg, LPCSTR lpSender, const INT_PTR nLogIdent) const ;
|
|
virtual VOID SendAddItem(const CUserItem *pUserItem,INT_PTR nLogIdent, BYTE bNoBatchUse = 0,BYTE bNotice = 1) const ;
|
|
//isGetNewCount true获得新的物品
|
|
virtual VOID SendItemCountChange(const CUserItem *pUserItem, bool isGetNewCount = false, BYTE bNoBatchUse = 0) const ;
|
|
//当物品添加成功到里边调用,主要用来发系统提示的
|
|
|
|
//添加物品的提示
|
|
virtual VOID OnAddItem(const CStdItem * pItem,INT_PTR nCount,INT_PTR nLogIdent,const CUserItem *pUserItem=NULL);
|
|
//删除物品的提示
|
|
virtual VOID OnDeleteItem(const CStdItem * pItem, INT_PTR nItemCount,INT_PTR nLogIdent, int nMsgId = 0,const CUserItem *pUserItem=NULL);
|
|
|
|
//设置数据是否修改过了
|
|
virtual VOID OnDataModified()
|
|
{
|
|
SetDataModifyFlag(true);
|
|
}
|
|
|
|
//设置数据的修改的标记
|
|
inline void SetDataModifyFlag(bool flag)
|
|
{
|
|
if(!m_hasLoadDbData ) return ;//没有初始化DB的数据是不需要保存的
|
|
if(m_hasDataModify != flag)
|
|
{
|
|
m_hasDataModify = flag;
|
|
}
|
|
}
|
|
|
|
//数据是否修改过
|
|
inline bool IsDataModified()
|
|
{
|
|
return m_hasDataModify;
|
|
}
|
|
|
|
//已经装载过DB的数据了
|
|
inline void OnInitDbData()
|
|
{
|
|
m_hasLoadDbData = true;
|
|
}
|
|
|
|
//是否装载过DB的数据
|
|
inline bool HasInitDbData()
|
|
{
|
|
return m_hasLoadDbData;
|
|
}
|
|
|
|
public:
|
|
CActor *m_pEntity; //玩家的指针
|
|
BYTE m_bReserver;
|
|
WORD m_wReserver;
|
|
bool m_hasLoadDbData; //是否装载过DB的数据
|
|
};
|