xdh
2019-03-02 76c56fb57563e86e6612d8bb23ed058fc6210a15
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerVip.py
@@ -35,6 +35,8 @@
import PassiveBuffEffMng
import PlayerFamilyRedPacket
import GameFuncComm
import PlayerTeam
import ChPlayer
import time
#---------------------------------------------------------------------
@@ -214,6 +216,28 @@
#  @return None
def DoOnLogin(curPlayer, tick):
    #记录登陆时间
    # VIP礼包聊天气泡框
    if not GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_VersionFix, ChConfig.Def_VerFix_ChatBubbleBox):
        GameWorld.SetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_VersionFix, ChConfig.Def_VerFix_ChatBubbleBox, 1)
        ipyDataMgr = IpyGameDataPY.IPY_Data()
        for i in xrange(ipyDataMgr.GetChatBubbleBoxCount()):
            ipyData = ipyDataMgr.GetChatBubbleBoxByIndex(i)
            needVIPLVGift = ipyData.GetNeedVIPLVGift()
            if not needVIPLVGift:
                continue
            record = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_VipAwardRecord)
            hasBuy = record & pow(2, needVIPLVGift)
            if not hasBuy:
                continue
            boxID = ipyData.GetBoxID()
            ChPlayer.DoActivateChatBubbleBox(curPlayer, boxID)
            drDict = {"PlayerID":curPlayer.GetPlayerID(),"AccID":curPlayer.GetAccID(), "needVIPLVGift":needVIPLVGift, "BoxID":boxID}
            DataRecordPack.SendEventPack("VIPGiftActChatBubbleBox", drDict, curPlayer)
            GameWorld.Log("老号激活VIP礼包聊天气泡框: boxID=%s,needVIPLVGift=%s" % (boxID, needVIPLVGift), curPlayer.GetPlayerID())
    else:
        GameWorld.DebugLog("已经激活过老号VIP气泡框")
    Sycn_VIPMsg(curPlayer)
    Sycn_VIPAwardRecord(curPlayer)
    Sycn_VIPTime(curPlayer, True)
@@ -297,6 +321,9 @@
        PlayerFamilyRedPacket.CreatRedPacketByID(curPlayer, redPacketID)
    
    GameFuncComm.DoFuncOpenLogic(curPlayer)
    if not curPlayer.GetTeam():
        PlayerTeam.RefreshTeamVIPBuff_OnNoTeam(curPlayer, GameWorld.GetGameWorld().GetTick())
    return
#通知玩家购买礼包纪录
@@ -601,3 +628,19 @@
#===============================================================================
# // A8 06 查询充值结果 #tagCMQueryRecharge
#
# struct    tagCMQueryRecharge
# {
#    tagHead        Head;
# };
#===============================================================================
def OnQueryRecharge(index, packData, tick):
    curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
    if tick - curPlayer.GetDictByKey("QRtick") < 10000:
        return
    curPlayer.SetDict("QRtick", tick)
    curPlayer.SendDBQueryRecharge()
    return