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
x{[c@sbddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Zd„Z d„Z!d„Z"d„Z#d„Z$d„Z%d„Z&d„Z'e(e(d„Z)e(d„Z*dd„Z+d„Z,d„Z-d„Z.e(d„Z/de0d„Z1d„Z2d „Z3d!„Z4d"„Z5d#d$„Z6d%„Z7d&„Z8d'„Z9d(„Z:d)„Z;dS(*iÿÿÿÿNcCstjddiƒS(NtVIPLVi(t IpyGameDataPYtGetFuncEvalCfg(((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt GetVIPLvUpExp*scCstjddƒS(NRi(Rt
GetFuncCfg(((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt GetVIPDayExp-scCs%tjddiƒ}|j|dƒS(NtVIPPriceii(RRtget(tcardTypet    priceDict((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt GetVIPPrice0scCs%tjddiƒ}|j|dƒS(NRii(RRR(RttimeDict((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt
GetVIPTime4scCstjddiƒ}|S(NtVIPTitlei(RR(t    titleDict((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt GetVIPTitle8scCs&tjddƒ}|d}t|ƒS(NtVIPLimitii(RRt
GetSeconds(tmaxDaytmaxHour((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt GetVIPMaxTime<s
cCs |ddS(Ni<((thour((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRAscCstjddƒ}|S(NRi(RR(R((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytGetMailMessageDscCs%tjddiƒ}|j|dƒS(NRii(RRR(RtbuyDict((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytGetFirstBuyExpHscCsdS(N((tindext
clientPackttick((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytBuyVipLVUscCs­|jƒ}|dkrdStƒ}x|jƒD]s\}}||krNPn|jƒj|ƒ}|dkr2tj||ƒtj    d|||f|j
ƒƒq2q2WdS(Nis:CheckVIPDienstgrad playerVIPLV=%s,vipLV=%s,dienstgradID=%s( tGetVIPLvRtitemstGetDienstgradManagert GetDienstgradtNonetPlayerDienstgradtPlayerAddDienstgradt    GameWorldtDebugLogt GetPlayerID(t    curPlayert playerVIPLVtvipDienstgradDicttvipLVt dienstgradIDt curDienstgrad((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytCheckVIPDienstgrad†s            !cCs´tjƒj|ƒ}|j}tjd|ƒ}|sKtjd|ƒdS|jƒ}||krxtjd|ƒdS|jt    j
ƒ}|t d|ƒ@}|r¸tjd|ƒdS|j ƒ}    t |jƒƒ}
|
|    krtjd|
t |    ƒfƒdS|    |
} t| ƒ} tj|tj| ƒ} | | krZtj|dtjgƒdS|jƒ}i|d6}tj|tj|t    j|ƒs©tjd    |ƒdS|d
|>B}tj|t    j
|ƒtj||ƒtjd | ƒxg| D]_\}}}tj|t|ƒt|ƒ|tjtj gt!d t!d dt"i|d6gƒqõWtj#dd
iƒj$|dƒ}tj%dd|j&ƒ|| dd|gƒt'|ƒdS(NtVIPAwardsûÓÐvipµÈ¼¶Îª%sµÄÀñ°üsVIPµÈ¼¶²»×ã--VIPLV:%sis)vipµÈ¼¶Îª%sµÄÀñ°üÒѾ­¹ºÂò¹ý£¬²»ÄÜÖØ¸´¹ºÂòs Ã»ÓиÃÖ°ÒµµÄÀñ°üÐÅÏ¢-Ö°Òµ:%s--%stGeRen_chenxin_676165RsÏÉÓñ²»×ã!costGold=%sis
vipÀñ°ü-%st showSysInfoteventt
buyVIPGifttVIPPanelit
BuyVIPGift((R$tGetPlayerManagertGetPlayerByIndexRRtGetIpyGameDataR%RtNomalDictGetPropertytChConfigtDef_Player_Dict_VipAwardRecordtpowt    GetItemIDtstrtGetJobtlent
ItemCommontGetItemPackSpacet IPY_GameWorldtrptItemt PlayerControlt
NotifyCodetGetPricetPayMoneytTYPE_Price_Gold_MoneytDef_Cost_BuyVIPItemtNomalDictSetPropertyt
EventShelltEventResponse_BuyVIPItemt ItemControlertGivePlayerItemtintt rptAnyWheretTruetFalseRRt WorldNotifytGetNametSycn_VIPAwardRecord(RRRR'R*tawardMsgtcurVipLVtrecordthasBuyt tatalItemDictt    playerJobtitemListt    needSpacet    packSpacet    itemPricetinfoDicttitemidtcnttisBindtopenuiid((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt
BuyVIPItemœsT        
    !6!-
cCsPtƒ}tj|ddf}|d}tjd|||jƒg|ƒdS(Niti(Rt ShareDefinetDef_MailFormatRDtSendMailR&(R'tmailItemInfoListt MailMessagetcontenttgetDays((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt__AwardToPlayerByMailÍs    
cCs/t|ƒt|ƒt|tƒt|ƒdS(N(t Sycn_VIPMsgRUt Sycn_VIPTimeRQtSyncVIPKillNPCLVInfo(R'R((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt    DoOnLoginÖs
 
 
 
cCsdS(N((R'((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytVipOnDayàscCs.|jdƒ}|ddd}tj|ƒS(Ns is00:00:00(tsplitR$tChangeTimeStrToNum(tstrTickttickListt
newStrTick((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt GetZeroTimeöscCsR|dkrdS|jtjƒ|}|jƒ}|d}tƒ}tj|tj|ƒ||krŠtjd|dƒt    |ƒdSx`||krì|||krì|j
|ƒt ||ƒt j |tjd|gƒ|d7}qWtjd|jƒ|fƒt    |ƒ|s't|ƒntj|di|jƒd6|d6ƒtS(NiisvipÒѾ­Âú¼¶--vipLV:%ssVIPµÈ¼¶--%s,¾­Ñé--%st    addVIPExptViplvtVipExp(R8R9tDef_Player_Dict_VipExpRRRDRJR$R%RotSetVIPLvt OnChangeVIPLvt PlayerSuccesstDoAddSuccessProgressRgtSuccType_VIPLVRptDataRecordPackt DR_VIPChangeRQ(R'texptvipExptpreVIPLVR*t
vipExpDict((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt    AddVIPExpýs,  
     
 
 'cCsytj||ƒt|ƒt|ƒt|ƒtj|ƒtjddiƒj    |dƒ}|rut
j ||ƒndS(NtVIPRedPackAwardii( RKtEventResponse_OnVipLvUpR-t__DelVIPExperienceItemtRefreshVIPAttrt EventReporttWriteEvent_VIPRRRtPlayerFamilyRedPackettCreatRedPacketByID(R'R*t redPacketID((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRs
 
 
 !cCsItjƒ}|jtjƒ|_tjd|jƒtj    ||ƒdS(Ns ÁìÈ¡¼Ç¼!--%s(
tChPyNetSendPackttagMCVIPAwardMsgR8R9R:tAwardMsgR$R%t NetPackCommont SendFakePack(R'tpack((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRU,s cCsDtjƒ}|jtjƒ|_|jƒ|_tj    ||ƒdS(N(
R“t tagMCVIPInfoR8R9R}tExpRRR–R—(R'R˜((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRo5s cCsktjƒ}t||ƒ|_t||ƒ|_|jdksT|jdksT|rgtj||ƒndS(Ni(R“ttagMCNotifyVipTimet GetCurVIPTimetTimetGetVIPExperienceTimetExperienceTimeR–R—(R'tislogintisForceR˜((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRp<s
 $cCsdS(Ni((R'R ((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRœDst
buyVIPTimecCstS(N(RQ(R'taddTimetaddType((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt
AddVIPTime`scCs±xªtjtjgD]–}|jƒj|ƒ}xxtd|jƒƒD]a}|j|ƒ}|seqDn|jƒt    j
kr€qDn|jƒ}t j |||t dƒqDWqWdS(NitDelVIPExperienceItem(RBRCt rptWarehousetGetItemManagertGetPacktrangetGetCounttGetAtt GetItemTypeIDR9tDef_ItemID_VIPExperienceR@tDelItemRQ(R't    packIndextcurPacktitcurItemt    itemCount((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRŒus !cCs…|jƒr tj|dƒdStj|tjtjƒj    ƒt
ƒtj |tj t tjƒƒƒt|ƒtj|dƒtS(Nt VipCardHint2t VipCardHint1(RRDREtPlayerMagicWeapont    GiveSkillR9tDef_SkillID_LFZR$t GetGameWorldtGetTickRRRJt&Def_Player_Dict_VipExperienceStartTimeROttimeRpRQ(R'((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytUseItemVIPExperience†s %"
cCs|jtjƒ}|sdStj|tj|ƒs8dSt|ƒstj|tjdƒ|j    ƒdkrtj
|dƒnt |dt ƒtj d|jƒƒ|jƒ}|jtjƒr|jtjƒtjƒj|ƒtj|ƒjƒt SndS(NitVipTiyan_TimeoutR¡s    VIPÌåÑ鿨½áÊø£¡(R8R9R¼R$tCheckPlayerTicktTYPE_Player_Tick_VIPExperienceRžRDRJRRERpRQR%tGetIDtGetSkillManagertFindSkillBySkillTypeIDR¹tDeleteSkillBySkillTypeIDtPassiveBuffEffMngtGetPassiveEffManagertRegistPassiveEfftRefreshAllSkill(R'Rt    startTimet skillManager((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytCheckVIPExperience”s$  cCsp|jtjƒ}|sdS|jƒr,dSttjƒƒ}tjddƒ}|||krddS|||S(Nit VIPExperiencei(R8R9R¼RROR½RR(R'tisLoginRÊtcurTimetexperienceTime((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRž²s c    Csí|tjkrdSt}|dkr.|}nEt|ƒrgt}tjddƒ}|j|dƒ}n |jƒ}tj    d|ƒ}|sdSt
|d|ƒƒ}|s¯|S|rét |ƒdkré|dkré| ré|j ƒ}n|S(NiiÿÿÿÿRÍit VipPrivilegesGetVIP%d( R9tVIPPrivilegeListRRRžRQRRRRR7tgetattrRœtGetVIP0(    R't privilegeIDt playerVipLvt isCheckTimet isExperienceR*tVIPExperiencePrivilegeDicttvipMsgtpriVlaue((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytGetPrivilegeValueÅs&       +cCstjd|ƒS(NRÑ(RR7(RÕ((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytGetVipPrivilegeDataÜscCs!t|ƒtj|ƒjƒdS(N(t CalcVIPAttrRDtRefreshPlayerAttrState(R'((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRâs
cCs¿gtdƒD] }i^q }tjddƒ}tj||ƒr¥t|ƒ}tjd|ƒ}|r¥tjt    j
|j ƒ|ƒtjt    j |j ƒ|ƒq¥ntj|tj|ƒdS(Nit VIPAddAtkEXPit
VIPKillNPC(RªRRR·tGetIsActiveMagicWeapontGetVIPKillNPCLVR7RDtCalcAttrDict_TypeRgtDef_Effect_MinAtkt GetAddMinAtktDef_Effect_MaxAtkt GetAddMaxAtktSetCalcAttrListValueR9tDef_CalcAttrFunc_VIP(R't_t allAttrListtmwIDtkillLVt killLVIpyData((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRÞçs "cCsbtjƒj|ƒ}|j}|jtj|ƒ|rDt|ƒntjd||j    ƒƒdS(Ns VIPɱ¹ÖµÈ¼¶ÐÅϢͬ²½¿ª¹Ø, isOn=%s(
R$R5R6tIsOntSetDictR9t"Def_PlayerKey_SyncVIPKillNPCLVInfoRqR%R&(RRRR'tisOn((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytOnVIPKillNPCLVInfoSwitchþs     ic
Cstjddƒ}| s,tj||ƒ r0dStj|ƒ}ttjddƒƒ}||9}|skdSt|ƒ|}t    |ƒ}tj
ƒj ƒ}|}    ||krÉt ||||ƒ\}    }nt ||ƒ}|jtjƒsö||    krt|ƒndS(s: »÷ɱNPCÔö¼ÓVIPɱ¹ÖµÈ¼¶¾­Ñ飬ֻËã»÷ɱµÄ£¬¶ÓÔ±»÷ɱÎÞЧ
    RàiNi(RRR·Rât    NPCCommontGetNPCLVtevaltGetFuncCompileCfgtGetVIPKillNPCLVExpRãtIPY_DatatGetVIPKillNPCCountt__DoVIPKillNPCLVUptSetVIPKillNPCLVExpt GetDictByKeyR9RòRq(
R'tcurNPCt    killCountRítnpcLVtaddExpttotalKillLVExpt    befKillLVt    maxKillLVt    aftKillLV((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pytDoAddVIPKillLVExps$
   cCsì|}tjd|ƒ}|rÉ|jƒtj|jƒ}x‹|rÅ||krÅ||8}|d7}tj|tj|ƒ||krŠPntjd|ƒ}|r>|jƒtj|jƒ}q>q>Wn||krât    |ƒn||fS(NRái(
RR7t GetLVExpPointR9tDef_PerPointValuetGetLVExpRDRJtDef_Player_Dict_VIPKillLVR(R'RRRRRït lvUPNeedExp((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRü(s 
 
 '  cCstd|jtjƒƒS(Ni(tmaxR8R9R (R'((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRã@scCs3|jtjƒ}|jtjƒ}|tj|S(N(R8R9tDef_Player_Dict_VIPKillLVExpt!Def_Player_Dict_VIPKillLVExpPointR    (R'R…texpPoint((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRùBscCs\t|tjƒ}|tj}|tj}tj|tj|ƒtj|tj|ƒ|S(N(tminR9t Def_HugeValueR    RDRJRR(R'RtupdExpt updExpPoint((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRýGs   cCsYtjƒ}t|ƒ|_|jtjƒ|_|jtjƒ|_    t
j ||ƒdS(N( R“ttagMCVIPKillNPCLVInfoRãtKillLVR8R9RtKillLVExpPointRt    KillLVExpR–R—(R't
killLVInfo((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyRqOs  (<RDR$R9R–R“RMRBR"R·R€RgR@RƒRRõRŽRKRÆRR½RRR
R RRRRRRR-ReRnRrRsRyR‰RRURoRRRpRœR¥RŒR¾RÌRžRQRÜRÝRRÞRôRRüRãRùRýRq(((sY.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerVip.pyt<module>sr                                                             1        1            
                                                                !