| | |
| | | import PlayerViewCache
|
| | | import GameWorldBoss
|
| | | import AuctionHouse
|
| | | import PlayerAssist
|
| | | import PlayerTalk
|
| | | import PlayerTeam
|
| | |
|
| | |
| | | PlayerFamilyParty.NotifyFamilyPartyQuestion(jionPlayer)
|
| | | #通知守卫人皇信息
|
| | | PlayerFamilySWRH.NotifySWRHInfo(jionPlayer, curFamily.GetID())
|
| | | #通知仙盟协助信息
|
| | | PlayerAssist.SyncFamilyAssist(jionPlayer)
|
| | | #oss记录加入家族信息
|
| | | DataRecordPack.DR_PlayerJoinFamily(jionPlayer, curFamily.GetID(), curFamily.GetName(), curFamily.GetCount())
|
| | | return
|
| | |
| | | #===============================================================================================
|
| | | return
|
| | |
|
| | | def SendFamilyFakePack(familyID, clientPack):
|
| | | def SendFamilyFakePack(familyID, clientPack, excludePlayerIDList=[]):
|
| | | ## 广播家族成员PY封包
|
| | | family = GameWorld.GetFamilyManager().FindFamily(familyID)
|
| | | if not family:
|
| | |
| | | for index in xrange(family.GetCount()):
|
| | | member = family.GetAt(index)
|
| | | memPlayer = member.GetPlayer()
|
| | | if memPlayer:
|
| | | NetPackCommon.SendFakePack(memPlayer, clientPack)
|
| | | if not memPlayer:
|
| | | continue
|
| | | if excludePlayerIDList and memPlayer.GetPlayerID() in excludePlayerIDList:
|
| | | continue
|
| | | NetPackCommon.SendFakePack(memPlayer, clientPack)
|
| | | return
|
| | |
|
| | | def Sync_PyAllFamilyInfo(curPlayer, allPageCnt, viewPage, startIndex, endIndex):
|
| | |
| | | PlayerFamilyAction.AddFamilyActionNote(tagPlayerName, curFamily.GetID(), ShareDefine.Def_ActionType_FamilyEvent,
|
| | | [ShareDefine.Def_FamilyActionEvent_MemberChange, ShareDefine.Def_FamilyMemberChange_KickOut], tick)
|
| | | #删除玩家
|
| | | curFamily.DeleteMember(tagPlayerID)
|
| | | __DoPlayerLeaveFamilyByID(curFamily, tagPlayerID)
|
| | | |
| | | curFamily.DeleteMember(tagPlayerID) |
| | | tagPlayer = playerManager.FindPlayerByID(tagMemberID)
|
| | | |
| | | __DoPlayerLeaveFamilyByID(curFamily, tagPlayerID, tagPlayer)
|
| | | #玩家在线, 设置这个玩家的属性
|
| | | PlayerForceLeaveFamily(tagPlayer, tick)
|
| | |
|
| | |
| | | curFamily.DeleteMember(curMember.GetPlayerID())
|
| | | #玩家在线, 设置这个玩家的属性
|
| | | PlayerForceLeaveFamily(curPlayer, tick)
|
| | | __DoPlayerLeaveFamilyByID(curFamily, curPlayerID)
|
| | | __DoPlayerLeaveFamilyByID(curFamily, curPlayerID, curPlayer)
|
| | |
|
| | | DataRecordPack.DR_PlayerLeaveFamily(curPlayer, curFamily.GetID(), curFamily.GetName(), curFamily.GetCount(),
|
| | | familyLV, curPlayer.GetPlayerID(), curPlayer.GetName(), familyLV, updTime)
|
| | |
| | | # @param curFamily 离开的家族
|
| | | # @param leavePlayerID 离开的玩家ID
|
| | | # @return None
|
| | | def __DoPlayerLeaveFamilyByID(curFamily, leavePlayerID):
|
| | | def __DoPlayerLeaveFamilyByID(curFamily, leavePlayerID, tagPlayer=None):
|
| | | PlayerFamilyAction.DelFamilyOfficerModelEquip(curFamily.GetID(), leavePlayerID)
|
| | | # 玩家战盟名变更处理
|
| | | __OnFamilyNameChange(leavePlayerID, '')
|
| | | AddFamilyIDToFightPowerChangeList(curFamily.GetID())
|
| | | PlayerViewCache.OnPlayerFamilyChange(leavePlayerID, 0, "")
|
| | | PlayerAssist.OnPlayerLeaveFamily(curFamily.GetID(), leavePlayerID, tagPlayer)
|
| | | if leavePlayerID in PyGameData.g_autoViceleaderDict.get(curFamily.GetID(),[]):
|
| | | PyGameData.g_autoViceleaderDict[curFamily.GetID()].remove(leavePlayerID)
|
| | | return
|