From 54d9849e67665b6a20dc723adaf91b5455054165 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期日, 28 九月 2025 14:38:42 +0800
Subject: [PATCH] 219 【付费内容】首充-服务端(支持给定制属性装备)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |   52 ++++++++++++++++++++++++++++------------------------
 1 files changed, 28 insertions(+), 24 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index c5b679f..8d1ae8b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -139,7 +139,7 @@
                         ("BYTE", "LayerCnt", 0),
                         ("BYTE", "LayerMax", 0),
                         ("DWORD", "BuffRepeat", 0),
-                        ("DWORD", "DieContinue", 0),
+                        ("BYTE", "DispersedLimit", 0),
                         ("DWORD", "FightPower", 0),
                         ("char", "SkillMotionName", 0),
                         ),
@@ -1495,10 +1495,12 @@
                         ("BYTE", "IsAuctionItem", 0),
                         ),
 
-                "FirstGold":(
-                        ("BYTE", "Day", 1),
-                        ("dict", "JobItemInfo", 0),
-                        ("list", "CommItemList", 0),
+                "FirstCharge":(
+                        ("BYTE", "FirstID", 1),
+                        ("WORD", "NeedCTGID", 0),
+                        ("list", "AwardListDay1", 0),
+                        ("list", "AwardListDay2", 0),
+                        ("list", "AwardListDay3", 0),
                         ),
 
                 "LVAward":(
@@ -2708,7 +2710,7 @@
     def GetLayerCnt(self): return self.attrTuple[34] # Buff层数 BYTE
     def GetLayerMax(self): return self.attrTuple[35] # 最大层数 BYTE
     def GetBuffRepeat(self): return self.attrTuple[36] # Buff叠加规则 DWORD
-    def GetDieContinue(self): return self.attrTuple[37] # Buff死亡存在 DWORD
+    def GetDispersedLimit(self): return self.attrTuple[37] # 驱散限制 BYTE
     def GetFightPower(self): return self.attrTuple[38] # 技能战斗力 DWORD
     def GetSkillMotionName(self): return self.attrTuple[39] # 技能动作名 char
 
@@ -4704,15 +4706,17 @@
     def GetIsAuctionItem(self): return self.attrTuple[3] # 是否拍品 BYTE
 
 # 首充表
-class IPY_FirstGold():
+class IPY_FirstCharge():
     
     def __init__(self):
         self.attrTuple = None
         return
         
-    def GetDay(self): return self.attrTuple[0] # 首充第几天 BYTE
-    def GetJobItemInfo(self): return self.attrTuple[1] # 职业物品奖励 {"职业":[[物品ID,个数], ...], ...} dict
-    def GetCommItemList(self): return self.attrTuple[2] # 通用物品奖励 [[物品ID,个数], ...] list
+    def GetFirstID(self): return self.attrTuple[0] # 首充ID BYTE
+    def GetNeedCTGID(self): return self.attrTuple[1] # 所需充值ID WORD
+    def GetAwardListDay1(self): return self.attrTuple[2] # 第1天奖励 [[物品ID,个数,装备定制ID], ...] list
+    def GetAwardListDay2(self): return self.attrTuple[3] # 第2天奖励 [[物品ID,个数,装备定制ID], ...] list
+    def GetAwardListDay3(self): return self.attrTuple[4] # 第3天奖励 [[物品ID,个数,装备定制ID], ...] list
 
 # 等级奖励表
 class IPY_LVAward():
@@ -6593,7 +6597,7 @@
         self.__LoadFileData("OrderInfo", onlyCheck)
         self.__LoadFileData("CTG", onlyCheck)
         self.__LoadFileData("CTGSelectItem", onlyCheck)
-        self.__LoadFileData("FirstGold", onlyCheck)
+        self.__LoadFileData("FirstCharge", onlyCheck)
         self.__LoadFileData("LVAward", onlyCheck)
         self.__LoadFileData("Invest", onlyCheck)
         self.__LoadFileData("XBXZ", onlyCheck)
@@ -6913,13 +6917,7 @@
     
     def __StrToList(self, strValue):
         setList = []
-        if (strValue.startswith("[") and strValue.endswith("]")) or (strValue.startswith("(") and strValue.endswith(")")):
-            setList = eval(strValue)
-        elif strValue in ["0", "-", ""]:
-            pass
-        elif strValue.isdigit():
-            setList = (int(strValue),)
-        else:
+        if ChConfig.Def_Str_Montant in strValue: # |分割的优先
             for value in strValue.split(ChConfig.Def_Str_Montant):
                 if value.isdigit():
                     value = int(value)
@@ -6933,6 +6931,12 @@
                 setList.append(value)
             if setList:
                 setList = tuple(setList)
+        elif (strValue.startswith("[") and strValue.endswith("]")) or (strValue.startswith("(") and strValue.endswith(")")):
+            setList = eval(strValue)
+        elif strValue in ["0", "-", ""]:
+            pass
+        elif strValue.isdigit():
+            setList = (int(strValue),)
         return setList
     
 
@@ -7874,12 +7878,12 @@
         self.CheckLoadData("CTGSelectItem")
         return self.ipyCTGSelectItemCache[index]
 
-    def GetFirstGoldCount(self):
-        self.CheckLoadData("FirstGold")
-        return self.ipyFirstGoldLen
-    def GetFirstGoldByIndex(self, index):
-        self.CheckLoadData("FirstGold")
-        return self.ipyFirstGoldCache[index]
+    def GetFirstChargeCount(self):
+        self.CheckLoadData("FirstCharge")
+        return self.ipyFirstChargeLen
+    def GetFirstChargeByIndex(self, index):
+        self.CheckLoadData("FirstCharge")
+        return self.ipyFirstChargeCache[index]
 
     def GetLVAwardCount(self):
         self.CheckLoadData("LVAward")

--
Gitblit v1.8.0