hxp
2019-09-22 8a8329e10d9003867939df1e55bc93e84ebed55f
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
@@ -53,14 +53,11 @@
import FunctionNPCCommon
import PlayerGoldGift
import PlayerActivity
import PlayerTeHui
import PlayerBindJadeWheel
import PlayerAction
import FBCommon
import PlayerSuccess
import PlayerFreeGoods
import PlayerMagicWeapon
import ShopItemManage
import ChItem
import PlayerGoldInvest
import PlayerNewGuyCard
@@ -72,19 +69,28 @@
import PlayerFamilyRedPacket
import GameLogic_FamilyInvade
import GameLogic_ElderBattlefield
import GameLogic_AllFamilyBoss
import GameLogic_HorsePetBoss
import GameLogic_FamilyBoss
import GameLogic_FamilyWar
import GameLogic_Dogz
import OpenServerCampaign
import PlayerCostRebate
import PlayerActTotalRecharge
import PlayerSpringSale
import PlayerBossReborn
import PlayerWeekParty
import PlayerFeastWeekParty
import PlayerActLogin
import PlayerFlashGiftbag
import PlayerFairyCeremony
import PlayerNewFairyCeremony
import PlayerFeastRedPacket
import PlayerLuckyTreasure
import PlayerAuctionHouse
import PlayerRefineStove
import PlayerFlashSale
import PlayerWishingWell
import PlayerFairyDomain
import PlayerVip
import PlayerDiceEx
import IpyGameDataPY
@@ -519,16 +525,17 @@
        PlayerBindJadeWheel.OnDay(curPlayer)
    # 特殊时间点X点过天
    elif onEventType == ShareDefine.Def_OnEventTypeEx:
        # 资源找回
        PlayerRecover.RecoverOnDay(curPlayer)
        #触发每日任务重置脚本
        EventShell.EventResponse_OnDay(curPlayer)
        #购买次数清空
        Operate_PlayerBuyZhenQi.PlayerOnDay(curPlayer)
        # 世界boss
        BossHurtMng.OnDay(curPlayer)
        #我要太极过天
        PlayerDiceEx.OnDay(curPlayer)
        # 资源找回
        PlayerRecover.RecoverOnDay(curPlayer)
        # 世界boss
        BossHurtMng.OnDay(curPlayer)
        # 仙盟过天
        PlayerFamily.FamilyPlayerOnDay(curPlayer)
        # 重置物品每日使用次数
@@ -541,6 +548,10 @@
        FBHelpBattle.DoPlayerOnDay(curPlayer)
        #跨服竞技场
        PlayerCrossRealmPK.DoPlayerOnDay(curPlayer)
        #缥缈仙域
        PlayerFairyDomain.OnDay(curPlayer)
        #仙盟宴会
        GameLogic_FamilyParty.OnDayFamilyPartyPlayer(curPlayer)
        
    PlayerTJG.TJGOnDay(curPlayer, onEventType)
    # 以下为支持两种重置模式切换配置的
@@ -798,6 +809,8 @@
    
    #触发每小时任务重置脚本
    EventShell.EventResponse_OnHour(curPlayer)
    #缥缈仙域
    PlayerFairyDomain.OnHour(curPlayer)
    return
    
#---------------------------------------------------------------------
@@ -1221,7 +1234,7 @@
    pack = IPY_GameWorld.IPY_MBroadcastMsg()
    msg = pack.GetMsg()
    
    if not msg.startswith(ShareDefine.Def_Notify_WorldKey_GameWorldBossReborn[:-2]):
    if not msg.startswith(ShareDefine.Def_Notify_WorldKey_GameWorldBossReborn[:-3]):
        GameWorld.Log('GameServer_BroadcastMsg msg = %s'%(msg))
    #---接收世界服务器发来的消息---
@@ -1272,6 +1285,32 @@
                PyGameData.g_familyPartyInfo = eval(msgValue)
            return
        
        if key == ShareDefine.Def_Notify_WorldKey_FamilyPartyAddFamilyActivity:
            mapID, familyID, addFamilyActivity = eval(msgValue)
            if GameWorld.GetMap().GetMapID() == mapID:
                GameLogic_FamilyParty.DoAddFamilyMemberFamilyActivity(familyID, addFamilyActivity)
            return
        if key == ShareDefine.Def_Notify_WorldKey_AddFamilyAuctionItem:
            mapID, familyAuctionItemDict = eval(msgValue)
            if GameWorld.GetMap().GetMapID() == mapID:
                PlayerAuctionHouse.DoAddFamilyAuctionItem(familyAuctionItemDict)
            return
        if key == ShareDefine.Def_Notify_WorldKey_AddSystemAuctionItem:
            mapID, sysAuctionItemList = eval(msgValue)
            if GameWorld.GetMap().GetMapID() == mapID:
                PlayerAuctionHouse.DoAddSystemAuctionItem(sysAuctionItemList)
            return
        if key == ShareDefine.Def_Notify_WorldKey_FairyDomainLimit:
            isAdd, limitList = eval(msgValue)
            if isAdd:
                PyGameData.g_fairyDomainLimit += limitList
            else:
                PyGameData.g_fairyDomainLimit = limitList
            return
        if key.startswith(ShareDefine.Def_Notify_WorldKey_OperationActionInfo[:-2]): 
            keyHead = ShareDefine.Def_Notify_WorldKey_OperationActionInfo[:-2]
            actionName = key[len(keyHead):]
@@ -1295,13 +1334,34 @@
            
            elif actionName == ShareDefine.OperationActionName_FairyCeremony:
                PlayerFairyCeremony.RefreshOperationAction_FairyCeremony()
            elif actionName == ShareDefine.OperationActionName_NewFairyCeremony:
                PlayerNewFairyCeremony.RefreshOperationAction_NewFairyCeremony()
            elif actionName == ShareDefine.OperationActionName_FlashSale:
                PlayerFlashSale.RefreshflashSaleActionInfo()
                
            elif actionName == ShareDefine.OperationActionName_WishingWell:
                PlayerWishingWell.RefreshWishingWellAction()
                
            elif actionName == ShareDefine.OperationActionName_WeekParty:
                PlayerWeekParty.RefreshOperationAction_WeekParty()
            elif actionName == ShareDefine.OperationActionName_LoginAward:
                PlayerActLogin.RefreshOperationAction_LoginAward()
            elif actionName == ShareDefine.OperationActionName_FeastWeekParty:
                PlayerFeastWeekParty.RefreshOperationAction_FeastWeekParty()
            elif actionName == ShareDefine.OperationActionName_FeastRedPacket:
                PlayerFeastRedPacket.RefreshOperationAction_FeastRedPacket()
            elif actionName == ShareDefine.OperationActionName_LuckyTreasure:
                PlayerLuckyTreasure.RefreshLuckyTreasureAction()
            return
        if key == ShareDefine.Def_Notify_WorldKey_CrossZoneName:
            PyGameData.g_crossZoneName = msgValue
            return
        
        if msgValue.isdigit():
@@ -1331,22 +1391,10 @@
    #    ReloadModule.DoMapServerScriptReload(value, tick)
    #===============================================================================================
    
    #领地争夺战
    #elif key == ShareDefine.Def_Notify_WorldKey_ManorWar:
    #    GameLogic_ManorWar.OnManorWarStateChange(value, tick)
    #定时商店刷新
    elif key.startswith(ShareDefine.Def_Notify_WorldKey_TimeShopRefreshTime[:-2]):
        ShopItemManage.OnTimeShopRefresh(key, value, tick)
    # 跨服PK
    elif key == ShareDefine.Def_Notify_WorldKey_CrossPKSeasonID:
        PlayerCrossRealmPK.OnCrossRealmPKSeasonChange(value)
        
    # 仙盟宴会
    elif key == ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_FamilyParty:
        if gameWorldMgr.GetGameWorldDictByKey(key) != value:
            GameLogic_FamilyParty.OnFamilyPartyStateChange(value, tick)
    # 守卫人皇
    elif key == ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_FamilyInvade:
        if gameWorldMgr.GetGameWorldDictByKey(key) != value:
@@ -1355,6 +1403,15 @@
    elif key == ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_ElderBattlefield:
        if gameWorldMgr.GetGameWorldDictByKey(key) != value:
            GameLogic_ElderBattlefield.OnElderBattlefieldStateChange(value, tick)
    # 多仙盟BOSS
    elif key in [ShareDefine.Def_Notify_WorldKey_DailyActionState % ShareDefine.DailyActionID_FamilyBoss1]:
        if gameWorldMgr.GetGameWorldDictByKey(key) != value:
            GameLogic_AllFamilyBoss.OnAllFamilyBossStateChange(value, tick)
    # 骑宠BOSS
    elif key == ShareDefine.Def_Notify_WorldKey_DailyActionState % ShareDefine.DailyActionID_HorsePetBoss:
        if gameWorldMgr.GetGameWorldDictByKey(key) != value:
            GameLogic_HorsePetBoss.OnHorsePetBossStateChange(value, tick)
    # OnDayEx
    elif key == ShareDefine.Def_Notify_WorldKey_OnDayEx:
        if value and gameWorldMgr.GetGameWorldDictByKey(key) != value:
@@ -1387,6 +1444,7 @@
            NPCCustomRefresh.ResetActivityBossRefreshCount()
            
    #通用设置
    befValue = gameWorldMgr.GetGameWorldDictByKey(key)
    gameWorldMgr.SetGameWorldDict(key, value)
    
    #-------在设置了字典值以后处理---------------------------------
@@ -1397,17 +1455,12 @@
    # 王者仙盟
    elif key == ShareDefine.Def_Notify_WorldKey_ChampionFamilyID:
        GameLogic_FamilyWar.OnChampionFamilyIDChange()
    # 特惠活动
    elif key in ShareDefine.TeHuiTypeKeyDict.values():
        PlayerTeHui.ChangeTeHuiActionState(key)
    # 活动buff状态变更
    elif key.startswith(ShareDefine.Def_Notify_WorldKey_ActionBuffState[:-2]):
        PlayerAction.OnActionBuffStateChange(key, tick)
    #boss刷新时间参数
    elif key.startswith(ShareDefine.Def_Notify_WorldKey_BossOnlineHeroCnt[:-2]):
        GameLogic_Dogz.OnOnlineCntChange(key, tick)
    # 仙盟宴会
    elif key == ShareDefine.Def_Notify_WorldKey_DailyActionState % ShareDefine.DailyActionID_FamilyParty:
        if befValue != value:
            GameLogic_FamilyParty.OnFamilyPartyStateChange(value, tick)
#===============================================================================
#    ---修改为上述的 统一字典处理
#    if msg == ChConfig.Def_Notify_Key_PurTalk: