def pushChatToObjectList(id,tid):
    '''推送私聊角色列表'''
    from app.chatServer.core.ChaterManager import ChaterManager
    from app.chatServer.core.ChaterLogManager import ChaterLogManager
    response=ChatToObjectListInfo1010_pb2.ChatToObjectListResponse()
    clog=ChaterLogManager().addChatLog(id) #获取聊天类
    listid=clog.getFriends()#获取角色私聊对象id列表
    if len(listid)<0:
        return
    player=ChaterManager().getChaterByCharacterId(id)
#    player=PlayersManager().getPlayerByID(id)
    if not player:
        #print "推送私聊角色列表时没有角色"+str(id)
        return 
    #print "角色私聊角色列表发送给"+player.baseInfo.getNickName()
    playerid=player.getDynamicId()
    for cid in listid:
        player1=ChaterManager().getChaterByCharacterId(cid)
        info=response.chatObjectInfo.add()
        info.chatObjectId=cid
        info.name=player1.getCharacterName()
        #print "私聊信息角色列表:"+player1.baseInfo.getNickName()
        info.level=str(player1.level)
        info.perfession=player1.getProfessionName()
        if player1.island:
                info.chatObjectPos=player1.scenename
        else:
            info.chatObjectPos=Lg().g(106)
        info.readFlag=ChaterLogManager().getFriendReaderState(id, cid)
    #print "------------------------------------------------------------------"
    msg = response.SerializeToString()
    pushApplyMessage(1010,msg,[playerid])
Exemplo n.º 2
0
def pushChatToObjectList(id,tid):
	'''推送私聊角色列表'''
	from app.chatServer.core.ChaterManager import ChaterManager
	from app.chatServer.core.ChaterLogManager import ChaterLogManager
	response=ChatToObjectListInfo1010_pb2.ChatToObjectListResponse()
	clog=ChaterLogManager().addChatLog(id)#获取聊天类
	listid=clog.getFriends()#获取角色私聊对象id列表
	if len(listid)<0:
		return
	gamer=ChaterManager().getChaterByCharacterId(id)
	if not gamer:
		return
	gamerid=gamer.getDynamicId()
	for cid in listid:
		gamer1=ChaterManager().getChaterByCharacterId(cid)
		info=response.chatObjectInfo.add()
		info.chatObjectId=cid
		info.name=gamer1.getCharacterName()
		info.level=str(gamer1.level)
		if gamer1.island:
			info.chatObjectPos=gamer1.scenename
		else:
			info.chatObjectPos=lg().g(106)
		info.readFlag=ChaterLogManager().getFriendReaderState(id,cid)
	msg=response.SerializeToString()
	pushApplyMessage(1010,msg,[gamer1])
Exemplo n.º 3
0
def pushChatToObjectList(id, tid):
    '''推送私聊角色列表'''
    from app.chatServer.core.ChaterManager import ChaterManager
    from app.chatServer.core.ChaterLogManager import ChaterLogManager
    response = ChatToObjectListInfo1010_pb2.ChatToObjectListResponse()
    clog = ChaterLogManager().addChatLog(id)  #获取聊天类
    listid = clog.getFriends()  #获取角色私聊对象id列表
    if len(listid) < 0:
        return
    gamer = ChaterManager().getChaterByCharacterId(id)
    if not gamer:
        return
    gamerid = gamer.getDynamicId()
    for cid in listid:
        gamer1 = ChaterManager().getChaterByCharacterId(cid)
        info = response.chatObjectInfo.add()
        info.chatObjectId = cid
        info.name = gamer1.getCharacterName()
        info.level = str(gamer1.level)
        if gamer1.island:
            info.chatObjectPos = gamer1.scenename
        else:
            info.chatObjectPos = lg().g(106)
        info.readFlag = ChaterLogManager().getFriendReaderState(id, cid)
    msg = response.SerializeToString()
    pushApplyMessage(1010, msg, [gamer1])
Exemplo n.º 4
0
def leaveRoom(characterId):
    '''
    @param characterId: int character id
    @param roomId: int room id
    '''
    chater = ChaterManager().getChaterByCharacterId(characterId)
    if not chater:
        return
    clientId = chater.getDynamicId()
    oldroomId = chater.getRoomId()
    if not oldroomId or clientId < 0:
        return
    if oldroomId :
        ChatRoomManager().leaveRoom(clientId, oldroomId)
Exemplo n.º 5
0
def JoinRoom(characterId,roomId,scenename):
    '''
    @param characterId: int character id
    @param roomId: int room id
    '''
    chater = ChaterManager().addChaterByid(characterId)
    if not chater:
        return
    clientId = chater.getDynamicId()
    oldroomId = chater.getRoomId()
    chater.setSceneName(scenename)
    if not oldroomId or clientId < 0:
        return
    if oldroomId :
        ChatRoomManager().leaveRoom(clientId, oldroomId)
    chater.setRoomId(roomId)
    ChatRoomManager().joinRoom(clientId, roomId)