hxp
2025-06-12 59331b7135fb10c24382d76fb0a3d721dddca7ee
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
ê[0hc@söddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z idej 6dej6Zd„Zd„Zed„Zd„Zdd    „Zd
„ZdS( iÿÿÿÿNiidcCst|ƒdS(N(tNotifyTalkCache(t    curPlayer((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTalk.pyt OnPlayerLogin&s
c
Cs'tjƒj|ƒ}|jƒ}|jƒ}|j}|j}|tjkrk|s­t    j
|dƒdSnB|tj kr­tj ƒrŠdSt jƒs­t    j
|dƒdSnt||||ƒsÆdS|j|ƒ|jtj||ƒ|tj krýdSt    j|ƒ}tjƒ}    ||    _||    _|jƒ|    _t|    jƒ|    _||    _t|    jƒ|    _||    _|jƒ|    _|j ƒ|    _!|j"ƒ|    _#|j$ƒ|    _%|j&ƒ|    _'tj(|ƒ|    _)|tj*krët+j,|    ƒn"|tjkr t-j.||    ƒnt/|||||ƒdS(Nt jiazu_lhs_0tCrossMatching18(0t    GameWorldtGetPlayerManagertGetPlayerByIndext GetPlayerIDt GetFamilyIDt ChannelTypetContentt IPY_GameWorldttcFamilyt PlayerControlt
NotifyCodet    tcCountryt IsCrossServertCrossRealmPlayertIsCrossServerOpent __CheckTalktSetLastChatTicktSetDicttChConfigtDef_ChannelTalkTicktGetChatBubbleBoxtChPyNetSendPackt    tagMCTalktPlayerIDt GetPlayerNametNametlentNameLentLent    BubbleBoxtGetLVtLVtGetJobtJobtGetOfficialRanktRealmLVtGetFacetFacet
GetFacePictFacePictGetPlayerServerIDtServerIDttcWorldt NetPackCommontSendFackPackOnlinet PlayerFamilytBroadcast_FamilyPackt DoTalkCache(
tindext
clientDatattickRtplayerIDtfamilyIDt channelTypetcontentt    bubbleBoxt
clientPack((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTalk.pytOnTalk3sT                              c    Cs0|rt|ƒrtS||jƒtjkr3tS|dkrÝtjddiƒ}t|ƒ|krÝ|t|ƒd}|j    tj
|ƒ}|||}|dkrÚt j |dt tj|dƒƒgƒtSqÝnt|ƒtjkrt j |dƒtS|jƒdkr,t j |d    ƒtStS(
NtTalkCDiièit CanootTalk01g@@t CanootTalk13tt CanootTalk14(tGetGMToolForbidTalktFalsetGetLastChatTickRtDef_PlayerTalkTicktNonet IpyGameDataPYtGetFuncEvalCfgtstrt GetDictByKeyRRRtinttmathtceilRtDef_PlayerTalkMaxCounttstriptTrue(    RR:R;R7tcheckGMForbidenTalkt
talkCDDicttcdTickst lastTalkTickt
remainTick((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTalk.pyRjs(  )
cCs
|jƒS(N(tGetGMForbidenTalk(R((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTalk.pyRDsic Cs|tkrdStjddiƒ}tt||j|dƒƒ}|tjkr´tjƒj    |t
j ƒ}|j |ƒ}|j |ƒ|j|ƒ|jƒji|d6ƒn^tjƒjt
j|ƒ}    |    j|ƒ}
|
j |ƒ|
j|ƒ|
jƒji|d6ƒdS(Nt    TalkCacheiiR;(tChannelCacheMaxRIRJtmintgetR R t    DBDataMgrtGetFamilyActionMgrtGetFamilyActiont ShareDefinetDef_ActionType_TalkCachet    AddActiont    SetValue1t    SetValue2t GetUserDicttupdatet GetGameRecMgrtGetRecTypeIDMgrtDef_GameRecType_TalkCachet
AddRecData( R:R8R;R<R9t cacheMaxDicttmaxCounttfamilyActonMgrt
actionDatat recTypeIDMgrtrecData((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTalk.pyR4’s      cCsýxötjƒD]è}g}|tjkrì|jƒ}|s@q ntjƒj|tj    ƒ}x7t
|j ƒƒD]w}|j |ƒ}|j ƒ}|jƒ}|jƒ}    |jƒjddƒ}
|
sÌ|
n|j|||    |
gƒqnWn©tjƒjtj|ƒ} x‹t
| jƒƒD]w}| j |ƒ} | j ƒ}| jƒ}| jƒ}    | jƒjddƒ}
|
sx|
n|j|||    |
gƒqW|s¡q ng} xÿ|D]÷\}}}    }
tj|ƒ}|sÛq®ntjƒ}||_|jƒ|_t|jƒ|_|
|_ t|j ƒ|_!|    |_"|j#ƒ|_$|j%ƒ|_&|j'ƒ|_(|j)ƒ|_*|j+ƒ|_,|j-ƒ|_.||_/| j|ƒq®W| sµq ntj0ƒ}||_1| |_2t|j2ƒ|_ t3j4||ƒq WdS(NR;RB(5RZtkeysR R R    R]R^R_R`RatrangetCounttAttGetTimet    GetValue1t    GetValue2ReR\tappendRgRhRitGetCounttPlayerViewCachet FindViewCacheRttagMCTalkCacheInfoRRRRR R R!R"R#R$R%R&t
GetRealmLVR(R)R*R+R,t GetServerIDR.tTalkTimettagMCTalkCacheListR
tInfoListR0t SendFakePack(RR:t    cacheListR9RmR5RnttalkTimeR8R<R;RoRpt packCacheListt    viewCachet    talkCacheR=((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTalk.pyRªsp                                  (RRR`R RRRzR0RIRR2R]RNR R/RZRR>RRRRDR4R(((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTalk.pyt<module>s(                        7 #