From caace426c6cb047cf1b734486615111853225771 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 17 六月 2021 18:31:35 +0800
Subject: [PATCH] 8988 【主干】【BT2】【BT2-1.100.1】【后端】神装进阶功能

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetRedPacket.py |   46 +++++++++++++++++++++++++++++++---------------
 1 files changed, 31 insertions(+), 15 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetRedPacket.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetRedPacket.py
index b93b483..144063a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetRedPacket.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetRedPacket.py
@@ -17,10 +17,11 @@
 
 import GameWorld
 import PlayerControl
-import ChConfig
 import PlayerFamilyRedPacket
+import PlayerFeastRedPacket
 import IpyGameDataPY
 import PlayerSuccess
+import ChConfig
 
 ## GM命令执行入口
 #  @param curPlayer 当前玩家
@@ -29,24 +30,38 @@
 #  @remarks 函数详细说明.
 def OnExec(curPlayer, paramList):
     if not paramList:
-        GameWorld.DebugAnswer(curPlayer, "重置红包:SetRedPacket 0")
-        GameWorld.DebugAnswer(curPlayer, "SetRedPacket 红包功能  可抢个数 已抢额度")
-        GameWorld.DebugAnswer(curPlayer, "红包功能: 1-开服红包;2-节日红包")
+        GameWorld.DebugAnswer(curPlayer, "---------------------------")
+        GameWorld.DebugAnswer(curPlayer, "清所有红包:SetRedPacket 0")
+        GameWorld.DebugAnswer(curPlayer, "清指定红包:SetRedPacket 0 类型A 类型B ...")
+        GameWorld.DebugAnswer(curPlayer, "发全服红包:SetRedPacket 36 红包编号 个数")
+        GameWorld.DebugAnswer(curPlayer, "类型:36-全服红包;33-节日成就")
+        GameWorld.DebugAnswer(curPlayer, "全服红包编号:126~130")
+        GameWorld.DebugAnswer(curPlayer, "设置红包:SetRedPacket 功能  可抢数 已抢额度")
+        GameWorld.DebugAnswer(curPlayer, "红包功能:1-开服红包;2-节日红包")
         return
     
+    sendGameServer = False
+    paramA = paramList[0]
     # 重置所有红包数据
-    if len(paramList) == 1 and paramList[0] == 0:
+    if paramA == 0:
+        sendGameServer = True
         __DOResetSuccRedPack(curPlayer)
         __DoResetRedPackFunc(curPlayer, 1, None, 0)
         __DoResetRedPackFunc(curPlayer, 2, None, 0)
-        curPlayer.GameServer_GMCmd("SetRedPacket 0") # 发送到GameServer清除红包
-        return
-    
-    if len(paramList) == 3:
-        redPackFuncType, grabCount, grabMoney = paramList
-        __DoResetRedPackFunc(curPlayer, redPackFuncType, grabCount, grabMoney)
-        return
-    
+        
+    elif paramA in [1, 2]:
+        if len(paramList) == 3:
+            redPackFuncType, grabCount, grabMoney = paramList
+            __DoResetRedPackFunc(curPlayer, redPackFuncType, grabCount, grabMoney)
+            return
+    else:
+        sendGameServer = True
+        
+    if sendGameServer:
+        paramStr = ""
+        for param in paramList:
+            paramStr += " %s" % param
+        curPlayer.GameServer_GMCmd("SetRedPacket%s" % paramStr) # 发送到GameServer清除红包
     return
 
 def __DOResetSuccRedPack(curPlayer):
@@ -84,8 +99,9 @@
     elif redPackFuncType == 2:
         if not isinstance(grabCount, int):
             grabCount = IpyGameDataPY.GetFuncCfg('FeastRedPacket', 1)
-        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OSRedPacketCanGrabCnt, grabCount)
-        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OSRedPacketGrabMoney, grabMoney)
+        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FeastRedPacketCanGrabCnt, grabCount)
+        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FeastRedPacketGrabMoney, grabMoney)
+        PlayerFeastRedPacket.Sync_FeastRedPackInfo(curPlayer)
     return
 
 

--
Gitblit v1.8.0