📄 player.h
字号:
void SetMapChangePoint(WORD point){m_HeroCharacterInfo.MapChangePoint_Index = point;} // YH
WORD GetMapChangePoint() { return m_HeroCharacterInfo.MapChangePoint_Index; } //hs for party
void CalcState();
///////////////////////////////////////////////////////////////////////
// 公傍
void SetMugongBase(POSTYPE abspos, MUGONGBASE * mugong)
{
if( abspos < TP_MUGONG_START && abspos >= TP_MUGONG_END )
ASSERT(0);
POSTYPE pos = abspos - TP_MUGONG_START;
if( mugong->dwDBIdx != 0 && mugong->Position == 0)
CRITICALASSERT(0);
memcpy(&m_HeroMugongInfo.mugong[pos], mugong, sizeof(MUGONGBASE));
}
MUGONGBASE * GetMugongBase(POSTYPE abspos)
{
if( abspos < TP_MUGONG_START && abspos >= TP_MUGONG_END )
{
ASSERT(0);
return NULL;
}
POSTYPE pos = abspos - TP_MUGONG_START;
return &m_HeroMugongInfo.mugong[pos];
}
MUGONGBASE * GetMugongBaseByMugongIdx(WORD MugongIdx);
int GetMugongLevel(WORD MugongIdx);
int GetMugongNum();
///////////////////////////////////////////////////////////////////////
void GetCharacterTotalInfo(CHARACTER_TOTALINFO* pRtInfo);
void GetHeroTotalInfo(HERO_TOTALINFO* pRtInfo);
void GetMugongTotalInfo(MUGONG_TOTALINFO* pRtInfo);
// 酒捞袍 //////////////////////////////////////////////////////////////////////
void GetItemtotalInfo(ITEM_TOTALINFO* pRtInfo,DWORD dwFlag);
void GetPyogukItemInfo(PYOGUK_ITEM * pRtInfo);
WORD GetWearedItemIdx(DWORD WearedPosition) { return m_HeroCharacterInfo.WearedItemIdx[WearedPosition]; }
void SetWearedItemIdx(DWORD WearedPosition,WORD ItemIdx);
BOOL UseItem(WORD abs_pos);
BOOL UseConsumptionItem(WORD abs_pos);
BOOL UseEquipItem(WORD abs_pos);
BOOL UseMugongItem(WORD abs_pos);
void SetAddMsg(char* pAddMsg,WORD* pMsgLen,DWORD dwReceiverID,BOOL bLogin);
virtual void SendMsg(MSGBASE* pMsg,int MsgLen);
private:
void MoneyUpdate( MONEYTYPE money ); //(Money Class俊辑 龋免 ), DB俊 Set
CYHHashTable<ITEM_OPTION_INFO> m_ItemOptionList;
public:
void AddItemOption(ITEM_OPTION_INFO * pInfo);
void RemoveItemOption(DWORD dwOptionIdx);
ITEM_OPTION_INFO * GetItemOption(DWORD dwOptionIdx);
MONEYTYPE SetMoney( MONEYTYPE ChangeValue, BYTE bOper, BYTE MsgFlag = 0, eITEMTABLE tableIdx = eItemTable_Inventory, BYTE LogType = 0, DWORD TargetIdx = 0 );
MONEYTYPE GetMoney(eITEMTABLE tableIdx = eItemTable_Inventory);
MONEYTYPE GetMaxPurseMoney(eITEMTABLE TableIdx);
void SetMaxPurseMoney(eITEMTABLE TableIdx, DWORD MaxMoney);
BOOL IsEnoughAdditionMoney(MONEYTYPE money, eITEMTABLE tableIdx = eItemTable_Inventory );
// void ObtainMoney(DWORD addmoney); //各磷咯辑 掘菌阑锭父 龋免
// void SetMoneyNoMsgNoUpdate(DWORD money);
player_calc_stats* GetCharStats() { return &m_charStats; }
player_calc_stats* GetItemStats() { return &m_itemStats; }
// void AddHuntItemAndSendToPlayer(WORD DropItemNum);
// BOOL HuntItemDBResult(DWORD dwPlayerID, ITEMBASE * itemInfo);
DWORD GetPartyIdx() { return m_HeroInfo.PartyID; }
void SetPartyIdx(DWORD PartyIDx) { m_HeroInfo.PartyID = PartyIDx; }
/*巩颇啊 官差匙...*/
DWORD GetMunpaIdx() { return m_HeroCharacterInfo.MunpaID; }
void SetMunpaIdx(DWORD MunpaIDx) { m_HeroCharacterInfo.MunpaID = MunpaIDx; }
BYTE GetMunpaMemberRank() { return m_HeroCharacterInfo.PositionInMunpa; }
void SetMunpaMemberRank(BYTE rank){ m_HeroCharacterInfo.PositionInMunpa = rank; } //巩颇俊辑狼 磊脚狼 瘤困 汲沥
void SetMunpaName(char* MunpaName){ SafeStrCpy(m_HeroInfo.MunpaName, MunpaName, MAX_MUNPA_NAME+1); }
/**/
DWORD GetGuildIdx() { return m_HeroCharacterInfo.MunpaID; }
void SetGuildIdx(DWORD GuildIdx) { m_HeroCharacterInfo.MunpaID = GuildIdx; }
void SetGuildInfo(DWORD GuildIdx, BYTE Grade, char* GuildName);
BYTE GetGuildMemberRank() { return m_HeroCharacterInfo.PositionInMunpa; }
void SetGuildMemberRank(BYTE rank){ m_HeroCharacterInfo.PositionInMunpa = rank; } //巩颇俊辑狼 磊脚狼 瘤困 汲沥
void SetGuildName(char* GuildName){ SafeStrCpy(m_HeroInfo.MunpaName, GuildName, MAX_MUNPA_NAME+1); }
BYTE GetLifePercent();
BYTE GetShieldPercent();
BYTE GetNaeRyukPercent();
// 惑怕 函券
void OnStartObjectState(BYTE State,DWORD dwParam);
void OnEndObjectState(BYTE State);
WORD GetWearedWeapon() { return m_HeroCharacterInfo.WearedItemIdx[eWearedItem_Weapon]; }
WORD GetWeaponEquipType();
void SetCurComboNum(DWORD combonum) { m_CurComboNum = combonum; }
DWORD GetCurComboNum() { return m_CurComboNum; }
// DWORD GetCurMugongNum() { return GetCurQuickItem()->dwIconIdx; }
void SetPeaceMode(BOOL bPeace) { m_HeroCharacterInfo.bPeace = bPeace?true:false; }
BOOL GetPeaceMode() { return m_HeroCharacterInfo.bPeace; }
//钎惫
void AddPyogukItem(ITEMBASE * pPyogukItem);
void InitPyogukInfo(BYTE pyoguknum,MONEYTYPE money);
BOOL IsPyogukInit() {return m_bPyogukInit; }
void SetPyogukNum(WORD n);
WORD GetPyogukNum();
void RevivePresentSpot();
void ReviveLogIn();
void ReviveAfterVimu( BOOL bSendMsg = TRUE );
//泅惑陛
void ClearWantedList();
WANTEDTYPE GetWantedIdx() { return m_WantedIDX; }
void SetWantedIdx(WANTEDTYPE val) { m_WantedIDX = val; }
DWORD GetWantedNum() { return m_WantedList.GetCount(); }
void ClearMurderIdx();
DWORD GetMurderIDX() { return m_MurdererIDX; }
WORD GetMurderKind() { return m_MurdererKind;}
BOOL IsReadyToRevive() { return m_bReadyToRevive; }
void SetReadyToRevive(BOOL val) { m_bReadyToRevive = val; }
void AddWanted(WANTEDTYPE WantedIDX);
void DeleteWanted(WANTEDTYPE WantedIDX);
BOOL IsWantedOwner(WANTEDTYPE WantedIDX);
// KES EXCHNAGE 030922
void SetExchangeContainer( sEXCHANGECONTAINER* ExchangeContainer )
{ m_ExchangeContainer = *ExchangeContainer; }
sEXCHANGECONTAINER* GetExchangeContainer() { return &m_ExchangeContainer; }
// KES VIMU 031101
void SetVimuing( BOOL bVimuing ) { m_bVimuing = bVimuing; }
BOOL IsVimuing() { return m_bVimuing; }
void SetVimuOpPlayerID( DWORD dwOpPlayerID ) { m_dwOpPlayerID = dwOpPlayerID; }
DWORD GetVimuOpPlayerID() { return m_dwOpPlayerID; }
// BOOL IsKilledWithPanelty() { return m_bNeedRevive; }
// KES OOPTION 031213
sGAMEOPTION* GetGameOption() { return &m_GameOption; }
void SetGameOption( sGAMEOPTION* pGameOption ) { m_GameOption = *pGameOption; }
// KES PK 040205
int PKModeOn();
BOOL PKModeOff();
void PKModeOffForce();
BOOL IsPKMode() { return m_HeroCharacterInfo.bPKMode; }
void SetPKStartTimeReset() { m_dwPKModeStartTime = gCurTime; }
void AddPKContinueTime( DWORD dwTime ) { m_dwPKContinueTime += dwTime; }
void SetPKModeEndtime();
// KES EXIT
BOOL IsExitStart() { return m_bExit; }
int CanExitStart();
void SetExitStart( BOOL bExit );
int CanExit();
void ExitCancel();
void SetNormalExit() { m_bNormalExit = TRUE; }
BOOL IsNormalExit() { return m_bNormalExit; }
//
void SetUserLevel( DWORD dwUserLevel ) { m_dwUserLevel = dwUserLevel; }
DWORD GetUserLevel() { return m_dwUserLevel; }
////////
// LBS 畴痢惑 包访 03.09.29 /////////////////////////////////////////////
void SetGuestStall( cStreetStall* pStall ) { m_pGuetStall = pStall; }
cStreetStall* GetGuestStall() { return m_pGuetStall; }
void SetStreetStallTitle(char* title);
void GetStreetStallTitle(char* title);
/////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// 坷滚扼捞爹 窃荐甸
virtual void DoDie(CObject* pAttacker);
virtual void DoDamage(CObject* pAttacter,RESULTINFO* pDamageInfo,DWORD beforeLife);
virtual DWORD Damage(CObject* pAttacker,RESULTINFO* pDamageInfo);
void SetMaxLife(DWORD val);
void SetMaxShield(DWORD val);
void SetMaxNaeRyuk(DWORD val);
LEVELTYPE GetMaxLevel() { return m_HeroInfo.MaxLevel; }
//////////////////////////////////////////////////////////////////////////
// 沥焊 掘绢坷绰 窃荐甸
virtual LEVELTYPE GetLevel() { return m_HeroCharacterInfo.Level; }
virtual void SetLevel(LEVELTYPE level);
virtual DWORD GetLife() { return m_HeroCharacterInfo.Life; }
virtual void SetLife(DWORD Life,BOOL bSendMsg = TRUE);
virtual DWORD GetShield() { return m_HeroCharacterInfo.Shield; }
virtual void SetShield(DWORD Shield,BOOL bSendMsg = TRUE);
virtual DWORD GetNaeRyuk(){ return m_HeroInfo.wNaeRyuk; }
virtual void SetNaeRyuk(DWORD valb,BOOL SendMsg = TRUE);
virtual DWORD DoGetMaxLife(){ return m_HeroCharacterInfo.MaxLife; }
virtual DWORD DoGetMaxShield(){ return m_HeroCharacterInfo.MaxShield; }
virtual DWORD DoGetMaxNaeRyuk(){ return m_HeroInfo.wMaxNaeRyuk; }
virtual DWORD DoGetPhyDefense()
{ return GetCharStats()->PhysicalDefense+GetItemStats()->PhysicalDefense+GetAbilityStats()->DefenceUp; }
virtual float DoGetAttDefense(WORD Attrib)
{ return GetItemStats()->AttributeResist.GetElement_Val(Attrib)+GetAbilityStats()->AttRegistUp.GetElement_Val(Attrib); }
virtual float GetAttribPlusPercent(WORD Attrib)
{ return GetItemStats()->AttributeAttack.GetElement_Val(Attrib)+GetAbilityStats()->AttAttackUp.GetElement_Val(Attrib); }
virtual DWORD DoGetPhyAttackPowerMin();
virtual DWORD DoGetPhyAttackPowerMax();
virtual float DoGetMoveSpeed();
virtual float DoGetAddAttackRange(){ return GetMinChub() / 3.f; }
virtual DWORD DoGetCritical();
WORD GetKyungGongGrade() { return m_HeroInfo.KyungGongGrade; }
void SetKyungGongGrade(WORD grade) { m_HeroInfo.KyungGongGrade = grade; }
ITEMOBTAINARRAYINFO * GetArray(WORD id);
void AddArray(ITEMOBTAINARRAYINFO * pInfo);
void RemoveArray(WORD id);
CYHHashTable<ITEMOBTAINARRAYINFO> m_ItemArrayList;
void AddFollowList(CMonster * pMob);
void RemoveFollowList(DWORD ID);
void RemoveFollowAsFarAs(DWORD GAmount);
CYHHashTable<CMonster> m_FollowMonsterList;
// 檬焊磊 啊捞靛
void AddQuest(CQuestBase* pQuest);
void RemoveQuest(DWORD QuestIdx);
BOOL SetQuestState(DWORD QuestIdx, QSTATETYPE value);
CYHHashTable<CQuestBase> m_QuestList;
virtual void StateProcess();
// PlayTime
DWORD GetPlayTime() { return m_HeroInfo.Playtime; }
void SetLoginTime(int time) { m_LoginTime = time; }
void ReviveLogInPenelty();
// jsd quest
protected:
CQuestGroup m_QuestGroup;
public:
CQuestGroup* GetQuestGroup() { return &m_QuestGroup; }
void QuestProcess();
};
#endif // !defined(AFX_PLAYER_H__D36AF2E1_0FD9_4120_B257_64B0BE21D669__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -