From 1d314dd1b124b38f2f64d05211ecda7065691ec0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 15 十月 2024 17:04:56 +0800
Subject: [PATCH] 5328 【越南】【英文】【砍树】神兽装备格子拓展(扩展为150格)
---
ServerPython/CoreServerGroup/GameServer/Script/DataRecordPack.py | 91 +++++++++++++++++++++++----------------------
1 files changed, 47 insertions(+), 44 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/DataRecordPack.py b/ServerPython/CoreServerGroup/GameServer/Script/DataRecordPack.py
index a421082..84a474e 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/DataRecordPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/DataRecordPack.py
@@ -65,6 +65,8 @@
import GameWorld
import datetime
import ShareDefine
+import PlayerControl
+import PlayerBillboard
import ChConfig
#===============================================================================
##发送事件记录给EventShell
@@ -75,7 +77,7 @@
if curPlayer:
pid = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_PlayerFromPID)
dataDict["pid"] = pid
- dataDict["fightPower"] = curPlayer.GetFightPower()
+ dataDict["fightPower"] = PlayerControl.GetFightPower(curPlayer)
dataDict["PlayerLV"] = curPlayer.GetLV()
dataDict["IP"] = curPlayer.GetIP()
@@ -232,13 +234,6 @@
SendEventPack("GameMapOnLinePlayerCnt", dataDict)
return
-## 每天记录排行榜数据
-# @param billboardType: 排行榜类型
-# @return: None
-def DR_BillboardDataByDay(billboardType):
- DR_BillboardData(billboardType, "BillboardDataByDay")
- return
-
## 记录排行榜数据
# @param billboardType: 排行榜类型
# @return: None
@@ -247,33 +242,46 @@
if not billBoard:
#找不到排行榜
return
+ dataCount = billBoard.GetCount()
+ if not dataCount:
+ return
- for index in range(0, billBoard.GetCount()):
+ billboardMgr = PlayerBillboard.GetBillboardMgr()
+ billboardObj = billboardMgr.GetBillboardObj(billboardType)
+ idOrderDict = billboardObj.GetIDOrderDict()
+
+ serverTime = GameWorld.GetServerTime()
+ timeStr = "%02d%02d%02d%s" % (serverTime.hour, serverTime.minute, serverTime.second, str(serverTime.microsecond)[:3])
+ eventTypeStr = "Billboard_%s_%s_%s" % (billboardType, eventName, timeStr)
+
+ dataDict = {"BillboardType":billboardType, "DataCount":dataCount, "addDataDict":addDataDict}
+ SendEventPack(eventTypeStr, dataDict)
+
+ for index in range(0, dataCount):
billBoardData = billBoard.At(index)
if not billBoardData:
continue
-
- objID = billBoardData.GetID()
- objID2 = billBoardData.GetID2()
- name1 = billBoardData.GetName1()
- name2 = billBoardData.GetName2()
- type2 = billBoardData.GetType2()
- value1 = billBoardData.GetValue1()
- value2 = billBoardData.GetValue2()
- cmpValue = billBoardData.GetCmpValue()
- cmpValue2 = billBoardData.GetCmpValue2()
- cmpValue3 = billBoardData.GetCmpValue3()
-
- dataDict = {"BillboardType":billboardType,
- "Place":index, "ObjID":objID, "ObjID2":objID2, "Name1":name1,
- "Name2":name2, "Type2":type2, "Value1":value1, "Value2":value2,
- "CmpValue":cmpValue, "CmpValue2":cmpValue2, "CmpValue3":cmpValue3,
+ rank = idOrderDict.get(billBoardData.GetID(), index + 1)
+ dataDict = {"Rank":rank, "Index":index,
+ "ID":billBoardData.GetID(),
+ "ID2":billBoardData.GetID2(),
+ "Name1":billBoardData.GetName1(),
+ "Name2":billBoardData.GetName2(),
+ "Type2":billBoardData.GetType2(),
+ "Value1":billBoardData.GetValue1(),
+ "Value2":billBoardData.GetValue2(),
+ "Value3":billBoardData.GetValue3(),
+ "Value4":billBoardData.GetValue4(),
+ "Value5":billBoardData.GetValue5(),
+ "Value6":billBoardData.GetValue6(),
+ "Value7":billBoardData.GetValue7(),
+ "Value8":billBoardData.GetValue8(),
+ "CmpValue":billBoardData.GetCmpValue(),
+ "CmpValue2":billBoardData.GetCmpValue2(),
+ "CmpValue3":billBoardData.GetCmpValue3(),
+ "UserData":billBoardData.GetUserData(),
}
-
- dataDict.update(addDataDict)
-
- #发送封包
- SendEventPack(eventName, dataDict)
+ SendEventPack(eventTypeStr, dataDict)
return
## GM执行命令操作
@@ -383,20 +391,6 @@
#发送封包
SendEventPack("ResetGameDataRecord", dataDict)
return
-
-
-## 复制的排行榜记录
-# @param Place: 名次
-# @param playerID: 玩家ID
-# @param playerName: 玩家名字
-# @param playerLV: 玩家等级
-# @param playerJob: 玩家职业
-# @param totalPoint: 积分
-# @return: None
-def DR_BillboardCopy(billboardType):
- DR_BillboardData(billboardType, "BillboardCopy")
- return
-
## 弹劾玩家家族职位变更
# @param familyID: 家族ID
@@ -554,6 +548,15 @@
SendEventPack("CompensationPersonal", dataDict)
return
+## 删除个人补偿流向
+# @param curPlayerID, GUID, ItemDictList
+# @return: None
+def DR_DelPersonalCompensation(playerID, GUID, eventName):
+ dataDict = {'PlayerID':playerID, 'GUID':GUID, 'eventName':eventName}
+ #发送封包
+ SendEventPack("CompensationPersonalDel", dataDict)
+ return
+
## 添加全服补偿流向
# @param GUID, ItemDictList
# @return: None
--
Gitblit v1.8.0