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

killReportUtil.py (1605B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\killReportUtil.py
      2 from carbon.common.script.util.commonutils import StripTags
      3 from carbonui import uiconst
      4 from carbonui.uicore import uicore
      5 SCHEME_KILL_REPORT = 'killReport'
      6 
      7 def CleanKillMail(killMailText):
      8     ret = killMailText
      9     if '<localized' in ret:
     10         ret = ret.replace('*</localized>', '</localized>')
     11         ret = StripTags(ret, stripOnly=['localized'])
     12     return ret.replace('<br>', '\r\n').replace('<t>', '   ')
     13 
     14 
     15 def OpenKillReport(kill, *args):
     16     if uicore.uilib.Key(uiconst.VK_SHIFT):
     17         windowID = 'KillReport_%i' % kill.killID
     18     else:
     19         windowID = 'KillReportWnd'
     20     from eve.client.script.ui.shared.killReport import KillReportWnd
     21     wnd = KillReportWnd.GetIfOpen(windowID)
     22     if wnd:
     23         wnd.LoadInfo(killmail=kill)
     24         wnd.Maximize()
     25     else:
     26         KillReportWnd.Open(create=1, killmail=kill, windowID=windowID)
     27 
     28 
     29 def register_link_handlers(registry):
     30     registry.register(scheme=SCHEME_KILL_REPORT, handler=handle_kill_report_link, hint='UI/Corporations/Wars/Killmails/KillReport')
     31 
     32 
     33 def handle_kill_report_link(url):
     34     kill_id, hash_value = parse_kill_report_url(url)
     35     kill = sm.RemoteSvc('warStatisticMgr').GetKillMail(kill_id, hash_value)
     36     if kill is not None:
     37         OpenKillReport(kill)
     38 
     39 
     40 def parse_kill_report_url(url):
     41     _, kill_id, hash_value = url.split(':')
     42     return (int(kill_id), hash_value)
     43 
     44 
     45 def format_kill_report_url(kill_id, hash_value):
     46     return u'{}:{}:{}'.format(SCHEME_KILL_REPORT, kill_id, hash_value)