DragonNest/GameCommon/OccupationScoreSystem.h
Cussrro 47f7895977 Revert "修复编码问题"
This reverts commit 9e69c01767.
2024-12-21 10:04:04 +08:00

66 lines
1.8 KiB
C++

#include "PvPScoreSystem.h"
#pragma once
class COccupationScoreSystem : public CPvPScoreSystem
{
public:
COccupationScoreSystem();
virtual ~COccupationScoreSystem();
//Get
virtual UINT GetOccupationAcquireScore(DnActorHandle hActor);
virtual UINT GetOccupationStealScore(DnActorHandle hActor );
//On
virtual void OnDamage(DnActorHandle hActor, DnActorHandle hHitter, const INT64 iDamage);
virtual void OnDie(DnActorHandle hActor, DnActorHandle hHitter);
virtual bool OnTryAcquirePoint(DnActorHandle hActor, int AreaID, LOCAL_TIME Localtime);
virtual void OnLeaveUser( DnActorHandle hActor );
virtual void OnOccupationTeamScore(int nTeam, int nType);
#if defined( _GAMESERVER )
virtual void SendScore( CDNUserSession* pGameSession );
#endif
virtual UINT GetMyOccupationScore(const WCHAR * pName) { return 0; }
protected:
typedef struct tagOccupationCount
{
USHORT nTryAcquireCount;
USHORT nAcquireCount;
BYTE cBossKillCount;
USHORT nStealAcquireCount;
tagOccupationCount() : nTryAcquireCount(0), nAcquireCount(0), cBossKillCount(0), nStealAcquireCount(0)
{
}
}SMyOccupationCount;
typedef struct tagOccupationTeamScore
{
int nTeamID;
int nKillScore;
int nAcquireScore;
int nStealAquireScore; //count
tagOccupationTeamScore() : nTeamID(0), nKillScore(0), nAcquireScore(0), nStealAquireScore(0)
{
}
}STeamOccupationScore;
std::map<std::wstring, SMyOccupationCount> m_mOccupationScore;
std::vector <STeamOccupationScore> m_vOccupationScoreTeam;
virtual SMyOccupationCount * GetMyOccupationCount(const WCHAR * pName);
bool AddMyOccupationScore(const WCHAR * pName);
void AddOccupationTeamScore(DnActorHandle hActor, int nType);
virtual void AddOccupationTeamScore(int nTeam, int nType) = 0;
#if defined( _GAMESERVER )
void _SendOccupationScore( CDNUserSession* pSession );
#endif // #if defined( _GAMESERVER )
};