From 1ea73e1885835466265ce788d93556b7030ee0e8 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期日, 30 十二月 2018 18:42:00 +0800
Subject: [PATCH] 5424 【后端】【1.4】跨服竞技场开发(GM工具增加子服服务器维护,文字翻译版)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerVip.py |   27 +++++++++++++++++++++++++++
 1 files changed, 27 insertions(+), 0 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerVip.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerVip.py
index 4647897..2e764df 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerVip.py
+++ b/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
 
 #通知玩家购买礼包纪录

--
Gitblit v1.8.0