hwj35
2025-06-23 aa0f971ae9a59f0fd98d57b6c1d1663a270be92c
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
hK‹bc@sÈddlZddlZddlZddlZddlZddlZddlZddlZdd d„ƒYZd„Z    d„Z
d„Z d„Z d„Z d    „Zd
„Zd „Zd „ZdS(iÿÿÿÿNt
PYPositioncBs/eZdZdZd„Zd„Zd„ZRS(icCs||_||_dS(N(t_PYPosition__PosXt_PYPosition__PosY(tselftposXtposY((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pyt__init__/s    cCs|jS(N(R(R((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetPosX7scCs|jS(N(R(R((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetPosY=s(t__name__t
__module__RRRRR(((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pyR(s
        cCsçtjƒ}xËtd||ƒD]¶}tj||||ƒ}tj||||ƒ}||krx||krxq n|j||ƒtkr–q n|j||ƒ}|s´q n|jƒdkrÌq nt    ||ƒSWt    ||ƒS(Ni(
t    GameWorldtGetMaptrangetrandomtrandinttCanMovetTruet    GetPosObjt GetObjCountR(RRtdisttgameMaptitresultXtresultYtmapObj((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetEmptyPlaceInAreaGs c
Cstjƒ}t|dƒ}xïtd||ƒD]Ú}tjd|ƒ}tjd|ƒ}tjddƒrx||}n
||}tjddƒr¡||}n
||}|j||ƒtkrÉq/n|j||ƒ}    |    sçq/n|    j    ƒdkrÿq/nt
||ƒSWt
||ƒS(Niii( R R tmaxR RRRRRRR(
RRRRRttmpXttmpYRRR((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetEmptyPlaceInSurroundds(  
 
c    Cs tjƒ}xïtd||ƒD]Ú}tj||||ƒ}tj||||ƒ}||krx||krxq n|j||ƒtkr–q ntj||||ƒ|krºq n|j||ƒ}|sØq n|j    ƒdkrðq nt
||ƒSWt
||ƒS(Ni( R R R RRRRt    GetDistExRRR(    RRtminDisttmaxDistRRRRR((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetEmptyPlaceInAreaExs" cCs˜tjƒ}x|D]w}||d}||d}|j||ƒsMqn|j||ƒ}|skqn|jƒdkrƒqn||fSW||fS(Nii(R R RRR(RRtmatrixRtcurPosRRR((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetPosByMatrix³s   c CsÈtjƒ}g}x¯|D]§\}}||}||}    |j||    ƒ}
|
sWqnxftd|
jƒƒD]O} |
j| ƒ} tj| ƒs—qmn| jƒ|kr¯qmn|j    | ƒqmWqW|S(Ni(
R R RR Rt GetObjByIndext AttackCommontCheckObjCanDoLogictGetGameObjTypetappend( t
centerPosXt
centerPosYtareaMatrixListt paramTypeListRt findObjListt
curAddPosXt
curAddPosYtcurPosXtcurPosYRRtcurObj((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetAreaGameObjByTypeÕs  
 
cCsštjƒ}xktd||ƒD]V}tj||||ƒ}tj||||ƒ}|j||ƒr ||fSq W|j||ƒr–||fSdS(Ni(ii(R R R RRR(RRRRRRR((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetNearbyPosByDis÷s 
cCsÑtjƒj||ƒ}|s%tjStj}xœt|jƒƒD]ˆ}|j|ƒ}|dkrhqAn|tj    kr~tj
S|tjkr“qAn|tj kr®tj }n|tj krAtj}qAqAW|S(Ni(R R Rt IPY_GameWorldt    gatNormaltxrangetGetEffectCountt GetEffectIDtChConfigtDef_AreaType_SkillID_SafetgatSafetDef_AreaType_SkillID_FreePKt    gatFreePKtDef_AreaType_SkillID_FamilyPKt gatFamilyPK(RRt    curPosObjtareaTypetindexteffectID((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetAreaTypeByMapPos s"      cCsktjƒj||ƒ}|s"tS|jƒ}x6td|ƒD]%}|j|ƒ}||kr>tSq>WtS(Ni(R R RtFalseR:R R;R(RRt findEffectIDRCt effectCountRERF((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytGetAreaBuffIsExist*s  c
CsFddl}ddl}|jtjƒjƒƒ}tjd|ƒ}|sOdS|jƒ}tj    d||ƒxÐ|D]È}|j
ƒ}|j ƒ}d}    d|}
d|} t t |
ƒrÿt t | ƒrÿtt |
ƒ} tt | ƒ} | |ƒ}d}    n¼t ||
ƒrPt || ƒrPt||
ƒ} t|| ƒ} | |ƒ}d}    nkt ||
ƒržt || ƒržt||
ƒ} t|| ƒ} | ƒ}d    }    ntjd
||f|ƒqv|jƒrÖt|ƒ}n"ttjd ||f|ƒƒ}|    d    kr| |ƒn | ||ƒtj    d ||||    f|ƒqvWdS( NiÿÿÿÿtSpecMapPlayerAttrFormatsÌØÊâµØÍ¼ÉèÖÃÊôÐÔ: dataMapID=%stsGet%ssSet%stGameObjt PlayerControlt    curPlayers=ÌØÊâµØÍ¼ÉèÖÃÊôÐÔÒì³££¬²»´æÔÚ¸ÃÊôÐÔ£¡ dataMapID=%s,attrName=%ssSpecMapAttr_%s_%ss'    attrName=%s,value=%s,setValue=%s,%s(tFBCommonROtGetRecordMapIDR R tGetMapIDt IpyGameDataPYtGetIpyGameDataListNotLogt GetPlayerIDtDebugLogt GetAttrNametGetAttrValueFormatthasattrRNtgetattrtErrLogtisdigittinttevaltFormulaControltGetCompileFormula(RPRQROt    dataMapIDt ipyDataListtplayerIDtipyDatatattrNametattrValueFormatt    attrOwnert getFuncNamet setFuncNametgetFunctsetFunctvaluetsetValue((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pytSpecialMapSetAttrValueByFormat6sN      
 
                   "   $((R RR<R'R7R`RTRNRRRR"R%R5R6RGRKRo(((sdE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Map\GameMap.pyt<module>s"                )    &    "    "