AgpdParty

3. 枚举类型
(1) 数据类型
typedef enum _eAGPMPARTY_DATA_TYPE {
    AGPMPARTY_DATA_TYPE_PARTY = 0,
} eAGPMPARTY_DATA_TYPE;


目前只定义了 Party 数据类型。

(2) 经验分配类型
typedef enum _AgpmPartyCalcExpType {
    AGPMPARTY_EXP_TYPE_BY_DAMAGE = 0,
    AGPMPARTY_EXP_TYPE_BY_LEVEL,
} AgpmPartyCalcExpType;


组队经验分配规则:

BY_DAMAGE:按伤害分配经验。

BY_LEVEL:按角色等级分配经验。

(3) 道具分配方式
typedef enum _AgpmPartyOptionDivisionItem {
    AGPMPARTY_DIVISION_ITEM_SEQUENCE = 0, // 按顺序分配
    AGPMPARTY_DIVISION_ITEM_FREE,         // 自由分配
    AGPMPARTY_DIVISION_ITEM_DAMAGE        // 按伤害分配
} AgpmPartyOptionDivisionItem;


组队战利品分配策略:

顺序分配、自由分配、伤害分配。

4. AgpdParty 类(数据类)
成员变量
INT16 m_nMaxMember;      // 队伍最大人数
INT16 m_nCurrentMember;  // 当前队员数


记录队伍人数。

ApSafeArray<INT32, AGPMPARTY_MAX_PARTY_MEMBER> m_lMemberListID;


成员 ID 列表(安全数组封装)。

原注释的旧写法是普通数组或指针。

INT32 m_lHighestMemberLevel;
INT32 m_lLowerMemberLevel;
INT32 m_lTotalMemberLevel;


队伍成员等级信息:

最高等级

最低等级

总等级

INT32 m_lHighestMemberUnionRank;


队伍中最高联盟等级。

UINT32 m_ulRemoveTimeMSec;


队伍移除时间(毫秒)。

ApSafeArray<BOOL, AGPMPARTY_MAX_PARTY_MEMBER> m_bIsInEffectArea;


队员是否在经验/BUFF生效区域。

AgpmPartyCalcExpType m_eCalcExpType;


经验分配方式。

INT32 m_lCurrentGetItemCID;
INT32 m_lFinishGetItemCID;
AgpmPartyOptionDivisionItem m_eDivisionItem;


战利品分配相关:

当前领取者 ID

已领取者 ID

分配方式

posted on 2025-10-08 16:12  lydstory  阅读(3)  评论(0)    收藏  举报

导航