From e37a3c136624264a1f862795ad2e5468dabe0c9d Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 09 十月 2025 17:01:35 +0800
Subject: [PATCH] 16 卡牌服务端(删除在线奖励;)
---
/dev/null | 191 -----------------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini | 17 -
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 104 ---------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 287 --------------------------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 25 --
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 4
PySysDB/PySysDBPY.h | 9
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py | 4
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 2
9 files changed, 0 insertions(+), 643 deletions(-)
diff --git a/PySysDB/PySysDBPY.h b/PySysDB/PySysDBPY.h
index b0ed5b3..81ccda2 100644
--- a/PySysDB/PySysDBPY.h
+++ b/PySysDB/PySysDBPY.h
@@ -1769,15 +1769,6 @@
dict Reward; //奖励 {"职业":[[物品ID,个数],...], ...}
};
-//七天在线奖励表新
-
-struct tagOnlineAwardNew
-{
- BYTE _DayID; //天数
- list StageTime; //阶段所需时间(分钟)
- dict Reward; //奖励 {"索引":[[物品ID,个数],...], ...}
-};
-
//七天限时特惠表
struct tagSpringSale
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
index 60b6c7d..783943d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
@@ -430,23 +430,6 @@
PacketSubCMD_1=0x06
PacketCallFunc_1=OnQueryRecharge
-
-;在线奖励
-[PlayerOnlinePrize]
-ScriptName = Player\PlayerOnlinePrize.py
-Writer = alee
-Releaser = alee
-RegType = 0
-RegisterPackCount = 2
-
-PacketCMD_1=0xA5
-PacketSubCMD_1=0x06
-PacketCallFunc_1=GetOnlinePrize
-
-PacketCMD_2=
-PacketSubCMD_2=
-PacketCallFunc_2=
-
;玩家副本
[PlayerFB]
ScriptName = Player\PlayerFB.py
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index 2e1a82f..8f04968 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -3349,8 +3349,6 @@
Def_Player_Dict_LastAutoOpenPackTick = "LastAutoOpenPackTick219_%s" #上一次自动购买的tick<背包类型>
-Def_PDict_OnlinePrizeNote = "OnlinePrizeNote" # 当日在线奖励领取信息
-
Def_PDict_OpenSererDailyAward = "OpenSererDailyAward" # 开服每日奖励记录
Def_PDict_CreateRoleAwardState = "CreateRoleAwardState" # 创角奖励领取记录
Def_PDict_GameNoticeAwardState = "GameNoticeAwardState" # 玩法前瞻游戏领奖记录
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index 433b573..80e970a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -6734,62 +6734,6 @@
#------------------------------------------------------
-#A5 06 玩家领取在线奖励 #tagCMGetOnlinePrize
-
-class tagCMGetOnlinePrize(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("Index", c_ubyte), # 奖励索引,其他按顺序
- ("IsDaily", c_ubyte), # 是否领取每日日常的奖励,是发1,如果领取定制创角天奖励的则默认发0即可
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x06
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.Cmd = 0xA5
- self.SubCmd = 0x06
- self.Index = 0
- self.IsDaily = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMGetOnlinePrize)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''//A5 06 玩家领取在线奖励 //tagCMGetOnlinePrize:
- Cmd:%s,
- SubCmd:%s,
- Index:%d,
- IsDaily:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.Index,
- self.IsDaily
- )
- return DumpString
-
-
-m_NAtagCMGetOnlinePrize=tagCMGetOnlinePrize()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGetOnlinePrize.Cmd,m_NAtagCMGetOnlinePrize.SubCmd))] = m_NAtagCMGetOnlinePrize
-
-
-#------------------------------------------------------
# A5 42 领取成就奖励 #tagMCGetSuccessAward
class tagMCGetSuccessAward(Structure):
@@ -7693,54 +7637,6 @@
m_NAtagCMPlayerGetReward=tagCMPlayerGetReward()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMPlayerGetReward.Head.Cmd,m_NAtagCMPlayerGetReward.Head.SubCmd))] = m_NAtagCMPlayerGetReward
-
-
-#------------------------------------------------------
-#A5 07 查询在线奖励 #tagCMQueryOnlinePrizeInfo
-
-class tagCMQueryOnlinePrizeInfo(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x07
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.Cmd = 0xA5
- self.SubCmd = 0x07
- return
-
- def GetLength(self):
- return sizeof(tagCMQueryOnlinePrizeInfo)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''//A5 07 查询在线奖励 //tagCMQueryOnlinePrizeInfo:
- Cmd:%s,
- SubCmd:%s
- '''\
- %(
- self.Cmd,
- self.SubCmd
- )
- return DumpString
-
-
-m_NAtagCMQueryOnlinePrizeInfo=tagCMQueryOnlinePrizeInfo()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMQueryOnlinePrizeInfo.Cmd,m_NAtagCMQueryOnlinePrizeInfo.SubCmd))] = m_NAtagCMQueryOnlinePrizeInfo
#------------------------------------------------------
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index f9aad71..e78ab7a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -8113,80 +8113,6 @@
#------------------------------------------------------
-#A3 08 在线奖励信息 #tagMCOnlinePrize
-
-class tagMCOnlinePrize(Structure):
- Head = tagHead()
- OnlineTime = 0 #(DWORD OnlineTime)//在线时间毫秒
- Len = 0 #(BYTE Len)
- PrizeInfo = list() #(vector<DWORD> PrizeInfo)//领奖记录
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x08
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.OnlineTime,_pos = CommFunc.ReadDWORD(_lpData, _pos)
- self.Len,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.Len):
- value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
- self.PrizeInfo.append(value)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x08
- self.OnlineTime = 0
- self.Len = 0
- self.PrizeInfo = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 4
- length += 1
- length += 4 * self.Len
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteDWORD(data, self.OnlineTime)
- data = CommFunc.WriteBYTE(data, self.Len)
- for i in range(self.Len):
- data = CommFunc.WriteDWORD(data, self.PrizeInfo[i])
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- OnlineTime:%d,
- Len:%d,
- PrizeInfo:%s
- '''\
- %(
- self.Head.OutputString(),
- self.OnlineTime,
- self.Len,
- "..."
- )
- return DumpString
-
-
-m_NAtagMCOnlinePrize=tagMCOnlinePrize()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCOnlinePrize.Head.Cmd,m_NAtagMCOnlinePrize.Head.SubCmd))] = m_NAtagMCOnlinePrize
-
-
-#------------------------------------------------------
# A3 19 分包下载奖励记录 #tagMCPackDownloadRecord
class tagMCPackDownloadRecord(Structure):
@@ -8292,145 +8218,6 @@
m_NAtagMCPlayerLVAwardGetRecord=tagMCPlayerLVAwardGetRecord()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCPlayerLVAwardGetRecord.Cmd,m_NAtagMCPlayerLVAwardGetRecord.SubCmd))] = m_NAtagMCPlayerLVAwardGetRecord
-
-
-#------------------------------------------------------
-#A3 03 玩家在线奖励信息(暂停使用) #tagMCPlayerOnlinePrizeInfo
-
-class tagMCOnlinePrizeItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("PrizeItem", c_int),
- ("ItemCount", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA3
- self.SubCmd = 0x03
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.Cmd = 0xA3
- self.SubCmd = 0x03
- self.PrizeItem = 0
- self.ItemCount = 0
- return
-
- def GetLength(self):
- return sizeof(tagMCOnlinePrizeItem)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''//A3 03 玩家在线奖励信息(暂停使用) //tagMCPlayerOnlinePrizeInfo:
- Cmd:%s,
- SubCmd:%s,
- PrizeItem:%d,
- ItemCount:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.PrizeItem,
- self.ItemCount
- )
- return DumpString
-
-
-class tagMCPlayerOnlinePrizeInfo(Structure):
- Head = tagHead()
- RemaindTime = 0 #(DWORD RemaindTime)//产生奖励剩余时间
- HasPrize = 0 #(BYTE HasPrize)//是否可以领取
- PrizeType = 0 #(BYTE PrizeType)//在线奖励类型
- PrizeCnt = 0 #(BYTE PrizeCnt)//在线奖励类型
- PrizeInfo = list() #(vector<tagMCOnlinePrizeItem> PrizeInfo)//在线奖励类型
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x03
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.RemaindTime,_pos = CommFunc.ReadDWORD(_lpData, _pos)
- self.HasPrize,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- self.PrizeType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- self.PrizeCnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.PrizeCnt):
- temPrizeInfo = tagMCOnlinePrizeItem()
- _pos = temPrizeInfo.ReadData(_lpData, _pos)
- self.PrizeInfo.append(temPrizeInfo)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x03
- self.RemaindTime = 0
- self.HasPrize = 0
- self.PrizeType = 0
- self.PrizeCnt = 0
- self.PrizeInfo = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 4
- length += 1
- length += 1
- length += 1
- for i in range(self.PrizeCnt):
- length += self.PrizeInfo[i].GetLength()
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteDWORD(data, self.RemaindTime)
- data = CommFunc.WriteBYTE(data, self.HasPrize)
- data = CommFunc.WriteBYTE(data, self.PrizeType)
- data = CommFunc.WriteBYTE(data, self.PrizeCnt)
- for i in range(self.PrizeCnt):
- data = CommFunc.WriteString(data, self.PrizeInfo[i].GetLength(), self.PrizeInfo[i].GetBuffer())
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- RemaindTime:%d,
- HasPrize:%d,
- PrizeType:%d,
- PrizeCnt:%d,
- PrizeInfo:%s
- '''\
- %(
- self.Head.OutputString(),
- self.RemaindTime,
- self.HasPrize,
- self.PrizeType,
- self.PrizeCnt,
- "..."
- )
- return DumpString
-
-
-m_NAtagMCPlayerOnlinePrizeInfo=tagMCPlayerOnlinePrizeInfo()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCPlayerOnlinePrizeInfo.Head.Cmd,m_NAtagMCPlayerOnlinePrizeInfo.Head.SubCmd))] = m_NAtagMCPlayerOnlinePrizeInfo
#------------------------------------------------------
@@ -37380,80 +37167,6 @@
m_NAtagMCNotifyPlayerMove=tagMCNotifyPlayerMove()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCNotifyPlayerMove.Cmd,m_NAtagMCNotifyPlayerMove.SubCmd))] = m_NAtagMCNotifyPlayerMove
-
-
-#------------------------------------------------------
-# B1 13 在线奖励信息新 #tagMCOnlinePrizeNew
-
-class tagMCOnlinePrizeNew(Structure):
- Head = tagHead()
- OnlineTime = 0 #(DWORD OnlineTime)//在线时间毫秒
- Len = 0 #(BYTE Len)
- PrizeInfo = list() #(vector<DWORD> PrizeInfo)//领奖记录
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xB1
- self.Head.SubCmd = 0x13
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.OnlineTime,_pos = CommFunc.ReadDWORD(_lpData, _pos)
- self.Len,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.Len):
- value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
- self.PrizeInfo.append(value)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xB1
- self.Head.SubCmd = 0x13
- self.OnlineTime = 0
- self.Len = 0
- self.PrizeInfo = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 4
- length += 1
- length += 4 * self.Len
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteDWORD(data, self.OnlineTime)
- data = CommFunc.WriteBYTE(data, self.Len)
- for i in range(self.Len):
- data = CommFunc.WriteDWORD(data, self.PrizeInfo[i])
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- OnlineTime:%d,
- Len:%d,
- PrizeInfo:%s
- '''\
- %(
- self.Head.OutputString(),
- self.OnlineTime,
- self.Len,
- "..."
- )
- return DumpString
-
-
-m_NAtagMCOnlinePrizeNew=tagMCOnlinePrizeNew()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCOnlinePrizeNew.Head.Cmd,m_NAtagMCOnlinePrizeNew.Head.SubCmd))] = m_NAtagMCOnlinePrizeNew
#------------------------------------------------------
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ClearOpenServerAward.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ClearOpenServerAward.py
deleted file mode 100644
index 540987c..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ClearOpenServerAward.py
+++ /dev/null
@@ -1,79 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#
-#
-##@package ClearOpenServerAward.py
-#
-# @todo:清除开服奖励
-#
-# @author jiang
-# @date 2012-05-14
-# @version 1.4
-# @note:
-#
-# @change: "2013-12-06 15:00" hxp 增加清除逻辑
-# @change: "2014-11-26 12:30" hxp 增加清除历史最高战力榜,防止妨碍测试
-# @change: "2016-08-25 20:00" hxp 首充相关
-#------------------------------------------------------------------------------
-#"""Version = 2016-08-25 20:00"""
-#------------------------------------------------------------------------------
-import GameWorld
-import ShareDefine
-import ChConfig
-import PlayerControl
-import ClearFightPowerHistor
-import PlayerLoginDayAward
-import OpenServerCampaign
-import ClearFirstGold
-import PlayerOnlinePrize
-import GY_Query_BossFirstKill
-#---------------------------------------------------------------------
-## 执行逻辑
-# @param curPlayer 当前玩家
-# @param cmdList 参数
-# @return None
-# @remarks 函数详细说明.
-def OnExec(curPlayer, cmdList):
- # 清除玩家历史最高战力,防止不上榜
- ClearFightPowerHistor.OnExec(curPlayer, [])
- ClearFirstGold.OnExec(curPlayer, [])
-
- # 七天登录重置
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_LoginDayCnt, 1)
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_LoginDayAward, 0)
- PlayerLoginDayAward.NotifyPlayerLoginDayAward(curPlayer)
- #在线奖励重置
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnlinePrizeNote, 0)
- PlayerOnlinePrize.SendOnlinePrizeInfo(curPlayer)
-
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OSC_EndMailState, 0)
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OSC_BillAwardRecord, 0)
-
- #boss首杀
- GY_Query_BossFirstKill.OnGMResetBossFirstKillState(curPlayer)
-
- if len(cmdList) == 0:
- for i in ShareDefine.Def_Campaign_Type_List:
- __DoOSCReset(curPlayer, i)
-
- OpenServerCampaign.Sync_OpenServerCampaignAward(curPlayer)
- return
-
- campaignType = cmdList[0]
- if campaignType not in ShareDefine.Def_Campaign_Type_List:
- return
- __DoOSCReset(curPlayer, campaignType)
- OpenServerCampaign.Sync_OpenServerCampaignAward(curPlayer)
- return
-
-
-## 开服活动领取属性重置
-# @param curPlayer 当前玩家
-# @param campaignType 重置类型
-# @return None
-def __DoOSCReset(curPlayer, campaignType):
- # 更新领奖记录
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OSC_TagAwardRecord % campaignType, 0)
- GameWorld.DebugAnswer(curPlayer, 'OSCReset %s OK!'%campaignType)
- return
-
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetOnlineTime.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetOnlineTime.py
deleted file mode 100644
index 0d5d558..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetOnlineTime.py
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#-------------------------------------------------------------------------------
-#
-#-------------------------------------------------------------------------------
-#
-##@package GM.Commands.SetOnlineTime
-#
-# @todo:设置在线时间
-# @author ljd
-# @date 2015-06-10 10:10
-# @version 1.0
-#
-#
-# 详细描述: 设置在线时间
-#
-#---------------------------------------------------------------------
-#"""Version = 2015-06-10 10:10"""
-#---------------------------------------------------------------------
-
-import ChConfig
-import PlayerOnlinePrize
-import PlayerControl
-import GameWorld
-
-## 逻辑实现
-## GM命令执行入口
-# @param curPlayer
-# @param cmdList 参数列表
-# @return None
-def OnExec(curPlayer, cmdList):
- if len(cmdList) < 1:
- GameWorld.DebugAnswer(curPlayer, '当前在线时间秒:%s'%PlayerOnlinePrize.GetOnlineTime(curPlayer))
- GameWorld.DebugAnswer(curPlayer, 'SetOnlineTime 分 [秒]')
- return
-
- minutes = cmdList[0]
- seconds = cmdList[1] if len(cmdList) > 1 else 0
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DayOnlineTime, minutes * 60 + seconds)
- PlayerOnlinePrize.SetStartCalcOnlineTick(curPlayer)
- PlayerOnlinePrize.SendOnlinePrizeInfo(curPlayer)
- GameWorld.DebugAnswer(curPlayer, '设置在线时间秒:%s' % PlayerOnlinePrize.GetOnlineTime(curPlayer))
- return
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 2483e81..2efded5 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -1427,12 +1427,6 @@
("dict", "Reward", 0),
),
- "OnlineAwardNew":(
- ("BYTE", "DayID", 1),
- ("list", "StageTime", 0),
- ("dict", "Reward", 0),
- ),
-
"SpringSale":(
("BYTE", "GiftID", 1),
("BYTE", "SellDay", 0),
@@ -4586,17 +4580,6 @@
def GetDayID(self): return self.attrTuple[0] # 天数 BYTE
def GetReward(self): return self.attrTuple[1] # 奖励 {"职业":[[物品ID,个数],...], ...} dict
-# 七天在线奖励表新
-class IPY_OnlineAwardNew():
-
- def __init__(self):
- self.attrTuple = None
- return
-
- def GetDayID(self): return self.attrTuple[0] # 天数 BYTE
- def GetStageTime(self): return self.attrTuple[1] # 阶段所需时间(分钟) list
- def GetReward(self): return self.attrTuple[2] # 奖励 {"索引":[[物品ID,个数],...], ...} dict
-
# 七天限时特惠表
class IPY_SpringSale():
@@ -6535,7 +6518,6 @@
self.__LoadFileData("OSCBillRankAward", onlyCheck)
self.__LoadFileData("OSCBillTagAward", onlyCheck)
self.__LoadFileData("LoginDayAward", onlyCheck)
- self.__LoadFileData("OnlineAwardNew", onlyCheck)
self.__LoadFileData("SpringSale", onlyCheck)
self.__LoadFileData("OrderInfo", onlyCheck)
self.__LoadFileData("CTG", onlyCheck)
@@ -7784,13 +7766,6 @@
def GetLoginDayAwardByIndex(self, index):
self.CheckLoadData("LoginDayAward")
return self.ipyLoginDayAwardCache[index]
-
- def GetOnlineAwardNewCount(self):
- self.CheckLoadData("OnlineAwardNew")
- return self.ipyOnlineAwardNewLen
- def GetOnlineAwardNewByIndex(self, index):
- self.CheckLoadData("OnlineAwardNew")
- return self.ipyOnlineAwardNewCache[index]
def GetSpringSaleCount(self):
self.CheckLoadData("SpringSale")
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
index eb4135c..e4451bb 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -36,7 +36,6 @@
import ChPyNetSendPack
import DataRecordPack
import PlayerBillboard
-import PlayerOnlinePrize
import PlayerLVAward
import PlayerGoldGift
import PlayerSignDay
@@ -640,7 +639,6 @@
FunctionNPCCommon.ShopItemOnLogin(curPlayer)
# 通知设置的被动功法
#PassiveBuffEffMng.OnLoginGFPassive(curPlayer)
- PlayerOnlinePrize.OnPlayerLogin(curPlayer)
# 极品白拿
PlayerFreeGoods.OnLogin(curPlayer)
# BOSS复活活动
@@ -2136,8 +2134,6 @@
#流向记录玩家下线
DataRecordPack.DR_PlayerDisconnect(curPlayer)
- #在线时间
- PlayerOnlinePrize.CalcOnlineTime(curPlayer)
#玩家未回图形验证码下线将会记录错误次数
#===========================================================================
# if curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_Captcha_WaitSign) \
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
index 279e30b..37bb1fa 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
@@ -28,7 +28,6 @@
import PlayerControl
import PlayerFamily
import PlayerFamilyZhenfa
-import PlayerOnlinePrize
import PlayerLoginDayAward
import NPCCommon
import FunctionNPCCommon
@@ -261,9 +260,6 @@
#重置宠物每天的训练次数
#PlayerPet.DoLogic_PetInfo_OnDay(curPlayer)
-
- PlayerOnlinePrize.ResetPrizeInfoOnDay(curPlayer)
-
#OnDay时清除每日签到的信息
PlayerSignDay.SignDayOnDay(curPlayer)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnlinePrize.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnlinePrize.py
deleted file mode 100644
index 9545fbf..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnlinePrize.py
+++ /dev/null
@@ -1,191 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#-------------------------------------------------------------------------------
-#
-#-------------------------------------------------------------------------------
-#
-##@package PlayerOnlinePrize
-#
-# @todo: 创角7天在线奖励
-# @author xdh
-# @date 2018-03-06 17:00
-# @version 1.0
-#
-#---------------------------------------------------------------------
-#"""Version = 2018-03-06 17:00"""
-#---------------------------------------------------------------------
-
-import ChPyNetSendPack
-import ChConfig
-import GameWorld
-import ItemControler
-import NetPackCommon
-import PlayerControl
-import IpyGameDataPY
-
-import time
-
-#//A5 06 玩家领取在线奖励 #tagCMGetOnlinePrize
-#
-#struct tagCMGetOnlinePrize
-#
-#{
-# tagHead Head;
-# BYTE Index; // 奖励索引,其他按顺序
-# BYTE IsDaily; // 是否领取每日日常的奖励,是发1,如果领取定制创角天奖励的则默认发0即可
-#};
-def GetOnlinePrize(index, clientPack, tick):
- curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
- creatRoleDay = GameWorld.GetCreateRoleDays(curPlayer)
- prizeIndex = clientPack.Index
- if prizeIndex <= 0:
- GameWorld.DebugLog("prizeIndex需要从1开始,我也不想,保留原逻辑吧!!!")
- return
- ipyData = IpyGameDataPY.GetIpyGameDataNotLog('OnlineAwardNew', creatRoleDay)
- if ipyData:
- dayID = creatRoleDay
- GameWorld.DebugLog("领取创角天在线奖励: creatRoleDay=%s,prizeIndex=%s" % (creatRoleDay, prizeIndex))
- else:
- dayID = 0
- ipyData = IpyGameDataPY.GetIpyGameData('OnlineAwardNew', 0)
- GameWorld.DebugLog("领取每天在线奖励: creatRoleDay=%s,prizeIndex=%s" % (creatRoleDay, prizeIndex))
-
- if not ipyData:
- return
- #先纠正一次时间
- onlineTime = GetOnlineTime(curPlayer)
-
- #已领
- awardInfo = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OnlinePrizeNote)
- awardMark = pow(2, prizeIndex - 1)
- if awardInfo & awardMark:
- #已领取
- GameWorld.DebugLog("已领取奖励!dayID=%s,prizeIndex=%s" % (dayID, prizeIndex))
- return
- stageTimeList = ipyData.GetStageTime()
-
- if prizeIndex - 1 >= len(stageTimeList):
- GameWorld.DebugLog("不存在该在线奖励索引!")
- return
- needTime = stageTimeList[prizeIndex - 1]
- if needTime * 60 > onlineTime:
- GameWorld.DebugLog("在线时间不足!dayID=%s,prizeIndex=%s,needTime=%s" % (dayID, prizeIndex, needTime))
- return
-
- awardDict = ipyData.GetReward()
- if str(prizeIndex) not in awardDict:
- GameWorld.DebugLog("没有配置该索引对应在线奖励!")
- return
- itemList = awardDict[str(prizeIndex)]
- if not itemList:
- return
- updAwardNote = awardInfo | awardMark
- GameWorld.DebugLog("在线奖励: %s, updAwardNote=%s" % (itemList, updAwardNote))
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnlinePrizeNote, updAwardNote)
- ItemControler.GivePlayerItemOrMail(curPlayer, itemList, event=["OnlinePrize", False, {}])
- SendOnlinePrizeInfo(curPlayer)
- return
-
-def GetOnlineTime(curPlayer):
- onlineTime = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DayOnlineTime)
- markTick = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OnlineStartTick)
- if not markTick:
- return onlineTime
- curTime = int(time.time())
- passTick = curTime - markTick
- if passTick <= 0:
- return onlineTime
- return onlineTime + passTick
-
-##离线更新记录在线时长
-# @param notify 是否通知客户端
-# @return None
-def CalcOnlineTime(curPlayer):
- onlineTime = GetOnlineTime(curPlayer)
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DayOnlineTime, onlineTime)
- SetStartCalcOnlineTick(curPlayer, 0)
- GameWorld.DebugLog("更新记录在线时长: %s" % onlineTime)
- return onlineTime
-
-
-##发送奖励信息包
-# @param None
-# @return None
-def SendOnlinePrizeInfo(curPlayer):
- dataCount = IpyGameDataPY.IPY_Data().GetOnlineAwardNewCount()
- if not dataCount:
- return
- sendPack = ChPyNetSendPack.tagMCOnlinePrizeNew()
- sendPack.Clear()
- sendPack.OnlineTime = GetOnlineTime(curPlayer) * 1000
- sendPack.PrizeInfo = [curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OnlinePrizeNote)] # 固定只发当天的
- sendPack.Len = len(sendPack.PrizeInfo)
- #通知客户端时间
- NetPackCommon.SendFakePack(curPlayer, sendPack)
- return
-
-
-##设置开始计时时间
-# @param None
-# @return None
-def SetStartCalcOnlineTick(curPlayer, newTime=-1):
- if newTime == -1:
- newTime=int(time.time())
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnlineStartTick, newTime)
- return
-
-## 登录
-# @param curPlayer
-# @return None
-def OnPlayerLogin(curPlayer):
- SetStartCalcOnlineTick(curPlayer)
- SendOnlinePrizeInfo(curPlayer)
- return
-
-##ONDAY重置, 通知客户端
-# @param None
-# @return None
-def ResetPrizeInfoOnDay(curPlayer):
- __OnlineMailPrize(curPlayer)
-
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DayOnlineTime, 0)
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnlinePrizeNote, 0) # 重置每日在线奖励
-
- SetStartCalcOnlineTick(curPlayer)
-
- SendOnlinePrizeInfo(curPlayer)
- return
-
-def __OnlineMailPrize(curPlayer):
- #邮件补发奖励
- creatRoleDay = GameWorld.GetCreateRoleDays(curPlayer)
- if creatRoleDay <= 1:
- return
- mailAwardDay = creatRoleDay - 1
- ipyData = IpyGameDataPY.GetIpyGameDataNotLog('OnlineAwardNew', mailAwardDay)
- if not ipyData:
- ipyData = IpyGameDataPY.GetIpyGameDataNotLog('OnlineAwardNew', 0)
- if not ipyData:
- return
- mailAwardDay = 0 # 昨日非定制的,且有配置0常规的,则补发0的
-
- prizeInfo = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OnlinePrizeNote)
- onlineTime = GetOnlineTime(curPlayer)
- needTimeList = ipyData.GetStageTime()
- awardDict = ipyData.GetReward()
- itemList = []
- for i, needTime in enumerate(needTimeList):
- if onlineTime >= needTime * 60 and not prizeInfo & pow(2, i):
- for itemID, itemCnt in awardDict[str(i + 1)]:
- itemList.append([itemID, itemCnt, 1])
- prizeInfo|=pow(2, i)
-
- if not itemList:
- return
- GameWorld.DebugLog('补发昨日在线奖励: mailAwardDay=%s,onlineTime=%s' % (mailAwardDay, onlineTime))
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnlinePrizeNote, prizeInfo)
- PlayerControl.SendMailByKey('OnLineAward1', [curPlayer.GetID()], itemList)
- return
-
-
-
--
Gitblit v1.8.0