tlk
23 小时以前 9464dcd22006b8a5e4de99d758f1d180e4b22aef
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
÷àñic@s ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    d„Z
d„Z d„Z d„Z d„Zdd„Zd    „Zd
d „Zd „Zd „Zd„Zd„Zd„Zdd„Zd„ZdS(iÿÿÿÿNcCs”xtjjtjiƒjƒD]m}|jtjdƒ}t||ƒ}| r|jtjƒrt    ||ƒt
||ƒt ||ƒqqWdS(Ni( t
PyGameDatatg_operationActionDicttgett ShareDefinetOperationActionName_Tasktvaluest ActKey_ActNumt__CheckPlayerActTaskActiont ActKey_StatetSync_ActTaskActionInfotSync_ActTaskPlayerValueInfotSync_ActTaskPlayerInfo(t    curPlayertactInfotactNumtisReset((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyt OnPlayerLogins%  cCs^tjƒ}xKt|jƒƒD]7}|j|ƒ}tj|ƒsIqnt||ƒqWdS(N(t    GameWorldtGetPlayerManagertxrangetGetPlayerCounttGetPlayerByIndextIsNormalPlayerR(Rt playerManagertindexR ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pytRefreshActTaskActionInfo*s c Cs|jƒ}tjtj|ƒ}|jtjdƒ}|jtjdƒ}|jtjƒ}|j    t
j |ƒ}|j    t
j |ƒ}||kr³tj d||f|ƒdStj d|||||f|ƒ|rìt||ƒntj|t
j ||ƒ||kr¿t||ƒtj|t
j ||ƒtj|t
j|dƒtj|t
j|dƒ|r…tjd|ƒnd}    |    r¿|    jƒ}
|
r¼tj||
gƒq¼q¿n|rüt||ƒt||ƒt||ƒt||ƒntS(Nis+ÈÎÎñ»î¶¯ID²»±ä£¬²»´¦Àí£¡ actNum=%s,actID=%ssEÈÎÎñ»î¶¯ÖØÖÃ! actNum=%s,actID=%s,playerActID=%s,state=%s,lastCfgID=%stActTask(t GetPlayerIDRt
GetActInfoRRRt    ActKey_IDRt ActKey_CfgIDtNomalDictGetPropertytChConfigtDef_PDict_ActTaskIDtDef_PDict_ActTaskCfgIDtDebugLogt__ResetTaskValueByTemplateIDt PlayerControltNomalDictSetPropertyt__RecycleActScoreItemtDef_PDict_ActTaskScoretDef_PDict_ActTaskScoreAwardt IpyGameDataPYtGetIpyGameDatatNonetGetActShopTypeExtFunctionNPCCommontResetShopItemBuyCountByShopTypeR    R
R tTrue( R RtplayerIDR tactIDtstatetcfgIDt playerActIDt    lastCfgIDt
cfgIpyDatat ActShopTypeEx((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyR4s>            cCsÀ|s
dStjd|ƒ}|s&dS|jƒ}|jƒ}x1tjD]&}tj|tj||fdƒqHWt    |dƒ}x8t
|dƒD]&}tj|tj ||fdƒq’WdS(NRii
i( R*R+t    GetActNumt GetTemplateIDR tActTaskTypeListR%R&tDef_PDict_ActTaskValuet__GetTaskAwardRecordKeyNumMaxtrangetDef_PDict_ActTaskAward(R R4tipyDataRt
templateIDttaskTypettaskAwardKeyNumtkeyNum((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyR$bs  $$cCsg|s
dStjd|ƒ}|s&dS|jƒ}|jƒ}| sL| rPdStj|||ƒdS(NR(R*R+tGetActScoreItemIDtGetActScoreMailt ItemControlert RecycleItem(R R4R@tActScoreItemIDt ActScoreMail((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyR'zs  icCs\tjd|ƒ}|rXd}x/|D]'}|jƒ|kr%|jƒ}q%q%W|dS|S(Nt ActTaskTempii(R*tGetIpyGameDataListt    GetTaskID(RAt    defKeyNumttaskIpyDataListt    taskIDMaxt taskIpyData((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyR=Šs cCsš|jƒ}x‡tjjtjiƒjƒD]g}|jtjdƒ}|jtjƒs^q+n|jtj    ƒ}t
j d|ƒ}|sŽq+n|j ƒ}t
j d|ƒ}    |    s¸q+nd}
xG|    D]?} | jƒ|krãqÅn| jƒ} | |
krÅ| }
qÅqÅW|jtj||fƒ} || ks+|
dkrBq+ntj|tj||f|ƒtjd|||f|ƒt|||gƒq+WdS(NiRRKs9¸üÐÂÈÎÎñ»î¶¯ÈÎÎñ½ø¶ÈÖµ: actNum=%s,taskType=%s,updValue=%s(RRRRRRRRRRR*R+R:RLt GetTaskTypet GetNeedValueRR R<R%R&RR#R
(R RBtupdValueR1R RR4R@RAROt needValueMaxRQt    needValuetcurValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pytUpdActTaskValue•s6 %      icCs§|jƒ}x”tjjtjiƒjƒD]t}|jtjdƒ}|jtjƒs^q+n|jtj    ƒ}t
j d|ƒ}|sŽq+n|j ƒ}t
j d|ƒ}    |    s¸q+nd}
xG|    D]?} | jƒ|krãqÅn| jƒ} | |
krÅ| }
qÅqÅW|jtj||fƒ} | |
kr6q+nt|
| |ƒ}tj|tj||f|ƒtjd|||||
f|ƒt|||gƒq+WdS(NiRRKsH¸üÐÂÈÎÎñ»î¶¯ÈÎÎñ½ø¶ÈÖµ: actNum=%s,taskType=%s,addValue=%s,updValue=%s/%s(RRRRRRRRRRR*R+R:RLRRRSRR R<tminR%R&RR#R
(R RBtaddValueR1R RR4R@RARORURQRVRWRT((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pytAddActTaskValue»s: %           c Cs|jƒ}x tjjtjiƒjƒD]ë}|jtjdƒ}|jtjƒs^q+n|jtj    ƒ}t
j d|ƒ}|sŽq+n|j ƒ}| s+||kr³q+n|j tj|ƒ}    tj|tj||    |ƒ}
tjd||
||f|ƒt||ƒq+WdS(NiRsG¸üÐÂÈÎÎñ»î¶¯Àۼƻý·Ö: actNum=%s,updScore=%s,scoreItemID=%s,itemCount=%s(RRRRRRRRRRR*R+RERR R(R%R&RR#R ( R titemIDt    itemCountR1R RR4R@t scoreItemIDtcurScoretupdScore((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyt OnPutinItemãs$ %      cCs•tj|ƒ}tjtj|ƒ}|s?tjd|ƒdS|jtjƒsftjd|ƒdS|jtjƒ}t    j
d|ƒ}|s”dS|s®t |||ƒdS|j ƒ}tjd||||fƒt    j d|ƒ}|sódSi}x|D]}    |    jƒ}
|    jƒ} |    jƒ} |    jƒ} |jtj|| fƒ}|| krdqn|
}tj|tj|t|gƒr‘qntj|tj|dt|gƒx8| D]0}|d \}}|j|dƒ|||<qºWtjd    |
|| | |fƒqW|s)tjd
ƒdSg|jƒD]\}}||g^q6}tjd |ƒtj||d dtigƒt||ƒdS( NsûÓиÃÈÎÎñ»î¶¯£¡ actNum=%ss·ÇÈÎÎñ»î¶¯ÖУ¡ actNum=%sRsC»î¶¯ÈÎÎñÁìÈ¡ÈÎÎñ½±Àø! actNum=%s,cfgID=%s,templateID=%s,getTaskID=%sRKiiis3    ¸ÃÈÎÎñ¿ÉÁì½±! taskID=%s,curValue=%s >= %s,%s,%ssÈÎÎñ»î¶¯Ã»ÓпÉÁìÈ¡½±Àø!s"ÀÛ¼Æ×Ü¿ÉÁìÈ¡½±Àø: totalItemList=%stevent(RtToIntDefRRRR#RRRR*R+t__giveActTaskScoreAwardR:RLRMtGetAwardItemListRRRSRR R<tGetDictValueByBitR?R0tSetDictValueByBittitemsRGtGivePlayerItemOrMailtFalseR (R t    getTaskIDRR R4R@RAROt awardItemDictRQttaskIDt awardItemListRBRVRWt
awardIndextitemInfoR\R]t totalItemList((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pytOnGetActTaskAwardùsZ       !" $ + cCsã|jtj|ƒ}|jtj|ƒ}|jƒ}|sBdStjd|||fƒg|jƒD]}t|ƒ^qi}|j    ƒi}x¹|D]±}    |t
|    ƒ}
|
s˜t |
ƒdkrÍq˜n|
\} } } ||    krtjd| |    fƒPn|t d| ƒ@rq˜n|t d| ƒO}|j | dƒ| || <q˜W|sWdSg|jƒD]\} } | | g^qd}tj|tj||ƒtjd||fƒtj||ddtigƒt||ƒdS(    Ns@ÁìÈ¡ÈÎÎñ»î¶¯Àۼƻý·Ö½±Àø£¡ actNum=%s,scoreTotal=%s,awardState=%sis,    ËùÐè»ý·Ö²»×ã: awardIndex=%s,needScore=%siis"    awardState=%s,awardItemList=%sRbt ActTaskScore(RR R(R)tGetActScoreAwardInfoRR#tkeystinttsorttstrtlentpowRRhR%R&RGRiRjR (R RR@t
scoreTotalt
awardStatetscoreAwardDictt needScoreStrt needScoreListRlt    needScoret    awardInfoRoR\R]Rn((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyRd;s: %
  + c    CsÎg}tjtj|ƒ}|s%|S|jtjƒs;|S|jtjƒ}tjd|ƒ}|si|S|j    ƒ}tj
d|ƒ}|s‘|Sx6|D].}|j ƒ}||kr˜|j |ƒq˜q˜W|S(NRRK( RRRRRRRR*R+R:RLRRtappend(    Rt taskTypeListR R4R@RARORQRB((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pytGetActTaskTypeList^s&    cCs|jtj|ƒ}tjd|ƒ}|s2dS|jƒ}t|ƒ}tjƒ}||_    g|_
x>t |dƒD],}|j
j |jtj ||fƒƒqyWt|j
ƒ|_|jtj|ƒ|_|jtj|ƒ|_tj||ƒdS(NRi(RR R"R*R+R:R=tChPyNetSendPackttagSCActTaskPlayerInfotActNumtAwardRecordListR>R‚R?Ryt
AwardCountR(t ActScoreTotalR)t ActScoreAwardt NetPackCommont SendFakePack(R RR4R@RAt    keyNumMaxt
clientPackRD((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyR ss            *cCs´|dkrt|ƒ}ntjƒ}||_g|_xR|D]J}tjƒ}||_|jt    j
||fƒ|_ |jj |ƒq@Wt |jƒ|_tj||ƒdS(N(R,R„R…ttagSCActTaskPlayerValueInfoR‡t TaskValueListttagSCActTaskPlayerValuetTaskTypeRR R<t    TaskValueR‚Ryt    TaskCountRŒR(R RRƒRRBt taskValueInfo((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyR
‡s                cCsËtjtj|ƒ}|sdS|jtjƒs5dS|jtjƒ}tjd|ƒ}|scdStj    |ƒ\}}t
j ƒ}||_ |jtj |ƒ|_||_||_tj||ƒdS(NR(RRRRRRRR*R+tGetOperationActionDateStrR…ttagSCActTaskInfoR‡tActKey_StartDateSynct    StartDatetEndtDatetCfgIDRŒR(R RR R4R@t startDateStrt
endDateStrR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyR    ˜s"             (RRR%R*R…R.RGRŒRR RRRR$R'R=RXR[RaRrRdR„R R,R
R    (((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActTask.pyt<module>s0                   
    .             & (        B    #