From 67a84dc38db8f7d0f85b03e2b06ba728d95c1e82 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 07 二月 2026 20:29:42 +0800
Subject: [PATCH] 476 【付费内容】时机礼包-服务端(自定义存储支持;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py | 251 ++++++++++++++++++++++++++++++++-----------------
1 files changed, 163 insertions(+), 88 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py
index b79fb12..5b6ec67 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py
@@ -26,7 +26,6 @@
import PlayerFamily
import GameWorld
import DBDataMgr
-import ObjPool
import time
@@ -79,11 +78,15 @@
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBuZhenState, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaAnger, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxUnGetCnt, 0)
+ PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaLeaveGetCnt, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxTotalGetCnt, 0)
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxLastTime, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxContribCnt, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxHurt, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxHurtEx, 0)
+ #玩家自己过天非时间过天的,需要刷新一下
+ familyID = curPlayer.GetFamilyID()
+ curFamily = DBDataMgr.GetFamilyMgr().FindFamily(familyID)
+ RefreshPlayerAwardBoxCnt(curFamily, curPlayer, unSyncIDList=[curPlayer.GetPlayerID()])
SyncTaofaInfo(curPlayer)
return
@@ -112,8 +115,8 @@
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBuZhenState, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaAnger, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxUnGetCnt, 0)
+ PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaLeaveGetCnt, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxTotalGetCnt, 0)
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxLastTime, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxContribCnt, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxHurt, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxHurtEx, 0)
@@ -122,13 +125,13 @@
SyncTaofaInfo(curPlayer)
return
-def OnFamilyMemberLeave(family, leavePlayerID, leavePlayer=None):
+def OnFamilyMemberLeave(family, leavePlayerID):
## 公会成员删除,针对公会的处理
familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(family.GetID(), ActionType)
actionData = familyAction.GetActionDataByValue1(leavePlayerID, False)
if not actionData:
return
- memInfo = PlayerViewCache.GetPlayerBaseViewInfo(leavePlayerID, leavePlayer)
+ memInfo = PlayerViewCache.GetPlayerBaseViewInfo(leavePlayerID)
actionData.GetUserDict().update({"info":memInfo})
PlayerFamily.SendFamilyAction([actionData])
return
@@ -137,54 +140,57 @@
## 玩家退出了公会,针对玩家个人的处理
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaAnger, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxUnGetCnt, 0)
+ totalGetCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaBoxTotalGetCnt)
+ PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaLeaveGetCnt, totalGetCnt)
+ GameWorld.DebugLog("退出公会记录讨伐已累计领取宝箱数: totalGetCnt=%s" % totalGetCnt)
SyncTaofaInfo(curPlayer)
return
-def OnPlayerEnterFamily(curPlayer):
+def OnCrossPlayerEnterFamily(crossPlayer):
## 玩家进入新公会
- familyID = curPlayer.GetFamilyID()
- PlayerFamily.SendFamilyActionInfo(curPlayer, familyID, ActionType)
+ familyID = crossPlayer.GetFamilyID()
+ PlayerFamily.SendFamilyActionInfo(crossPlayer, familyID, ActionType)
return
-def RefreshFamilyBuZhenInfo(family):
- ## 刷新公会公共布阵信息
- familyID = family.GetID()
- curTime = int(time.time())
- bzDuration = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 4) * 60 # 有效时长秒
- maxLayer = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 3)
-
- gLayer = 0
- gEndTime = 0
- gActionData = None
- familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, ActionType)
- for index in range(0, familyAction.Count()):
- actionData = familyAction.At(index)
- dataID = GetFAPlayerID(actionData)
- if dataID == ActionGlobalID:
- gActionData = actionData
- continue
- bzTime = GetFABuzhenTime(actionData)
- if not bzTime:
- continue
- endTime = bzTime + bzDuration
- if endTime <= curTime:
- continue
-
- if not maxLayer or gLayer < maxLayer:
- gLayer += 1
-
- if gEndTime < endTime:
- gEndTime = endTime
-
- GameWorld.DebugLog("刷新公会公共布阵信息: familyID=%s,gLayer=%s,gEndTime=%s" % (familyID, gLayer, GameWorld.ChangeTimeNumToStr(gEndTime)))
- if not gActionData:
- gActionData = familyAction.AddAction()
- SetFAPlayerID(gActionData, ActionGlobalID)
-
- SetFABuzhenEndTime(gActionData, gEndTime)
- SetFABuzhenLayer(gActionData, gLayer)
- PlayerFamily.SendFamilyAction(gActionData)
- return
+#def RefreshFamilyBuZhenInfo(family):
+# ## 刷新公会公共布阵信息
+# familyID = family.GetID()
+# curTime = int(time.time())
+# bzDuration = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 4) * 60 # 有效时长秒
+# maxLayer = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 3)
+#
+# gLayer = 0
+# gEndTime = 0
+# gActionData = None
+# familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, ActionType)
+# for index in range(0, familyAction.Count()):
+# actionData = familyAction.At(index)
+# dataID = GetFAPlayerID(actionData)
+# if dataID == ActionGlobalID:
+# gActionData = actionData
+# continue
+# bzTime = GetFABuzhenTime(actionData)
+# if not bzTime:
+# continue
+# endTime = bzTime + bzDuration
+# if endTime <= curTime:
+# continue
+#
+# if not maxLayer or gLayer < maxLayer:
+# gLayer += 1
+#
+# if gEndTime < endTime:
+# gEndTime = endTime
+#
+# GameWorld.DebugLog("刷新公会公共布阵信息: familyID=%s,gLayer=%s,gEndTime=%s" % (familyID, gLayer, GameWorld.ChangeTimeNumToStr(gEndTime)))
+# if not gActionData:
+# gActionData = familyAction.AddAction()
+# SetFAPlayerID(gActionData, ActionGlobalID)
+#
+# SetFABuzhenEndTime(gActionData, gEndTime)
+# SetFABuzhenLayer(gActionData, gLayer)
+# PlayerFamily.SendFamilyAction(gActionData)
+# return
def RefreshPlayerAwardBoxCnt(family, curPlayer=None, unSyncIDList=[]):
## 刷新玩家可领取的宝箱数
@@ -232,37 +238,33 @@
def __doUpdPlayerAwardBoxCnt(curPlayer, member, memContribDict, awardBoxMax, unSyncIDList):
playerID = curPlayer.GetPlayerID()
joinTime = member.GetJoinTime()
- boxLastTime = max(curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaBoxLastTime), joinTime) # 与加入时间取最大
+ leaveGetCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaLeaveGetCnt) # 上次离开公会时累计领取数
boxTotalGetCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaBoxTotalGetCnt) # 已领取宝箱数
+ curFamilyGetCnt = boxTotalGetCnt - leaveGetCnt # 来到本公会后累计领取数
boxUnGetCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaBoxUnGetCnt) # 未领取宝箱数
canAddBoxMax = awardBoxMax - boxTotalGetCnt - boxUnGetCnt # 还可领取的箱子数
if canAddBoxMax <= 0:
- GameWorld.DebugLog(" 成员可领取宝箱已达上限不刷新: playerID=%s,boxLastTime=%s,boxTotalGetCnt(%s)+boxUnGetCnt(%s) >= %s"
- % (playerID, boxLastTime, boxTotalGetCnt, boxUnGetCnt, awardBoxMax))
+ GameWorld.DebugLog(" 成员可领取宝箱已达上限不刷新: playerID=%s,boxTotalGetCnt(%s)+boxUnGetCnt(%s) >= %s"
+ % (playerID, boxTotalGetCnt, boxUnGetCnt, awardBoxMax))
return
- updBoxLastTime = boxLastTime
- addUnGetBox = 0
+ curFamilyCanGet = 0 # 在本公会累计可领取箱子数
for contribList in memContribDict.values():
- if addUnGetBox >= canAddBoxMax:
- break
for atkTime, contribBoxCnt in contribList:
- if boxLastTime >= atkTime:
+ if joinTime >= atkTime:
+ #GameWorld.DebugLog(" 加入公会之前的箱子不能领取: joinTime=%s > atkTime(%s),contribBoxCnt=%s" % (joinTime, atkTime, contribBoxCnt))
continue
- updBoxLastTime = max(updBoxLastTime, atkTime)
- addUnGetBox += contribBoxCnt
- if addUnGetBox >= canAddBoxMax:
- break
+ curFamilyCanGet += contribBoxCnt
+ addUnGetBox = min(curFamilyCanGet - curFamilyGetCnt - boxUnGetCnt, canAddBoxMax)
if addUnGetBox <= 0:
- GameWorld.DebugLog(" 成员当前没有可领取的宝箱不刷新: playerID=%s,boxLastTime=%s,boxTotalGetCnt=%s,boxUnGetCnt=%s,awardBoxMax=%s,canAddBoxMax=%s"
- % (playerID, boxLastTime, boxTotalGetCnt, boxUnGetCnt, awardBoxMax, canAddBoxMax))
+ GameWorld.DebugLog(" 成员当前没有可领取的宝箱不刷新: playerID=%s,curFamilyCanGet=%s,curFamilyGetCnt=%s(%s-%s),boxUnGetCnt=%s,awardBoxMax=%s,canAddBoxMax=%s"
+ % (playerID, curFamilyCanGet, curFamilyGetCnt, boxTotalGetCnt, leaveGetCnt, boxUnGetCnt, awardBoxMax, canAddBoxMax))
return
updBoxUnGetCnt = boxUnGetCnt + addUnGetBox
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxUnGetCnt, updBoxUnGetCnt)
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilyTaofaBoxLastTime, updBoxLastTime)
- GameWorld.DebugLog(" 成员可领取的宝箱数: playerID=%s,addUnGetBox=%s,updBoxUnGetCnt=%s,updBoxLastTime=%s,boxLastTime=%s,boxTotalGetCnt=%s,boxUnGetCnt=%s,awardBoxMax=%s,canAddBoxMax=%s"
- % (playerID, addUnGetBox, updBoxUnGetCnt, updBoxLastTime, boxLastTime, boxTotalGetCnt, boxUnGetCnt, awardBoxMax, canAddBoxMax))
+ GameWorld.DebugLog(" 成员可领取的宝箱数: playerID=%s,addUnGetBox=%s,updBoxUnGetCnt=%s,curFamilyCanGet=%s,curFamilyGetCnt=%s(%s-%s),boxUnGetCnt=%s,awardBoxMax=%s,canAddBoxMax=%s"
+ % (playerID, addUnGetBox, updBoxUnGetCnt, curFamilyCanGet, curFamilyGetCnt, boxTotalGetCnt, leaveGetCnt, boxUnGetCnt, awardBoxMax, canAddBoxMax))
if not unSyncIDList or playerID not in unSyncIDList:
SyncTaofaInfo(curPlayer)
return
@@ -323,11 +325,11 @@
return
gLayer, gActionData = GetFamilyBuzhenLayer(familyID)
bzDuration = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 4) * 60 # 有效时长秒
- maxLayer = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 3)
gEndTime = int(time.time()) + bzDuration # 直接覆盖更新
- if not maxLayer or gLayer < maxLayer:
- gLayer += 1
-
+ gLayer += 1 # 布阵不限制次数,直接加
+ #if not maxLayer or gLayer < maxLayer:
+ # gLayer += 1
+
GameWorld.DebugLog("公会讨伐布阵: gLayer=%s,gEndTime=%s" % (gLayer, GameWorld.ChangeTimeNumToStr(gEndTime)), playerID)
# 公共信息
SetFABuzhenEndTime(gActionData, gEndTime)
@@ -353,18 +355,25 @@
if not curFamily:
return
- atkCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaCnt)
- itemAddCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaItemAddCnt)
- freeCnt = IpyGameDataPY.GetFuncCfg("FamilyTaofaAtk", 1)
- canAtkCnt = freeCnt + itemAddCnt - atkCnt
- if canAtkCnt <= 0:
- GameWorld.DebugLog("公会讨伐没有斩杀次数: atkCnt=%s >= freeCnt(%s) + itemAddCnt(%s)" % (atkCnt, freeCnt, itemAddCnt), playerID)
- return
+ commAddAnger, superAddAnger, maxAnger = IpyGameDataPY.GetFuncEvalCfg("FamilyTaofaAtk", 4)
+ anger = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaAnger)
+ atkType = AtkType_Anger if anger >= maxAnger else AtkType_Normal
+ if atkType == AtkType_Normal:
+ atkCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaCnt)
+ itemAddCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaItemAddCnt)
+ freeCnt = IpyGameDataPY.GetFuncCfg("FamilyTaofaAtk", 1)
+ canAtkCnt = freeCnt + itemAddCnt - atkCnt
+ if canAtkCnt <= 0:
+ GameWorld.DebugLog("公会讨伐没有斩杀次数: atkCnt=%s >= freeCnt(%s) + itemAddCnt(%s)" % (atkCnt, freeCnt, itemAddCnt), playerID)
+ return
+
atkTime = int(time.time())
# 计算属性
gLayer, _ = GetFamilyBuzhenLayer(familyID)
+ maxLayer = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 3)
+ gLayer = min(gLayer, maxLayer) # 限制生效的最大布阵层数
fightPower = PlayerControl.GetFightPower(curPlayer)
superRate = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 1)
superRatio = IpyGameDataPY.GetFuncCfg("FamilyTaofaAtk", 3) # 暴击伤害倍值
@@ -373,12 +382,9 @@
if gLayer > 0:
superRate += gLayer * addSuperRatePerLayer
damRatio += gLayer * addDamPerLayer / 10000.0
-
- commAddAnger, superAddAnger, maxAnger = IpyGameDataPY.GetFuncEvalCfg("FamilyTaofaAtk", 4)
- anger = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaAnger)
- GameWorld.DebugLog("---公会讨伐斩杀: fightPower=%s,gLayer=%s,superRate=%s,superRatio=%s,damRatio=%s,anger=%s/%s"
- % (fightPower, gLayer, superRate, superRatio, damRatio, anger, maxAnger), playerID)
+ GameWorld.DebugLog("---公会讨伐斩杀: fightPower=%s,gLayer=%s,superRate=%s,superRatio=%s,damRatio=%s,anger=%s/%s,atkType=%s"
+ % (fightPower, gLayer, superRate, superRatio, damRatio, anger, maxAnger, atkType), playerID)
familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, ActionType)
actionData = familyAction.GetActionDataByValue1(playerID, True)
@@ -396,11 +402,9 @@
boxHurtTotalHis = boxHurtHis + boxHurtHisEx * ChConfig.Def_PerPointValue
GameWorld.DebugLog("boxContribCnt=%s,boxHurtTotal=%s,boxHurtTotalHis=%s" % (boxContribCnt, boxHurtTotal, boxHurtTotalHis), playerID)
- atkType = AtkType_Normal
calcHurtCnt = 1 # 计算伤害次数
- if anger >= maxAnger:
+ if atkType == AtkType_Anger: # 怒气攻击
anger -= maxAnger
- atkType = AtkType_Anger # 怒气攻击
calcHurtCnt = IpyGameDataPY.GetFuncCfg("FamilyTaofaAtk", 5)
hurtTotal = 0 # 本次总伤害
@@ -478,6 +482,78 @@
SyncTaofaInfo(curPlayer)
return
+def GMAddMemTaofaAtk(curPlayer, curFamily, playerID, hurtValue, isAnger):
+ ## GM添加假的讨伐数据
+
+ familyID = curFamily.GetID()
+ familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, ActionType)
+ actionData = familyAction.GetActionDataByValue1(playerID, True)
+
+ faAtkCnt = GetFAAtkCount(actionData)
+ faContribBoxCnt = GetFAContribBoxCnt(actionData)
+ faHurtTotal = GetFAHurtTotal(actionData) + GetFAHurtTotalEx(actionData) * ChConfig.Def_PerPointValue
+
+ atkType = AtkType_Normal
+ calcHurtCnt = 1 # 计算伤害次数
+ if isAnger:
+ atkType = AtkType_Anger # 怒气攻击
+ calcHurtCnt = IpyGameDataPY.GetFuncCfg("FamilyTaofaAtk", 5)
+
+ hurtTotal = 0 # 本次总伤害
+ for _ in range(calcHurtCnt):
+ hurtTotal += hurtValue
+
+ atkTime = int(time.time())
+ faAtkCnt += calcHurtCnt
+
+ # 计算贡献盒子数
+ boxAwardHurtList = IpyGameDataPY.GetFuncEvalCfg("FamilyTaofaBox", 1)
+ contribBoxMax = min(IpyGameDataPY.GetFuncCfg("FamilyTaofaBox", 2), 1000) # 可贡献的最大箱子数
+ finalAwardHurt = boxAwardHurtList[-1] # 最后一档最大伤害值
+ loopNeedHurt = (finalAwardHurt - boxAwardHurtList[-2]) if len(boxAwardHurtList) > 1 else finalAwardHurt # 最后一档所需伤害值
+
+ # 原总贡献盒子数
+ boxContribCnt = 0
+ for needHurt in boxAwardHurtList:
+ if faHurtTotal < needHurt:
+ break
+ boxContribCnt += 1
+ if faHurtTotal > finalAwardHurt:
+ loopHurtTotal = faHurtTotal - finalAwardHurt
+ loopContribBoxCnt = loopHurtTotal / loopNeedHurt
+ boxContribCnt = min(boxContribCnt + loopContribBoxCnt, contribBoxMax)
+
+ # 新总宝箱盒子数
+ faHurtTotal += hurtTotal
+ updContribBoxCnt = 0
+ for needHurt in boxAwardHurtList:
+ if faHurtTotal < needHurt:
+ break
+ updContribBoxCnt += 1
+ if faHurtTotal > finalAwardHurt:
+ loopHurtTotal = faHurtTotal - finalAwardHurt
+ loopContribBoxCnt = loopHurtTotal / loopNeedHurt
+ updContribBoxCnt = min(updContribBoxCnt + loopContribBoxCnt, contribBoxMax)
+
+ addContribCnt = 0
+ if updContribBoxCnt > boxContribCnt:
+ addContribCnt = updContribBoxCnt - boxContribCnt
+ faContribBoxCnt += addContribCnt
+
+ GameWorld.DebugAnswer(curPlayer, "讨伐ID:%s,伤:%s,箱:%s/%s,怒:%s" % (playerID, hurtValue, addContribCnt, updContribBoxCnt, int(isAnger)))
+
+ # 更新Action记录
+ SetFAAtkTime(actionData, atkTime)
+ SetFAAtkCount(actionData, faAtkCnt)
+ SetFAHurtTotal(actionData, faHurtTotal % ChConfig.Def_PerPointValue)
+ SetFAHurtTotalEx(actionData, faHurtTotal / ChConfig.Def_PerPointValue)
+ SetFAContribBoxCnt(actionData, faContribBoxCnt)
+ atkList = actionData.GetUserDict().get("atkList", [])
+ atkList.append([atkTime, addContribCnt, hurtTotal, atkType])
+ actionData.GetUserDict().update({"atkList":atkList})
+
+ return actionData
+
def GetTaofaBoxAward(curPlayer):
boxUnGetCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaBoxUnGetCnt)
if not boxUnGetCnt:
@@ -510,7 +586,7 @@
return
def SyncTaofaInfo(curPlayer):
- clientPack = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCFamilyTaofaInfo)
+ clientPack = ChPyNetSendPack.tagSCFamilyTaofaInfo()
clientPack.BuZhenState = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaBuZhenState)
clientPack.AtkCount = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaCnt)
clientPack.ItemAddCount = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilyTaofaItemAddCnt)
@@ -525,9 +601,8 @@
def SyncTaofaAtkRet(curPlayer, atkType, hurtList, awardItemList):
atkHurtList = []
- objPool = ObjPool.GetPoolMgr()
for totalHurt, isSuper in hurtList:
- atkHurt = objPool.acquire(ChPyNetSendPack.tagSCFamilyTaofaAtkHurt)
+ atkHurt = ChPyNetSendPack.tagSCFamilyTaofaAtkHurt()
atkHurt.IsSuper = isSuper
atkHurt.HurtValue = totalHurt % ChConfig.Def_PerPointValue
atkHurt.HurtValueEx = totalHurt / ChConfig.Def_PerPointValue
@@ -535,12 +610,12 @@
itemList = []
for itemID, itemCount in awardItemList:
- item = objPool.acquire(ChPyNetSendPack.tagSCFamilyTaofaAtkItem)
+ item = ChPyNetSendPack.tagSCFamilyTaofaAtkItem()
item.ItemID = itemID
item.Count = itemCount
itemList.append(item)
- clientPack = objPool.acquire(ChPyNetSendPack.tagSCFamilyTaofaAtkRet)
+ clientPack = ChPyNetSendPack.tagSCFamilyTaofaAtkRet()
clientPack.AtkType = atkType
clientPack.HurtList = atkHurtList
clientPack.HurtCount = len(clientPack.HurtList)
--
Gitblit v1.8.0