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
ú«½[c@sBddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z d„Zd„Zedƒ\ZZZd„Zd„Zd„Zd„Zdd    „Zd
„Zd „Zd „Zd „Zd„Zd„Zd„ZdS(iÿÿÿÿNcCsAtjƒj|ƒ}|j}|j}tj||||ƒdS(N(t    GameWorldtGetPlayerManagertGetPlayerByIndext
ActionTypet
ActionInfotFBLogict
DoFBAction(t playerIndext
clientDatattickt    curPlayert
actionTypet
actionInfo((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyt OnDoFBAction0s
        c Cs[tjƒj|ƒ}|j}tjd|ƒ|s9dStj||ƒ}|dkrltjd|ƒdStjddƒ}||krŽdS||}t    j
|t j |ƒ}|sºdS|}    i|d6|    d6}
x6|D].\} } t    j || | tj|
ƒsÛdSqÛWtjd||    |f|jƒƒtj|tj|dƒtj|ƒdS(    NsOnClearFBCD mapID=%sis&    CDʱ¼äÒѹý£¬²»ÐèÒªÇå³ý£¬ cdTick=%st    FBEnterCDitMapIDtCDSeconds1   mapID=%s Çå³ý¸±±¾CD second=%s,costMoneyList=%s(RRRRtDebugLogtFBCommont GetFBEnterCDt IpyGameDataPYtGetFuncEvalCfgt PlayerControlt HaveMoneyExt ShareDefinetTYPE_Price_Gold_Paper_MoneytPayMoneytChConfigtDef_Cost_ClearFBCDt GetPlayerIDtSetFBPDictValuetDef_PDict_LastEnterFBTicktSyncFBEnterTick( RRR    R
tmapIDt enterCDTicktclearEnterCDDictt    costMoneyt costMoneyListtsecondtinfoDictt    moneyTypetmoneyCnt((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyt OnClearFBCD<s4      
     icCs=t||ƒ}|stS|d}|jtj|ƒ|kS(Ni(tGetPubCDFBSweepCfgtFalsetNomalDictGetPropertyRtDef_PDict_PubCDFBS_MapID(R
R!tsweepCfgtgroupNum((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pytIsCurPubCDFBSweepinggs
 
cCsStjdƒ}x=|jƒD]/\}}|d}||krDqn||fSWdS(Nt PubCDFBSweepi(t ReadChConfigtGetEvalChConfigtitems(R
R!tPubCDFBSweepDictR0t    sweepInfot
mapIDGroup((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyR+os
  c
Cs6|jtj|ƒ}|dkrFtjd||f|jƒƒdStj|||||ƒsedStt    j    ƒƒ}    t
j |tj||ƒt
j |tj ||ƒt
j |tj ||ƒt
j |tj||ƒt
j |tj||    ƒtjd||||||    f|jƒƒt||ƒdS(Nis7¹«¹²CD¸±±¾É¨µ´ÖÐ, ÎÞ·¨É¨µ´!groupNum=%s,curSweepMapID=%ssM¹«¹²CD¸±±¾¿ªÊ¼É¨µ´ mapID=%s,lineID=%s,cnt=%s,dataEx=%s,groupNum=%s,curTime=%s(R-RR.RRRRtOnStartPubCDFBSweeptintttimeRtNomalDictSetPropertytDef_PDict_PubCDFBS_LineIDtDef_PDict_PubCDFBS_CnttDef_PDict_PubCDFBS_DataExtDef_PDict_PubCDFBS_TimetSync_PubFBSweepData(
R
R!tlineIDtcnttisFinishtdataExR0R7t curSweepMapIDtcurTime((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyt__DoStartPubCDFBSweep{s"         # cCs±|jƒ}|jtj|ƒ}|dks:||krXtjd||f|ƒdS|jtj|ƒ}|jtj|ƒ}|jtj|ƒ}    |jtj    |ƒ}
|t
} |t } | |    } t t j ƒƒ}td||ƒ}td| |ƒ}|dkr<|dkr<tjd||f|ƒdSi |d6|d6|    d6| d6|d    6|d
6dd 6|d 6|d 6|
d6|tj6}|dkrët| ƒ}|dkrë||d <tj|tj|tj|ƒsèdSqëntjdt|ƒ|ƒtj||||    |
ƒtj|tj|dƒtj|tj|dƒtj|tj|dƒtj|tj    |dƒtj|tj|dƒt||ƒdS(NisJδɨµ´ »ò ²»Êǵ±Ç°ÕýÔÚɨµ´µÄ¹«¹²CD¸±±¾, ÎÞ·¨Íê³É!curSweepMapID=%s,mapID=%sis*ɨµ´Ê±¼äδµ½£¬ÎÞ·¨Íê³É£¬Ê£Óà%sÃë, mapID=%sRGtstartSweepTimetsweepCntt needTotalTimetpassTimet remainSecondtcostGoldR!RBREis¹«¹²CD¸±±¾É¨µ´Íê³É: %s(RR-RR.RRR@R=R>R?tPCDFB_NeedTimetPCDFB_FinishTimeGoldR:R;tmaxtDef_Cost_Reason_SonKeytevalRRt IPY_GameWorldtTYPE_Price_Gold_MoneytDef_Cost_FinishFBSweeptstrRtOnGivePubCDFBSweepPrizeR<RA(R
R!RDR0R7tplayerIDRFt    sweepTimeRBRJREt sweepNeedTimetfinishCostGoldFormatRKRGRLR&t addDataDictRN((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyt__DoFinishPubCDFB“sL     
 
 
)   
 
 cCs2tjdƒ}|jƒ}|dkr0|}n||kr@dS|g}tjƒ}|jƒg|_x¡|D]™}tjƒ}|jƒ||_|j    t
j |ƒ|_ |j    t
j |ƒ|_|j    t
j|ƒ|_|j    t
j|ƒ|_|jj|ƒqoWt|jƒ|_tj||ƒdS(NR2iÿÿÿÿ(R3R4tkeystChPyNetSendPackttagMCPubFBSweepDatatCleart SweepDatListttagMCPubFBSweeptPubNumR-RR.tFBMapIDR=tLineIDR@t    SweepTimeR>tSweepCnttappendtlentCntt NetPackCommont SendFakePack(R
R0R6tallGroupNumListt groupNumListt pubSweepDatatgNumR7((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyRAÈs,            
      
    c Csktjƒj|ƒ}tj|tj|ƒsGtjd|jƒƒdS|j}|j    }|j
}d}|j }t j |ƒ}    t jtjƒjƒƒt j|ƒkrÔ|    rÔ|    jƒrÔtjd|ƒdSnt j||ƒ}
t j||||    |
|ƒtjkrdSg} g} d} |jƒjtjƒ}|
r]|
jƒ}|r•|jƒ|kr•tjd|||jƒ|f|jƒƒdS|
jƒ}|r]|
jƒ}||} tj||| ƒ\}} }}|sZtj |tj!ƒ}|r$||}t"j#|tj$|ƒ} n| sWtjd|||| f|jƒƒdSqZq]nt%j&||||||ƒsdS| rª| rªtj'||| | t(dƒn| r i|d6|d    6|d
6}x?| D]4\}}t"j)|||tj*|ƒsÒt(|fSqÒWnt j+||||ƒ|    rK|    jƒrKt j,|||ƒnt%j-||||||ƒdS( NsÍæ¼Ò¸±±¾É¨µ´ÇëÇóCDÖÐ...is(Íæ¼ÒÔÚɨµ´Ä¿±êµØÍ¼ÖУ¬ÎÞ·¨É¨µ´£¡mapID=%sisHÍæ¼Ò¸±±¾É¨µ´,µÈ¼¶²»×㣡mapID=%s, lineID=%s, playerLV=%s, sweepLVLimit=%ssCɨµ´ÏûºÄµÀ¾ß²»×ã, mapID=%s,lineID=%s,sweepItemID=%s,sweepCostCnt=%stFBSweepCostItemRRgt
SweepCount(.RRRtCheckPlayerTickRtTYPE_Player_Tick_BeginFBWipeOutRRRRgRltDataExRt GetFBIpyDatatGetRecordMapIDtGetMaptGetMapIDt GetDayTimestGetFBLineIpyDatatCheckCanEnterFBCommRtEntFBAskRet_OKtGetItemManagertGetPackRTtrptItemtGetSweepLVLimittGetLVtGetSweepItemIDtGetSweepCostCntt
ItemCommontGetItem_FromPack_ByID_ExExtGetShopItemPriceRURRRRtOnPlayerFBSweepAskt
ReduceItemR,RtDef_Cost_FBSweeptDelFBEnterTickettAddEnterFBCounttOnPlayerFBSweepResult(RRR    R
R!RBRCRDREt    fbIpyDatat fbLineIpyDataR%tsweepCostindexListt sweepCostCnttitemPackt sweepLVLimitt sweepItemIDt sweepItemCnttisEnoughthasBindtlackCntt    itemPriceR$R'R(tmoneyNum((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pytOnPlayerFBWipeOutõsn                *'     #  
!
      cCsdS(N((RRR    ((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pytOnPlayerBuyFBEnergy_scCsTtjtj}||jtjƒ|kr0dS|jtj|ƒtj|ƒdS(N(RtTYPE_Player_Tick_TimetTYPE_Player_Tick_FBTimeProcesst GetTickByTypet SetTickByTypeRtRegainFBCntProcess(R
R    t checkInterval((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pytDoPlayerFBTimeProcesses  cCsJtjƒj|ƒ}|j}|j}|j}tj||||ƒdS(N(RRRRRgtPercentRtOnGetMultiFBPrize(RRR    R
R!RBt    prizeExLV((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pytOnPlayerGetMultiFBPrize{s             cCstjƒj|ƒ}dS(N(RRR(RRR    R
((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pytOnPlayerResetFBJoinCntŠsc    Csytjƒj|ƒ}|j}|j}|j}|j}||g}tj||||ƒtj    d|||fƒdS(Ns4    ¿Í»§¶Ë¸±±¾·¢ËͽáÊømapID=%s,lineID=%s,dataList=%s(
RRRRRgtData1tData2Rt OnClientEndFBR(    RRR    R
R!RBtdata1tdata2tdataList((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyR­˜s                 cCs)tjƒj|ƒ}tj||ƒdS(N(RRRRtOnClientStartFB(RRR    R
((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyR±ªs( R3RTRRRRRR`RmR‡RRR;tmathR R*trangetPCDFB_MapIDListRORPR1R+RHR^RARRžR¥R©RªR­R±(((sX.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFB.pyt<module>s8                       '                 5 -    j