1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
­c$hc@s ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl!Z!ddl"Z"ddl#Z#ddl$Z$ddl%Z%ddl&Z&ddl'Z'ddl(Z(ddl)Z)ddl*Z*ddl+Z+ddl,Z,ddl-Z-ddl.Z.ddl/Z/ddl0Z0ddl1Z1ddl2Z2ddl3Z3ddl4Z4ddl5Z5ddl6Z6ddl7Z7ddl8Z8ddl9Z9ddl:Z:ddl;Z;ddl<Z<ddl=Z=ddl>Z>ddl?Z?ddl@Z@ddlAZAddlBZBddlCZCddlDZDddlEZEddlFZFddlGZGddlHZHddlIZIddlJZJddlKZKddlLZLddlMZMddlNZNddlOZOddlPZPddlQZQddlRZRddlSZSddlTZTddlUZUddlVZVddlWZWddlXZXddlYZYddlZZZddl[Z[ddl\Z\ddl]Z]ddl^Z^ddl_Z_ddl`Z`ddlaZaddlbZbddlcZcddldZdddleZeddlfZfddlgZgddlhZhddliZiddljZjddlkZkddllZlddlmZmddlnZnddloZoddlpZpddlqZqddlrZrddlsZsddltZtd„Zud„Zvd„Zwd„Zxd„Zyd„Zzd„Z{d    „Z|d
„Z}d „Z~d „Zd „Z€d„Zd„Z‚d„Zƒd„Z„d„Z…d„Z†d„Z‡d„Zˆd„Z‰d„ZŠd„Z‹d„ZŒd„Zd„ZŽd„Zd„Zd„Z‘d„Z’d „Z“d!„Z”d"„Z•d#„Z–d$„Z—d%„Z˜d&„Z™d'„Zšd(„Z›d)„Zœd*„Zd+„Zžd,„ZŸd-„Z dS(.iÿÿÿÿNcCsdS(N((tindexttick((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_OnDayŠscCsdS(N((RR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_OnHour‹scCsdS(N((RR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_OnWeekŒscCsdS(N((RR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_OnMonthscCsdS(N((RR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_OnYearŽscCs¹tjdƒtjƒ}|jƒtjƒtj|ƒtjƒj    ƒ}|j
ƒxRt |j ƒƒD]>}|j |ƒ}tj|ƒs“qint|ƒt|ƒqiWt|ƒdS(NsMapServer -> OnDay!(t    GameWorldtLogtGetPlayerManagertProcessAllPlayerMailOnDayt GameLogInfotClearGameLogInfotFBLogictOnDayt GetGameWorldtGetDBMissionPubManagertCleartxrangetGetPlayerCounttGetPlayerByIndextIsNormalPlayert PlayerOnDayt PlayerOnDayExtDoLogic_OnDayEx(Rt playerManagertmissionPubManagertit    curPlayer((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyt DoLogic_OnDays  
 
 
 
 
cCs(tjdƒtjƒtj|ƒdS(NsMapServer -> OnDayEx!(RRt
PlayerMailtOnDayExt PlayerControlt"RemoveTimeoutLeaveServerPlayerInfo(R((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR«s 
 cCsxtjdƒtjt|ƒtjƒ}xHt|jƒƒD]4}|j|ƒ}tj    |ƒsfq<nt
|ƒq<WdS(NsMapServer -> OnHour!( RRR tOnHourttimeR    RRRRt PlayerOnHour(RRRR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytDoLogic_OnHour²s  cCstjdƒtjƒ}xRt|jƒƒD]>}|j|ƒ}tj|ƒsVq,nt|ƒt|ƒq,Wt    j
|ƒdS(NsMapServer -> OnWeek!( RRR    RRRRt PlayerOnWeektPlayerOnWeekExR tOnWeek(RRRR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytDoLogic_OnWeekÅs  
 cCsrtjdƒtjƒ}xRt|jƒƒD]>}|j|ƒ}tj|ƒsVq,nt|ƒt|ƒq,WdS(NsMapServer -> OnMonth!(    RRR    RRRRt PlayerOnMonthtPlayerOnMonthEx(RRRR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytDoLogic_OnMonthÖs  
cCsktjdƒtjƒ}xKtd|jƒƒD]4}|j|ƒ}tj|ƒsYq/nt|ƒq/WdS(NsMapServer -> OnYeari(RRR    trangeRRRt PlayerOnYear(RRRR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytDoLogic_OnYearås  cCstjƒj|ƒdS(N(RRtSetGameServerEventTime(R#((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytSetMapServerTimeFromGameServer÷scCsttjƒj|ƒ}y|jƒtj||ƒWn:|jtjƒddl    }tj
d|j ƒƒnXdS(NiÿÿÿÿsÍæ¼ÒÉÏÏßÂß¼­´íÎó
%s( RR    RtSendToBServerServerInitOKtChPlayertOnAllServerInitOKtKickt IPY_GameWorldtdisWaitForPlayerLoinErrort    tracebacktRaiseExceptiont
format_exc(RRRR8((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_InitOKs
 cCs|jƒs tj|dƒdSt|ƒ}|s6dStj|tj|ƒ|jƒ}t    j
d||ƒt |t j ƒt    j
d|ƒdS(NisPlayerOnDay! ondayValue=%ssPlayerOnDay OK!(tGetGameServerInitOKtGameServerRefresht Set_PlayerGameServerInitOK_OnDayt__Get_Can_OnDayR tNomalDictSetPropertytChConfigtDef_PDict_OnDayt GetPlayerIDRRt__DoPlayerOnDayt ShareDefinetDef_OnEventType(Rt
ondayValuetplayerID((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRs   cCs|jƒs tj|dƒdSt|ƒ}|s6dStj|tj|ƒ|jƒ}t    j
d||ƒt |t j ƒt    j
d|ƒdS(NisPlayerOnDayEx! ondayValue=%ssPlayerOnDayEx OK!(R<R=t"Set_PlayerGameServerInitOK_OnDayExt__Get_Can_OnDayExR R@RAtDef_PDict_OnDayExRCRRRDREtDef_OnEventTypeEx(RRGRH((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR s   cCs tjƒrdS|tjkr\tj|ƒ|jdƒtj|ƒt    j
|ƒt j |ƒt j|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒt j!|ƒt"j#|ƒt$j!|ƒt%j&|ƒ|j't(j)ƒ}|r„t%j*|t(j)dƒt+j,|t(j-dƒn|j't(j.ƒ}|rËt%j*|t(j.dƒt+j,|t(j/dƒn|j't(j0ƒ}|rt%j*|t(j0dƒt+j,|t(j1dƒn|j't(j2ƒ}|rrt%j*|t(j2dƒt+j,|t(j3dƒqrn|tj4krrt5j6|ƒt7j8|ƒt9j!|ƒt:j|ƒt;j|ƒt<j!|ƒt=j>|ƒt?j|ƒt@j!|ƒtAj#|ƒtBj#|ƒtCj#|ƒtDj#|ƒtEj|ƒtFjG|ƒtHjI|ƒtJj#|ƒtKj!|ƒtLj!|ƒtMjN|ƒntOjP||ƒtQj||ƒtRjS||ƒtTjU||ƒtVj|ƒtWj||ƒtXj!||ƒtYj|ƒtZj|ƒt[j||ƒdS(Ni(\Rt IsCrossServerRERFtOpenServerCampaigntOnOpenServerCampaignDaytSetDayProcessGameEventCountt    PlayerPettDoLogic_PetInfo_OnDaytPlayerGameWallowtRevertHealthGame_OnDaytPlayerOnlinePrizetResetPrizeInfoOnDayt PlayerSignDayt SignDayOnDaytPlayerLoginDayAwardtNotePlayerLoginDayCntt    PlayerViptVipOnDayt
PlayerCoinRt PlayerSuccesst    SuccOnDaytPlayerNewGuyCardtNewGuyCardOndaytPlayerGoldInvesttPlayerZhanlingtPlayerTreasuretPlayerMagicWeapontPlayerGoldGifttPlayerRefineStovetPlayerBindJadeWheeltPlayerActTurntableRt
PlayerLovet DoPlayerOnDaytPlayerXiangongR t PayCoinOnDaytNomalDictGetPropertyRAtDef_PDict_GameNoticeAwardStateR@R3tSync_RewardGetRecordInfotDef_RewardType_GameNoticetDef_PDict_ShareGameAwardStatetDef_RewardType_ShareGametDef_PDict_OpenSererDailyAwardt#Def_RewardType_OpenServerDailyAwardtDef_PDict_RechargeDayAwardtDef_RewardType_RechargeDayAwardRLt PlayerRecovert RecoverOnDayt
EventShelltEventResponse_OnDaytOperate_PlayerBuyZhenQit PlayerDiceExt BossHurtMngt PlayerFamilytChItemtResetItemUseCntTodaytPlayerFreeGoodst    NPCCommont FBHelpBattletPlayerCrossRealmPKtPlayerCrossChampionshiptPlayerCrossBattlefieldtPlayerFairyDomaintGameLogic_FamilyPartytOnDayFamilyPartyPlayert PlayerArenaRt PlayerAssisttPlayerMineAreat PlayerGuajitCrossPlayerDatatSendMergePlayerDataNowtFBCommontFBOnDaytPlayerActivitytFunctionNPCCommont ShopItemOnDaytPlayerFamilyRedPackettRedPacketOnDaytPlayerWishingWelltPlayerTongTianLingtPlayerActBossTrialt PlayerActTasktPlayerActLoginNewtPlayerActBuyCountGift(Rt onEventTypetgameNoticeAwardStatetshareGameAwardStatet
awardState((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRD2s’                                             cCs$|j|jƒƒ|jdƒdS(Ni(tSetLastWeekOnlineTimetGetWeekOnlineTimetSetWeekOnlineTime(R((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytCalcWeekOnlineTimeÌs cCsdS(N((R((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytResetPlayerWeekDataØscCs|jdƒdS(Ni(tSetFamilyActiveValue(R((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytCalcFamilyActiveValueâs cCs|jƒs tj|dƒdSt|ƒ}|s6dStj|tj|ƒ|jƒ}t    j
d||ƒt |t j ƒt    j
d|ƒdS(NisPlayerOnWeek! onWeekValue=%ssPlayerOnWeek OK!(R<R=t!Set_PlayerGameServerInitOK_OnWeekt__Get_Can_OnWeekR R@RAtDef_PDict_OnWeekRCRRt__DoPlayerOnWeekRERF(Rt onWeekValueRH((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR&ìs   cCs|jƒs tj|dƒdSt|ƒ}|s6dStj|tj|ƒ|jƒ}t    j
d||ƒt |t j ƒt    j
d|ƒdS(NisPlayerOnWeekEx! onWeekValue=%ssPlayerOnWeekEx OK!(R<R=t#Set_PlayerGameServerInitOK_OnWeekExt__Get_Can_OnWeekExR R@RAtDef_PDict_OnWeekExRCRRR¬RERL(RR­RH((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR'þs   cCstjƒrdS|tjkrˆ|jƒ}|jƒ}t|ƒtj|ƒt    |ƒt
|ƒt j|ƒt j |tjdƒnF|tjkrÎtj|ƒtj|ƒtj|ƒtj|ƒntj||ƒtj||ƒtj||ƒdS(Ni(RRMRERFtGetLastWeekOnlineTimetGetLastWeekFamilyActiveValueR¦R]R(R¥R¨R^R R@RAtDef_Player_Dict_HasVIPClubNoteRLRztEventResponse_OnWeekR‹tOnWeekExRR‡tDoPlayerOnWeekR‘tFBOnWeekR“R”tShopItemOnWeek(RRžtlastWeekOnlineTimetlastWeekFamilyValue((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR¬s(   
 
 
    cCs|jƒs tj|dƒdSt|ƒ}|s6dStj|tj|ƒ|jƒ}t    j
d||ƒt |t j ƒt    j
d|ƒdS(NisPlayerOnMonth! onMonthValue=%ssPlayerOnMonth OK!(R<R=t"Set_PlayerGameServerInitOK_OnMontht__Get_Can_OnMonthR R@RAtDef_PDict_OnMonthRCRRt__DoPlayerOnMonthRERF(Rt onMonthValueRH((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR*As   cCs|jƒs tj|dƒdSt|ƒ}|s6dStj|tj|ƒ|jƒ}t    j
d||ƒt |t j ƒt    j
d|ƒdS(Nis PlayerOnMonthEx! onMonthValue=%ssPlayerOnMonthEx OK!(R<R=t$Set_PlayerGameServerInitOK_OnMonthExt__Get_Can_OnMonthExR R@RAtDef_PDict_OnMonthExRCRRR¾RERL(RR¿RH((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR+Ss   cCsUtjƒrdS|tjkr/tj|ƒn|tjkrAntj||ƒdS(N(    RRMRERFR]tOnMonthRLR”tShopItemOnMonth(RRž((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR¾es cCsu|jƒs tj|dƒdS|jƒ}t|ƒs<dStjd|ƒtjƒ}tj    |t
j |j ƒdS(Nis PlayerOnYear!( R<R=t!Set_PlayerGameServerInitOK_OnYearRCt__Get_Can_OnYearRRtGetCurrentTimeR R@RAtDef_PDict_OnYeartyear(Rt curPlayerIDt curDateTime((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR.|s    cCsÀ|jƒs tj|dƒdS|jƒ}t|ƒs<dStjd|ƒtjƒjƒ}tj    ƒ}|j
}t j |t j|ƒ|dkr¢|jƒntj|ƒtj|ƒdS(Nis PlayerOnHour!(R<R=t!Set_PlayerGameServerInitOK_OnHourRCt__Get_Can_OnHourRRRtGetTickRÇthourR R@RAtDef_PDict_OnHourtDataServer_GetBillboardLVRztEventResponse_OnHourRˆR"(RRÊRRËtcurHour((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR$”s             cCs.tjƒ}t|jƒƒtƒtƒdS(N(R6tIPY_MOnAllMapServerInitOKR1tGetTimet!__DoLogic_OpenMapCheckRebornPointt"__DoLogic_OpenMapCheckMissionCount(RRtpack((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_OnAllMapServerInitOKÇs
 cCs tjƒjƒsdStjdƒ}tjdƒ}|\}}t|ƒ}||kr‰tjd||fƒtd||fƒ‚dSd}x0|jƒD]"}d|kr´qœn|d7}qœW||krÿtjd||fƒtd||fƒ‚dStj    d||||fƒdS(    NtMissionAcceptMapIDtMissionMaxCounts&ÈÎÎñ×ÜÊý³¬±ê, maxCnt = %s, curCnt = %siiÿÿÿÿis.È«ÇøÈ«·þÈÎÎñ×ÜÊý³¬±ê, maxCnt = %s, curCnt = %ssHÑéÖ¤ÈÎÎñÊýÍê±Ï, cnt = %s, maxCnt = %s, allMapCnt = %s, maxAllMapCnt = %s(
RRt GetDebugLevelt ReadChConfigtGetEvalChConfigtlentErrLogt BaseExceptiontvaluesR(tallMissionDicttmissionCntListttotalAcceptMissionCnttallMapAcceptMissionCntt allMissionCnttallMapMissionCnttvalue((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRרs*     c Cs]tjƒjƒsdStjƒ}|jƒ}tjƒ}|jƒ}xùtd|ƒD]è}|j|ƒ}|j    ƒ}|j
ƒ}|j ƒ}x¬t||||dƒD]}    x†t||||dƒD]i}
|j |    |
ƒrëqÍntj d||||||    |
fƒtd||||||    |
fƒ‚qÍWq«WqVWtjd||fƒdS(Niis~µØÍ¼ID = %s ÖØÉúµã×ø±ê²»ºÏ·¨, index = %s, br_PointPosX = %s, br_PointPosY = %s, br_Round = %s, checkPosX = %s, checkPosY = %s s$ÑéÖ¤ÖØÉúµãÍê±Ï, mapID = %s, cnt = %s(RRt IsTrueDebugt GetGameDatatGetBornRefreshCounttGetMaptGetMapIDR-tGetBornRefreshByIndextGetPosXtGetPosYtGetRoundt
IsValidPosRàRáR( tgameDatatbr_Countt
mapManagertmapIDRtbr_Pointt br_PointPosXt br_PointPosYtbr_Roundt    checkPosXt    checkPosY((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRÖs&       ""&1cCsž|dkr&tj|tjdƒdS|dkrbtj|tjdƒtj|tjdƒdS|dkr´tj|tjdƒtj|tjdƒtj|tjdƒdS|dkrtj|tjdƒtj|tjdƒtj|tjdƒtj|tjdƒdS|dkrštj|tjdƒtj|tjdƒtj|tjdƒtj|tjdƒtj|tjdƒdSdS(NtGMOnHouritGMOnDaytGMOnWeekt    GMOnMonthtGMOnYear(R R@RARÐRBR«R½RÈ(Rt    eventName((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyt
GMDateTimes4     cCs|jƒ}|jƒ}tjƒ}|dks<|dkrL|j|ƒnt|ƒret|ƒnt|ƒr~t|ƒnt    |ƒr—t
|ƒnt |ƒr°t |ƒnt |ƒrÉt|ƒnt|ƒrât|ƒnt|ƒrût|ƒnt|ƒrt|ƒndS(Ntt0(t GetLogoffTimetstripRtGetCurrentDataTimeStrt SetLogoffTimeRÍR$R?RRJRRªR&R¯R'R¼R*RÁR+RÆR.(RtlastLoginTimeStrt
curTimeStr((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytUpdatePlayerLoginTimeMs,                   c
Cs¦tjƒ}|j}|j}|j}|j}|jtjƒ}|jtj    ƒ}|jtj
ƒ}|jtj ƒ}    ||kp¥||kp¥||kp¥||    kS(N( RRÇRÏtdaytmonthRÉRnRARÐRBR½RÈ(
RRËt dateTime_Hourt dateTime_DaytdateTime_Montht dateTime_Yeart player_Hourt
player_Dayt player_Montht player_Year((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRÍ|s                 cCs‰tjƒ}|j}|j}|j}|jtjƒ}|jtjƒ}|jtj    ƒ}||ks||ks||kr…|SdS(Ni(
RRÇRRRÉRnRARBR½RÈ(RRËRRRRRR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR?‘s             $c Cstjƒ}|jtjƒ}|r¶|d}|dd}|d}tj|||dddƒ}||}|j}|j}    |dkrdS|dkr¶|    tj    dkr¶dSn|j
tj    krá|tj ddƒ}n|j }
|j } |j} | d| d|
S(sPÅжϿɷñÁ賿Xµã¹ýÌì
    @return: 0-²»¿É£» >0-¿ÉÒÔ, ÇÒ´ú±íµÄÊǹýÌìÐè¼Ç¼µÄÖµ
    i'idiiitdays(RRÇRnRARKtdatetimeRtsecondsREtDef_OnEventHourRÏt    timedeltaRRRÉ( RRËt lastOndayExtlastOndayEx_YeartlastOndayEx_MonthtlastOndayEx_Dayt lastDatetimetpassTimetpassDayst passSecondsRRR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRJ s( 
 
 
                     cCsHtjƒ}tjj|ƒd}|jtjƒ}||krD|SdS(Nii(RRÇRt isocalendarRnRAR«(RRËt dateTime_Weekt player_Week((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRªÐs   cCsGtjƒ}tjj|ƒ}|\}}}|jtjƒ}|ré|d}|d}||kru||krudS|dkré|tjddƒ}    tjj|    ƒ\}
} } |
|kræ| |kræ|jt    j
krãdSqæqén|dkr;|jt    j
kr;|tjddƒ} tjj| ƒ\}}}n|d|S(sPÅжϿɷñÁ賿Xµã¹ýÖÜ
    @return: 0-²»¿É£» >0-¿ÉÒÔ, ÇÒ´ú±íµÄÊǹýÖÜÐè¼Ç¼µÄÖµ
    idiiRi( RRÇRR%RnRAR°RRÏRER(RRËR%t dateTime_yeart dateTime_weekt dateTime_dayt lastOnWeekExtlastOnWeekEx_YeartlastOnWeekEx_WeektpreWeekDateTimet preWeek_yeart preWeek_weekt preWeek_daytonWeekDateTime((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR¯Ûs* 
 
 cCsbtjƒ}|j}|j}|jtjƒ}|jtjƒ}||ksZ||kr^|SdS(Ni(RRÇRRÉRnRAR½RÈ(RRËRRRR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR¼s         c
CsOtjƒ}|j}|j}|j}|jtjƒ}|rê|d}|d}||kro||krodS|dkrê|dkrdn|d}|dkr©|n|d}    |    |krç||krç|jt    j
krädSqçqên|dkrC|jt    j
krC|dkrdn|d}|dkr6|n|d}n|d|S(sPÅжϿɷñÁ賿Xµã¹ýÔÂ
    @return: 0-²»¿É£» >0-¿ÉÒÔ, ÇÒ´ú±íµÄÊǹýÔÂÐè¼Ç¼µÄÖµ
    idiii ( RRÇRRRÉRnRARÂRÏRER(
RRËR*tdateTime_monthR(t lastOnMonthExtlastOnMonthEx_YeartlastOnMonthEx_MonthtpreMonth_montht preMonth_year((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRÁs,             
 
 cCs1tjƒ}|j}|jtjƒ}||kS(N(RRÇRÉRnRARÈ(RRËRR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyRÆTs     cCs tjƒ}t|jƒƒdS(N(R6tIPY_MOnTimeSyncR1RÕ(RRRØ((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_OnTimeSyncns cCsØtjƒ}|jƒ}|jtjd ƒsBtjd|ƒn|jtj    ƒ}t
|ƒdkrã |d}|d}|tj krœt |ƒt _dS|tjkr¾t |ƒt _dS|tjkràt |ƒt _dS|tjkrt |ƒt _tj|ƒdS|tjkr1t |ƒt _dS|tjkrSt |ƒt _dS|tjkrut |ƒt _dS|tjkrµtjƒjƒt j!kr±t |ƒt _"ndS|tj#krt |ƒ\}}}    tjƒjƒ|krt$j%||    ƒndS|tj&kr.t'j(t |ƒƒdS|tj)kr}t |ƒ}
tjƒjƒ|
dkryt*j+|
dƒndS|tj,krÊt |ƒ\}} tjƒjƒ|krÆt-j.| ƒndS|tj/krt |ƒ\}} tjƒjƒ|krt-j0| ƒndS|tj1kr]t |ƒ\} }| rPt j2|7_2n    |t _2dS|tj3kr©t |ƒ}x*|j4ƒD]\}}t5j6||ƒq…WdS|jtj7d ƒr    tj7d }|t
|ƒ}t |ƒ}|j8tj9dƒ}|tj:kr`|s-tj;d||fƒdS|t j<krLit j<|<n|t j<||<n |t j<|<|tj=kr‰t5j>ƒn‰|tj?kr¨t@jA|ƒnj|tjBkrÇtCjD|ƒnK|tjEkrætFjG|ƒn,|tjHkrtIjJ|ƒn |tjKkr$tLjM|ƒnî|tjNkrCtOjP|ƒnÏ|tjQkrbtRjS|ƒn°|tjTkrtUjV|ƒn‘|tjWkr tXjY|ƒnr|tjZkr¿t[j\|ƒnS|tj]krÞt^j_|ƒn4|tj`krútajbƒn|tjckrtdje|ƒnù|tjfkr8tgjh|ƒnÚ|tjikrWtjjk|ƒn»|tjlkrstmjnƒnŸ|tjokr’tpjq|ƒn€|tjrkr±tsjt|ƒna|tjukrÍtvjwƒnE|tjxkrétyjzƒn)|tj{krt|j}|ƒn
|tj~kr$tj€ƒnî|tjkrCt‚jƒ|ƒnÏ|tj„kr_t…j†ƒn³|tj‡kr~tˆj‰|ƒn”|tjŠkrt‹jŒ|ƒnu|tjkr¼tŽj|ƒnV|tjkrÛt‘j’|ƒn7|tj“kr÷t”j•ƒn|tj–krt—j˜|ƒnü|tj™kr2tšj›ƒnà|tjœkrNtjžƒnÄ|tjŸkrjt j¡ƒn¨|tj¢kr†t£j¤ƒnŒ|tj¥kr¢t¦j§ƒnp|tj¨kr¾t©jªƒnT|tj«krÚt¬j­ƒn8|tj®kröt¯j°ƒn|tj±kr    t²j³ƒndS|jtj´d ƒr|
tj´d }|t
|ƒ}|t jµkrh    it jµ|<nt jµ|}|j¶t |ƒƒtj·ƒr˜    dS|tj¸kr´    t¹jºƒnÄ|tj»krР   t¼j½ƒn¨|tj¾krì    tdj¿ƒnŒ|tjÀkr
tIjÁƒnp|tjÂkr$
tLjÃnT|tjÄkr@
tOjŃn8|tjÆkr\
tÇjȃn|tjÉkrx
tÊj˃ndS|tjÌkr˜
|t _ÍdS|tjÎkr t |ƒt _ÏtjЃ}xKtÑ|j҃ƒD]7}|jÓ|ƒ}tjÔ|ƒsÿ
ntÕjÖ|ƒqÕ
WdS|tj×kr@ t |ƒt _ØtÙjڃdS|tjÛkrf tÜjÝt |ƒƒdS|tjÞkrˆ t |ƒt _ßdS|tjàkrª t |ƒt _ádS|jâƒrÅ tã|ƒ}q tj;d||fƒdSn3|d    kr tjä}d}ntj;d
|ƒdStjåƒ}|tjäkrA tæ||ƒn|tjçkr` tèjé|ƒnâ|tjêt jëkr¡ |jì|ƒ|krBtíjî||ƒqBn¡|tjêt jïkrâ |jì|ƒ|krBtðjñ||ƒqBn`|tjòtjógkr& |jì|ƒ|krBtôjõ||ƒqBn|tjòtjökrg |jì|ƒ|krBt÷jø||ƒqBnÛ|tjùtjúkr¨ |jì|ƒ|krBtûjü||ƒqBnš|tjýkrB|rB|jì|ƒ|krB|jþ||ƒtjЃ}xNtÑ|j҃ƒD]7}|jÓ|ƒ}tjÔ|ƒs+qntÿj|ƒqWqBn|jì|ƒ}|jþ||ƒ|jd ƒr€tj|ƒnT|tjkrœtjƒn8|tjòtjkrÔ||krÔt$j||ƒqÔndS( Niýÿÿÿs GameServer_BroadcastMsg msg = %siiiiþÿÿÿsAMultiActNumOperation can not found actNum. actionName=%s,msg = %ss*GameServer_BroadcastMsg unKnowMsg: %s = %st ReloadConfigs+GameServer_BroadcastMsg unKnowMsg, msg = %stGameWorldBossReborn_(R6tIPY_MBroadcastMsgtGetMsgt
startswithREt'Def_Notify_WorldKey_GameWorldBossRebornRRtsplittDef_Notify_SeparatorRßt*Def_Notify_WorldKey_CommMapLinePlayerCounttevalt
PyGameDatatg_commMapLinePlayerCountDictt#Def_Notify_WorldKey_BossShuntPlayertg_bossShuntPlayerInfot&Def_Notify_WorldKey_BossShuntLineStatetg_bossShuntLineStatet0Def_Notify_WorldKey_FamilyKillHorsePetRobBossCntt"g_familyKillHorsePetRobBossCntDictt FamilyRobBosst$OnFamilyKillHorsePetRobBossCntChanget*Def_Notify_WorldKey_FBEnterTimeLimiitMapIDtFBEnterTimeLimiitMapIDt Def_Notify_WorldKey_FBOpenRecordtFBOpenTimeRecordt Def_Notify_WorldKey_VSFamilyInfot VSFamilyInfot#Def_Notify_WorldKey_FamilyPartyInfoRíRîRAtDef_FBMapID_FamilyPartytg_familyPartyInfot0Def_Notify_WorldKey_FamilyPartyAddFamilyActivityR‰tDoAddFamilyMemberFamilyActivityt$Def_Notify_WorldKey_FamilyZhenfaInfotPlayerFamilyZhenfatGameServer_FamilyZhenfatDef_Notify_WorldKey_AssistBossRŒtGameServer_AssistBossMsgt(Def_Notify_WorldKey_AddFamilyAuctionItemtPlayerAuctionHousetDoAddFamilyAuctionItemt(Def_Notify_WorldKey_AddSystemAuctionItemtDoAddSystemAuctionItemt$Def_Notify_WorldKey_FairyDomainLimittg_fairyDomainLimittDef_Notify_WorldKey_CoupleInfotitemsR t SetCoupleInfot'Def_Notify_WorldKey_OperationActionInfotgett ActKey_ActNumtMultiActNumOperationActNameListRàtg_operationActionDicttOperationActionName_ExpRatetRefreshOperationAction_ExpRatetOperationActionName_CostRebatetPlayerCostRebatetRefreshCostRebateActionInfot!OperationActionName_TotalRechargetPlayerActTotalRechargetRefreshTotalRechargeActionInfot"OperationActionName_GarbageSortingtPlayerActGarbageSortingtRefreshGarbageSortingActionInfotOperationActionName_XianXiaMJtPlayerActXianXiaMJtRefreshXianXiaMJActionInfotOperationActionName_GubaotPlayerActGubaotRefreshGubaoActionInfot!OperationActionName_HorsePetTraintPlayerActHorsePetTraintRefreshHorsePetTrainActionInfotOperationActionName_GodGifttPlayerActGodGifttRefreshGodGiftActionInfot#OperationActionName_ManyDayRechargetPlayerActManyDayRecharget RefreshManyDayRechargeActionInfot"OperationActionName_SingleRechargetPlayerActSingleRechargetRefreshSingleRechargeActionInfotOperationActionName_TurntableRitRefreshTurntableActionInfotOperationActionName_SpringSaletPlayerSpringSaletRefreshSpringSaleActionInfotOperationActionName_BossReborntPlayerBossRebornt!RefreshOperationAction_BossReborntOperationActionName_BossTrialRštRefreshBossTrialActionInfot!OperationActionName_HorsePetFeasttPlayerActHorsePetFeastt$RefreshOperationAction_HorsePetFeastt OperationActionName_FlashGiftbagtPlayerFlashGiftbagtRefreshFlashGiftbagActionInfot OperationActionName_DailyGiftbagtPlayerDailyGiftbagtRefreshDailyGiftbagActionInfotOperationActionName_BuyOnetPlayerActBuyOnetRefreshBuyOneActionInfot#OperationActionName_FamilyCTGAssisttPlayerActFamilyCTGAssistt RefreshFamilyCTGAssistActionInfot!OperationActionName_FairyCeremonytPlayerFairyCeremonyt$RefreshOperationAction_FairyCeremonyt$OperationActionName_NewFairyCeremonytPlayerNewFairyCeremonyt'RefreshOperationAction_NewFairyCeremonytOperationActionName_FlashSaletPlayerFlashSaletRefreshflashSaleActionInfotOperationActionName_WishingWellR˜tRefreshWishingWellActiont OperationActionName_CollectWordstPlayerActCollectWordstRefreshActCollectWordsInfotOperationActionName_WeekPartytPlayerWeekPartyt RefreshOperationAction_WeekPartyt OperationActionName_BuyCountGiftRtRefreshBuyCountGiftActionInfotOperationActionName_ActTaskR›tRefreshActTaskActionInfotOperationActionName_YunshitPlayerActYunshitRefreshActYunshiActionInfotOperationActionName_LunhuidiantPlayerActLunhuidiantRefreshActLunhuidianActionInfotOperationActionName_LoginAwardtPlayerActLogint!RefreshOperationAction_LoginAwardtOperationActionName_ActLoginNewRœtRefreshActLoginActionInfotOperationActionName_FeastLogintPlayerFeastLogintRefreshFeastLoginActionInfotOperationActionName_FeastWishtPlayerFeastWishtRefreshFeastWishActionInfotOperationActionName_FeastTraveltPlayerFeastTraveltRefreshFeastTravelActionInfot"OperationActionName_FeastWeekPartytPlayerFeastWeekPartyt%RefreshOperationAction_FeastWeekPartyt"OperationActionName_FeastRedPackettPlayerFeastRedPackett%RefreshOperationAction_FeastRedPackett!OperationActionName_LuckyTreasuretPlayerLuckyTreasuretRefreshLuckyTreasureActiont!OperationActionName_RechargePrizetPlayerActRechargePrizetRefreshRechargePrizeActionInfotOperationActionName_GrowupBuytPlayerActGrowupBuytRefreshGrowupBuyActionInfot&OperationActionName_RechargeRebateGoldtPlayerActRechargeRebateGoldt#RefreshRechargeRebateGoldActionInfot Def_Notify_WorldKey_CrossActInfotg_crossActInfoDicttupdateRMtCrossActName_CTGBillboardtCrossActCTGBillboardtRefreshCrossActCTGBillboardInfotCrossActName_AllRechargetCrossActAllRechargetRefreshCrossActAllRechargeInfotCrossActName_BossTrialtRefreshCrossActBossTrialInfotCrossActName_XianXiaMJtRefreshCrossActXianXiaMJInfotCrossActName_GubaotRefreshCrossActGubaoInfotCrossActName_HorsePetTraint RefreshCrossActHorsePetTrainInfotCrossActName_LianqitPlayerActLianqitRefreshCrossActLianqiInfotCrossActName_FamilyGCZtPlayerActFamilyGCZtRefreshActFamilyGCZInfot!Def_Notify_WorldKey_CrossZoneNametg_crossZoneNamet#Def_Notify_WorldKey_CrossServerTimetg_crossServerTimeInfoR    RRRRR3tSync_PyServerDataTimeToClientt%Def_Notify_WorldKey_LuckyCloudBuyInfotg_luckyCloudBuyInfotPlayerLuckyCloudBuytOnLuckyCloudBuyChanget%Def_Notify_WorldKey_FuncTeamMemIDInfotPlayerFuncTeamtOnFuncTeamMemIDRefresht0Def_Notify_WorldKey_CrossBattlefieldCallTeamInfotg_crossBattlefieldCallTeamInfot2Def_Notify_WorldKey_CrossBattlefieldSysCallBuyInfot g_crossBattlefieldSysCallBuyListtisdigittintt Def_Notify_WorldKey_ReloadConfigRt__DoLogic_OtherReloadDictt#Def_Notify_WorldKey_CrossPKSeasonIDR…tOnCrossRealmPKSeasonChangetDef_Notify_WorldKey_FBFuncStatetDef_FBMapID_FamilyInvadetGetGameWorldDictByKeytGameLogic_FamilyInvadetOnFamilyInvadeStateChangetDef_FBMapID_ElderBattlefieldtGameLogic_ElderBattlefieldtOnElderBattlefieldStateChanget$Def_Notify_WorldKey_DailyActionStatetDailyActionID_FamilyBoss1tGameLogic_AllFamilyBosstOnAllFamilyBossStateChangetDailyActionID_HorsePetBosstGameLogic_HorsePetBosstOnHorsePetBossStateChanget)Def_Notify_WorldKey_CrossDailyActionStatetCrossDailyActionID_YaomoBosstPlayerCrossYaomoBosstOnYaomoBossStateChanget"Def_Notify_WorldKey_WorldAverageLvtSetGameWorldDicttPlayerWorldAverageLvtUpdatePlayerWorldAverageLvtNPCCustomRefreshtProcessAllNPCRefresht$Def_Notify_WorldKey_ChampionFamilyIDtGameLogic_FamilyWartOnChampionFamilyIDChangetDailyActionID_FamilyPartytOnFamilyPartyStateChange(RRRØtmsgtmsgListtkeytmsgValueR÷tfamilyIDtaddFamilyActivityt
assistDatatfamilyAuctionItemDicttsysAuctionItemListtisAddt    limitListtsyncCoupleInfoRHt
coupleInfotkeyHeadt
actionNametactInfotactNumt actInfoDictRRRét gameWorldMgrtbefValue((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytGameServer_BroadcastMsg‚s
 
 
                                           
                  cCsu|jtj|ƒ|jtj|ƒtjjƒtjddƒrqtj    ƒj
ƒ}t j |ƒt jƒndS(Nt ReloadQuestsi(R REt$Def_Notify_WorldKey_ReloadTexCaptchat%Def_Notify_WorldKey_ReloadJpegCaptchat IpyGameDataPYtIPYDatat IpyDataCleart
GetFuncCfgRRRÎt QuestManagerR?RztDoReloadRefresh(R<RéR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyR    s   cCstj|ƒdS(N(R tOnInit(RR((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pytOnServerVersionSetting9s (¡RÝRARRzR R6R3R R=RERSR|RWR]R R!RR[RUR#RYRƒR”RfR“RhR‘R^R‚ReR€RbR`R…R†R‡RQR~RxR‰R–RRRRR&RNRqRãRæR°RtRwRzR}R€RñRƒRôR¢RÝR†R‰R×RÚRiRšRŸRŽR‘R³RÎRËRÅRÈR›RºR½RRœRÀR™RœR¥R¨R–RÑRRýRÔR`R™RgR«R˜RˆRRdRcR[RjR}RBRMR„RFRŒR‹REt    PlayerTJGRŽRlRRRRR#RRRRRRRR%R)R,R/R1R;RRRDR¥R¦R¨R&R'R¬R*R+R¾R.R$RÙR×RÖRR RÍR?RJRªR¯R¼RÁRÆR:R>R    RI(((sqD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEventCounter.pyt<module>sB                                                                                                                                                                     
                 š         
    
            1                    3        *        .    /            0         6         7            ÿ–    "