hzr
2018-08-09 3346f8aae7f8abbd4b27c4564cbb802e7e717cc9
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
6´Z[c@s˜ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZe    je    je    je    je    j e    j!e    j"e    j#gZ$dZ%d„Z&d„Z'd„Z(d„Z)d„Z*d„Z+d    „Z,d
„Z-d „Z.d d „Z/d„Z0d„Z1d„Z2d„Z3d„Z4d„Z5d„Z6d„Z7d„Z8d„Z9d„Z:d„Z;d„Z<d„Z=d„Z>d„Z?d„Z@d„ZAd „ZBdS(!iÿÿÿÿNicCs¦tjƒj|ƒ}|jƒdkr+dS|j|jƒ|jtjdtj    ƒ}|st
j |tj|j ƒtj    ƒnt ||ƒtjd|jƒdS(Ns    127.0.0.1is OnTJGState:%s(t    GameWorldtGetPlayerManagertGetPlayerByIndextGetIPtSetStatetStatetNomalDictGetPropertytChConfigtDef_PDictType_TJGNotify_LVtDef_PDictType_TJGNotifyt PlayerControltNomalDictSetPropertytGetLVt ChangeGuardtDebugLog(tindext
clientDatattickt    curPlayertnotifyLV((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt
OnTJGStateMs% c    Csî|jdƒdkrdSd}tjddƒ}|jƒjtjƒjtj    ƒ}t
j |ƒr¯t
j |ƒr¯|j ƒ}||dkr“dS|jdƒdkr¯dSng}|jƒjtjƒ}x{td|jƒƒD]d}|j|ƒ}t
j |ƒs qãn|j ƒ|kr%qãnt
j |ƒs:qãn|j|ƒqãW|se|jddƒdS|jdtƒ||kr½|j|ƒ|j|dj ƒƒkr½|jddƒdStj||dtj    |ƒ|jddƒdS(Nt AutoCGuardIDiitAutoUseGuardianitcmp(t GetDictByKeyt IpyGameDataPYtGetFuncEvalCfgtGetItemManagertGetPackt IPY_GameWorldtrptEquiptGetAtt ShareDefinetretGuardt
ItemCommontCheckItemCanUsetCheckItemCanUseByExpireTimet GetItemTypeIDtrptItemtrangetGetCounttappendtSetDicttsortt    SortGuardRtChEquiptDoPlayerEquipItem(    RRt
curGuardIDt
itemIDListt    guardItemt findItemListtcurPacktititem((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyR _s@$ 4cCs¶tjddƒ}|jƒ}|jƒ}|jtjƒsBdn|jtjƒ}|jtjƒsldn|jtjƒ}||kr—t||ƒSt|j|ƒ|j|ƒƒS(NRii”5w(RRR%t GetUserAttrR tDef_IudetCreateTimeRR(titem1titem2R0titemID1titemID2t    itemTime1t    itemTime2((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyR,—s  **  cCs_tjƒj|ƒ}|jƒdkr+dS|jttj|jƒƒtj    d|jƒdS(Ns    127.0.0.1sOnSightZoom:%s(
RRRRtSetSighttminRtDef_PlayerSight_DefaulttSightR(RRRR((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt OnSightZoom¬s cCs|jƒdkrtStS(Ni(tGetStatetTruetFalse(R((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytGetIsTJGµscCshtjƒj|ƒ}|jƒdkr+dStj|tj|jƒtj    d|j
ƒ|jfƒdS(Ns    127.0.0.1s%s---OnTJGNPC:%s( RRRRR
R RtDef_PlayerKey_TJGNPCtNPCIDRtGetName(RRRR((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytOnTJGNPCÄs  cCs¡|jtjdtjƒ}|jtjdtjƒ}|tj||}|tj}|tj}tj|tj|tjƒtj|tj|tjƒdS(Ni(RRtDef_PDictType_TJGNotify_Exp1R    tDef_PDictType_TJGNotify_Exp2tDef_PerPointValueR
R (Rtexpt notifyTime1t notifyTime2ttotalExptcurExptexpPoint((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt
NoteTJGExpØs  
 
cCs?|jtjdtjƒ}tj|tj||tjƒdS(Ni(RRtDef_PDictType_TJGNotify_TimeR    R
R (Rttimest
notifyTime((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt NoteTJGTimeçscCsž|tjkrM|jtjdtjƒ}tj|tj|dtjƒnM|tjkrš|jtj    dtjƒ}tj|tj    |dtjƒndS(Nii(
R tDef_Item_Color_PurpleRRtDef_PDictType_TJGNotify_PurpleR    R
R tDef_Item_Color_OrangetDef_PDictType_TJGNotify_Orange(Rt    itemColortcount((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt    NoteEquipìsicCsitjddƒ}||kr"dS|jtj|dtjƒ}tj|tj|||tjƒdS(NtOfflinePostItemii(RRRRtDef_PDictType_TJGNotify_ItemIDR    R
R (RtitemIDt    noteCountR0R^((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytNoteItemös  cCsz|jtjdtjƒ}tj|tj||tjƒ|jtjdtjƒ}tj|tj||tjƒdS(Ni(RRt!Def_PDictType_TJGNotify_EatPurpleR    R
R tDef_PDictType_TJGNotify_GiveCnt(RtvaluetgiveCntR^((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt NoteEatEquips cCs×t|ƒsdSt|ƒdkr&dS|jtjƒdkrU|jtj|ƒdStjddƒ}||jtjƒ}||dkr‘dSt||ƒt    ||ƒ\}}t
j |||ƒt
j |ƒdS(NitTJGiiè( RFt
GetTJGTimeRRtDef_PlayerKey_TJGStartTimeR*Rt
GetFuncCfgR t CalcPlayerTJGt PlayerGeTuit TJGEfficiencyt TJGTimeLess(RRt    calcTimest    passTimesRVt finalAddExp((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytProcessPlayerTJG    s    cCs
|jƒS(N(t GetHappyPoint(R((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyRk"scCs3t|dƒ}|j|ƒ|jtj|ƒdS(Ni(tmaxt SetHappyPointtSendGameServerRefreshStateRtCDBPlayerRefresh_HappyPoint(RttjgTime((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt
SetTJGTime#s cCs6tjddƒ}t|tt|ƒ||ƒƒdS(NRji(RRmR|R?Rk(RtaddTimetmaxTime((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt
AddTJGTime(s c&%Cs%tj|jƒƒ}|sdS|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}    |j    ƒ}
tj
|ƒ} |j ƒ} tj |ƒ} tj |ƒ}tj|ƒ}tj|ƒ}|jƒ}|jƒ}|jƒ}tj|ƒ}tj|ƒ}|jƒ}|jƒ}|jƒ}|jƒ|jƒtj}tj|ƒ}d}d}x)tdƒD]}dtƒd|d<quW|j ƒj!ƒ}|ri|j"ƒj#dƒ}|r÷|j$ƒ}t%|j&dƒj'dƒdƒ}nt(j)ddƒ} t*j+|ƒ\}!}"xHtt,| ƒƒD]1}| ||!krMdndtƒd|d<q1Wnx)tdƒD]}dtƒd    |d<qvWt(j)dd
ƒ}#|#j-|j.ƒgƒ}$xNtt,|$ƒƒD]:}|$|t/j0|ƒkr÷dndtƒd    |d<qÒWt1j2d |j3ƒ|jƒ||j4ƒ||||||    |
| | | |||||||||||||t5d d j6gtddƒD]}d    |^q˜ƒdƒt5d d j6gtddƒD]}d|^qÒƒdƒfƒt5t(j7ddƒƒ}%t1j2d|%ƒ|%S(Niii'i
s
PetSkill%sit½Rjisskill%sis‘CalcTJGExp--%s-%s-%s-%s-reExp:%s, attackEff:%s, aMinAtk:%s, aMaxAtk:%s, aSuperHitRate:%s, aSuperHit:%s, 
    aIceAtk:%s, aDamagePer:%s, aSkillAtkRate:%s, petMinAtk:%s, petMaxAtk:%s, petDamPer:%s, atkSpeed:%s,
    aIgnoreDefRate:%s, aLuckyHit:%s, aLuckyHitRate:%s, aBleedDamage:%s, aFinalHurt:%s, npcExp:%s, npcMaxHP:%s, npcCommendFightPower:%s,
    petSkillLV:%s, petSkillPer:%s, skill:%s, petSkill:%ss[s, i s]s ×îÖÕ¾­Ñé:%s(8R
tGetPlayerLVIpyDataR tGetReExpt GetAttackEfft    GetMinAtkt    GetMaxAtktGetSuperHitRatet GetSuperHitt    GetIceAtkt GetDamagePertGetSkillAtkRatet GetPetMinAtkt GetPetMaxAtkt GetPetDamPert GetAtkSpeedtGetIgnoreDefRatetGetLuckyHitValtGetLuckyHitRatetGetBleedDamaget GetFinalHurtt GetFightPowertGetReFightPowertGetExptGetHPtGetHPExR RMt    NPCCommontGetCommendFightPowerR'tlocalst    GetPetMgrt GetFightPettGetSkillManagertFindSkillBySkillTypeIDt
GetSkillLVRwt    GetEffecttGetEffectValueRRt    PlayerPettGetPetLearnSkilltlentgettGetJobtPassiveBuffEffMngtFindUsePassiveSkillsRRtGetIDtGetNPCIDtevaltjointGetFuncCompileCfg(&RRVtnpcDatat    lvIpyDatatreExpt    attackEfftaMinAtktaMaxAtkt aSuperHitRatet    aSuperHittaIceAtkt
aDamagePert aSkillAtkRatet    petMinAtkt    petMaxAtkt    petDamPertatkSpeedtaIgnoreDefRatet    aLuckyHitt aLuckyHitRatet aBleedDamaget
aFinalHurtt aFightPowert aReFightPowertnpcExptnpcMaxHPtnpcCommendFightPowert
petSkillLVt petSkillPerR4tcurPettcurSkillt petSkillListtpetLearnSkillListtpetPassiveSkillListt    skillDicttskillsRN((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt
CalcTJGExp-sp               $28!=BcCsÝt|ƒsdSt|ƒdkr&dS|jtjƒdkrU|jtj|ƒdSt|ƒ}||jtjƒ}|jtj|ƒt|d|ƒ}t||ƒt|t    ||dƒƒt
||ƒ}||fS(Niiè(ii(ii(ii( RFRkRRRlR*R?RXR|RwtOnTJGKillNPCByTimes(RRR{RsRVRt((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyRnzs   cCs#d}|jtjƒ}|s"|Stjƒj|ƒ}|sA|St|||ƒ}tj|ƒ}|dkr“|j|t    j
ƒ}t ||ƒn|j ƒdkr©|S|d|j ƒ}|sÇ|St |||ƒtj|||ƒtj||jƒ|ƒtj|t    j||gƒ|S(s(¸ù¾ÝÍÑ»úʱ³¤¼ÆËã»÷ɱNPCÏà¹Ø½±ÀøÐÅÏ¢
    iiè(RRRGRt GetGameDatatFindNPCDataByIDRÐR
tAddExpR tDef_ViewExpType_KillNPCRTtGetMDeftOnTJGDropItemst    PlayerViptDoAddVIPKillLVExptAddZhenQiByKillNPCtGetSPt PlayerSuccesstDoAddSuccessProgresstSuccType_KillSpecificNPC(RRVRttnpcIDR®RNt playerControltkillCnt((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyRіs, c    Cs|jtjƒrdSiid}}}tj||jƒ||ƒ}|r`|\}}}nx½|jƒD]¯\}}tj|t    j
ƒs’Pnt j ƒj |ƒ}    |    s³qmn|j|dƒ}
tj|ƒ} |    jƒtjkr$|    jƒtjtjgkr$||    jƒ|7}qmq$ntj|    ƒr¶xæt|ƒD]o} tj|d|
ƒ} | sgq@n| jt    j
| dtjtigƒsœ| jƒPnt||    jƒƒq@Wqmtj|||
ƒ} | s×qmn| jt    j
| dtjtigƒs | jƒPnt |||ƒqmWt!j"|t    j#|tj$ƒt%|ƒsVt&|ƒdStj'|t    j
t(ƒ}|dkr~dSi}|j)ƒj*t    j+ƒ}xOt,D]G}|j-|ƒ}| s£|j.ƒrÑq£ntj/|ƒ||jƒ<q£Wg}|j)ƒj*t    j
ƒ}xÚt0d|j1ƒƒD]Ã}|j-|ƒ} | s"| j.ƒrPq"n| jƒtj2krkq"n| jƒtjkr†q"ntj3|| ƒrØ| jƒ|kr°q"ntj/| ƒ|| jƒkrØq"qØn|j4|ƒq"Wt5j6||ƒ\}}t7|||ƒt&|ƒdS(Niiteventi(8RRt!Def_PlayerKey_TJGPackFullAfterEatR˜tGetNPCDropInfoTJGtGetMapIDtitemsR"tCheckPackHasSpaceRR&RRÒtGetItemByTypeIDR¥t ItemControlertPlayerItemControlertGetTypetDef_EquipItemType_TJGAutoEatt GetItemColorR tDef_Item_Color_WhitetDef_Item_Color_BluetGetSilverPricet
GetIsEquiptxrangetGetOutPutItemObjt    PutInItemtItemGive_TJGDropItemREtClearR_RdR
t    GiveMoneytTYPE_Price_Silver_MoneytDef_GiveMoney_PickuptCanEatItemsOpert CheckPackFulltGetItemPackSpacet Def_EatSpaceRRRtDef_EatItem_EquipPlaceRtIsEmptytGetEquipGearScoreR'R(RYtCheckJobR)tPlayerEquipDecomposetEatItemsRi(RRßRátdropIDCountDicttdropIDBindDicttmoneytdropRetRbt    dropCountt curItemDatat
isDropBindt itemControlt_tcurItemt    packSpacet equipScorest    equipPackR4t    equipItemt eatIndexListtitemPackteatCountRh((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyR×És†    '
'
 
      cCs<tj|tjƒs8|jtjdƒtj|ƒndS(Ni(    R"RçRR&R*RRãRotFullPack(R((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyRû0scCs:tj|tjƒs&tjdƒtS|jtj    ƒd@S(Ns ³èÎ﹦ÄÜ먦Æôi(
t GameFuncCommt GetFuncCanUseR tGameFuncID_EquipDecomposeRRRERRtDef_PDict_TJGSet(R((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyRú6s cCsf|jtjƒd@stStjddƒ}|d}|s@tStj|tj    |ƒ}|sbtSt
S(NitRebornArgumentsi( RRRRERRR
t HaveMoneyExR tTYPE_Price_Gold_Paper_MoneyRD(Rt    rebornCfgt
moneyPricet costMoneyList((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytCanHealthReborn>s
cCsctjƒj|ƒ}|jr$dnd}|jr9dnd}||}tj|tj|ƒdS(Niii(    RRRtAutoEatt
AutoRebornR
R RR(RRRRtautoEatt
autoRebornttjgSet((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytOnTJGSystemSetVs 
c Cs™|jƒdkrdS|jtjdtjƒ}|dkrAdS|jtjƒ}|s]dStjƒj|ƒ}|s|dSt    |d|ƒ}|j
tj ƒ}t ||t tjƒƒ}tjd|||fƒtj||ƒtjƒ}|jƒ|jtjdtjƒ|_|jtjdtjƒ|_||_|jtjdtjƒ|_|jtjdtjƒ|_|jtjdtjƒ|_|jtj dtjƒ|_!|jtj"dtjƒ|_#g|_$t%j&ddƒ}xm|D]e}    |jtj'|    dtjƒ}
|
dkr1qúntj(ƒ} |    | _)|
| _*|j$j+| ƒqúWt,|j$ƒ|_-t.j/||ƒ|j0tjƒdS(Ns    127.0.0.1ii<s2    ÍÑ»úЧÂʰñ  minuteExp=%s,exp_rate=%s,addExp=%sR`i(1RRRRUR    RGRRÒRÓRÐRtDef_PlayerKey_TotalExpRatetinttfloattDef_MaxRateValueRtPlayerBillboardtUpdateTJGBillboardtChPyNetSendPackt tagMCTJGInfoRöRKtExp1RLtExp2tTimesRZt PurpleEquipR\t OrangeEquipRetEatPurpleEquipRftGiveCntRtBeforeLVtItemsRRRat tagMCTJGItemstItemIDtCountR)R¤tCntt NetPackCommont SendFakePacktClearNomalDict( RRVRßR®t    minuteExptexp_ratetaddExptsendPackR0RbR^titemInfo((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt NotifyTJGInfossP  
                   cCsªt|ƒsdSt|ƒrn‡tj|tj|ƒ|jdƒtj|tj    t
t j ƒƒƒtj|tj dƒtj|tj dƒtj|tjdƒdS(Nii(RFR tChPlayertPlayerRebornByTypeRtrebornType_CityRR
R tDef_PDict_TJGDeadTimeR(ttimetDef_PDict_TJGDeadExptDef_PDict_TJGDeadExp1tDef_PDict_TJGDeadPayTime(RR((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytPlayerTJGReborn§s   "c    Cs|jƒdkr¦|jtjƒ}|dkr4dStjƒ}|jƒ||_|jtjƒ|_    |jtj
ƒ|_ |jtj ƒ|_ tj||ƒdStttj|ƒt|ƒƒdƒ}|jtjƒ}|sédStjƒj|ƒ}|sdSt|||ƒ}tj|tjƒ}t||ttjƒƒ}|tj}|tj}tj |tj|ƒtj |tj
|ƒtj |tj|ƒtjƒ}|jƒ||_||_    ||_ |jtj ƒ|_ tj||ƒdS(Nii(!RCRRRLR-ttagMCTJGDeadPayRöR1RJtExpRKR/RHtDeadTimeR<R=RwR?R
tGetPlayerLeaveServerSecondRkRGRRÒRÓRÐtGetLimitExpRatetExpRateLimitType_RecoverR(R)R*RMR (    RRVRBRßR®RNtexpRateRRRS((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytTJGDeadOffline¾sD  
    '   
            cCs0|jtjƒ}|dkr"dSt|ƒdS(Ni(RRRLtResetTJGDeadInfo(RRV((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pytTJGOnDayîs
 
cCs¦tj|tjdƒtj|tjdƒtj|tjdƒtj|tjdƒtjƒ}|j    ƒd|_
d|_ d|_ d|_ tj||ƒdS(Ni(R
R RRJRKRLRHR-RNRöR1ROR/RPR<R=(RRB((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyRVös 
                cCsŠtjƒj|ƒ}t|ƒs%dSt|ƒr`tj|tj|ƒt    j
|tj |ƒn&tj|tj |ƒ|j tjƒdS(N(RRRRFR RERFRtrebornType_Healtht SkillCommontAddBuffBySkillType_NoRefurbishtDef_SkillID_TJGSuperBuffRGtKickRtdisMapCopyFull(Rt
clientPackRR((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt TJGNotifyDeads  (CRRR
RtFunctionNPCCommonR˜RétFBCommonR"R RRRIR<R-RERYR+tPlayerActivityRÜt
EventShellRØRtmathR§R¢RoR-t    retWeapont
retWeapon2tretHatt
retClothestretBeltt retTrouserstretShoestretNeckRþRýRR R,RBRFRJRTRXR_RdRiRuRkR|RRÐRnRÑR×RûRúR R&RDRMRURWRVR_(((sh.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTJG.pyt<module>s‚                                         8                                
 
                            M        3    g                    4        0