Files

76 lines
1.9 KiB
C
Raw Permalink Normal View History

2025-01-09 17:45:40 +08:00
#pragma once
class ENTITYAPPEARVALUE;
class CAlmirahSystem :
public CEntitySubSystem<enAlmirahSystemID, CAlmirahSystem, CActor>
{
public:
CAlmirahSystem(void);
~CAlmirahSystem(void);
/************************************************************************/
/* 继承 */
/************************************************************************/
/*
*
*nCmd 0
*packet
*/
virtual void ProcessNetData(INT_PTR nCmd,CDataPacketReader &packet );
/// 保存数据库
virtual void Save(PACTORDBDATA pData);
virtual void OnDbRetData(INT_PTR nCmd,INT_PTR nErrorCode,CDataPacketReader &reader );
/*
* Comments:
* Param CAttrCalc & cal:
* @Return CAttrCalc:
*/
CAttrCalc& CalcAttr(CAttrCalc &calc);
/// 发送翅膀信息给客户端
void OnSendInitData();
public:
//激活翅膀
bool SetActivation(int nModleId);
//翅膀是否激活
bool GetActivation(int nModleId);
//设置翅膀状态(穿上/脱下)
bool SetTakeon(int nModleId,byte nState);
//获得当前的翅膀Modeid
int GetNowModeId();
int GetFashionLv(int nModeId);
//激活
void ActivationAlmirah(int nModleId);
//添加新的
int AddNewFashion(int nModelId, int nWear = 0);
void UpdateFashion(int nModelId, int nLv);
void UpGradeFashion(int nModeId);
FashionActive* GetFashionModeId(int nType );
void returnInfo(CDataPacket& netPack);
CVector<CAlmirahItem>& getAlmirahItemLists() {
return m_cAlmirahLists;
}
void TakeOffAlmirah(std::set<int>& takeOffs);
private:
typedef CVector<CAlmirahItem> AlmirahList;
AlmirahList m_cAlmirahLists; //时装
CTimer<60000> m_timer;
public:
//跨服数据
void SendMsg2CrossServer(int nType);
//跨服数据初始化
void OnCrossInitData(std::vector<CAlmirahItem>& m_Almira);
};