Beispiel #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));
    }
Beispiel #2
0
    /** 更改权限 */
    public void changeApplyType(bool canApplyInAbs)
    {
        if (!RoleGroupTitleConfig.get(_selfData.title).canChangeApplyInAbs)
        {
            me.warnLog("修改群公告时,权限不够");
            return;
        }

        me.send(FuncChangeRoleGroupCanApplyInAbsRequest.create(_funcID, groupID, canApplyInAbs));
    }
Beispiel #3
0
    /** 设置职位 */
    public void setTitle(long memberID, int title)
    {
        int canSetTitle = RoleGroupTitleConfig.get(_selfData.title).canSetTitle;

        if (canSetTitle <= 0 || canSetTitle > title)
        {
            me.warnLog("设置职位时,没有权限", _selfData.title, title);
            return;
        }

        PlayerRoleGroupMemberData member = getMember(memberID);

        if (member == null)
        {
            me.warnLog("设置职位时,找不到目标成员", memberID);
            return;
        }

        if (member.title == RoleGroupTitleType.Leader || title == RoleGroupTitleType.Leader)
        {
            me.warnLog("设置职位时,不能设置队长", memberID, title);
            return;
        }

        if (member.title < canSetTitle)
        {
            me.warnLog("设置职位时,没有权限2", _selfData.title, member.title);
            return;
        }

        if (member.title == title)
        {
            me.warnLog("设置职位时,当前已是该职位", _selfData.title, member.title);
            return;
        }

        int num = RoleGroupTitleConfig.get(title).num;

        //超过数目
        if (num > 0 && _memberTitleCount.get(title) >= num)
        {
            me.warnLog("设置职位时,超过容纳数目", title);
            return;
        }

        me.send(FuncSetTitleRoleGroupRequest.create(_funcID, groupID, memberID, title));
    }
Beispiel #4
0
    /** 改公告 */
    public void changeNotice(String notice)
    {
        if (!RoleGroupTitleConfig.get(_selfData.title).canChangeNotice)
        {
            me.warnLog("修改群公告时,权限不够");
            return;
        }

        if (_config.noticeCharLimit > 0 && StringUtils.getCharMachineNum(notice) > _config.noticeCharLimit)
        {
            me.warnLog("修改群公告时,名字过长");
            return;
        }

        //敏感字
        if (BaseGameUtils.hasSensitiveWord(notice))
        {
            Ctrl.warnLog("修改群公告时,名字敏感");
            GameC.info.showInfoCode(InfoCodeType.CreateRoleGroupFailed_nameIsSensitive);
            return;
        }

        me.send(FuncChangeRoleGroupNoticeRequest.create(_funcID, groupID, notice));
    }
Beispiel #5
0
 /// <summary>
 /// 是否可处理申请
 /// </summary>
 public static bool canOperateApply(int id)
 {
     return(RoleGroupTitleConfig.get(id).canHandleApply);
 }