#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#
|
##@package E:/GameSVN/U3DGame/ProjectSServer/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py
|
# @todo:
|
#
|
# @author: Alee
|
# @date 2017-8-21 ÏÂÎç02:06:00
|
# @version 1.0
|
#
|
# @note: pyÊý¾Ý±£´æuser¿â£¬ÏÈÔÚRegistPySaveDataÖÐ×¢²á£¬±£´æÊ±µ÷ÓöÔÓ¦º¯Êý£¬mongo½ÓÊÕ´¦Àí
|
#
|
#---------------------------------------------------------------------
|
|
import GameWorld
|
import PlayerSocial
|
import PlayerFamilyStore
|
import PlayerBourse
|
import GameWorldBoss
|
import PlayerSealDemon
|
import PlayerXMZZ
|
import binascii
|
import PyGameData
|
import CrossRealmPK
|
|
def GetSavePyData():
|
result = PyGameData.g_pyGameDataManager.GetSaveData()
|
GameWorld.DebugLog("GetSavePyData!! id = %s-%s"%(id(PyGameData.g_pyGameDataManager), len(result)))
|
result = binascii.b2a_hex(result)
|
#GameWorld.DebugLog("GetSavePyData!! result = %s-%s"%(result, len(result)))
|
# ×Ö½ÚÂëÔÚC++ת»¯»á·¢Éú´íÎómust be string without null bytes, not str£¬µ«ÊÇ¿ÉÒÔÕý³£±£´æ£¬´íÎó»áÔÚÏ´ε÷ÓñãÒ˽ӿڲŻᴥ·¢
|
# ÔÝʱ¸Ä³É×Ö·û´®·µ»Ø£¬ÔÝÎÞ½â¾ö·½°¸
|
return str(len(result)) + "|" + result
|
|
|
def LoadPyGameData(gameBuffer, pos):
|
PyGameData.g_pyGameDataManager = PyGameDataManager()
|
GameWorld.Log("LoadPyGameData!!id = %s %s"%(id(PyGameData.g_pyGameDataManager), len(gameBuffer)))
|
return PyGameData.g_pyGameDataManager.LoadGameData(gameBuffer, pos)
|
|
|
# ¸öÈËÉç½»Ïà¹Ø±í
|
# ºÃÓÑ±í£¬³ðÈË±í£¬×î½üÁªÏµÈË£¬ºÚÃûµ¥£¬ËÄÕÅ±í¹«ÓõÄÉç½»ÐÅÏ¢±í
|
|
class PyGameDataManager(object):
|
def __init__(self):
|
self.crossPKBillboard = CrossRealmPK.CrossPKBillboardManager()
|
self.XMZZManager = PlayerXMZZ.XMZZManager()
|
self.sealDemonManager = PlayerSealDemon.SealDemonManager()
|
self.bossAttentionManager = GameWorldBoss.BossAttentionManager()
|
self.bourseItemLastPriceManager = PlayerBourse.BourseItemLastPriceManager()
|
self.bourseRecordManager = PlayerBourse.BourseRecordManager()
|
self.familyStoreItemManager = PlayerFamilyStore.FamilyStoreItemManager()
|
self.friendManager = PlayerSocial.FriendManager()
|
self.enemyManager = PlayerSocial.EnemyManager()
|
self.contactsManager = PlayerSocial.ContactsManager()
|
self.blacklistManager = PlayerSocial.BlacklistManager()
|
self.socialInfoManager = PlayerSocial.SocialInfoManager()
|
return
|
|
def GetSaveData(self):
|
buff = ""
|
buff += self.crossPKBillboard.GetSaveData()
|
buff += self.XMZZManager.GetSaveData()
|
buff += self.sealDemonManager.GetSaveData()
|
buff += self.bossAttentionManager.GetSaveData()
|
buff += self.bourseItemLastPriceManager.GetSaveData()
|
buff += self.bourseRecordManager.GetSaveData()
|
buff += self.familyStoreItemManager.GetSaveData()
|
buff += self.friendManager.GetSaveData()
|
buff += self.enemyManager.GetSaveData()
|
buff += self.contactsManager.GetSaveData()
|
buff += self.blacklistManager.GetSaveData()
|
buff += self.socialInfoManager.GetSaveData()
|
return buff
|
|
def LoadGameData(self, gameBuffer, pos):
|
pos = self.crossPKBillboard.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.XMZZManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.sealDemonManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.bossAttentionManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.bourseItemLastPriceManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.bourseRecordManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.familyStoreItemManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.friendManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.enemyManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.contactsManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.blacklistManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
pos = self.socialInfoManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer))
|
return pos
|
|
# ¿ç·þ¾º¼¼³¡ÅÅÐаñ¹ÜÀí
|
def GetCrossPKBillboardManager():
|
return PyGameData.g_pyGameDataManager.crossPKBillboard
|
|
# ÏÉħ֮Õù¹ÜÀí
|
def GetXMZZManager():
|
return PyGameData.g_pyGameDataManager.XMZZManager
|
|
# ·âħ̳½á¹û¹ÜÀí
|
def GetSealDemonRecordManager():
|
return PyGameData.g_pyGameDataManager.sealDemonManager
|
|
# Boss¹Ø×¢¼Ç¼¹ÜÀí
|
def GetBossAttentionManager():
|
return PyGameData.g_pyGameDataManager.bossAttentionManager
|
|
# ½»Ò×ËùÎïÆ·×î½ü³É½»µ¥¼Û¹ÜÀí
|
def GetBourseItemLastPriceManager():
|
return PyGameData.g_pyGameDataManager.bourseItemLastPriceManager
|
|
# ½»Ò×Ëù¼Ç¼¹ÜÀí
|
def GetBourseRecordManager():
|
return PyGameData.g_pyGameDataManager.bourseRecordManager
|
|
# Õ½Ã˲ֿâÎïÆ·¹ÜÀí
|
def GetFamilyStoreItemManager():
|
return PyGameData.g_pyGameDataManager.familyStoreItemManager
|
|
# ºÃÓÑϵͳ
|
def GetFriendManager():
|
return PyGameData.g_pyGameDataManager.friendManager
|
|
# Éç½»ÐÅÏ¢¹ÜÀí
|
def GetPersonalSocialManager():
|
return PyGameData.g_pyGameDataManager.socialInfoManager
|
|
# ³ðÈËϵͳ
|
def GetEnemyManager():
|
return PyGameData.g_pyGameDataManager.enemyManager
|
|
# ×î½üÁªÏµÈËϵͳ
|
def GetContactsManager():
|
return PyGameData.g_pyGameDataManager.contactsManager
|
|
# ºÚÃûµ¥ÏµÍ³
|
def GetBlacklistManager():
|
return PyGameData.g_pyGameDataManager.blacklistManager
|
|
#===============================================================================
|
# PyGameData.g_pyGameDataManager = PyGameDataManager()
|
#
|
# PyGameData.g_pyGameDataManager.GetFriendManager().AddFriendBoth(3, 4)
|
# PyGameData.g_pyGameDataManager.GetFriendManager().AddFriendBoth(3, 5)
|
# PyGameData.g_pyGameDataManager.GetFriendManager().AddFriendBoth(3, 6)
|
# PyGameData.g_pyGameDataManager.GetFriendManager().AddFriendBoth(6, 4)
|
#===============================================================================
|