| | |
| | | import PyGameData
|
| | | import CrossRealmPK
|
| | | import AuctionHouse
|
| | | import PlayerAssist
|
| | | import PyGameDataStruct
|
| | | import CommFunc
|
| | |
|
| | |
| | | class PlayerAssistPyManager(object):
|
| | |
|
| | | def __init__(self):
|
| | | self.playerAssistDict = {} # 所有协助 {GUID:tagDBAssist, ...}
|
| | | self.allAssistDict = {} # 所有协助 {GUID:tagDBAssist, ...}
|
| | | self.familyAssistDict = {} # 仙盟协助缓存 {familyID:[tagDBAssist, ...], ...}
|
| | | |
| | | self.playerNoSaveDBAssistDict = {} # 玩家发布的不存库协助 {playerID:[tagDBAssist, ...], ...}
|
| | | self.playerAssistingDict = {} # 玩家正在协助中的协助,只能存在一条 {playerID:tagDBAssist, ...}
|
| | | return
|
| | |
|
| | | # 保存数据 存数据库和realtimebackup
|
| | |
| | | cntData = ""
|
| | | cnt = 0
|
| | |
|
| | | for dbData in self.playerAssistDict.values():
|
| | | for dbData in self.allAssistDict.values():
|
| | | if not dbData.IsSaveDB:
|
| | | continue
|
| | | cnt += 1
|
| | | savaData += dbData.getBuffer()
|
| | |
|
| | |
| | | dbData.clear()
|
| | | pos += dbData.readData(datas, pos, dataslen)
|
| | |
|
| | | self.playerAssistDict[dbData.GUID] = dbData
|
| | | PlayerAssist.OnInitAssistData(dbData, 1)
|
| | | |
| | | self.allAssistDict[dbData.GUID] = dbData
|
| | | familyID = dbData.FamilyID
|
| | | if familyID not in self.familyAssistDict:
|
| | | self.familyAssistDict[familyID] = []
|