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
\¿lhc@s”ddlZddlZddlZddlZddlZddlZddlZddlZd„Zd„Z    dd„Z
d„Z d„Z dS(iÿÿÿÿNcCsØtj|dƒ|sYtj|dƒtj|dƒtj|dƒtj|dƒnq|d}|s›t|ƒdkr…|dnd}t||ƒn/t|ƒdkr·|dnd}t||ƒt|ƒdS(Ns--------------s¿ªÆôËùÓй¦ÄÜ: OpenFunc 1s¿ªÆôÖ¸¶¨¹¦ÄÜ: OpenFunc 1 ¹¦ÄÜIDs¹Ø±ÕËùÓй¦ÄÜ: OpenFunc 0s¹Ø±ÕÖ¸¶¨¹¦ÄÜ: OpenFunc 0 ¹¦ÄÜIDii(t    GameWorldt DebugAnswertlent DoGMCloseFunct DoGMOpenFunctPrintFuncOpenState(t    curPlayertcmdListtstatet closeFuncIDt
openFuncID((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GM\Commands\OpenFunc.pytOnExec s
"" 
c Csºg}g}tjƒ}|jƒ}xmt|ƒD]_}|j|ƒ}|jƒ}tj|tj    |t
ƒ}|rƒ|j |ƒq1|j |ƒq1Wtj |dt |ƒ|fƒt |ƒt |ƒkr%xVt|ddƒD]=}||d|dd!}    |    s
Pntj |d|    ƒqáWntj |dt |ƒ|fƒt |ƒt |ƒkr¶xVt|ddƒD]=}||d|dd!}
|
s›Pntj |d|
ƒqrWndS(NsÒÑ¿ªÆôµÄ¹¦ÄÜÊý: %s/%si
is%ss먦ÆôµÄ¹¦ÄÜ: %s/%s(t IpyGameDataPYtIPY_DatatGetFuncOpenLVCounttxrangetGetFuncOpenLVByIndext    GetFuncIdRtGetDictValueByBittChConfigt"Def_Player_Dict_GameFuncFirstTouchtTruetappendRRtrange( RtopenFuncIDListtunOpenFuncIDListt
ipyDataMgrtfuncOpenLVCounttitipyDatatfuncIDtisOpentopenListt
unOpenList((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GM\Commands\OpenFunc.pyR3s4     ic Csg}|rHtj||ƒr<tjd||jƒƒdS|g}n|ržt||ƒ\}}}}|r‚|jtjƒn|rž|jtj    ƒqžnt||ƒ\}}}}tjd|||f|jƒƒ|r(|d}|j
|ƒt j |t j |ƒƒt j |ƒjƒntjd||jƒƒxQ|D]I}|d|d}    }
x+t|
dƒD]} tj||    | ƒquWqIWtjd||jƒƒ|rà|jtd|dƒƒtj|ƒntjd||jƒƒtj||ƒdS(Ns(¹¦ÄÜÒÑ¿ªÆô£¬²»ÐèÒªÖØ¸´¼¤»î!openFuncID=%ss=GM´¦ÀíµÈ¼¶¿ªÆô¹¦ÄÜ: openFuncID=%s,openFuncIDList=%s,needLV=%sis,GM´¦Àí·¨±¦¿ªÆô¹¦ÄÜ: needMagicWeaponIDList=%sids"GM´¦Àí¾³½ç¿ªÆô¹¦ÄÜ: needRealmLV=%ss(GM´¦ÀíÈÎÎñ¿ªÆô¹¦ÄÜ: needMissionIDList=%s(t GameFuncCommt GetFuncCanUseRtDebugLogt GetPlayerIDt__GetOpenFuncLimitRt ShareDefinetGameFuncID_MagicWeapontGameFuncID_OfficialtSetLVt PlayerControltSetPlayerTotalExptGetTotalExpByPlayerLvt
PlayerLvUpRtPlayerMagicWeapont
DoActiveMWtSetOfficialRanktmaxtPlayerPrestigeSystDoRealmLVUpLogictDoFuncOpenLogic( RR
RtneedLVtneedMagicWeaponIDListt needRealmLVtneedMissionIDListtpreLVtmwIDKeytmwIDtmwLVtlv((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GM\Commands\OpenFunc.pyRRs> #
  c    CsOtj|ƒ}d}d}g}g}tjƒ}|jƒ}xýt|ƒD]ï}    |j|    ƒ}
|
jƒ} |r…| |kr…qLn|
jƒ} | r¸| |kr¸|| kr¸| }n|
j    ƒ} | ræ| |kræ|j
| ƒn|
j ƒ}|r ||kr |}n|
j ƒ}|rL||krL|j
|ƒqLqLW||||fS(Ni( R+tGetPlayerMaxLVR R RRRRt
GetLimitLVtGetLimitMagicWeaponRtGetLimiRealmLVtGetLimitMissionID(RRtmaxLVR6R8R9R7RRRRRtlimitLVtlimitMagicWeaponIDt limitRealmLVtlimitMissionID((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GM\Commands\OpenFunc.pyR&}s2               cCsº|s0|jdƒ|jdƒtjƒ}xIt|jƒƒD]5}|j|ƒ}tj|t    j
|j ƒdƒq?WxHtdƒD]:}tj|t    j |dƒtj|t    j |dƒq…Wt|gƒ\}}}}    x(|    D] }
tj|t    j|
dƒqåWtj|dtƒtj|dƒdStj||ƒs`tjd||jƒƒdStjd|ƒ}|s|dS|jƒ} | rÍ|jƒ| krÍ|jtd| dƒƒtj|dƒn|jƒ} | r|jƒ| kr|jtd| dƒƒn|jƒ} | rG| d}tj|t    j
|dƒn|j ƒ}|rvtj|t    j|dƒntj!|t    j |dƒtj|dtƒtj|d    |ƒdS(
Niiit isSyncUnOpens ¹Ø±ÕËùÓй¦ÄÜ!s*¹¦ÄÜÒѹرգ¬²»ÐèÒªÖØ¸´¹Ø±Õ! closeFuncID=%st
FuncOpenLVids ¹Ø±Õ¹¦ÄÜ: %s("R*R1R R RtGetTreasureCounttGetTreasureByIndexR+tNomalDictSetPropertyRtDef_PDict_MagicWeaponLVtGetIDRt"Def_Player_Dict_GameFuncAwardStateR&tDef_Player_Dict_MissionFinishR"tSync_FuncOpenStateRRRR#R$R%tGetIpyGameDataR@tGetLVR2R,RBtGetOfficialRankRARCtSetDictValueByBit(RR    RRRtkeyNumR6R7R8R9t    missionIDRERGRFR<RH((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GM\Commands\OpenFunc.pyRsP   $    
 ( RR+R3R/R R"RR'R RRR&R(((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GM\Commands\OpenFunc.pyt<module>s                 +