From 5dfc9bf567fdf69a0ee8899c4966ce64b4cfe5ad Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 12 三月 2026 12:07:54 +0800
Subject: [PATCH] 547 【红颜系统】新增红颜-服务端(新增激活方式8-定军阁层;新增红颜特殊效果5-遣散/吞噬额外返还;统一A801、0320物品获得标记;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py | 17 +++++++++++------
1 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py
index 7c37ebe..9519666 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py
@@ -20,6 +20,7 @@
import ReadChConfig
import PlayerActivity
import ChPyNetSendPack
+import DataRecordPack
import NetPackCommon
import IpyGameDataPY
import ShareDefine
@@ -28,7 +29,6 @@
import FBLogic
import ChConfig
import PlayerGoldInvest
-import ObjPool
import random
import json
@@ -170,6 +170,7 @@
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FBPassLineID % mapID, funcLineID)
if isNotify:
Sync_FBPlayerFBInfoData(curPlayer, mapID)
+ DataRecordPack.DR_FBPass(curPlayer, mapID, funcLineID)
return
def CheckCanEnterFBComm(curPlayer, mapID, lineID, fbIpyData, fbLineIpyData, reqEnterCnt=1, isNotify=True, isTeamAsk=False):
@@ -1558,6 +1559,9 @@
return True
def FBOnWeek(curPlayer, onWeekType):
+ if onWeekType != ShareDefine.Def_OnEventType:
+ return
+ FBLogic.OnFBPlayerOnWeek(curPlayer, onWeekType)
return
def FBOnDay(curPlayer, onDayType):
@@ -1619,9 +1623,10 @@
if not costType or not payMoneyList:
GameWorld.DebugLog("没有配置购买副本次数消耗货币数! mapID=%s,costType=%s,payMoneyList=%s" % (mapID, costType, payMoneyList))
return
- costMoney = payMoneyList[hasBuyCnt] if len(payMoneyList) > hasBuyCnt else payMoneyList[-1]
- if not PlayerControl.PayMoney(curPlayer, costType, costMoney, ChConfig.Def_Cost_BuyFBCnt, {"MapID":mapID}):
- return
+ if not PlayerGoldInvest.IsFBCntBuyFree(curPlayer, mapID):
+ costMoney = payMoneyList[hasBuyCnt] if len(payMoneyList) > hasBuyCnt else payMoneyList[-1]
+ if not PlayerControl.PayMoney(curPlayer, costType, costMoney, ChConfig.Def_Cost_BuyFBCnt, {"MapID":mapID}):
+ return
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FBBuyCnt % mapID, hasBuyCnt + 1)
Sync_FBPlayerFBInfoData(curPlayer, mapID)
return
@@ -1688,11 +1693,11 @@
return
mapIDList = [mapIDInfo] if type(mapIDInfo) == int else mapIDInfo
- clientPack = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCFBInfoList)
+ clientPack = ChPyNetSendPack.tagSCFBInfoList()
clientPack.FBDataList = []
for mapID in mapIDList:
- fbInfo = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCFBInfo)
+ fbInfo = ChPyNetSendPack.tagSCFBInfo()
fbInfo.MapID = mapID
fbInfo.EnterCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FbEnterCnt % mapID)
fbInfo.ADAddCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FBADCnt % mapID)
--
Gitblit v1.8.0