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
Ç ƒ^c@sôddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z d„Z d„Z d„Zd„Zidd„Zd„Zd„Zd    „Zd
„Zd „ZdS( iÿÿÿÿNc
CsQtjƒj|ƒ}|j}tjd||jƒƒtj|tj    ƒs^tjdƒdS|j
ƒj t j ƒ}|jtjƒ}tj|ƒs¨tjdƒdSt|ƒsÅtjdƒdSt|||ƒ}|sádS|\}}    |stjdƒdSt|||    |ƒtj|ƒtj|ƒjƒtj|tjdƒdS(NsÓðÒí¾«Á¶:WingIndexList=%ssµÈ¼¶²»×㣬²»Äܾ«Á¶³á°òs³á°ò²»ºÏ·¨£¬»òÕßûÓдø³á°òs¸Ã³á°ò²»ÐèÒª¾«Á¶s
ûÓо«Á¶Öµi(t    GameWorldtGetPlayerManagertGetPlayerByIndext WingIndexListtDebugLogt GetPlayerIDt GameFuncCommt GetFuncCanUset ShareDefinetGameFuncID_WingtGetItemManagertGetPackt IPY_GameWorldtrptEquiptGetAttretWingt
ItemCommontCheckItemCanUsetLogt__WingCanJingLiant__ReduceMaterialtWingProgressUPtChEquiptRefreshPlayerLingQiEquipAttrt PlayerControltRefreshPlayerAttrStatet PlayerSuccesstDoAddSuccessProgresstSuccType_WingRefine(
tindext
clientDatattickt    curPlayertmaterialMessageListt    equipPacktcurWingt materialInfot
totalPointtmaterialItemDict((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pytOnWingJingLian/s4           cCsJt|jƒƒ}|dkr"tS|jƒ}|jtjƒ}||kS(N(tGetWingRefineAttrDatat GetItemTypeIDtNonetFalsetGetMaxRefineExpt GetUserAttrRtDef_IudetWingProgressValue(R#twingAttrIpyDatatmaxWingProgresst curProgress((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pyR\s   cCs—d}i}|jƒjtjƒ}d}tj|ƒ}xQ|D]I}|j|ƒ}    tj|    ƒs{tj    d|ƒq@n|    j
ƒ}
t j d|
ƒ} | dkrÂtj    d||
fƒq@n|    jƒ} | |krítj    dƒq@nd} | jƒ}|ri||kr:tjd||
|f|jƒƒq@n| |||7} |j|
dƒ|||
<n&| tj| jƒ| jƒƒ|7} tj    d||
| fƒ|    jƒtjkrCt|    |ƒ}|sótjd    ||jƒƒq@n|\}}x4|jƒD]&\}}|j|dƒ|||<q W| |7} n|| 7}tj    d
||
| ||fƒtj||    |ttjƒq@W||fS( NiisÕâ¸ö¸ñ×ÓûÓкϷ¨²ÄÁÏ,index=%st WingRefineExps/¸ÃÎïÆ·²»ÄÜ×÷ΪÓðÒí¾«Á¶µÄ²ÄÁÏ,index=%s,itemID=%ss²ÄÁϲ»×ãsQ¾«Á¶²ÄÁÏûÓÐÅäÖöÔÓ¦³á°ò´úÊý¾«Á¶Öµ£¬ÎÞ·¨¾«Á¶!index=%s,curItemID=%s,wingClassLV=%ss!    index=%s,itemID=%s,baseExp=%ss"³á°òÎïÆ·×ª»¯Îª¾«Á¶ÖµÒì³£,index=%s!sN    ¾«Á¶ÐÅÏ¢: index=%s,curItemID=%s,point=%s,totalPoint=%s,materialItemDict=%s(R
R R trptItemRtGetItemClassLVRRRRR)t IpyGameDataPYtGetIpyGameDataR*tGetCounttGetExpMaterialtErrLogRtgettrandomtrandintt GetRandExpMint GetRandExpMaxtGetTypetChConfigtDef_ItemType_retWingtGetWingItemChangeExptitemstDelItemtTruetItemDel_WingExp(R R#R!R%R&titemPackt    needCountt wingClassLVRtcurItemt    curItemIDR/t curItemCounttpointtexpDicttwingItemExpInfotchangeTagWingExptmaterialItemDictExtmaterialItemIDtcount((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pyRgsX            &  
     c    Cs+|jtjƒ}gt|jtjƒƒD]}|jtj|ƒ^q+}|s\|ifSgt|jtjƒƒD]}|jtj|ƒ^qu}t|ƒt|ƒkrÕt    j
d|j ƒ|j ƒfƒdSd}d}i}t j|ƒ}    xåt|ƒD]×\}}
tjd|
ƒ} | dkrBt    j
d|
ƒdS| jƒ} | sit    j
d|
ƒdS|    | ks|| kr¢t    j
d|
|    || fƒdS||} || |    | 7}|| || 7}| ||
<qWtd||ƒ}||}t    jd||    |||||fƒ||fS(    s–»ñÈ¡³á°òÎïÆ·×ª»¯ÎªÄ¿±ê´úÊý³á°ò¾«Á¶Öµ
    @return: None-Òì³££¬Ö®ºóµÄ¹¦Äܲ»ÄÜ×ö´¦Àí
             ×ª»¯µÄ¾«Á¶Öµ, ÌØÊ⾫Á¶²ÄÁϼ°¸öÊý{itemID:¸öÊý, ...}
    s.ÓðÒí¾«Á¶²ÄÁϼǼÒì³£!wingItemID=%s,UserData=%sNiR2s(¸ÃÎïÆ·ID·ÇÓðÒí¾«Á¶²ÄÁÏ!materialItemID=%ss0¾«Á¶²ÄÁÏûÓÐÅäÖôúÊý¶ÔÓ¦¾«Á¶Öµ!materialItemID=%ss_¾«Á¶²ÄÁÏûÓÐÅäÖôúÊý¶ÔÓ¦¾«Á¶Öµ!materialItemID=%s,curWingClassLV=%s,tagWingClassLV=%s,expDict=%ss|    ³á°òת»¯Îª¾«Á¶Öµ:curExp=%s,curWingClassLV-EXP=(%s-%s),tagWingClassLV-EXP=(%s-%s),changeTagWingExp=%s,materialItemDict=%s(R-RR.trangetGetUserAttrCounttDef_IudetWingMaterialItemIDtGetUserAttrByIndextDef_IudetWingMaterialItemCounttlenRR9R)t GetUserDataRR4t    enumerateR5R6R*R8tmaxR(RJttagWingClassLVtcurExptitmaterialItemIDListtmaterialItemCountListtcurLVMaterialExpttagLVMaterialExpR&tcurWingClassLVRRR/RNtmaterialItemCounttcurWingBaseExpRP((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pyRB›sH7
7#      
 
    c Csn|s
dS|jtjƒ}||}|jtj|ƒtjd||||fƒ|rWgt|jtjƒƒD]}|j    tj|ƒ^qu}x¾|j
ƒD]­\}}    ||kr|j |ƒ}
|j    tj |
ƒ|    } |j tj |
| ƒtjd|| fƒq£|jtj|ƒ|jtj |    ƒtjd||    fƒq£Wnt||||ƒdS(NsAÔö¼Ó³á°ò¾«Á¶Öµ: curExp=%s,addExp=%s,updExp=%s,materialItemDict=%ss;    ¸üгá°òÌØÊ⾫Á¶²ÄÁϸöÊý: materialItemID=%s,updCount=%ssD    ÐÂÔö³á°òÌØÊ⾫Á¶²ÄÁϸöÊý: materialItemID=%s,materialItemCount=%s(R-RR.t SetUserAttrRRRTRURVRWRCRRXtUpdataUserAttrByIndext AddUserAttrt UpdWingColor( R#taddExpR&R t wingProgresstupdWingProgressR_R`RRReRtupdCount((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pyRËs*
    7 c
Csý|jƒ}t|ƒ}|s"dS|jƒ}|jtjƒ}x]|D]U}|||krG||krG|}|jtj|ƒtjd||fƒqGqGW|j    ƒ}    |rù||    koÉ|knrùt
j dd|j ƒ||j ƒgƒndS(Ns0    ¸üгá°òÑÕÉ«: updWingProgress=%s,curColor=%sitWingsRefinePerfect(R)R(tGetItemColorInfoR-RtDef_IudetItemColorRgRRR,Rt WorldNotifyt GetPlayerNameRZ(
R R#RlRmRKR/t wingColorDicttcurColortcolort maxRefineExp((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pyRjès     "+cCs>tjƒj|ƒ}|sdStj|ƒ}tjd|ƒS(NtWingRefineAttr(Rt GetGameDatatGetItemByTypeIDRR4R5tGetIpyGameDataNotLog(titemIDtwingDataRI((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pyR(ÿs
cCs>|dkrdSt|ƒ}|s&dSt|jƒ|dƒS(NigY@(R(tintR,(R|tperR/((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pytGetWingProgressPerValueByIDs   cCstjdƒtS(Ns ³á°ò¾«Á¶¿ªÆô(RRRE(R ((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pyt
DoWingOpens c
Cs´t|jƒƒ}|r°|jtjƒ}|jƒ}|jƒ}||krmtt|ƒt|ƒdƒnd}x:|j    ƒD])\}}    t
j |t |    |ƒ|ƒq€WndS(Nii( R(R)R-RR.R,t GetAttrInfotroundtfloatRCRtCalcAttrDict_TypeR~(
R R#t allAttrListR/R1R0tfujiaValueDicttrateteffIDtvalue((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pytCalcWingAttrExs  1$(R RRR5R@RRRRt ItemControlerRR;R'RRRBR*RRjR(R€RR‹(((sZ.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWing.pyt<module>s*                -         4    0