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
iâfc@s—ddlZddlZddlZddlZddlZddlZddlZddlZiad„Z    d„Z
d„Z d„Z d„Z dS(iÿÿÿÿNcCstjtƒ||ƒdS(N(t    GameWorldt GetPsycoFunct__Func_CreateRole(tindexttick((sUE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\CreateRole.pyt
CreateRoleBsc"1Cs—tjƒj|ƒ}|jƒ}|dkrAtj|dƒdSt|ƒratj|dƒdSd}|jƒ}|tkrŒ|t|<n2|t||kr´tj|dƒdS|t|<t    tƒdkr8g}x>tj
ƒD]0\}}|||dkrã|j |ƒqãqãWx|D]}tj |ƒqWnt jƒ}|jƒ}    d}
d    } d} d
} d}d}|jƒ}tjd |ƒ}|sœdS|jƒ}|jƒ}|jƒ}tjd dƒ}    |    sÜdStjd ||||||    f|ƒtjd dƒ}||kr4tj|dƒdSt|jƒƒ}|sttj|dƒtjd||ƒdS|\}}}}tjj||f|d
fƒ\}}d}|tj| |ƒ7}|tj| |ƒ7}d\}}} }!|j ||    dd
|
| | || |dd
d
dd
d
d
d
d
d
d
|||||d
ddd
d
||| |!dd
d
|dd
dt j!t j"dd||ƒ0dS(Ni't CreatSuccesstServerCreateRoleLimiti¸ tCreatingCharacteridièii'iRsC´´½¨½ÇÉ«: accID=%s,roleType=%s,job=%s,face=%s,modelMark=%s, name=%stOpenJobt CreatUnusuals(ûÓÐÖ°Òµ¶ÔÓ¦´´½ÇµØÍ¼ÐÅÏ¢:sendPack_Job=%stt111111iP(iiii(#RtGetPlayerManagertGetPlayerByIndextGetIDt PlayerControlt
NotifyCodetCheckIsServerCreateRoleLimittGetAccIDtg_CreateRoleAccIDtlentitemstappendtpoptIPY_GameServertIPY_CCreateRoletGetNametGetJobt IpyGameDataPYtGetIpyGameDatatGetFacet GetModelMarkt
GetFuncCfgtLogtGetFuncEvalCfgt__GetCreateRoleMapInfotGetCreateRoleMaptErrLogt
PyGameDatatg_commMapLineInfotgettrandomtrandinttSendToDBPlayerCreatetTYPE_Price_Gold_PapertTYPE_Price_Silver_Money("RRt    curPlayert curPlayerIDtcreateSafeTicktaccIDttmpDicttsafeTicktsendPackt sendPack_Namet sendPack_Sext sendPack_HairtsendPack_HairColortsendPack_FacePictserverIDtsendPack_PlayerTypetroleTypetipyDatatjobtfacet    modelMarktopenJobt createMapInfot    dataMapIDtlineIDtposXtposYtmapIDt    copyMapIDt    bornRangetbaseSTRtbasePNEtbasePHYtbaseCON((sUE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\CreateRole.pyRKsÖ      
       & 'cCs›tjƒ}tjƒ}x|t|jƒƒD]h}|j|ƒ}||jƒkrVtSx:|j    ƒD],\}}||ko†|knrctSqcWq+Wt
S(N( RtGetServerGroupIDRtIPY_DatatxrangetGetCreateRoleLimitServerCounttGetCreateRoleLimitServerByIndextGetLimitServerGroupIDListtTruetGetLimitServerGroupIDRangeListtFalse(R/tgroupIDt
ipyDataMgrtiR>tidAtidB((sUE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\CreateRole.pyRs   cCsª|jƒdkrtStj|ƒr:tjd|ƒtSt|ƒ}|tjkrvtjd||tjfƒtS|tj    kr¦tjd||tj    fƒtSt
S(NR s!Íæ¼Ò´´½¨½Çɫʧ°Ü, Ãû×Ö²»ºÏ·¨ = %ss-Íæ¼Ò´´½¨½Çɫʧ°Ü, ½ÇÉ«Ãû×Ö¹ý¶Ì = %s , %s < %ss-Íæ¼Ò´´½¨½Çɫʧ°Ü, ½ÇÉ«Ãû×Ö¹ý³¤ = %s , %s > %s( tstripRWt    DirtyListtIsWordForbiddenRR"RtChConfigtDef_CreatRole_MinStrtDef_CreatRole_MaxStrRU(R/t
playerNamet playerNameLen((sUE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\CreateRole.pytCheckPlayerNames c    CsV|\}}}tjddƒ}||kr=|d||fSd}tjddiƒ}||kr~td||dƒ}n||}d}g}    tjƒjƒ}
|
jƒ} xSt| ƒD]E} |
j    | ƒ} | j
ƒ}| j ƒ}xt|ƒD]}| j |ƒ}|j ƒ}|jƒ}x×t|ƒD]É}|j|ƒ}|j ƒ}|jƒ}|jƒ}|jƒ}||krŠq3n|dkr¨||kr¨q3n||krÊ|    j||gƒq3| ræ|dkræ|}q3|r3||||fSq3WqùWq¿W|dkr$||||fS|    s.dS|    jƒ|    dd}||||fS(sX»ñÈ¡´´½ÇÖØÉúÐÂÊÖ´åµØÍ¼
    @return: None
    @return: dataMapID, lineID, posX, posY
    tSetWorldPosShuntiitMapLineiN(RR#tmaxtNoneRt GetGameWorldtGetMapServerStateManagertGetZoneServerCnttrangetGetZoneServerByIndextGetRouteServerIndext GetMapCounttGetMapServerStateByIndextGetMapIDt GetLineCounttGetLineByIndext    GetLineIDtGetCurPlayerCnttGetMaxPlayerCntRtsort(t createRoleMaptcreateRoleDataMapIDRFRGtmapShuntInfoDicttactivityLineIndextactivityMapLineDicttlineMaxPlayerCountt emptyLineIDt heavyLineListtmapServerStateManagert zoneServerCntt    zoneIndextzoneServerStatetrouteServerIndextmapCountRZtmapServerStateRDt    lineCountt    lineIndext    lineStateREt curPlayerCntt maxPlayerCntt heavyLineID((sUE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\CreateRole.pyR$)sX  
                
(RRR^RR*R`RR'RRRRReR$(((sUE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\CreateRole.pyt<module>s        !            ¸