hxp
2025-06-30 388823edfe6308cba6f76ca6dc4f20022c5cb2be
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossFamilyGCZ.py
@@ -186,7 +186,7 @@
        self.fighterIDList.pop(0)
        if not self.fighterIDList:
            return 0
        nextGuardID = self.fighterIDList
        nextGuardID = self.fighterIDList[0]
        if self.IsGuardNPC(nextGuardID):
            self.guardNPC.hp = self.guardNPC.hpMax
            GameWorld.DebugLog("    切换下一个NPC守卫: %s, %s/%s" % (nextGuardID, self.guardNPC.hp, self.guardNPC.hpMax))
@@ -2366,15 +2366,23 @@
    if not onlinePlayerIDDict:
        return
    
    guradID = cityWall.GetCurGuardID()
    if cityWall.IsGuardNPC(guradID):
        curGuard = cityWall.guardNPC
    else:
        curGuard = zone.GetZoneJoinMember(guradID)
    guardHP, guradHPMax = 0, 0
    if curGuard:
        guardHP, guradHPMax = curGuard.hp, curGuard.hpMax
    clientPack = ChPyNetSendPack.tagGCFamilyGCZBatCityInfo()
    clientPack.CityID = cityID
    clientPack.CityLV = cityWall.cityLV
    clientPack.FamilyID = cityWall.familyID
    clientPack.GuardID = cityWall.GetCurGuardID()
    clientPack.HP = cityWall.hp % ChConfig.Def_PerPointValue
    clientPack.HPEx = cityWall.hp / ChConfig.Def_PerPointValue
    clientPack.HPMax = cityWall.hpMax % ChConfig.Def_PerPointValue
    clientPack.HPMaxEx = cityWall.hpMax / ChConfig.Def_PerPointValue
    clientPack.GuardID = guradID
    clientPack.HP = guardHP % ChConfig.Def_PerPointValue
    clientPack.HPEx = guardHP / ChConfig.Def_PerPointValue
    clientPack.HPMax = guradHPMax % ChConfig.Def_PerPointValue
    clientPack.HPMaxEx = guradHPMax / ChConfig.Def_PerPointValue
    clientPack.AtkPlayerID = atkPlayerID
    clientPack.AtkRet = atkRet
    clientPack.KillCnt = killCnt
@@ -2557,6 +2565,12 @@
        __clientServer_GetAward_Ret(zoneID, playerID, serverGroupID, actID, awardType, playerAwardID, awardItemList)
        return
    
    # 点赞奖励
    if awardType == AwwardType_Like:
        awardItemList = IpyGameDataPY.GetFuncEvalCfg("FamilyGCZGuess", 4)
        __clientServer_GetAward_Ret(zoneID, playerID, serverGroupID, actID, awardType, 0, awardItemList)
        return
    gczMgr = GetFamilyGCZMgr()
    zone = gczMgr.GetActZone(zoneID)
    joinMember = zone.GetZoneJoinMember(playerID)
@@ -2584,12 +2598,6 @@
        billboardType = ShareDefine.Def_CBT_FamilyGCZScore
        awardTemplateID = ipyDataInfo.get("FamilyTemplateID", 0)
        
    # 点赞奖励
    elif awardType == AwwardType_Like:
        awardItemList = IpyGameDataPY.GetFuncEvalCfg("FamilyGCZGuess", 4)
        __clientServer_GetAward_Ret(zoneID, playerID, serverGroupID, actID, awardType, 0, awardItemList)
        return
    else:
        return
    
@@ -3113,7 +3121,7 @@
    for playerID, pActInfo in playerActInfo.items():
        if not PlayerControl.GetDBPlayerAccIDByID(playerID):
            # 非本服玩家
            return
            continue
        curPlayer = playerManager.FindPlayerByID(playerID)
        if curPlayer:
            MapServer_QueryPlayerResult(curPlayer, "FamilyGCZPlayerActInfo", pActInfo)