示例#1
0
 def getGuildMemberInfo(self, index, limit=10):
     '''获取行会成员信息
     @param index: int 页面数
     @param limit: int 每页显示数目限制
     '''
     MemberInfoList = {}
     infos = []
     maxPage = math.ceil(
         dbGuild.countGuildMenberNum(self.id) / float(limit))
     memberInfos = dbGuild.getGuildMemberInfo(self.id, index, limit)
     for member in memberInfos:
         data = {}
         data['memberliId'] = member['characterId']
         data['memberName'] = member['nickname']
         data['memberLevel'] = member['level']
         data['memberProfession'] = member['profession']
         data['memberRank'] = {
             0: Lg().g(516),
             1: Lg().g(517),
             2: Lg().g(518),
             3: Lg().g(519),
             4: Lg().g(520)
         }.get(member['post'])
         data['onlineState'] = self.getCharacterOnlineState(
             member['isOnline'], member['outtime'])
         data['memberContribution'] = member['contribution']
         infos.append(data)
     MemberInfoList['MemberOrAppliListBaseInfo'] = infos
     MemberInfoList['maxPage'] = maxPage
     return MemberInfoList
示例#2
0
    def acceptGuildApply(self, operator, characterId):
        '''同意角色的入会申请
        @param operator: 操作者的id
        @param characterId: int 申请人的id
        '''
        president = self.get('president')
        veteranList = eval('[' + self.guildinfo['veterans'] + ']')
        staffList = eval('[' + self.guildinfo['staffOfficers'] + ']')
        senatorsList = eval('[' + self.guildinfo['senators'] + ']')
        #获取操作者的权限
        if operator == president:
            operatorpost = Lg().g(520)
        elif operator in veteranList:
            operatorpost = Lg().g(519)
        elif operator in staffList:
            operatorpost = Lg().g(518)
        elif operator in senatorsList:
            operatorpost = Lg().g(517)

        managementGroup = veteranList + staffList + senatorsList

        if not dbGuild.checkHasApply(self.id, characterId):
            return -4
        if operator != self.president and operator not in managementGroup:
            return -1  #权限不够
        if dbGuild.checkCharacterHasGuild(characterId):
            return -2  #已经加入了行会
        curMenberNum = dbGuild.countGuildMenberNum(self.id)
        info = self.guildinfo
        maxMemberCount = 20 + ((info['emblemLevel'] - 1) * 30)
        if curMenberNum >= maxMemberCount:
            return -3  #成员数量达到上限
        result = dbGuild.insertCharacterGuildInfo(characterId, self.id)
        dbGuild.delCharacterAllApply(characterId)
        if result:
            player = PlayersManager().getPlayerByID(operator)
            content = Lg().g(532)\
            %(self.guildinfo.get('name',''),operatorpost,\
                player.baseInfo.getNickName(),self.guildinfo.get('name',''))
            title = Lg().g(526)
            m = Mail( title=title,type =0, senderId =-1, receiverId=characterId,\
                            sender = Lg().g(128),content=content)
            m.mailIntoDB()
            player = PlayersManager().getPlayerByID(characterId)
            if player:
                player.guild.updateID(self.id)
                chatnoderemote.callRemote('updateGuild', characterId, self.id,
                                          1)  #同步聊天角色中的行会
                player.updatePlayerInfo()
            return 1  #同意申请成功
        return 0  #同意申请失败
示例#3
0
 def acceptGuildApply(self,operator,characterId):
     '''同意角色的入会申请
     @param operator: 操作者的id
     @param characterId: int 申请人的id
     '''
     president = self.get('president')
     veteranList = eval('['+self.guildinfo['veterans']+']')
     staffList = eval('['+self.guildinfo['staffOfficers']+']')
     senatorsList = eval('['+self.guildinfo['senators']+']')
     #获取操作者的权限
     if operator==president:
         operatorpost =Lg().g(520)
     elif operator in veteranList:
         operatorpost = Lg().g(519)
     elif operator in staffList:
         operatorpost = Lg().g(518)
     elif operator in senatorsList:
         operatorpost = Lg().g(517)
     
     managementGroup = veteranList + staffList + senatorsList
     
     if not dbGuild.checkHasApply(self.id, characterId):
         return -4
     if operator!=self.president and operator not in managementGroup:
         return -1#权限不够
     if dbGuild.checkCharacterHasGuild(characterId):
         return -2#已经加入了行会
     curMenberNum = dbGuild.countGuildMenberNum(self.id)
     info = self.guildinfo
     maxMemberCount = 20 + ((info['emblemLevel']-1)*30)
     if curMenberNum>=maxMemberCount:
         return -3#成员数量达到上限
     result = dbGuild.insertCharacterGuildInfo(characterId, self.id)
     dbGuild.delCharacterAllApply(characterId)
     if result:
         player = PlayersManager().getPlayerByID(operator)
         content = Lg().g(532)\
         %(self.guildinfo.get('name',''),operatorpost,\
             player.baseInfo.getNickName(),self.guildinfo.get('name',''))
         title = Lg().g(526)
         m = Mail( title=title,type =0, senderId =-1, receiverId=characterId,\
                         sender = Lg().g(128),content=content)
         m.mailIntoDB()
         player = PlayersManager().getPlayerByID(characterId)
         if player:
             player.guild.updateID(self.id)
             chatnoderemote.callRemote('updateGuild',characterId,self.id,1)#同步聊天角色中的行会
             player.updatePlayerInfo()
         return 1#同意申请成功
     return 0#同意申请失败
示例#4
0
 def JointGuild(self,characterId):
     '''将角色加入国'''
     curMenberNum = dbGuild.countGuildMenberNum(self.id)
     info = self.guildinfo
     maxMemberCount = 20 + ((info['emblemLevel']-1)*30)
     if curMenberNum>=maxMemberCount:
         return {'result':False,'message':Lg().g(83)}
     result = dbGuild.insertCharacterGuildInfo(characterId, self.id)
     dbGuild.delCharacterAllApply(characterId)
     if result:
         player = PlayersManager().getPlayerByID(characterId)
         if player:
             player.quest.specialTaskHandle(ADDGUILDTASKTYPE)
             player.guild.updateID(self.id)
             chatnoderemote.callRemote('updateGuild',characterId,self.id,1)#同步聊天角色中的行会
             player.updatePlayerInfo()
         return {'result':True,'message':Lg().g(530)}#同意申请成功
     return {'result':True,'message':Lg().g(531)}#同意申请失败
示例#5
0
 def JointGuild(self, characterId):
     '''将角色加入国'''
     curMenberNum = dbGuild.countGuildMenberNum(self.id)
     info = self.guildinfo
     maxMemberCount = 20 + ((info['emblemLevel'] - 1) * 30)
     if curMenberNum >= maxMemberCount:
         return {'result': False, 'message': Lg().g(83)}
     result = dbGuild.insertCharacterGuildInfo(characterId, self.id)
     dbGuild.delCharacterAllApply(characterId)
     if result:
         player = PlayersManager().getPlayerByID(characterId)
         if player:
             player.quest.specialTaskHandle(ADDGUILDTASKTYPE)
             player.guild.updateID(self.id)
             chatnoderemote.callRemote('updateGuild', characterId, self.id,
                                       1)  #同步聊天角色中的行会
             player.updatePlayerInfo()
         return {'result': True, 'message': Lg().g(530)}  #同意申请成功
     return {'result': True, 'message': Lg().g(531)}  #同意申请失败
示例#6
0
 def getGuildMemberInfo(self,index,limit=10):
     '''获取行会成员信息
     @param index: int 页面数
     @param limit: int 每页显示数目限制
     '''
     MemberInfoList = {}
     infos = []
     maxPage = math.ceil(dbGuild.countGuildMenberNum(self.id)/float(limit))
     memberInfos = dbGuild.getGuildMemberInfo(self.id, index, limit)
     for member in memberInfos:
         data = {}
         data['memberliId'] = member['characterId']
         data['memberName'] = member['nickname']
         data['memberLevel'] = member['level']
         data['memberProfession'] = member['profession']
         data['memberRank'] = {0:Lg().g(516),1:Lg().g(517),2:Lg().g(518),3:Lg().g(519),4:Lg().g(520)}.get(member['post'])
         data['onlineState'] = self.getCharacterOnlineState(member['isOnline'],
                                                            member['outtime'])
         data['memberContribution'] = member['contribution']
         infos.append(data)
     MemberInfoList['MemberOrAppliListBaseInfo'] = infos
     MemberInfoList['maxPage'] = maxPage
     return MemberInfoList