Exemplo n.º 1
0
    /** 踢出成员 */
    public void kickMember(long memberID)
    {
        PlayerRoleGroupMemberData member = getMember(memberID);

        if (member == null)
        {
            me.warnLog("踢出成员时,不存在", member);
            return;
        }

        if (me.role.playerID == memberID)
        {
            me.warnLog("踢出成员时,不可踢出自己", memberID);
            return;
        }

        int canKickTitle = RoleGroupTitleConfig.get(_selfData.title).canKickTitle;

        if (canKickTitle <= 0 || member.title < canKickTitle)
        {
            me.warnLog("踢出成员时,权限不足", _selfData.title, member.title);
            return;
        }

        if (member.title == RoleGroupTitleType.Leader)
        {
            me.warnLog("踢出成员时,不可提出队长");
            return;
        }

        me.send(FuncKickMemberRoleGroupRequest.create(_funcID, groupID, memberID));
    }
    /// <summary>
    /// 创建实例
    /// </summary>
    public static FuncKickMemberRoleGroupRequest create(int funcID, long groupID, long playerID)
    {
        FuncKickMemberRoleGroupRequest re = (FuncKickMemberRoleGroupRequest)BytesControl.createRequest(dataID);

        re.funcID   = funcID;
        re.groupID  = groupID;
        re.playerID = playerID;
        return(re);
    }