hxp
2025-10-22 5925409bdea13d819e4e4356a51043de5f3f9bd8
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBFamily.py
@@ -173,6 +173,7 @@
        self.__dbData = DBStruct.tagDBFamilyMem() if not dbData else dbData
        return
    
    def GetFamily(self): return DBDataMgr.GetFamilyMgr().FindFamily(self.__dbData.FamilyID)
    def GetPlayerID(self): return self.__dbData.PlayerID
    def GetFamilyID(self): return self.__dbData.FamilyID
    def GetJoinTime(self): return self.__dbData.JoinTime
@@ -188,6 +189,8 @@
    def SetFace(self, face): self.__dbData.Face = face
    def GetFacePic(self): return self.__dbData.FacePic
    def SetFacePic(self, facePic): self.__dbData.FacePic = facePic
    def GetTitleID(self): return self.__dbData.TitleID
    def SetTitleID(self, titleID): self.__dbData.TitleID = titleID
    def GetFightPower(self): return self.__dbData.FightPower
    def GetFightPowerEx(self): return self.__dbData.FightPowerEx
    def GetFightPowerTotal(self): return self.__dbData.FightPowerEx * ChConfig.Def_PerPointValue + self.__dbData.FightPower
@@ -203,8 +206,12 @@
    def SetFmLV(self, fmLV): self.__dbData.FmLV = fmLV
    def GetContribTotal(self): return self.__dbData.ContribTotal
    def SetContribTotal(self, contribTotal): self.__dbData.ContribTotal = contribTotal
    def GetContribWeek(self): return self.__dbData.ContribWeek
    def SetContribWeek(self, contribWeek): self.__dbData.ContribWeek = contribWeek
    def GetContribDay(self): return self.__dbData.ContribDay
    def SetContribDay(self, contribDay): self.__dbData.ContribDay = contribDay
    def GetDonateCntTotal(self): return self.__dbData.DonateCntTotal
    def SetDonateCntTotal(self, donateCntTotal): self.__dbData.DonateCntTotal = donateCntTotal
    def GetDonateCntDay(self): return self.__dbData.DonateCntDay
    def SetDonateCntDay(self, donateCntDay): self.__dbData.DonateCntDay = donateCntDay
    def GetBuffer(self): return self.__dbData.getBuffer()
    
    def RefreshMemberByID(self, playerID):
@@ -220,12 +227,16 @@
        self.SetRealmLV(viewCache.GetRealmLV())
        self.SetFace(viewCache.GetFace())
        self.SetFacePic(viewCache.GetFacePic())
        self.SetTitleID(viewCache.GetTitleID())
        self.SetServerID(viewCache.GetServerID())
        fpChange = False
        fightPowerTotal = viewCache.GetFightPowerTotal()
        if self.GetFightPowerTotal() < fightPowerTotal:
            self.SetFightPowerTotal(fightPowerTotal)
            fpChange = True
            family = self.GetFamily()
            if family:
                family.SetMemFightPowerChange()
        return fpChange
    
    def RefreshMember(self, curPlayer):
@@ -240,10 +251,15 @@
        self.SetRealmLV(curPlayer.GetOfficialRank())
        self.SetFace(curPlayer.GetFace())
        self.SetFacePic(curPlayer.GetFacePic())
        self.SetTitleID(PlayerControl.GetTitleID(curPlayer))
        self.SetServerID(GameWorld.GetPlayerServerID(curPlayer))
        fightPowerTotal = PlayerControl.GetFightPower(curPlayer)
        fpChange = self.GetFightPowerTotal() != fightPowerTotal
        self.SetFightPowerTotal(fightPowerTotal)
        if fpChange:
            family = self.GetFamily()
            if family:
                family.SetMemFightPowerChange()
        return fpChange
    
class Family():
@@ -286,6 +302,8 @@
        return
    def GetEmblemID(self): return self.__dbData.EmblemID
    def SetEmblemID(self, emblemID): self.__dbData.EmblemID = emblemID
    def GetEmblemWord(self): return self.__dbData.EmblemWord
    def SetEmblemWord(self, emblemWord): self.__dbData.EmblemWord = emblemWord
    def GetBuffer(self): return self.__dbData.getBuffer()
        
    ## ------------------------------------------------
@@ -343,19 +361,7 @@
            mem = FamilyMem()
        return mem
    
    def RefreshFamilyMember(self, curPlayer):
        ## 刷新在线成员信息
        playerID = curPlayer.GetPlayerID()
        familyID = curPlayer.GetFamilyID()
        if self.GetID() != familyID:
            return
        member = self.FindMember(playerID)
        if not member:
            return
        if member.RefreshMember(curPlayer):
            self.__memFightPowerChange = True
        return
    def SetMemFightPowerChange(self): self.__memFightPowerChange = True
    def RefrshFightPowerTotal(self, checkChange=False):
        ## 刷新总战力
        if checkChange and self.__memFightPowerChange == False: # 默认None,首次必刷新