cehua_hzl
2018-12-27 0d3c536746c1959e4a57dd519e348783ed73a869
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
77
ùö[c@szddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZiadZedƒ\ZZZZedƒ\ZZZZ Z!d„Z"d„Z#d„Z$d„Z%d    „Z&d
„Z'd „Z(d „Z)d „Z*d„Z+d„Z,d„Z-d„Z.d„Z/d„Z0dd„Z1d„Z2d„Z3d„Z4d„Z5d„Z6d„Z7d„Z8d„Z9d„Z:id„Z;d„Z<d „Z=d!„Z>d"„Z?d#„Z@d$„ZAd%„ZBdS(&iÿÿÿÿNt FBDict_LeveliicCstjtjƒS(N(tFBCommontGetFBLineStepTimetChConfigtDef_FBMapID_TrialTower(((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt __GetTrialCfgEscCstjd|ƒS(Nt    RuneTower(t IpyGameDataPYtGetIpyGameData(tlevel((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytGetTowerIpyDataGscCst|ƒdS(N(tSyncTrialLevelInfo(t    curPlayer((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytOnFBPlayerLoginJs
cCs*tj|tjt|ƒƒt|ƒdS(N(t PlayerControltNomalDictSetPropertyRt(Def_Player_Dict_TrialTower_LastDayPassLVt__GetTrialLevelCurPassLVR (R ((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytOnFBPlayerOnDayNs
cCsNtjƒ}|jƒt|ƒ|_|jtjƒ|_t    j
||ƒdS(N( tChPyNetSendPackttagMCTrialTowerInfotClearRtPassLVtNomalDictGetPropertyRRtYesterDayPassLVt NetPackCommont SendFakePack(R tttInfo((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyR Ws  
cCs|jtjƒS(N(RRt!Def_Player_Dict_TrialTower_PassLV(R ((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyR`scCsatj|tj|ƒtj|ƒtj|tj    d|gƒt
j |ƒt j d|ƒdS(Nis ¸üзûÓ¡ËþÒÑͨ¹ØÊý %s(RRRRt
PlayerRunetDoUnlockRuneHolet PlayerSuccesstDoAddSuccessProgresst ShareDefinetSuccType_PassRuneTowertPlayerBillboardtUpdateRuneTowerBillboardt    GameWorldtDebugLog(R tpasslv((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytSetTrialLevelCurPassLVds   cCstS(N(tTrue(R tmapIDtlineIdttick((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytOnEnterFBEventsscCsd|jƒ}t|ƒ}|s6tjd||ƒtS|t|ƒkr`tjd||ƒtStS(Ns·ûÓ¡Ëþ¹Ø¿¨(%s)²»´æÔÚs·ûÓ¡Ëþ±¾¹Ø(%s)Òѹý¹Ø, ÎÞ·¨ÌôÕ½!(t GetPlayerIDR
R%tErrLogtFalseRR&R)(R tfbLeveltplayerIDtipyData((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt__CheckCanChallengexs  cCs|S(N((R R*R+tipyEnterPosInfoR,((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytOnGetFBEnterPosscCstjS(N(t IPY_GameWorldt    cmeAccept(taskR,((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytOnChangeMapAsk—scCs tj|tjdtjƒdS(Ni(t EventReportt WriteEvent_FBRRt CME_Log_Start(R R,((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt    DoEnterFBžscCsdS(N((R,((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt    OnCloseFB¨scCsdS(N((R R,((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytDoExitFB±scCsvtjƒ}|jƒ}|tkr1t|ƒnA|tkrJt|ƒn(|tkrct|ƒn|t    krrndS(N(
R%t    GetGameFBt    GetFBSteptFB_State_FightPreparet__DoLogic_FightPreparetFB_State_Fightingt__DoLogic_FightingtFB_State_FreeTimet__DoLogic_FreeTimetFB_State_Close(R,tgameFBtfbStep((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt    OnProcess»s         cCs[tjƒ}|dkr*|jtƒ}nt|ƒ}|sQtjd|ƒdS|jƒS(Niÿÿÿÿs7__GetTrialBossID() can not find %s in TrialTowerNPC.txti(R%RAtGetGameFBDictByKeyRR
R/tGetNPCID(R1RJR3((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt__GetTrialBossIDËs   cCs¥tjƒ}tƒ}||jƒ|tdkr7dStƒ}|sTtjƒdStjt    j
|t dƒt j tjtjdƒ|gƒtjt|ƒdS(Nièi(R%RARt GetFBStepTicktDef_PrepareTimeRORtDoLogic_FBKickAllPlayertSync_Player_TimeTickR7t tttTowerTaket Def_FightTimetNPCCustomRefresht SetNPCRefreshtGetFBLineRefreshNPCRRt    SetFBStepRE(R,RJttrialCfgtbossID((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRDÙs         
"cCs|jƒtjkrDtjd|jƒƒtj|tj    |ƒn|j
|j ƒƒt j ƒtjƒ}|jt|ƒtƒtd}t jtj|ƒt jtj|ƒt jt|ƒi|t j6}t j||ƒtjd|t|ƒf|jƒƒdS(Ns ¸´»îÍæ¼Ò...iès%StartFBLevel, fbLevel=%s, helpDict=%s(tGetPlayerActionR7tpaDieR%R&R.tChPlayertPlayerRebornByTypeRtrebornType_CitytSetHPtGetMaxHPRt
ClearFBNPCRAt SetGameFBDictRRRQRSt tttAddUpTimet tttWaitStartRYRCt
Help_wheelt Notify_FBHelptstr(R R1R,RJt prepareTickthelpDict((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt StartFBLevelîs 
     cCs¢tjƒ}||jƒtƒtdkr1dS|jtƒ}tjƒ}xEt|j    ƒƒD]1}|j
|ƒ}|s€q_nt ||t ƒq_Wt |ƒdS(Niè(R%RARPRRURMRtGetMapCopyPlayerManagertxrangetGetPlayerCounttGetPlayerByIndext__SendTrialTowerOverInfoR0t__SetFBToFreeTime(R,RJR1t playerManagertindexR ((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRFs ! 
cCs2tjtjtƒtdƒtjt|ƒdS(Niè(RRSR7t tttLeaveMapRt Def_ExitTimeRYRG(R,((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRrscCs/|tjƒjƒtƒtdkr+dSdS(Niè(R%RARPRRv(R,((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRH&s'c Cs¯tjƒ}|jƒtkr"dStƒ}||jƒkrAdS|jtƒ}t|ƒ}|sfdSt    j
ddƒ}|d|kr­t j |t jdt jddƒn|jƒr"t    jƒ}|j|jƒdƒjƒ}    ||    krödnd}
tjd|
|jƒ|dgƒnt||ƒt||ƒ} |tjƒjƒ} | | tj<t||t| ƒtj ||ƒt!|ƒt"|ƒt#j$|t%j&ƒdS(Nt TowerRuneTypeiidiitRuneTowerInfo_1tGeRen_liubo_471172('R%RARBRERORNRMRR
Rt
GetFuncCfgR;R<RRt CME_Log_Endt GetIsNotifytIPY_DatatGetRuneTowerByIndextGetRuneTowerCounttGetIDRt WorldNotifyt GetPlayerNameR(t__GiveFBPassPrizeRPRt Over_costTimeRqR)t
EventShelltEventRespons_TrialTowerCntR RrtPlayerActivitytAddDailyActionFinishCntR!tDailyActionID_Tower( R tcurNPCR,RJR[R1R3tfloorCntR}tmaxLeveltsysMarkt    prizeDicttcostTime((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytDoFB_Player_KillNPC2s:      %     
 
c Csøt|ƒ}|siS|jƒ}tj|tj|ƒ|jƒ}tj|tj|ƒtj    dƒ}||krÆg}xø||D]9\}}x*t
|ƒD]}    |j |ddgƒqŸWq†Wn°t ||ƒ}|j ƒ}
xA|
D]9\}}x*t
|ƒD]}    |j |ddgƒqWqèW|jƒ} xB| jƒD]4\}} tj| ƒr>|j |ddgƒq>q>Wxr|D]j\}}} tjƒj|ƒ}|s­q}n|jƒtjkr}tjdd|jƒ||gƒq}q}Wt|ƒ}tj|tj|ƒ}t||kƒ}|rftjd|jƒg|ƒtjdt |ƒ|jƒƒnHxE|D]=\}}} t!j"|||| tjgddt#igƒqmWi|tj6|tj6}it$j%|ƒt$j&6t$j'|ƒt$j(6}|S(    Nt PreFourAwardiitRuneTowerInfo_2t
TowerPrizes'±³°ü¿Õ¼ä²»¹»£¬·¢ËÍÓʼþ: mailItemList=%steventR()R
t GetRunePointRt    GiveMoneyR!tTYPE_Price_RunetGetYsogtTYPE_Price_YsogRtGetFuncEvalCfgRntappendt __GetEndAwardtGetFixEndAwardt GetGoodDroptitemsR%t    CanHappent GetGameDatatGetItemByTypeIDt GetItemColortDef_Item_Color_OrangeRtGetNametlent
ItemCommontGetItemPackSpacetrptRunetintt SendMailByKeyR.R&Rit ItemControlertGivePlayerItemR0RtGetJsonMoneyListt
Over_moneytGetJsonItemListt Over_itemInfo(R R1R3taddJHtRuneMagicEssencetspecialAwardDictt prizeItemListtitemIDtitemCntt_t FixEndAwardt goodDropDicttratetisBindtitemDatat    needSpacet
emptySpacet
isSendMailt    moneyDictRŽ((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRƒbsP    !  ) #,c CsAtjtjddiƒ|gƒ}tj|ƒ}|s=gSt|ƒ}|sSdSt|ƒg}tjtjddiƒ|iƒ}x™t|ƒD]‹}tj    |ƒ}|t
kr¹Pntj ||ƒ}    tj|    ƒ}
|
dkrêPnt
|j |
ƒ} | s    q”n|j| ddgƒq”Wtjd|||fƒ|S(NtRuneAwardCntRateitRuneAwardColors5    Ëæ»ú¸øÎïÆ·Êý: %s, giveItemList=%s,runeTypeList=%s(R%tGetDictValueByRangeKeyRRštGetResultByRandomListtGetRuneTypeByTowerLVtInitRuneTypeColorInfoRntrandomtchoicetg_runeTypeDicttGetDictValueByKeytNonetgetR›R&( R R1tgiveItemCountRateListt giveItemCountt runeTypeListt giveItemListtruneColorRateDictR¸t giveRuneTypetruneColorRateListt    giveColort
giveItemID((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRœšs0$ 
$  c    CsÇtsÃtjƒ}x®t|jƒƒD]—}|j|ƒ}|jƒ}tjƒj    |ƒ}|sgq%n|j
ƒ}|j dƒ}|j ƒ}|tkr«|t||<q%i||6t|<q%WndS(Ni( RÊRR}Rnt GetRuneCounttGetRuneByIndexR€R%R¡R¢R£tGetEffectByIndext GetEffectID(    R t
ipyDataMgrtiR3R¶R½t    itemColortcurEfft curRuneType((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRǺs     cCsdtj|tj<||tj<t|ƒ|tj<tjdt    |ƒ|j
ƒƒtj ||ƒdS(Ns$__SendTrialTowerOverInfo overDict=%s( RRRtOver_dataMapIDt
Over_wheelRªt Over_isPassR%R&RiR.tNotify_FB_Over(R R1tisPasstoverDict((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRqÏs   cCs&tjƒ}|jƒtkr"tStS(N(R%RARBRER0R)(tattackertdefenderRJ((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytCheckCanAttackTagObjInFBÝs cCsKtjƒ}|jtƒ}t||tƒtjƒjƒ}t|ƒdS(N(    R%RARMRRqR0t GetGameWorldtGetTickRr(R RJR1R,((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt DoPlayerDeadès  
cCstS(N(R)(((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytOnPlayerRebornôscCs‚|dkrdStjƒ}|jƒ}|ttgkrKtjdƒdS|}t||ƒsntjƒdSt    |||ƒdS(Nis×¼±¸»òÕ½¶·ÖÐ, ÎÞ·¨±ä¸ü¹Ø¿¨!(
R%RARBRCRER&R4RRRRl(R t
actionTypet
actionInfoR,RJRKR1((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt
DoFBActionýs    
cCs)tjdƒ}|jt|dƒgƒS(NRwid(RRšRÍRi(ttowerLVttowerRuneTypeDict((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyRÆsc Cs!|jtjƒ}|s)tjdƒtStj|tj    ƒ\}}||kratjdƒdS|ryt
j ddƒnd}    |    r÷t j |tj|    ƒ}
|
s§dSxM|
D]B\} } t j|| | tjƒs®tjd|    |fƒdSq®Wntj|tj    ƒstjdƒtStS(Ns    Î´Í¨¹ØÒ»²ã£¬²»ÄÜɨµ´s    É¨µ´´ÎÊý²»×㣡tRuneTowerSweepBuyiis.·ûÓ¡Ëþɨµ´ÏÉÓñ²»×ã!costGold=%s£¬curDayTimes=%s(RRRR%R&R0R‡tGetDailyActionFinishCntR!tDailyActionID_TowerSDRRzRt HaveMoneyExtTYPE_Price_Gold_Paper_MoneytPayMoneytDef_Cost_FBSweepRˆR)( R R*tlineIDtsweepCnttisFinishtdataExtyesterDayPassLVt curDayTimest dayTimesLimitt    needMoneyt costMoneyListt    moneyTypetmoneyNum((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytOnPlayerFBSweepAsks*     c( Cs"|jtjƒ}t|ƒg}i}i}    i}
d} d} tjƒ} x›t| jƒƒD]‡}| j|ƒ}|j    ƒ}|d}||kršPn|    j
|dƒ|j ƒ|    |<| |j ƒ7} |
j
|dƒ|j ƒ|
|<| |j ƒ7} t jtjddiƒ|gƒ}t j|ƒ}|s9q_nt|ƒ}|sQq_nt jtjddiƒ|iƒ}xÛt|ƒD]Í}tj|ƒ}|tkr§Pnt j||ƒ}t j|ƒ}|dkrØPnt|j
|ƒ}|s÷q‚n||kr(||j
|dƒd|||<nid|6||<|j|ddgƒq‚W|jƒ}x„|jƒD]v\}}t j|ƒrl|j|ddgƒ||krÎ||j
|dƒd|||<qâid|6||<qlqlWq_Wi}x«|jƒD]\}}tj|jƒƒ} | ||<xo|jƒD]a}t jƒj|ƒ}!|!s\q5n|!j ƒt!j"kr5t#j$dd|j%ƒ||gƒq5q5WqýW| r½t#j&|t!j'| ƒn| rÜt#j&|t!j(| ƒnt)|ƒ}"t*j+|t!j,|"ƒ}#t-|"|#kƒ}$|$rWt#j.d|j/ƒg|ƒt j0d    t1|ƒ|j/ƒƒnHxE|D]=\}}%}&t2j3|||%|&t!j,gd
d t4igƒq^Widtj56tj6tj76|d 6|    d 6|
d6}'t j0d|'ƒtj8||'ƒt9j:|t!j;dƒt<j=|tj>dƒt?S(NiidRÂiRÃitRuneTowerInfo_3tRunePackUnEnoughs'±³°ü¿Õ¼ä²»¹»£¬·¢ËÍÓʼþ: mailItemList=%sR”t RuneTowerSDt SDTowerItemt SDTowerPointt SDTowerYsogs    overDict=%s(@RRRRÇRR}RnRR~R€RÍtGetSweepRunePointt GetSweepYsogR%RÄRšRÅRÆRÈRÉRÊRËRÌR›tGetSweepGoodDropRŸR RR°tkeysR¡R¢R£R!R¤RRR¥R–R—R™R¦R§R¨R©RªR«R.R&RiR¬R­R0t Over_isSweepRRàRãRR tSuccType_TowerSDtPlayerBossReborntAddBossRebornActionCnttDef_BRAct_TowerSweepR)((R R*RùRúRûRütpassLVRÑt floorItemDicttgiveRunePointDicttgiveRuneYsogDictt giveRunePointt giveRuneYsogRÛRÜR3RðtfloorRÎRÏRÐRÒR¸RÓRÔRÕRÖRºR¶R»t jsonItemDicttitemDictt jsonitemListR½R¾R¿RÀR·R¼Rå((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pytOnPlayerFBSweepResult3sž
 
   $ $   %  %
- #(CRR%R7RRVRR¬R…RR!RRR§RR^RR‡R#R;RÈtmathRRÊRtrangeRQRURvtDef_DayPrizeMaxCntt FB_State_OpenRCRERGRIRR
R RR RR(R-R4R6R:R>R?R@RLRORDRlRFRrRHRRƒRœRÇRqRèRëRìRïRÆRR(((sv.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_TrialTower.pyt<module>st                                                                                   
            
                                  0    8