lcy
2026-01-13 f10dfd5dd05466dc0f232fcb47eba70bf6494bff
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
¬eic@sôddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
d„Z d„Z d„Z d„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „ZdS(iÿÿÿÿNcCst|ƒdS(N(tSync_MinggeInfo(t    curPlayer((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pyt OnPlayerLogins
cCsPtj|tjdƒtj|tjdƒtj|tjdƒt|ƒdS(Nii(t PlayerControltNomalDictSetPropertytChConfigtDef_PDict_MGGanwuLVtDef_PDict_MGGanwuExptDef_PDict_MGLingyingR(R((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pyt DoMinggeOpen#s
 
cCs/tjƒj|ƒ}|j}t||ƒdS(N(t    GameWorldtGetPlayerManagertGetPlayerByIndextCounttDoMinggeTuiyan(tindext
clientDatattickRttyCount((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pytOnMinggeTuiyan1s     cCs)|jƒ}|jtjƒ}d\}}tjƒ}xQt|jƒƒD]=}|j    |ƒ}|j
ƒ}||kr|}qI|}PqIW|s”gSg}    |sd}
|j ƒ} xFt | dƒD]5\} } | sÚqÂn|
| 7}
|    j |
| gƒqÂWtjd||    f|ƒn d}
|j
ƒ}|j
ƒ}||}||}|t|ƒ}|j ƒ}|j ƒ}x–t |dƒD]…\} }t|ƒ| kr®|| dnd}tt|||ƒƒ}td||ƒ}|
|7}
|r‚|    j |
| gƒq‚q‚Wtjd||    f|ƒ|    S(NiisÁéÓ¦Âú¼¶ÁË: curLingying=%s,%ss#×îÖÕÁéӦƷÖʱýͼ: curLingying=%s,%s(NN(t GetPlayerIDtNomalDictGetPropertyRRtNonet IpyGameDataPYtIPY_DatatrangetGetMGLingyingQualityCounttGetMGLingyingQualityByIndext GetLingyingtGetItemColorWeightListt    enumeratetappendR
tDebugLogtfloattlentinttroundtmax(RtplayerIDt curLingyingt
curIpyDatat nextIpyDatat
ipyDataMgrRtipyDatatlingyingtminggeRateListtratet
weightListtqualitytweighttcurIpyLingyingtnextIpyLingyingtlingyingDiffMaxtlingyingDiffNowtdiffPert curWeightListtnextWeightListt
nextWeightt    curWeightt
diffWeightt    nowWeight((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pytGetMGColorRateList7sP          
 
 
  &
c    Cs–|jƒ}t|ƒ}|s"dS|}tjddƒ}tj|||ƒ\}}}|||}    |    dkr||    8}n|dkr©tjd||    f|ƒdStjddƒ}
|dd|
d} tjƒ} d} tj    |t
j |ƒ}xDt |ƒD]6}tj |ƒ}|s)qntjtjƒ}d}| j|ƒxKt| jƒƒD]7}| j|ƒ}|jƒ|kra|jƒ}PqaqaWtjd||||f|ƒtj|dtd    |ƒ}|dkréqn| oþ|jƒ| k}tj||d
d |igd t
j gƒs4qn| d7} qW| dkrRdStj||||| d ƒ| }|jtjƒ}|jtj ƒ}|}||}tjd |||fƒtj!d|ƒ}tj"d|dƒ}xo|r[|r[||j#ƒkr[||j#ƒ8}|d7}tjd||fƒ|}tj"d|dƒ}qíWt$j%|tj|ƒt$j%|tj |ƒt&|ƒdS(Nt    MinggeCfgiis%ÍÆÑݵÀ¾ß²»×ã! useItemID=%s,lackCnt=%stItemRecordEquipiiÿÿÿÿsAÃü¸ñÍÆÑÝ: itemColor=%s,itemType=%s,randItemID=%s,colorRateList=%sRteventt MinggeTuiyant packIndexLists.¸üиÐÎò¾­Ñé: ganwuLV=%s,addGWExp=%s,updExp=%st    MGGanwuLVs    Éý¼¶: updLV=%s,updExp=%s('RR=Rt
GetFuncCfgt
ItemCommontGetPackItemBindStateIndexInfoR
R t GetGameDatatGetItemPackSpacet ShareDefinet rptMGTuiyanRtGetResultByRandomListtrandomtchoiceRtDef_MGGuayuTypetFilterItemByTypetxrangetGetFilterItemCountt GetFilterItemt GetItemColort GetItemTypeIDt ItemControlertGetOutPutItemObjtFalseRtDoLogic_PutItemInPacktDelCostItemByBindRRRtGetIpyGameDatatGetIpyGameDataNotLogtGetNextNeedExpRRR(RRR&t colorRateListtuseCountt    useItemIDtcostItemIndexListtbindCntt    unBindCnttlackCntt lastColorCnttneedRecordColorMintgameDatat    succCountt_t    itemColortitemTypet
randItemIDtititemDatatcurItemt    isForceDRtaddGWExptganwuLVtganwuExptupdLVtupdExpR+t nexpIpyData((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pyRosv          - 
!
 
cCs)tjƒj|ƒ}t||jƒdS(N(R
R R t__doDecomposeMingget    IndexList(RRRR((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pytOnMinggeDecomposeÁsc CsÈ|jƒ}tjddƒ\}}tjd|||f|ƒ| sO| rSdSd}t|ƒ}|r–tjddƒ}|dd|d}ntjd||f|ƒd}|jƒjt    j
ƒ}    x±|D]©}
|
dksÕ|
|    j ƒkrÿqÕn|    j |
ƒ} t j| ƒs7tjd|
|ƒqÕn|oL| jƒ|k} t j|| | j ƒtd    d
| ƒ|d7}qÕW|sŒdS|||gg} tj|| d d    tigd tƒdS( NtMinggeTYis1·Ö½âÃü¸ñ: itemIndexList=%s,itemID=%s,itemCount=%siR?iÿÿÿÿs&needRecordColorMin=%s,colorRateList=%ssÎïÆ·Îª¿Õ»ò²»¿ÉÓÃ: itemIndex=%stMinggeDecomposeRoR@t isNotifyAward(RRtGetFuncEvalCfgR
R R=RDtGetItemManagertGetPackRIRJtGetCounttGetAtREtCheckItemCanUseRStDelItemtTrueRUtGivePlayerItemOrMailRW(Rt itemIndexListR&titemIDt    itemCountReR]Rdt decomposeCntt mgTuiyanPackt    itemIndextcurEquipRotitemList((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pyRvÆs8   %%c
Csgtjƒj|ƒ}|jƒ}|j}|j}|j}tjd|||f|ƒtj    ddƒ}|dksƒ||kr›tjd||ƒdS|j
ƒj t j ƒ}    |dksÑ||    jƒkrÕdS|    j|ƒ}
tj|
ƒs tjd||ƒdS|
jƒ} |
jƒ} | tjkr6dStjd| ƒ} | sRdS| jƒ}|dttjƒ|d}tjd|| | ||f|ƒ|j
ƒj t jƒ}|dksÖ||jƒkrýtjd    ||| ||f|ƒdS|j|ƒ}tj|ƒ}tj||
|t jƒs:dS|rY|rYt||gƒnt|ƒdS(
Ns0Ãü¸ñ×°±¸Ìæ»»: mgNum=%s,itemIndex=%s,isAutoDec=%sR>isÃü¸ñÌ×±àºÅ²»Ö§³Ö! mgNum=%sis&    Ãü¸ñÎïÆ·Îª¿Õ»ò²»¿ÉÓÃ: itemIndex=%st MGGuayuTypesG    itemIndex=%s,itemID=%s,itemType=%s,equipPlace=%s,equipPlaceIndex=%ss`Ãü¸ñØÔÓñ¶ÔӦװ±¸Î»ÖÃË÷ÒýÒì³£: itemIndex=%s,mgNum=%s,itemType=%s,equipPlace=%s,equipPlaceIndex=%s(R
R R RtMGNumtIndextAutoDecR RRDR}R~RIRJRR€RERRTtGetTypeRRNRZt GetEquipPlaceR"t
rptMGGuayutErrLogtDoLogicSwitchItemRvtRefreshMinggeAttr(RRRRR&tmgNumRŠt    isAutoDectopenNumR‰R‹R†Rjt typeIpyDatat
equipPlacetequipPlaceIndext    equipPackt    destEquipt    canDecomp((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pyt OnMinggeEquipñsR                         
cCs´tjƒj|ƒ}|j}tjƒ}|jƒ}|s@dS|j|dƒ}|s]dS|jƒ}|j    t
j ƒ}    |    |kr¢tj d|    |fƒdSt |||    ƒ}tj d||    |fƒtjddƒ}
tj||
|ƒ\} } } || | }|dkr&||8}n|dkrMtj d|
|fƒdStj|| | | |dƒ|}|    |}tj|t
j |ƒtj d    ||fƒt|ƒdS(
Nis&ÁéÓ¦ÖµÒÑ´ï×î´óÖµ! curLingying=%s >= %ss3Ãü¸ñÆíÁé: useCount=%s,curLingying=%s,maxLingying=%sR>iis%ÆíÁéµÀ¾ß²»×ã! useItemID=%s,lackCnt=%st MinggeQilings    updLingying=%s,useCount=%s(R
R R tUseCountRRRRRRRRR tminRDRERFRYRRR(RRRRR^R*t    dataCountt lastIpyDatat maxLingyingR'R_R`RaRbRct addLingyingt updLingying((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pytOnMinggeQiling0s>           
 
cCstj|ƒjƒdS(N(t PlayerOnlinetGetOnlinePlayertRefreshRoleAttr(R((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pyR–UscCsdS(N((R((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pytCalcMinggeAttrZscCso|jtjƒ}|sdStjƒ}||_|jtjƒ|_|jtjƒ|_    t
j ||ƒdS(N( RRRtChPyNetSendPackttagSCMinggeInfotGanwuLVRtGanwuExpRtLingyingt NetPackCommont SendFakePack(RRqt
clientPack((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pyR]s     (R
RRURR®R³RªRIRERRLRR    RR=RRxRvR R©R–R­R(((skD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMingge.pyt<module>s,                           8    R        +    ?    %