hxp
2026-02-13 3d164510ea7f02e952d52df31eacab3fa5a51489
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyZhenbaoge.py
@@ -103,7 +103,7 @@
    #GameWorld.DebugLog("珍宝阁重置! familyID=%s,itemList=%s" % (familyID, itemList), familyID)    
    return
def GetZhenbaogeActionData(familyID, playerID):
def GetZhenbaogeActionData(familyID, playerID, isAddNew=False, setName=""):
    ## 获取珍宝阁Action
    findActionData = None
    familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, ActionType)
@@ -112,6 +112,10 @@
        if GetFAPlayerID(actionData) == playerID:
            findActionData = actionData
            break
    if not findActionData and isAddNew:
        findActionData = familyAction.AddAction()
        findActionData.SetName(setName)
        SetFAPlayerID(findActionData, playerID)
    return findActionData
def CalcCutPrice(curFamily, gActionData, playerID):
@@ -180,9 +184,7 @@
def AddCutPrice(familyID, playerID, playerName, cutPrice, gActionData, isNotify=True):
    ## 添加砍价记录
    familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, ActionType)
    actionData = familyAction.AddAction()
    actionData.SetName(playerName)
    actionData = GetZhenbaogeActionData(familyID, playerID, isAddNew=True, setName=playerName)
    SetFAPlayerID(actionData, playerID)
    SetFACutPrice(actionData, cutPrice)
    
@@ -215,7 +217,7 @@
        cutState = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyZhenbaogeCut)
        if cutState and leaveTimeEx:
            cutCDTimes = IpyGameDataPY.GetFuncCfg("Zhenbaoge", 3) * 60
            passTimes = int(time.time()) - leaveTimeEx
            passTimes = PlayerFamily.GetFamilyTime() - leaveTimeEx
            if passTimes < cutCDTimes:
                GameWorld.DebugLog("今日已砍价变更仙盟砍价CD中! passTimes=%s < %s" % (passTimes, cutCDTimes), playerID)
                return
@@ -273,7 +275,7 @@
        moneyType = IpyGameDataPY.GetFuncCfg("Zhenbaoge", 1)
        playerMoneyValue = reqDataEx["playerMoneyValue"]
        
        actionData = GetZhenbaogeActionData(familyID, playerID)
        actionData = GetZhenbaogeActionData(familyID, playerID, isAddNew=True, setName=crossPlayer.GetPlayerName())
        if not actionData:
            GameWorld.DebugLog("珍宝阁未砍价,无法购买! familyID=%s" % familyID, playerID)
            return