hwj35
5 天以前 25d76560c9ed18c0cea12d6196144bebe16f2c11
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
119
120
121
HVic@sªddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZd„Zd„Zd„Zd„Zdd„Z d„Z!d„Z"d    „Z#d
„Z$d „Z%d „Z&d „Z'd„Z(e)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/e0e0d„Z1de)d„Z3d„Z4d„Z5d„Z6d„Z7d„Z8d„Z9d„Z:d„Z;d„Z<d „Z=d!„Z>d"„Z?d#„Z@d$„ZAd%„ZBdS(&iÿÿÿÿNcCsdS(N((t    curPlayer((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytDoLogic_PetInfo_OnDay3scCs_tjd|jƒƒx8tdtƒdƒD] }tj|tj|dƒq-Wt    |ƒt
S(Ns DoPetOpen...i( t    GameWorldtDebugLogt GetPlayerIDtxrangetGetPetTrainTypest PlayerControltNomalDictSetPropertytChConfigtDef_PDict_PetTrainLVtSync_PetTrainDatatTrue(Rt    trainType((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt    DoPetOpen:s
 
cCsdS(N((R((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytDoLVUPLogic_PetZscCstjd|ƒS(NtPetInfo(t IpyGameDataPYtGetIpyGameData(tpetNPCID((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt GetPetIpydata^scCsªtjƒ}|j|ƒ}|s6tjd|ƒdSt|ƒ}|s]tjd|ƒdStjtjƒ}|sydS|j    t
j |ƒ|j    t
j t
j ƒ|dkrº|jƒn|}|j    t
jtd|dƒƒ|j    t
j|jƒƒ|jƒ}|jƒ}    x’t|ƒD]„\}
} |    |
} || krFqntjƒj| ƒ} | sgqn| jƒtjkrt|| ƒqn|jt
j| ƒqW|S(Ns0FindNPCDataByID can not find npcData petNPCID=%ss/tagPetInfo.txt can not find petData petNPCID=%siÿÿÿÿii(Rt GetGameDatatFindNPCDataByIDtErrLogRt
ItemCommontCreateSingleItemR    tDef_ItemID_PetDatat SetUserAttrt ShareDefinetDef_IudetPet_NPCIDtDef_IudetPet_StatetDef_PetState_Nullt GetInitRanktDef_IudetPet_ClassLVtmaxtDef_IudetPet_QualityLVt
GetQualityt
GetSkillIDtGetSkillUnLockt    enumeratetGetSkillBySkillIDt GetFuncTypetDef_SkillFuncType_PetOwnerSkillt__GiveOwnerSkillt AddUserAttrtDef_IudetPet_Skill(RRtclasslvtgameDatat
petNpcDatat
petIpyDatat
newPetItemt    initClasst petSkillListtpetSkillUnLockListtitskillidtlimitPetClassLVt curSkilData((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytGetNewPetDataItemas>     
  cCs÷tjd|ƒtjƒj|dƒ}|dkrJtjd|ƒdStj||ƒs`dStj||ƒs‡tjd|ƒdS|j    ƒ}|j
|ƒr·tjd|ƒdS|j |ƒt j ƒj||ƒtj|ƒj|dƒdS(Ns¸øÁé³èÖ÷È˼¼ÄÜ: skillResID=%sis    not find skill(%s)s5    learn skill condition isn't enough! skillResID=%ss    have learned skill(%s)i(RRRtFindSkillByTypetNonet SkillCommont CheckSkillJobt
SkillShelltCheckLearnSkillConditiontGetSkillManagertFindSkillBySkillTypeIDtLVUpSkillBySkillTypeIDtPassiveBuffEffMngtGetPassiveEffManagertRegistPassiveEffRtRefreshSkillFightPowerEx(Rt
skillResIDt    skillDatat skillManager((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyR+Šs$   cCs#|s
dSt|ƒ}t||ƒS(N(tGetPetObjItemIndextGetPetDataItemByIndex(t curPetOwnertrolePett packItemIndex((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytGetPetDataItem s cCsX|jƒjtjƒ}|j|ƒ}tj|ƒsTtjd||j    ƒƒdS|S(Ns$PetDataItem is none! PetItemIndex=%s(
tGetItemManagertGetPackRtrptPettGetAtRtCheckItemCanUseRRR(Rt petItemIndext petDataPackt petDataItem((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyRL§s cCsv|jƒjtjƒ}xWt|jƒƒD]C}|j|ƒ}|jƒrRq+n||jtj    ƒkr+|Sq+WdS(N(
RQRRRRStrangetGetCountRTtIsEmptyt GetUserAttrR(RRRWt petDataIndextpetItem((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytGetPetDataItemByNPCID²s cCs |jƒjS(N(t
GetRolePett Friendliness(RN((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyRK½scCs ||_dS(N(Ra(t    petStructRV((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytSetPetObjItemIndex¾scCsv|jƒjtjƒ}xWt|jƒƒD]C}|j|ƒ}|jƒrRq+n||jtj    ƒkr+|Sq+WdS(Niÿÿÿÿ(
RQRRRRSRYRZRTR[R\R(RRRWR]R^((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytGetPetDataItemIndexByNPCIDÁs cCsŠtjƒj|ƒ}tjƒ}|jƒ}|jƒ}||jtj    ƒtj
tj    krcdS|j tj    |ƒt |||ƒdS(N( RtGetPlayerManagertGetPlayerByIndext IPY_GameWorldtIPY_CPetStateChangetGetPetIDtGetStatet GetTickByTypeR    tTYPE_Player_Tick_ChangePetStatetTYPE_Player_Tick_Timet SetTickByTypetDoChangePetState(tindexttickRtpackRVtstate((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytPetStateChangeßs   c Csq|dkrdS|tjkr#dSt||ƒ}|s<dS|jtjƒ}|jtjƒ}t|ƒ}|svdS|jƒ}||dkr§tj    d|ƒdS|jtj
ƒ}    tj    d||    |fƒ|    tj kròt j |ƒn|tjkrn|tj kr#t||ƒn|r9t|tƒntjƒsm|||g}
tj|tj|
ƒndS(Niis&    ÁéÊÞÇл»Íâ¹Û,½×¼¶²»×ã%s,²»¿ÉÇл»£¡s4³èÎï״̬±ä¸ü!petItemIndex=%s,curState=%s,tagState=%s(RtDef_PetStateListRLR\R!RRtGetUseNeedRankRRRtDef_PetState_Fightt
PetControltReCallFightPetRt__DoPetGoOutToFighttRefreshPetItemAddAttrR t IsCrossServertCrossPlayerDatatSendDataToCrossServertCrossData_PetState( RRVttagStatet    isRefreshR^t
curClasslvRtipyDatat needClasslvtcurStatetdataList((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyRoñs>       
 c    Csð|\}}}t||ƒ}|sqt||ƒ}|s=dStj|ƒjtj|ƒs_dSt||ƒ}n|s{dS|jtjƒ}||krœn|jtj    ƒ}|tj
krÍt j |ƒn|tj
krìt ||ƒndS(N(R_R:t ItemControlertPlayerItemControlert    PutInItemRRSR\R!RRwRxRyRz(    RR†RR‚R€R^R2tcurItemClasslvR…((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytCrossServer_DoChangePetState2s( c Cs|jtjƒ}tjƒj|ƒ}|sBtjd|ƒdS|jƒ}|j|ƒ}|dkr~tj
d|ƒdS|j ƒ}|j }|j ƒ|_t|j ƒ|_d|_d|_|jƒ}t||ƒ|j|ƒt|ƒ\}    }
tj||    ƒtj|ƒ} | jdtƒtj|tj|ƒtƒtj ||ƒs}tj!d|ƒ|j"|ƒdStj#|ƒt$j%|j&ƒ|j'ƒt(j)ƒ} tj*|| j&ƒ| j'ƒƒ|j+tj,tj-ƒt.j/|t(j0|dƒ|j1|j2ƒƒt3S(Ns.PetStateChange FindNPCDataByID, pet npcID = %ss-PetStateChange PetList_Add, Ìí¼Ó³èÎï = %sʧ°Üiit canSyncClients"²»¿É³öÕ½£¡PetList_SetFree petID=%s(4R\RRRRRtLogt    GetPetMgrt PetList_AddR<RR`tPetIDt    GetIsBindtBindTypetstrtNamet DailyTrainCnttPostGetItemPlaceIndexRct
SetRolePettGetPetLearnSkillRxtDoLogic_PlayerPetLearnSkillListt    NPCCommont
NPCControltRefreshNPCStatetFalsetSetPetHPtGameObjtGetMaxHPtCheckPetCanFightRtPetList_SetFreeRytGameMaptGetEmptyPlaceInAreatGetPosXtGetPosYR    tDef_SummonAppearDistt    SummonPetRRRwRRtDef_PDict_FightPetIndext SetSightLevelt GetSightLevelR ( RR^tnpcIDR0tpetMgrRNRbtpetIDRVtlearnSkillListtpassiveSkillListt
petControlt    resultPos((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyRzPsF                        $cCs7|jtjƒ}|sdSt||dtjƒdS(Ni(tNomalDictGetPropertyR    RªRoRRw(Rt fightPetIndex((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt AutoSummonPet˜s
c CsKi}g}tj}|jƒj|ƒ}xït|jƒƒD]Û}|j|ƒ}|jƒrdq=nx±t|jtj    ƒƒD]—}|j
tj    |ƒ}t j ƒj |ƒ}|s¹q}ntj|ƒrÛ|j|ƒq}n|jƒ}    |    |kr||    j|ƒq}|g||    <q}Wq=Wg|jƒD]}
t|
ƒ^q)} | |fS(N(RRSRQRRRYRZRTR[tGetUserAttrCountR-tGetUserAttrByIndexRRR(R=t isPassiveAttrtappendtGetSkillTypeIDtvaluesR"( RtlearnSkillDictR±t petPackIndextpetPackR6R^tskillIDR9t skillTypeIDtatlearnSkillIDList((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyR™¡s,        %cCs>tjƒj|ƒ}|j}|j}t|||tƒdS(N(RReRftPetNPCIDt    IsUseGoldt DoActivatePetR (Rpt
clientDataRqRRt    isUseGold((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt OnActivatePetÅs
        cCs{|s
dSt}tj}|jƒj|ƒ}x}t|jƒƒD]i}|j|ƒ}|jƒrnt    }qAn|j
tj ƒ}    |    |krAt j d||    |fƒdSqAW|sÈtj|dƒdSt|ƒ}
|
sÞdS|
jƒ} |
jƒ} |jƒjtjƒ} tj| | | ƒ\}}|sJt j d| | fƒdSt||ƒ}|scdStj|ƒj||ƒs‚dStj|| || ttjƒ|
jƒp°d}tjd||j ƒ|gƒ|j!ƒj"ƒ}|s&t#||ƒ}t j d||fƒt$||tj%ƒn+|rQt&|ƒ\}}t'j(||ƒnt)|t    ƒt*j+|tj,|tƒt    S(Ns1ÒѾ­ÓµÓиóèÎ i=%s,petItemNPCID=%s,petNPCID=%stPet_liubo_76326s)DoActivatePet() item(%s[%s]) isn't enoughtGetPetisEûÓгèÎï³öÕ½£¬»ñµÃгèÎĬÈϳöÕ½¸Ã³èÎpetNPCID=%s,petItemIndex=%s(-RžRRSRQRRRYRZRTR[R R\RRRRt
NotifyCodeRtGetUnLockNeedItemIDtGetUnLockNeedItemCntRgtrptItemRtGetItem_FromPack_ByIDR:R‡RˆR‰t
ReduceItemR    t ItemDel_Pett GetUnlockSyst WorldNotifytGetNameRŽt GetFightPetRdRoRwR™RxRšR{tPlayerWeekPartytAddWeekPartyActionCntt Def_WPAct_Pet(RRRÈt    isUseItemthasSpaceR¾R¿R6tpackItemt petItemNPCIDRƒt
needItemIDt needItemCnttitemPackt    hasEnoughtitemListR2tsysMarkRNRVR°R±((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyRÆÌs\          c    Cstjƒ}|jƒ}|dks0||krKtjd||fƒdS|j|dƒ}|jƒ}|jƒ}|jƒ}    t    j
}
|j ƒj |
ƒ} x¼t | jƒƒD]¨} | j| ƒ} | jƒrÚq³n| jt    jƒ}||kr³|r*| jt    jtdt||    ƒdƒƒn| jt    j|ƒtjd| ||fƒtSq³W|dkrtd}nt||    ƒ}t|||ƒ}|sŸdSt    j
}
tj|ƒj|
|ƒsÇdS|sÑtSt||ƒ}t ||t    j!ƒt"|tƒtS(Nis2¼¤»î³èÎﳬ¹ý³èÎï±íÊý¾ÝÊý: index=%s,petInfoCount=%sis1ÒѾ­ÓµÓиóèÎ i=%s,petItemNPCID=%s,petNPCID=%s(#RtIPY_DatatGetPetInfoCountRRtGetPetInfoByIndextGetIDR$t
GetMaxRankRRSRQRRRYRZRTR[R\RRR!R"tminR#RR R<R:R‡RˆR‰RdRoRwR{(RRpR.trefresht
ipyDataMgrt petInfoCountR1Rtqualityt
maxClassLVR¾R¿R6RÜRÝR2RV((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt DoPetActivate    sJ           ,          cCs…g}tj}|jƒj|ƒ}xZt|jƒƒD]F}|j|ƒ}|jƒr^q7n|jtj    ƒ}|j
|ƒq7W|S(N( RRSRQRRRYRZRTR[R\RRº(Rt    petIDListR¾R¿R6RÜRÝ((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytGetActivePetID7s     c4    Cs€tjƒj|ƒ}tj|tjƒs;tjdƒdS|jƒ}|j    }|j
}d}t ||ƒ}|sxdS|j tj ƒ}    tjƒj|    ƒ}
|
sºtjd|    ƒdS|j tjƒ} t|    ƒ} | sâdS| jƒ} | d| krtjd| |ƒdStjd|    | dƒ}|s9dS|jƒ}|sOdS|j tjƒ}|jƒjtjƒ}g}g}tjdd    ƒ}x9|jƒD]+\}}|    |kr¤t|ƒg}Pq¤q¤W|sëtjdƒ}n|sõdSd}x¤|D]œ}tj ||||ƒ\}}}}|j!|ƒ|rDPn|rd}xK|D]@}|j"|ƒ}tj#|ƒsqWn|j$ƒ}||7}qWWqqW| rË| rËtjd
|    |fƒdS|d} |rñ|j"|dƒ}ntjƒj%| ƒ}|sdS|dkr dS|j&ƒ}!|j'dƒ}"|"j(dƒ|}#||#}$| }%xnt)| | dƒD]Y}&tjd|    |&dƒ}|s›Pn|jƒ}'|$|'kr·Pn|$|'8}$|%d7}%qrWt*d||ƒ}(|r
tj+||||(t,t-j.ƒn|%d| kr#d}$n|j/tj|$ƒ|%| kr
|j/tj|%ƒt|    ƒ} | j0ƒ})| j1ƒ}*| j2ƒ}+g},xt3|)ƒD]ú\}-}.|*|-}/|%|/krÀq˜n|%d|/krÖq˜ntjƒj4|.ƒ}0|0s÷q˜n|0j5ƒt-j6krt7||.ƒq˜n|j8tj9|.ƒt:j;|0ƒsQ|,j<|.ƒn|-t=|+ƒkrm|+|-nd }1t>j?d|1|!|    |/|.gƒq˜W|, rÉ|%d| krÉt>j?dd |!|    gƒn|j@ƒjAƒ}2|,rú|2rútBjC|2|,ƒntD|t,ƒni|d 6|    d6}3|3jEtF|jGƒƒƒtHjI|d|%|3ƒtJjK|t-jL|ƒtMjN|tMjO| |ƒdS(Ns ³èÎ﹦ÄÜ먦Æôiscan not found pet npcID = %sis³èÎïÉý½× ÒÑÂú¼¶¡£¡£¡£classLV=%st PetClassCostit    PetUpItemis6PetClassUp Éý½×µÀ¾ß²»×ã! petNPCID=%s,costItemIDList=%stPetUpLvt
PetUpLvMaxRVRt
PetClassUp(PRReRft GameFuncCommt GetFuncCanUseRtGameFuncID_PetRRt PetItemIndext
UseItemCntRLR\RRRRR!RRèRRt GetUpNeedExptDef_IudetPet_ExpRQRRRgRÏtGetFuncEvalCfgtitemstintRtGetItem_FromPack_ByID_ExExtextendRTRURZtGetItemByTypeIDRÕtGetEffectByIndextGetEffectValueRR"RÑR R    RÒRR%R&tGetSkillUnLockSysR'R(R)R*R+R,R-R=R¹RºtlenRRÔRŽRÖRxRšR{tupdatetevalt GetUserDatatDataRecordPacktDR_ClassUpSystemt PlayerActTasktAddActTaskValuetActTaskType_PetUpItemtPlayerActLunhuidiantAddLunhuidianValuetAwardType_UseItem(4RpRÇRqRtplayerIDRút costItemCountt    isAutoBuyRXRR0tclassLVR1RîRƒtneedExptcurPetClassExpt curItemPackt itemIndexListtcostItemIDListtspecCostItemInfot    strItemIDt petNPCIDListtnowCnttitemIDRát    indexListtfindItemIsBindtlackCntt    itemIndextcurItemtitemCntt autoBuyItemIDt
playerNametcurEfftaddExptupdExpt
updClassLVtlvt    upNeedExptdelCntR4R5t sysMarkListR°R6R7R8R9RãtfightPett extraInfoDict((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyRöJsø               %   
 
 
"         
  "# c    Cs°d}tj}|jƒj|ƒ}x…t|jƒƒD]q}|j|ƒ}|jƒr^q7n|jtj    ƒ}|jtj
ƒd}t |ƒ}|sžq7n||7}q7W|S(Nii( RRSRQRRRYRZRTR[R\RR!R(    Rt
totalPetLVR¾R¿R6R^RÝRR1((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt GetTotalPetLVùs      cCsšd}tj}|jƒj|ƒ}xot|jƒƒD][}|j|ƒ}|jƒr^q7n|jtj    ƒ}t
|ƒ}|sˆq7n|d7}q7W|S(Nii( RRSRQRRRYRZRTR[R\RR(Rt totalPetCountR¾R¿R6R^RÝR1((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytGetTotalPetCount    s      cCsmt||ƒ}|sdS|jtjƒ}|jtjƒ}t|ƒ}|sSdS|jƒ}|d|kS(Ni(R_R\RRR!RRè(RRR^RR1Rî((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt
IsPetMaxLVs  cCszt|ƒ|r5tj|ƒjdtjdtƒntj|ƒjdtƒ|jƒjƒ}|rvtj    |ƒndS(Nt billboardFunctisForce(
tCalcPetItemAddPlayerAttrRtRefreshPlayerAttrStatetPlayerBillboardtUpdatePyPetBillboardR RŽRÖRxtRefurbishPetAttr(RtisUpdBillboardR1((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyR{%s
%c    Cs¢t|ƒ\}}x‰|D]}tjƒj|ƒ}|s@qnxWt|jƒƒD]C}|j|ƒ}|jƒtj    krƒqSnt
j |||ƒqSWqWdS(N( R™RRR(RtGetEffectCountt    GetEffectt GetEffectIDR    tDef_SkillEffs_PetR?tCalcBuffEffAttr(    RRNtallAttrListPetR°R±RÀtcurSkillt effectIndext    curEffect((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytCalcSkill_PetBattleEffect3s cCsktj|ƒ}x'|D]\}}tj|||ƒqWtj||tjƒtj    ||tj
ƒdS(N( R›tGetNPCBuffRefreshListR?tCalcCurBuffer_EffecttCalcNoLineEffecttChangeNPCAttrInNoLineEffectListR    tCalcAttr_BattleNolinetCalcLineEffecttChangeNPCAttrInLineEffectListtCalcAttr_Battle(RNREtbuffRefreshListt    buffStatet    canPileup((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytCalcBuffer_PetBattleEffectGs cCsdS(N((R((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyR:XscCsi}dd|fS(Ni((RtqualityAttrInfo((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytGetPetAtkValueÖscCstj|tjƒsdSxWtdtƒdƒD]?}|jtj|ƒdkr0t    j
|tj|dƒq0q0Wt |ƒdS(Nii( R÷RøRRùRRR´R    R
RRR (RR ((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pytOnPlayerPetLoginös!
cCsttjddƒƒS(NRói(RRRþ(((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyRsc    Cs!tjƒj|ƒ}|j}|j}|jtj|ƒ}|jtj|ƒ}tj    d||||fƒ|dks‹|t
ƒkrdS|dkr°tj    d|ƒdSt j d||ƒ}|sÏdS|j ƒ}    tj|dƒ}
|
|    krtj    d|
|    fƒdS|jƒ} | s7tj    dƒdSt jdd    ƒ} | |d
} | se| ridStj|| |ƒ\}}}|||}|dkrÅtj    d | ||||fƒdS|}|rótj|||||tjƒn|}||}tj    d || fƒ|| krT|d
7}|| 8}tj    d ||fƒntj|tj||ƒtj|tj||ƒ||kr—nt|ƒt|tƒ|dkrÓtj|tj|ƒnJ|d    krøtj|tj|ƒn%|d
krtj|tj|ƒndS(NsEÁé³èÅàÑø: trainType=%s,trainLV=%s,costItemCount=%s,curEatItemCount=%sis    ÅàÑøÎ´¼¤»î  trainType=%stPetTrainis:    ¾³½ç²»×㣬ÎÞ·¨ÅàÑø£¡  curRealmLV(%s) < needRealmLV(%s)s    ¸ÃÅàÑøÒÑÂú¼¶£¡Róiis\    ÏûºÄµÀ¾ß²»×㣬ÎÞ·¨ÅàÑø!costItemID=%s,costItemCount=%s,bindCnt=%s,unBindCnt=%s,lackCnt=%ss+    updEatItemCount=%s,needEatCountTotal=%ss*    ½ø½×: updClassLV=%s,updEatItemCount=%s(RReRft    TrainTypeRûR´R    R
tDef_PDict_PetTrainItemCountRRRRtGetNeedRealmLVRtGetTrainRealmLVRealtGetEatCntTotalRþRtGetPackItemBindStateIndexInfotDelCostItemByBindRÒRR R{R R RtActTaskType_PetTrainItem2tActTaskType_PetTrainItem3tActTaskType_PetTrainItem1(RpRÇRqRR RttrainLVtcurEatItemCountt trainIpyDatat needRealmLVt
curRealmLVtneedEatCountTotalRt
costItemIDtcostItemIndexListtbindCntt    unBindCntR#R/R,tupdEatItemCount((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt
OnPetTrainsr                      "
 
 
 
    cCsqtjƒj|ƒ}|jƒ}|j}t||ƒ}|sCdS|jtjƒ}|jtj    ƒ}|d}    t
j d||    ƒ}
|
sªtj d||f|ƒdS|
j ƒ} | sÀdS|jƒjtjƒ} tj| | ƒ\} }| rtj d||    | | f|ƒdStj|| |dƒ|jtj    |    ƒtj d|||    f|ƒt|tƒdS(Nit    PetStarUps2Áé³è²»´æÔÚ¸ÃÐǼ¶£¬ÎÞ·¨ÉýÐÇ. petNPCID=%s,curStar=%ssNÁé³èÉýÐÇËùÐèÎïÆ·²»×㣡 petNPCID=%s,nextStar=%s,needItemList=%s,lackItemDict=%ss,Áé³èÉýÐÇ. petNPCID=%s,curStar=%s,nextStar=%s(RReRfRRúRLR\RRtDef_IudetPet_StarRtGetIpyGameDataNotLogRtGetStarUpNeedItemListRQRRRgRÏRtGetCostItemIndexListt DelCostItemRR{R (RpRÇRqRRRúRXRtcurStartnextStart nextIpyDatat needItemListRàt lackItemDictt delInfoDict((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt OnPetStarUpcs6     
      cCs¥tjƒ}g|_g|_x^tdtƒdƒD]F}|jj|jtj    |ƒƒ|jj|jtj
|ƒƒq5Wt |jƒ|_ t j||ƒdS(Ni(tChPyNetSendPackttagMCPetTrainInfot TrainLVListtTrainItemCountListRRRºR´R    R
R[Rt
TrainTypest NetPackCommont SendFakePack(Rt
clientPackR ((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyR ‚s          $(CR    R›RRgR R<R?R‡RR÷RR=RxRRR¤R×RLRDR}ROR}R‚RR R trandomtmathRRRRR:R+RPRLR_RKRcRdRtR RoR‹RzR¶R™RÉRžRÆR<RïRñRöR4R6R7R{RIRUR:RWRXRRoR|R (((shD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerPet.pyt<module>s~                                              )                                   A        H            $    =.        ¯                             ~                   U