|  |  | 
 |  |  | import PlayerFamilyRedPacket
 | 
 |  |  | import ChPyNetSendPack
 | 
 |  |  | import NetPackCommon
 | 
 |  |  | import ShareDefine
 | 
 |  |  | 
 | 
 |  |  | 
 | 
 |  |  | ## GM命令执行入口
 | 
 |  |  | 
 |  |  | def OnExec(curPlayer, paramList):
 | 
 |  |  |     GameWorld.DebugLog("执行GameServer->SetRedPacket: %s" % paramList)
 | 
 |  |  |     if not paramList:
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "清除所有类型红包:SetRedPacket 0")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "清除指定类型红包:SetRedPacket 0 类型A 类型B ...")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "发送全服系统红包:SetRedPacket 36 红包编号 个数")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "全服系统红包编号:126~130")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "红包类型:36-全服红包;33-节日成就")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "---------------------------")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "清所有红包:SetRedPacket 0")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "清指定红包:SetRedPacket 0 类型A 类型B ...")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "发指定红包:SetRedPacket 1 红包编号 个数")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "设置抢红包:SetRedPacket 2 红包功能  可抢数 已抢额度")
 | 
 |  |  | #        GameWorld.DebugAnswer(curPlayer, "红包功能:1-开服红包;2-节日红包")
 | 
 |  |  |         return
 | 
 |  |  |     
 | 
 |  |  |     paramA = paramList[0]
 | 
 |  |  | 
 |  |  |                     continue
 | 
 |  |  |                 NetPackCommon.SendFakePack(curPlayer, sendPack)
 | 
 |  |  |                 
 | 
 |  |  |     elif paramA == 36:
 | 
 |  |  |     elif paramA == 1:
 | 
 |  |  |         redPackID = paramList[1] if len(paramList) > 1 else 0
 | 
 |  |  |         sendCount = paramList[2] if len(paramList) > 2 else 0
 | 
 |  |  |         sendCount = min(100, sendCount)
 | 
 |  |  |         canSendRedPacketIDList = range(126, 130 + 1) + []
 | 
 |  |  |         if redPackID not in canSendRedPacketIDList or not sendCount:
 | 
 |  |  |             GameWorld.DebugAnswer(curPlayer, "发送全服系统红包参数错误!")
 | 
 |  |  |         ipyData = IpyGameDataPY.GetIpyGameData('FamilyRedPack', redPackID)
 | 
 |  |  |         if not ipyData:
 | 
 |  |  |             return
 | 
 |  |  |         getType = ipyData.GetGetType()
 | 
 |  |  |         wayType = PlayerFamilyRedPacket.GetRedPackGetWayType(getType)
 | 
 |  |  |         if wayType == ShareDefine.RedPackWayType_Family:
 | 
 |  |  |             return
 | 
 |  |  |         openTime = ipyData.GetPacketOpenTime() # 如果有指定发放时间的
 | 
 |  |  |         if openTime:
 | 
 |  |  |             sendCount = 1
 | 
 |  |  |         for _ in xrange(sendCount):
 | 
 |  |  |             PlayerFamilyRedPacket.CreateSystemRedPacket(redPackID)
 | 
 |  |  |         GameWorld.DebugAnswer(curPlayer, "成功发送红包编号:%s 共:%s个" % (redPackID, sendCount))
 | 
 |  |  |         
 | 
 |  |  |     else:
 | 
 |  |  |         GameWorld.DebugAnswer(curPlayer, "红包命令参数错误!")
 | 
 |  |  |          | 
 |  |  |     return
 | 
 |  |  | 
 | 
 |  |  | def __ResetSendState(delTypeList):
 |