NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

channelnames.py (1351B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\chatutil\channelnames.py
      2 import re
      3 from eve.common.script.sys.idCheckers import IsWormholeSystem, IsTriglavianSystem, IsZarzakh
      4 from chatutil.const import CATEGORY_LOCAL_SUPPRESSED, CATEGORY_LOCAL, CATEGORY_WORMHOLE, CATEGORY_NULLSEC, CATEGORY_TRIGLAVIAN
      5 from chat.common.util import is_local_chat_suppressed
      6 from eveprefs import prefs
      7 from eveuniverse.security import is_zero_sec_solar_system
      8 VALID_CHANNELNAME_REGEX = re.compile('^[a-z0-9]+_[a-z0-9_-]+')
      9 
     10 def IsValidChannelName(channelName):
     11     return VALID_CHANNELNAME_REGEX.match(channelName)
     12 
     13 
     14 def GetIncursionChannelName(taleId):
     15     return 'incursion_{0}'.format(taleId)
     16 
     17 
     18 def GetSessionBasedChannelName(prefix, channelId):
     19     if prefix == CATEGORY_LOCAL:
     20         if is_local_chat_suppressed(channelId):
     21             prefix = CATEGORY_LOCAL_SUPPRESSED
     22         elif IsZarzakh(channelId):
     23             prefix = CATEGORY_WORMHOLE
     24         elif IsWormholeSystem(channelId):
     25             prefix = CATEGORY_WORMHOLE
     26         elif is_zero_sec_solar_system(channelId) and bool(prefs.GetValue('local_blackout', False)):
     27             prefix = CATEGORY_NULLSEC
     28         elif IsTriglavianSystem(channelId):
     29             prefix = CATEGORY_TRIGLAVIAN
     30     channelName = '{0}_{1}'.format(prefix, channelId)
     31     return channelName