hwj35
2025-06-23 aa0f971ae9a59f0fd98d57b6c1d1663a270be92c
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
n¼gc@sèddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
d„Z d„Z d„Z d„Zd„Zd„Zd„Zd    „Zdd
„Zed „ZdS( iÿÿÿÿNcCs4|jtj|ƒ}|d}|d}||fS(Nid(tNomalDictGetPropertytChConfigtDef_PDict_ShentongLVInfo(t    curPlayert
shentongIDtlvInfotclassLVtlv((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pytGetShentongLVInfos
 
cCs&tj|tj||d|ƒdS(Nid(t PlayerControltNomalDictSetPropertyRR(RRRR((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pytSetShentongLVInfo#s"cCst|ƒt|tƒdS(N(tSync_ShentongLVInfotSync_ShentongSkillInfotTrue(R((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pyt OnPlayerLogin's
 c
Cs¢tjƒj|ƒ}|jƒ}|j}tjd|ƒ}|sFdS|jƒ}|rtj    ||ƒd rtj
d||f|ƒdSt ||ƒ\}}    |}
|    d} tj d||
| ƒ} | sû|d}
d} tj d||
| ƒ} n| s"tj d|||    f|ƒdS| jƒ} | s8dS|jƒjtjƒ}tj| |ƒ\}}|r›tj
d|||    |
| | |f|ƒdStj|||dƒt|||
| ƒt||gƒ| jƒ}tjd|||    |
| |f|ƒ|r”tjƒj|ƒ}|r3|jƒnd}|rK|jƒnd}ttjddƒƒ}g}xÁt |ƒD]³}|j!t"j#|ƒ}|s±|j$dƒq|ntjƒj|ƒ}|sÒq|n|jƒ}|jƒ}||kr"||kr|j$|ƒq/|j$dƒq||j$|ƒq|W||krad|kra|||j%dƒ<n||kr”tj
d    ||ƒt&||ƒq”nt'|ƒdS(
NtShentongis6¹Å±¦Î´¼¤»î£¬ÎÞ·¨Éý¼¶Éñͨ! shentongID=%s,needGubaoID=%st
ShentongLVs<ûÓÐÏÂÒ»¼¶ÉñͨÊý¾Ý£¬ÎÞ·¨Éý¼¶! shentongID=%s,classLV=%s,lv=%ssgÉñͨÉý¼¶ËùÐèÎïÆ·²»×㣡 shentongID=%s,classLV(%s-%s),nextClassLV=(%s-%s),needItemList=%s,lackItemDict=%ssLÉñͨÉý¼¶³É¹¦£¡ shentongID=%s,classLV(%s-%s),nextClassLV=(%s-%s),LVSkillID=%sis%×Ô¶¯³öÕ½/Ìæ»»Éñͨ¼¼ÄÜ: skillIDList=%s((t    GameWorldtGetPlayerManagertGetPlayerByIndext GetPlayerIDt
ShentongIDt IpyGameDataPYtGetIpyGameDatatGetNeedGubaoIDt PlayerGubaotGetGubaoLVInfotDebugLogRtGetIpyGameDataNotLogtErrLogtGetLVLightNeedItemtGetItemManagertGetPackt IPY_GameWorldtrptItemt
ItemCommontGetCostItemIndexListt DelCostItemR R t GetLVSkillIDtLogt GetGameDatatGetSkillBySkillIDtGetSkillTypeIDt
GetSkillLVtlentGetFuncEvalCfgtrangeRRtDef_PDict_ShentongSkillIDtappendtindextSetShentongSkilltRefreshShentongAttr(R2t curPackDatattickRtplayerIDRtipyDatat needGubaoIDRRt nextClassLVtnextLVt    lvIpyDatat needItemListtitemPackt lackItemDictt delInfoDictt    LVSkillIDt lvSkillDatat lvSkillTypeIDt    lvSkillLVtShentongSkillCountt skillIDListtnumtskillIDt    skillDatat skillTypeIDtskillLV((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pytOnShentongLVUp3s€      
 
                 
cCs/tjƒj|ƒ}|j}t||ƒdS(N(RRRt SkillIDListR3(R2R5R6RRF((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pytOnShentongSkillSetŠs     cCs¾|s
dStjddƒ}t|ƒ}t|ƒ|kr>dSt|ƒ|krn|dg|t|ƒ7}ng}xQ|D]I}|sq{ntjƒj|ƒs·tjd|ƒdS|j|ƒq{Wt|ƒ}i}tjƒ}x÷t    |j
ƒƒD]ã}    |j |    ƒ}
|
j ƒ} | s&qùn|
j ƒ} |
jƒ} |
jƒ}t|| ƒ\}}|| ksù|| kr‰||kr‰qùntjƒj| ƒ}|sªqùn|jƒ}| ||<| |krù|j| ƒqùqùW|r
tjd||f|jƒƒdS|dkri||d}|t|ƒkritjd||t|ƒ|f|jƒƒdSn|jƒ}tj|ƒ}xyt|ƒD]k}|jtj|ƒ}|râ|j|ƒrâ|j|tƒ|j|ƒntj|tj|dƒq‘Wtj ƒj!ƒ}x›t|ƒD]}||}|r’|j"|tƒ|j#|dƒ|j|ƒ}|r’t$j%|tj&|ƒ||tƒq’ntj|tj||ƒqWt'|ƒdS(NRiis ÕÒ²»µ½¸ÃÉñͨ¼¼ÄÜÊý¾Ý! skillID=%ssH´æÔÚÎÞ·¨Ê¹ÓõÄÉñͨ¼¼ÄÜ£¬ÎÞ·¨ÉèÖÃ! setSkillIDList=%s,forbidSkillIDList=%ssa´æÔÚδ½âËøµÄÉñͨ¼¼Äܿף¬ÎÞ·¨ÉèÖÃ! setSkillIDList=%s,needCanUseSkillCnt=%s > canUseSkillCnt=%s(%s)((RR.R-RR)R*RR1tIPY_DatatxrangetGetShentongLVCounttGetShentongLVByIndexR't GetShentongIDtGetShentongClassLVt GetShentongLVRR+tremoveRRtGetSkillManagerR    R/RRR0tFindSkillBySkillIDtDeleteSkillBySkillIDRtRefreshSkillFightPowerByDelR
t GetGameWorldtGetTicktLearnSkillByIDtRefreshSkillFightPowerExt SkillCommontSetSkillRemainTimetGetReduceSkillCDPerR (RtsetSkillIDListtneedSkillCntListtShentongSkillCountMaxtforbidSkillIDListRHt setSkillCounttcanUseSkillDictt
ipyDataMgrR2R8RARtshentongClassLVt
shentongLVRRRIRJtneedCanUseSkillCntt skillManagert    playerCtlRGR6t
setSkillIDtcurSkill((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pyR3s†        $ 
          # 
(
cCs!t|ƒtj|ƒjƒdS(N(tCalcShentongAttrR    tRefreshPlayerAttrState(R((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pyR4âs
c
Csi}d}gtdƒD] }i^q}i}tjƒ}xt|jƒƒD]‰}|j|ƒ}|jƒ}    t||    ƒ\}
} |
rš| ršqPntjdi|    d6t    ƒ} | sÂqPnx| D] } | j
ƒ}| j ƒ}|
|ks |
|kr| |krPn| j ƒ}| j ƒ}x7t|ƒD])\}}||}tj|||ƒq4W| jƒr€|| jƒ7}n| jƒ}|rÉtjƒj|ƒ}|rÕ|jƒ}|jƒ}|||<qÕqÉqÉWqPW||d<tj|tj|ƒtj|tj|d|ƒdS(NiiRRtshentongSkillInfotcustomAttrDict(R/RRORPtGetShentongCounttGetShentongByIndexRSRtGetIpyGameDataByConditionRRTRUtGetLVAttrTypeListtGetLVAttrValueListt    enumerateR    tCalcAttrDict_TypetGetFightPowerExR'RR)R*R+R,tSetMFPExFightPowert ShareDefinetDef_MFPType_ShentongtSetCalcAttrListValueRtDef_CalcAttrFunc_Shentong(RtcustomAttrDictShentongt fightPowerExt_t allAttrListRrRhR2R8RRRt lvIpyDataListR<RiRjtLVAttrTypeListtLVAttrValueListtitattrIDt    attrValueRARIRJRK((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pyRpçsJ     $  
 
c Cs+|dkr`g}tjƒ}xEt|jƒƒD](}|j|ƒ}|j|jƒƒq1Wn|}g}xw|D]o}t||ƒ\}}    | r®|     r®|dkr®qsnt    j
ƒ}
||
_ ||
_ |    |
_ |j|
ƒqsW|sðdSt    jƒ} || _t| jƒ| _tj|| ƒdS(N(tNoneRROR/RtRuR1RSRtChPyNetSendPackttagMCShentongLVRtClassLVtLVttagMCShentongLVInfotShentongLVListR-tCountt NetPackCommont SendFakePack( RtshentongIDListt
syncIDListRhR2R8tshentongInfoListRRRtshentongt
clientPack((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pyR s0                     cCs¬g}ttjddƒƒ}x1t|ƒD]#}|j|jtj|ƒƒq+W|jdƒ|krq|rqdSt    j
ƒ}||_ t|j ƒ|_ t j||ƒdS(NRii(R-RR.R/R1RRR0tcountRŒttagMCShentongSkillInfoRMR’R“R”(RtisLoginRFRdRGR™((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pyR 5s!     (RR}R    RRŒR"R“RR$RR_RR RRLRNR3R4RpR‹R tFalseR (((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerShentong.pyt<module>s(                            W        R        /