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
¬4ý[c@s±dZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZedƒ\ZZZdZdZdZdZdZd    Zd
Zd „Zd „Zd „Zd„Zd„Zd„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.dS(sVersion = 2018-04-16 17:20iÿÿÿÿNitMap_FamilyPartyFB_StartTicksLastEnterFbDay_%ssXMYH_TotalExp%ssXMYH_TotalExpPoint%ssXMYH_TotalPoint%ssXMYH_HasCollect%ss XMYH_HasSit%scCstj|tjdƒdS(Ni(t PlayerControltNomalDictSetPropertytChConfigt$Def_Player_Dict_FamilyPartyAnswerCnt(t    curPlayer((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytOnFBPlayerOnDay3scCs-tjƒ}|jƒ|jtjdƒdS(Ni(t    GameWorldt    GetGameFBtClearAllPlayerGameFBDictt SetGameFBDictRtMap_FBDict_NotifyStart(tticktgameFB((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytOnOpenFB<s 
cCstjƒdS(N(tFBCommontDoLogic_FBKickAllPlayer(R ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyt    OnCloseFBGs
cCs t||ƒS(N(t __CheckEnter(RtmapIDtlineIDR ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytOnEnterFBEventSscCs'|jƒdkr#tjdƒtStS(Nis Ã»ÓÐÕ½ÃË£¬²»ÄܽøÈëÕ½ÃËboss¸±±¾£¡(t GetFamilyIDRtDebugLogtFalsetTrue(RR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyR\s cCs|S(N((RRtlineIdtipyEnterPosInfoR ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytOnGetFBEnterPosmscCsZtjd|jƒƒ|jƒ}tjd|ƒ|dkrGtjSt|ƒ}tjS(NsOnChangeMapAsk  CopyMapID=%ssOnChangeMapAsk playerIDStr=%stt0(ss0(RRt GetCopyMapIDtGetMsgt IPY_GameWorldt    cmeCustomtintt    cmeAccept(taskR t playerIDStrtplayerID((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytOnChangeMapAskus   cCsÍtjƒjƒ}|jƒ}t||ƒs>tj|ƒdStjƒ}tjƒ}t|ƒ}|sytj|ƒdS|j    t
j d|t ƒtj d|ƒtjƒjtjƒ}|jt|ƒ|dkr¼|jt||dƒ|jt|dƒ|jt|dƒ|jt|dƒ|jt|dƒ|jt|dƒtj|ƒtj|tjƒtj|tjƒt j!|tjdtj"ƒt#j$|tj%dƒnt&||ƒdS(NiscloseFB_RemainTick=%si('Rt GetGameWorldtGetMapIDt GetPlayerIDRRt PlayerLeaveFBRt__GetRemainTickt Sync_TimeTickR!t tttTowerTakeRRtGetGameWorldDictByKeyt ShareDefinetDef_Notify_WorldKey_ServerDaytGameFBDict_LastEnterFbDaytSetGameWorldDicttFBPlayerDict_TotalExptFBPlayerDict_TotalExpPointtFBPlayerDict_TotalPointtFBPlayerDict_HasCollecttFBPlayerDict_HasSitRtClearAreaRewardRecordtAddEnterFBCountRtDef_FBMapID_FamilyPartyt PlayerFamilytAddFamilyActivitytFamilyActive_Partyt EventReportt WriteEvent_FBt CME_Log_StarttPlayerFairyCeremonytAddFCPartyActionCnttDef_PPAct_FamilyPartytDoFBHelp(RR RR'R t    gameWorldtcloseFB_RemainTickt openServerDay((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyt    DoEnterFB’s8        cCsStjƒjƒ}tjƒjtƒ}tdtj|ƒdd||ƒ}|S(Niiè(    RtGetMapR*R)R0RtmaxRtGetFBLineStepTime(R Rt    startTickRH((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyR-¶s(c    CsŸtjƒjƒ}|sdStjƒ}|jƒ}|tkrhtjtj    ƒr›tj
t |ƒq›n3|t kr›tjtj    ƒsÌtj |t dƒgt_tj
t|ƒtjƒtj|ƒq›tj |t dƒtjƒjƒ}|jtjƒ}tj|ƒd}|t|ƒkr›||}tdt|ƒdƒ}||ddkr˜tj|d|gƒtjƒjtj|dƒq˜q›ndS(Nii'iiètParty_OverTime(RR)t GetPropertyIDRt    GetFBStept FB_Step_OpenRtGetFBFuncOpenStateRR<t    SetFBSteptFB_Step_FightingtNotifyCopyMapPlayerFBHelpRFt
PyGameDatatg_familyPartyInfot FB_Step_OverRtGameWorldProcesstCloseFBRKR*tGetGameFBDictByKeyR RMtlenRLR-Rt FamilyNotifyR
(    R tfamilyIDR tfbStepRt notifyIndextnotifySecondListt notifySecondt remaindTick((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyt    OnProcessÂs4        
 
&cCs¥tjddƒ\}}tj||ttjtƒtj|ƒj|ƒ|j    t
j ƒ}tj |t
j |dƒt jƒjƒt
jkr¡t|dƒndS(Nt PartyRewardiii(t IpyGameDataPYtGetFuncEvalCfgR=tAddPlayerFamilyActiveValueRR1tDef_AddFAVReason_FamilyPartyRtAddExptNomalDictGetPropertyRRRRRKR*R<RF(RtaddPointtaddExpt curAnswerCnt((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytFamilyPartyAnswerRightèscCs_tjd|ƒtjƒjƒ}|tjkr6dS|dkr[tjƒjt|ƒndS(Ns!    ÏÉÃËÑç»á»î¶¯×´Ì¬±ä¸ü state=%si(    RRRKR*RR<R)R4R(tstateR R((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytOnFamilyPartyStateChangeýs  cCsd|jƒS(Ns%s(R+(RR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytGetPlayerResetWorldPosFBMsg$scCs|jƒ}tj|ƒdS(N(R+RR,(RR t curPlayerID((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyt OnLeaveFamily,s  cCstS(N(R(((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytOnPlayerReborn7scCs&tjƒ}|jƒ}tj||ƒ}|jtjƒ}tj    ddƒ\}}|j
t |ƒ}|j
t |ƒ}    ||    tj |||}|tj }|tj }    |j
t|ƒ}
|
||7}
|j
t|ƒ} |j
t|ƒ} |j
tj|ƒ} | tjddƒkr,dnd}i|tj6|    tj6|
tj6| d6|d6| d    6}tjrþg}xNttjddƒD]6\}}|ji|d
6|dd 6|dd 6ƒq‘W||d <itjdd 6tjdd 6|d<ntjd||ƒtj||ƒdS(NRfitFamilyPartyAreaAwardiiit
hasCollectt    isFullExpthasSittranktnametcnttfamilyPartyRanktfamilyPartyTops DoFBHelp %s(RR)R+RtGetFBAreaRewardExpRlRRRgRhR0R5R6tDef_PerPointValueR7R8R9tMap_Player_AreaReward_GetCntt
GetFuncCfgtHelp_expt Help_expPointt
Help_scoreRWRXt    enumeratetappendRt Notify_FBHelp(RR RGR'ttotalExpRoRmRntexptexpPointt
totalPointRxRztgetCnttisFullthelpDicttrankListtitinfo((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyRF@s4    $9    #.
)cCstjƒjt|jƒƒ}|r9tj|dƒdSttj    ddƒƒ}t
j |t j |ƒ}||kr‰tj|dƒdStS(NtParty_HadCollectedtFamilyPartyDeskitGeRen_chenxin_998371(RR)R0R8tGetIDRt
NotifyCodeR]RgRht
ItemCommontGetItemPackSpaceR!trptItemR(RtcurNPCR Rxt    needSpacet    packSpace((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyt OnCanCollecths cCstjddƒdS(NR•iiè(RgRƒ(RRœ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pytGetFBPrepareTimezsc Cs|jƒ}tjƒ}|jt|dƒtjd|ƒtjddƒ}x6|D].\}}}tj    ||||t
j gƒqUWtj dƒ}    t j|d|    gƒtj||    ttjƒ|jt|ƒ}
|
|    } |jt|| ƒt|dƒdS(Nis    Ñç»á²É¼¯³É¹¦£¡R•itParty_CollectSuccessi(R—RR)R4R8RRgRht ItemControlertGivePlayerItemR!R›RƒRR˜R=RiRR1RjR0R7RF( RtnpcIDR R'RGt    itemAwardtitemIDt    itemCounttisBindRmRtupdPoint((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyt OnCollectOKƒs  #
 cCsëtjƒ}|jƒ}|dkr$|}|jƒtjtjgkr\tjd|ƒdS|jt    |ƒ}|r‰tj
d|ƒdStj ƒ}|j |ƒ}    |    sÂtjd||ƒdS|j ƒ|jƒ|jt    |ƒsç|    jƒtjtjgkr!|    j ƒ|    jƒq!qçnÃ|dkrç|jt    |ƒ}|r]tj
d|ƒdS|jƒ}
tjƒjtjƒ} ttjddƒƒ} d} | rÃtj|| ttdƒ} n|jƒ}
tj|ƒ}ttjdƒƒ}|r‡tj|ƒj|ƒ|jt|ƒ}|jt|ƒ}|tj||| }|jt||tjƒ|jt||tjƒn|jt    |dƒt |dƒ|jƒtjkrÊ|j!ƒntjd    | || fƒndS(
Nis!ÑûÇë´ò×ø,Íæ¼ÒÒÑ´¦ÓÚ´ò×ø»ò²É¼¯×´Ì¬sÑûÇë´ò×ø,Íæ¼ÒÒÑ´ò×ø¹ýÒ»´ÎsÑûÇë%s´ò×ø,¸ÃÍæ¼Ò²»ÔÚ¸±±¾Àïis´ò×ø½áÊø¸ø½±Àø,Íæ¼ÒÒÑ´ò×ø¹ýÒ»´ÎtFamilyPartySitAwardis/    ´«¹¦½áÊø£¬giveLV=%s, giveExp=%s, worldlv=%s("RR)R—tGetPlayerActionR!tpaSitt paPreparingRR0R9tLogtGetMapCopyPlayerManagertFindPlayerByIDtStopMovetSittGetLVR1t"Def_Notify_WorldKey_WorldAverageLvtevalRgtGetFuncCompileCfgt
Item_AddLVt    DoAddLVExRRtGetPlayerReExpRkR5R6RRR4RFtStand(Rt
actionTypet
actionInfoR RGR't tagPlayerIDRztcopyMapPlayerManagert    tagPlayertreLVtworldlvtgiveLVRntreExptgiveExpR‹RŒt newTotalExp((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyt
DoFBActionžsb    
 
 
     (/t__doc__R1RRR!RRR=RgRZRCR@RWR™R¢R¸trangeRRRURYRR3R5R6R7R8R9RRRRRRR(RJR-ReRpRrRsRuRvRFRŸR RªRÇ(((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_FamilyParty.pyt<module>sV                                                         $         &        '                     (