| | |
| | | invitePack.NameLen = len(invitePack.Name)
|
| | | invitePack.LV = curPlayer.GetLV()
|
| | | invitePack.Job = curPlayer.GetJob()
|
| | | invitePack.JobLevel = PlayerControl.GetJobRank(curPlayer)
|
| | | invitePack.RealmLV = curPlayer.GetOfficialRank()
|
| | | invitePack.TagMapID = tagMapID
|
| | | invitePack.TagMapEx = tagMapEx
|
| | |
| | | requestPack.NameLen = len(requestPack.Name)
|
| | | requestPack.LV = curPlayer.GetLV()
|
| | | requestPack.Job = curPlayer.GetJob()
|
| | | requestPack.JobLevel = PlayerControl.GetJobRank(curPlayer)
|
| | | requestPack.RealmLV = curPlayer.GetOfficialRank()
|
| | | NetPackCommon.SendFakePack(tagPlayer, requestPack)
|
| | |
|
| | |
| | | nearbyPlayer.NameLen = len(nearbyPlayer.Name)
|
| | | nearbyPlayer.LV = player.GetLV()
|
| | | nearbyPlayer.Job = player.GetJob()
|
| | | nearbyPlayer.JobLevel = PlayerControl.GetJobRank(player)
|
| | | nearbyPlayer.RealmLV = player.GetOfficialRank()
|
| | | nearbyPlayerInfo.PlayerList.append(nearbyPlayer)
|
| | |
|
| | |
| | | sceneTeam.NameLen = len(sceneTeam.PlayerName)
|
| | | sceneTeam.LV = leader.GetLV()
|
| | | sceneTeam.Job = leader.GetJob()
|
| | | sceneTeam.JobLevel = PlayerControl.GetJobRank(leader)
|
| | | sceneTeam.RealmLV = leader.GetOfficialRank()
|
| | | sceneTeam.MemberCount = team.GetTeamPlayerCount()
|
| | | sceneTeam.TagMapID = team.GetTagMapID()
|
| | |
| | | #如果队伍正在匹配中,则通知状态
|
| | | if IsTeamMatchingPlayer(curTeamID):
|
| | | Sync_TeamMatchState(curPlayer, True)
|
| | | OnTeamMemFamilyRefresh(curPlayer, curPlayer.GetFamilyID())
|
| | | return True
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | |
| | | tagMapTeam.NameLen = len(tagMapTeam.PlayerName)
|
| | | tagMapTeam.LV = leader.GetLV()
|
| | | tagMapTeam.Job = leader.GetJob()
|
| | | tagMapTeam.JobLevel = PlayerControl.GetJobRank(leader)
|
| | | tagMapTeam.RealmLV = leader.GetOfficialRank()
|
| | | tagMapTeam.MemberCount = team.GetTeamPlayerCount()
|
| | | tagMapTeam.ReqMinLV = team.GetReqMinLV()
|
| | |
| | | ["TeamEnterCDMe", "TeamEnterCDAll"], "SingleEnterCD"],
|
| | | ShareDefine.EntFBAskRet_LVLimit:[["TeamMatchingLVMe", "TeamMatchingLVAll"],
|
| | | ["TeamEnterLVMe", "TeamEnterLVAll"], "FbLV"],
|
| | | ShareDefine.EntFBAskRet_JobRankLimit:[["TeamMatchingJobMe", "TeamMatchingJobAll"], |
| | | ["TeamEnterJobMe", "TeamEnterJobAll"], "SingleEnterJob"],
|
| | | ShareDefine.EntFBAskRet_NoTicket:[["TeamMatchingTicketMe", "TeamMatchingTicketAll"],
|
| | | ["TeamEnterTicketMe", "TeamEnterTicketAll"], "GeRen_chenxin_157069"],
|
| | | ShareDefine.EntFBAskRet_Dead:[["TeamMatchingDeadMe", "TeamMatchingDeadAll"],
|
| | |
| | | ["TeamEnterDefaultMe", "TeamEnterDefaultAll"], "SingleEnterDefaul"],
|
| | | ShareDefine.EntFBAskRet_Sit:[["TeamMatchingSITMe", "TeamMatchingSITAll"],
|
| | | ["TeamEnterSITMe", "TeamEnterSITAll"], "Carry_lhs_697674"],
|
| | | ShareDefine.EntFBAskRet_CrossPKMatching:[["CrossMatching9", "CrossMatching10"], |
| | | ["CrossMatching11", "CrossMatching12"], "CrossMatching8"],
|
| | | ShareDefine.EntFBAskRet_InCrossMap:[["CrossMap6", "CrossMap7"], |
| | | ["CrossMap8", "CrossMap9"], "CrossMap5"],
|
| | | ShareDefine.EntFBAskRet_Other:[["TeamMatchingDefaultMe", "TeamMatchingDefaultAll"],
|
| | | ["TeamEnterDefaultMe", "TeamEnterDefaultAll"], "SingleEnterDefaul"],
|
| | | }
|
| | |
| | | PyGameData.g_prepareTeamDict.pop(teamID)
|
| | |
|
| | | # 同步进入组队副本的队员关系到目标地图
|
| | | relationInfo = str([teamID, friendList, memFamilyIDDict, memNameDict])
|
| | | relationInfo = str(["InitRelation", teamID, friendList, memFamilyIDDict, memNameDict])
|
| | | leader.MapServer_QueryPlayerResult(0, 0, "EnterFBTeamRelation", relationInfo, len(relationInfo))
|
| | | return
|
| | |
|
| | | def OnTeamMemFriendChange(curPlayer, tagPlayerID, isFriend):
|
| | | ## 队员好友关系变更,离线也同步
|
| | | teamID = curPlayer.GetTeamID()
|
| | | if not teamID:
|
| | | GameWorld.DebugLog("好友变更,无队伍不管!")
|
| | | return
|
| | | curMapData = GameWorld.GetMap(curPlayer.GetMapID())
|
| | | if not curMapData or curMapData.GetMapFBType() != ChConfig.fbtTeam:
|
| | | GameWorld.DebugLog("好友变更,不在组队副本不管!")
|
| | | return
|
| | | |
| | | isSameTeam = False
|
| | | playerID = curPlayer.GetPlayerID()
|
| | | curTeam = curPlayer.GetTeam()
|
| | | for index in xrange(curTeam.GetMemberCount()):
|
| | | memberInfo = curTeam.GetMemberInfo(index)
|
| | | if not memberInfo:
|
| | | continue
|
| | | memPlayerID = memberInfo.GetPlayerID()
|
| | | if tagPlayerID == memPlayerID:
|
| | | isSameTeam = True
|
| | | break
|
| | | |
| | | if not isSameTeam:
|
| | | GameWorld.DebugLog("好友关系变更,不是同队伍不管!")
|
| | | return
|
| | | |
| | | relationInfo = str(["FriendChange", teamID, playerID, tagPlayerID, isFriend])
|
| | | curPlayer.MapServer_QueryPlayerResult(0, 0, "EnterFBTeamRelation", relationInfo, len(relationInfo))
|
| | | return
|
| | |
|
| | | def OnTeamMemFamilyRefresh(curPlayer, familyID):
|
| | | ## 队员仙盟变更,仅在线同步,上线同步
|
| | | if not curPlayer:
|
| | | return
|
| | | teamID = curPlayer.GetTeamID()
|
| | | if not teamID:
|
| | | GameWorld.DebugLog("家族变更,无队伍不管!")
|
| | | return
|
| | | curMapData = GameWorld.GetMap(curPlayer.GetMapID())
|
| | | if not curMapData or curMapData.GetMapFBType() != ChConfig.fbtTeam:
|
| | | GameWorld.DebugLog("家族变更,不在组队副本不管!")
|
| | | return
|
| | | playerID = curPlayer.GetPlayerID()
|
| | | familyID = curPlayer.GetFamilyID()
|
| | | relationInfo = str(["FamilyChange", teamID, playerID, familyID])
|
| | | curPlayer.MapServer_QueryPlayerResult(0, 0, "EnterFBTeamRelation", relationInfo, len(relationInfo))
|
| | | return
|
| | |
|
| | | def __CheckTeamFBPlayerExist(curTeam):
|
| | | ##玩家离开副本
|
| | | # @param curTeam 队伍实例
|