From 5f4570911837c96f6904d4b79a517259f3bb5260 Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Tue, 7 Jul 2020 15:48:30 +0800 Subject: [PATCH 01/13] i18n: annotate pyfa_gauge.py --- gui/pyfa_gauge.py | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/gui/pyfa_gauge.py b/gui/pyfa_gauge.py index 056ca1dfc..cd83f3eca 100644 --- a/gui/pyfa_gauge.py +++ b/gui/pyfa_gauge.py @@ -20,6 +20,8 @@ import wx from gui.utils import anim_effects, color as color_utils, draw +_t = wx.GetTranslation + class PyGauge(wx.Window): def __init__(self, parent, font, max_range=100, size=(-1, 30), *args, **kargs): @@ -326,33 +328,33 @@ class PyGauge(wx.Window): r.top += 1 if self._max_range == 0.01 and self._value > 0: - format = u'\u221e' # infinity symbol + format_ = u'\u221e' # infinity symbol # drop shadow dc.SetTextForeground(wx.Colour(80, 80, 80)) # dark grey - dc.DrawLabel(format, r, wx.ALIGN_CENTER) + dc.DrawLabel(format_, r, wx.ALIGN_CENTER) # text dc.SetTextForeground(wx.WHITE) - dc.DrawLabel(format, rect, wx.ALIGN_CENTER) + dc.DrawLabel(format_, rect, wx.ALIGN_CENTER) else: if not self.GetBarColour() and self._show_remaining: # we only do these for gradients with mouse over - range = self._max_range if self._max_range > 0.01 else 0 - value = range - self._value + range_ = self._max_range if self._max_range > 0.01 else 0 + value = range_ - self._value if value < 0: - label = "over" + format_ = _t("{{0:.{0}f}} over").format(self._fraction_digits) value = -value else: - label = "left" - format = "{0:." + str(self._fraction_digits) + "f} " + label + format_ = _t("{{0:.{0}f}} left").format(self._fraction_digits) + else: - format = "{0:." + str(self._fraction_digits) + "f}%" + format_ = "{{0:.{0}f}}%".format(str(self._fraction_digits)) # drop shadow dc.SetTextForeground(wx.Colour(80, 80, 80)) - dc.DrawLabel(format.format(value), r, wx.ALIGN_CENTER) + dc.DrawLabel(format_.format(value), r, wx.ALIGN_CENTER) # text dc.SetTextForeground(wx.WHITE) - dc.DrawLabel(format.format(value), rect, wx.ALIGN_CENTER) + dc.DrawLabel(format_.format(value), rect, wx.ALIGN_CENTER) def OnTimer(self, event): old_value = self._old_percentage From 605addd0d6d1117e78289e2d71a80b61a543269b Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Tue, 7 Jul 2020 15:50:08 +0800 Subject: [PATCH 02/13] i18n/zh_CN: update translation for pyfa_gauge.py --- locale/zh_CN/LC_MESSAGES/lang.po | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/locale/zh_CN/LC_MESSAGES/lang.po b/locale/zh_CN/LC_MESSAGES/lang.po index f4c02fd32..a5daf1e5b 100644 --- a/locale/zh_CN/LC_MESSAGES/lang.po +++ b/locale/zh_CN/LC_MESSAGES/lang.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: pyfa 2.22.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-07-01 11:18+0800\n" -"PO-Revision-Date: 2020-07-01 11:19+0800\n" +"POT-Creation-Date: 2020-07-07 15:40+0800\n" +"PO-Revision-Date: 2020-07-07 15:41+0800\n" "Last-Translator: zhaoweny \n" "Language-Team: Chinese (simplified)\n" "Language: zh_CN\n" @@ -2806,6 +2806,16 @@ msgstr "{0}市场分类" msgid "{context}Stats: {name}{debug_info}" msgstr "{context}属性:{name}{debug_info}" +#: gui/pyfa_gauge.py:347 +#, python-brace-format +msgid "{{0:.{0}f}} left" +msgstr "剩余{{0:.{0}f}}" + +#: gui/pyfa_gauge.py:344 +#, python-brace-format +msgid "{{0:.{0}f}} over" +msgstr "超出{{0:.{0}f}}" + #: gui/builtinContextMenus/moduleSpool.py:83 msgid "{} (default)" msgstr "{}(默认值)" From 5a458634324938e18be5575afdc720d1ce96b2ed Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Tue, 7 Jul 2020 16:08:55 +0800 Subject: [PATCH 03/13] i18n: add translation mapping for service slot --- gui/builtinViewColumns/baseName.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gui/builtinViewColumns/baseName.py b/gui/builtinViewColumns/baseName.py index 88f93e3c3..6e98aa71c 100644 --- a/gui/builtinViewColumns/baseName.py +++ b/gui/builtinViewColumns/baseName.py @@ -60,7 +60,8 @@ class BaseName(ViewColumn): FittingSlot.MED: _t('Med'), FittingSlot.LOW: _t('Low'), FittingSlot.SUBSYSTEM: _t('Subsystem'), - FittingSlot.RIG: _t('Rig') + FittingSlot.RIG: _t('Rig'), + FittingSlot.SERVICE: _t('Service') } From da2ec4d7595eb4c6e7d6c053e58fa0b0dac1c6d9 Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Tue, 7 Jul 2020 16:09:56 +0800 Subject: [PATCH 04/13] i18n/zh_CN: update translation for service slot --- locale/zh_CN/LC_MESSAGES/lang.po | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/locale/zh_CN/LC_MESSAGES/lang.po b/locale/zh_CN/LC_MESSAGES/lang.po index a5daf1e5b..393d17621 100644 --- a/locale/zh_CN/LC_MESSAGES/lang.po +++ b/locale/zh_CN/LC_MESSAGES/lang.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: pyfa 2.22.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-07-07 15:40+0800\n" -"PO-Revision-Date: 2020-07-07 15:41+0800\n" +"POT-Creation-Date: 2020-07-07 16:06+0800\n" +"PO-Revision-Date: 2020-07-07 16:09+0800\n" "Last-Translator: zhaoweny \n" "Language-Team: Chinese (simplified)\n" "Language: zh_CN\n" @@ -2247,6 +2247,10 @@ msgstr "传感器强度" msgid "Separate Racks" msgstr "分隔不同槽位类型" +#: gui/builtinViewColumns/baseName.py:64 +msgid "Service" +msgstr "服务" + #: gui/characterEditor.py:907 msgid "Set Security Status" msgstr "设置安全等级" @@ -2419,7 +2423,7 @@ msgid "Sustained" msgstr "持续回充" #: gui/builtinContextMenus/shipModeChange.py:37 -#: gui/builtinViewColumns/baseName.py:101 gui/builtinViews/fittingView.py:657 +#: gui/builtinViewColumns/baseName.py:102 gui/builtinViews/fittingView.py:657 msgid "Tactical Mode" msgstr "战术模式" @@ -2828,6 +2832,6 @@ msgstr "复制{}" msgid "{} Stats" msgstr "{}属性" -#: gui/builtinViewColumns/baseName.py:103 +#: gui/builtinViewColumns/baseName.py:104 msgid "{} {} Slot" msgstr "{} {}槽" From ffbae4826d5de59b6f29fa3cd95046fccd2a5704 Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Tue, 7 Jul 2020 17:13:47 +0800 Subject: [PATCH 05/13] i18n/zh_CN: tweaks for Chinese translation --- locale/zh_CN/LC_MESSAGES/lang.po | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/locale/zh_CN/LC_MESSAGES/lang.po b/locale/zh_CN/LC_MESSAGES/lang.po index 393d17621..c7f00ecbf 100644 --- a/locale/zh_CN/LC_MESSAGES/lang.po +++ b/locale/zh_CN/LC_MESSAGES/lang.po @@ -2,13 +2,13 @@ # Copyright (C) 2020 THE pyfa'S COPYRIGHT HOLDER # This file is distributed under the same license as the pyfa package. # zhaoweny , 2020. -# +# msgid "" msgstr "" "Project-Id-Version: pyfa 2.22.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-07-07 16:06+0800\n" -"PO-Revision-Date: 2020-07-07 16:09+0800\n" +"PO-Revision-Date: 2020-07-07 17:10+0800\n" "Last-Translator: zhaoweny \n" "Language-Team: Chinese (simplified)\n" "Language: zh_CN\n" @@ -620,7 +620,7 @@ msgstr "激变变星" #: gui/builtinContextMenus/envEffectAdd.py:133 msgid "ContextMenu|ProjectedEffectManipulation|Effects" -msgstr "效果" +msgstr "效果光束" #: gui/builtinContextMenus/envEffectAdd.py:108 msgid "ContextMenu|ProjectedEffectManipulation|Magnetar" @@ -676,7 +676,8 @@ msgstr "拷贝选中的{}" msgid "Copy and paste the block of text provided by pyfa.io" msgstr "请复制和粘贴pyfa.io提供的字符串" -#: gui/patternEditor.py:290 gui/setEditor.py:222 gui/targetProfileEditor.py:366 +#: gui/patternEditor.py:290 gui/setEditor.py:222 +#: gui/targetProfileEditor.py:366 msgid "Could not import from clipboard" msgstr "无法从剪贴板导入" @@ -1966,7 +1967,7 @@ msgstr "施加{0}远程效果到装配" #: gui/additionsPane.py:81 msgid "Projected" -msgstr "环境效果" +msgstr "远程效果" #: gui/builtinAdditionPanes/projectedView.py:306 #: gui/builtinAdditionPanes/projectedView.py:316 From d4c9423c775e6601e62b00f1ad642531502dfc2e Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Wed, 8 Jul 2020 14:42:05 +0800 Subject: [PATCH 06/13] i18n: annotate targetProfile.py, damagePattern.py Also init PyfaApp earlier for targetProfile.py and damagePattern.py localization --- eos/saveddata/damagePattern.py | 215 +++++++++++----------- eos/saveddata/targetProfile.py | 319 ++++++++++++++++----------------- pyfa.py | 11 +- 3 files changed, 275 insertions(+), 270 deletions(-) diff --git a/eos/saveddata/damagePattern.py b/eos/saveddata/damagePattern.py index bf6aeec72..8cf64c557 100644 --- a/eos/saveddata/damagePattern.py +++ b/eos/saveddata/damagePattern.py @@ -20,123 +20,126 @@ import re from collections import OrderedDict +import wx from sqlalchemy.orm import reconstructor import eos.db +_t = wx.GetTranslation + # Order is significant here - UI uses order as-is for built-in patterns BUILTINS = OrderedDict([ - (-1, ('Uniform', 25, 25, 25, 25)), - (-2, ('[Generic]EM', 1, 0, 0, 0)), - (-3, ('[Generic]Thermal', 0, 1, 0, 0)), - (-4, ('[Generic]Kinetic', 0, 0, 1, 0)), - (-5, ('[Generic]Explosive', 0, 0, 0, 1)), - (-6, ('[Frequency Crystals]|[T2] Aurora', 5, 3, 0, 0)), - (-7, ('[Frequency Crystals]|[T2] Scorch', 9, 2, 0, 0)), - (-8, ('[Frequency Crystals]Radio', 5, 0, 0, 0)), - (-9, ('[Frequency Crystals]Microwave', 4, 2, 0, 0)), - (-10, ('[Frequency Crystals]Infrared', 5, 2, 0, 0)), - (-11, ('[Frequency Crystals]Standard', 5, 3, 0, 0)), - (-12, ('[Frequency Crystals]Ultraviolet', 6, 3, 0, 0)), - (-13, ('[Frequency Crystals]Xray', 6, 4, 0, 0)), - (-14, ('[Frequency Crystals]Gamma', 7, 4, 0, 0)), - (-15, ('[Frequency Crystals]Multifrequency', 7, 5, 0, 0)), - (-16, ('[Frequency Crystals]|[T2] Gleam', 7, 7, 0, 0)), - (-17, ('[Frequency Crystals]|[T2] Conflagration', 7.7, 7.7, 0, 0)), + (-1, (_t('Uniform'), 25, 25, 25, 25)), + (-2, (_t('[Generic]EM'), 1, 0, 0, 0)), + (-3, (_t('[Generic]Thermal'), 0, 1, 0, 0)), + (-4, (_t('[Generic]Kinetic'), 0, 0, 1, 0)), + (-5, (_t('[Generic]Explosive'), 0, 0, 0, 1)), + (-6, (_t('[Frequency Crystals]|[T2] Aurora'), 5, 3, 0, 0)), + (-7, (_t('[Frequency Crystals]|[T2] Scorch'), 9, 2, 0, 0)), + (-8, (_t('[Frequency Crystals]Radio'), 5, 0, 0, 0)), + (-9, (_t('[Frequency Crystals]Microwave'), 4, 2, 0, 0)), + (-10, (_t('[Frequency Crystals]Infrared'), 5, 2, 0, 0)), + (-11, (_t('[Frequency Crystals]Standard'), 5, 3, 0, 0)), + (-12, (_t('[Frequency Crystals]Ultraviolet'), 6, 3, 0, 0)), + (-13, (_t('[Frequency Crystals]Xray'), 6, 4, 0, 0)), + (-14, (_t('[Frequency Crystals]Gamma'), 7, 4, 0, 0)), + (-15, (_t('[Frequency Crystals]Multifrequency'), 7, 5, 0, 0)), + (-16, (_t('[Frequency Crystals]|[T2] Gleam'), 7, 7, 0, 0)), + (-17, (_t('[Frequency Crystals]|[T2] Conflagration'), 7.7, 7.7, 0, 0)), # Different sizes of plasma do different damage ratios, the values here # are average of ratios across sizes - (-18, ('[Exotic Plasma]|[T2] Mystic', 0, 66319, 0, 33681)), - (-19, ('[Exotic Plasma]Meson', 0, 60519, 0, 39481)), - (-20, ('[Exotic Plasma]Baryon', 0, 59737, 0, 40263)), - (-21, ('[Exotic Plasma]Tetryon', 0, 69208, 0, 30792)), - (-22, ('[Exotic Plasma]|[T2] Occult', 0, 55863, 0, 44137)), - (-23, ('[Hybrid Charges]|[T2] Spike', 0, 4, 4, 0)), - (-24, ('[Hybrid Charges]|[T2] Null', 0, 6, 5, 0)), - (-25, ('[Hybrid Charges]Iron', 0, 2, 3, 0)), - (-26, ('[Hybrid Charges]Tungsten', 0, 2, 4, 0)), - (-27, ('[Hybrid Charges]Iridium', 0, 3, 4, 0)), - (-28, ('[Hybrid Charges]Lead', 0, 3, 5, 0)), - (-29, ('[Hybrid Charges]Thorium', 0, 4, 5, 0)), - (-30, ('[Hybrid Charges]Uranium', 0, 4, 6, 0)), - (-31, ('[Hybrid Charges]Plutonium', 0, 5, 6, 0)), - (-32, ('[Hybrid Charges]Antimatter', 0, 5, 7, 0)), - (-33, ('[Hybrid Charges]|[T2] Javelin', 0, 8, 6, 0)), - (-34, ('[Hybrid Charges]|[T2] Void', 0, 7.7, 7.7, 0)), - (-35, ('[Projectile Ammo]|[T2] Tremor', 0, 0, 3, 5)), - (-36, ('[Projectile Ammo]|[T2] Barrage', 0, 0, 5, 6)), - (-37, ('[Projectile Ammo]Carbonized Lead', 0, 0, 4, 1)), - (-38, ('[Projectile Ammo]Nuclear', 0, 0, 1, 4)), - (-39, ('[Projectile Ammo]Proton', 3, 0, 2, 0)), - (-40, ('[Projectile Ammo]Depleted Uranium', 0, 3, 2, 3)), - (-41, ('[Projectile Ammo]Titanium Sabot', 0, 0, 6, 2)), - (-42, ('[Projectile Ammo]EMP', 9, 0, 1, 2)), - (-43, ('[Projectile Ammo]Phased Plasma', 0, 10, 2, 0)), - (-44, ('[Projectile Ammo]Fusion', 0, 0, 2, 10)), - (-45, ('[Projectile Ammo]|[T2] Quake', 0, 0, 5, 9)), - (-46, ('[Projectile Ammo]|[T2] Hail', 0, 0, 3.3, 12.1)), - (-47, ('[Missiles]Mjolnir', 1, 0, 0, 0)), - (-48, ('[Missiles]Inferno', 0, 1, 0, 0)), - (-49, ('[Missiles]Scourge', 0, 0, 1, 0)), - (-50, ('[Missiles]Nova', 0, 0, 0, 1)), - (-51, ('[Bombs]Electron Bomb', 6400, 0, 0, 0)), - (-52, ('[Bombs]Scorch Bomb', 0, 6400, 0, 0)), - (-53, ('[Bombs]Concussion Bomb', 0, 0, 6400, 0)), - (-54, ('[Bombs]Shrapnel Bomb', 0, 0, 0, 6400)), + (-18, (_t('[Exotic Plasma]|[T2] Mystic'), 0, 66319, 0, 33681)), + (-19, (_t('[Exotic Plasma]Meson'), 0, 60519, 0, 39481)), + (-20, (_t('[Exotic Plasma]Baryon'), 0, 59737, 0, 40263)), + (-21, (_t('[Exotic Plasma]Tetryon'), 0, 69208, 0, 30792)), + (-22, (_t('[Exotic Plasma]|[T2] Occult'), 0, 55863, 0, 44137)), + (-23, (_t('[Hybrid Charges]|[T2] Spike'), 0, 4, 4, 0)), + (-24, (_t('[Hybrid Charges]|[T2] Null'), 0, 6, 5, 0)), + (-25, (_t('[Hybrid Charges]Iron'), 0, 2, 3, 0)), + (-26, (_t('[Hybrid Charges]Tungsten'), 0, 2, 4, 0)), + (-27, (_t('[Hybrid Charges]Iridium'), 0, 3, 4, 0)), + (-28, (_t('[Hybrid Charges]Lead'), 0, 3, 5, 0)), + (-29, (_t('[Hybrid Charges]Thorium'), 0, 4, 5, 0)), + (-30, (_t('[Hybrid Charges]Uranium'), 0, 4, 6, 0)), + (-31, (_t('[Hybrid Charges]Plutonium'), 0, 5, 6, 0)), + (-32, (_t('[Hybrid Charges]Antimatter'), 0, 5, 7, 0)), + (-33, (_t('[Hybrid Charges]|[T2] Javelin'), 0, 8, 6, 0)), + (-34, (_t('[Hybrid Charges]|[T2] Void'), 0, 7.7, 7.7, 0)), + (-35, (_t('[Projectile Ammo]|[T2] Tremor'), 0, 0, 3, 5)), + (-36, (_t('[Projectile Ammo]|[T2] Barrage'), 0, 0, 5, 6)), + (-37, (_t('[Projectile Ammo]Carbonized Lead'), 0, 0, 4, 1)), + (-38, (_t('[Projectile Ammo]Nuclear'), 0, 0, 1, 4)), + (-39, (_t('[Projectile Ammo]Proton'), 3, 0, 2, 0)), + (-40, (_t('[Projectile Ammo]Depleted Uranium'), 0, 3, 2, 3)), + (-41, (_t('[Projectile Ammo]Titanium Sabot'), 0, 0, 6, 2)), + (-42, (_t('[Projectile Ammo]EMP'), 9, 0, 1, 2)), + (-43, (_t('[Projectile Ammo]Phased Plasma'), 0, 10, 2, 0)), + (-44, (_t('[Projectile Ammo]Fusion'), 0, 0, 2, 10)), + (-45, (_t('[Projectile Ammo]|[T2] Quake'), 0, 0, 5, 9)), + (-46, (_t('[Projectile Ammo]|[T2] Hail'), 0, 0, 3.3, 12.1)), + (-47, (_t('[Missiles]Mjolnir'), 1, 0, 0, 0)), + (-48, (_t('[Missiles]Inferno'), 0, 1, 0, 0)), + (-49, (_t('[Missiles]Scourge'), 0, 0, 1, 0)), + (-50, (_t('[Missiles]Nova'), 0, 0, 0, 1)), + (-51, (_t('[Bombs]Electron Bomb'), 6400, 0, 0, 0)), + (-52, (_t('[Bombs]Scorch Bomb'), 0, 6400, 0, 0)), + (-53, (_t('[Bombs]Concussion Bomb'), 0, 0, 6400, 0)), + (-54, (_t('[Bombs]Shrapnel Bomb'), 0, 0, 0, 6400)), # Source: ticket #2067 - (-55, ('[NPC][Abyssal]All', 130, 396, 258, 216)), - (-56, ('[NPC][Abyssal]Drifter', 250, 250, 250, 250)), - (-57, ('[NPC][Abyssal]Drones', 250, 250, 250, 250)), - (-58, ('[NPC][Abyssal]Overmind', 0, 408, 592, 0)), - (-59, ('[NPC][Abyssal]Seeker', 406, 406, 94, 94)), - (-60, ('[NPC][Abyssal]Sleeper', 313, 313, 187, 187)), - (-61, ('[NPC][Abyssal]Triglavian', 0, 610, 0, 390)), - (-62, ('[NPC][Asteroid]Angel Cartel', 1838, 562, 2215, 3838)), - (-63, ('[NPC][Asteroid]Blood Raiders', 5067, 4214, 0, 0)), - (-64, ('[NPC][Asteroid]Guristas', 0, 1828, 7413, 0)), - (-65, ('[NPC][Asteroid]Rogue Drone', 394, 666, 1090, 1687)), - (-66, ('[NPC][Asteroid]Sanshas Nation', 5586, 4112, 0, 0)), - (-67, ('[NPC][Asteroid]Serpentis', 0, 5373, 4813, 0)), - (-68, ('[NPC][Burner]Cruor (Blood Raiders)', 90, 90, 0, 0)), - (-69, ('[NPC][Burner]Dramiel (Angel)', 55, 0, 20, 96)), - (-70, ('[NPC][Burner]Daredevil (Serpentis)', 0, 110, 154, 0)), - (-71, ('[NPC][Burner]Succubus (Sanshas Nation)', 135, 30, 0, 0)), - (-72, ('[NPC][Burner]Worm (Guristas)', 0, 0, 228, 0)), - (-73, ('[NPC][Burner]Enyo', 0, 147, 147, 0)), - (-74, ('[NPC][Burner]Hawk', 0, 0, 247, 0)), - (-75, ('[NPC][Burner]Jaguar', 36, 0, 50, 182)), - (-76, ('[NPC][Burner]Vengeance', 232, 0, 0, 0)), - (-77, ('[NPC][Burner]Ashimmu (Blood Raiders)', 260, 100, 0, 0)), - (-78, ('[NPC][Burner]Talos', 0, 413, 413, 0)), - (-79, ('[NPC][Burner]Sentinel', 0, 75, 0, 90)), - (-80, ('[NPC][Deadspace]Angel Cartel', 369, 533, 1395, 3302)), - (-81, ('[NPC][Deadspace]Blood Raiders', 6040, 5052, 10, 15)), - (-82, ('[NPC][Deadspace]Guristas', 0, 1531, 9680, 0)), - (-83, ('[NPC][Deadspace]Rogue Drone', 276, 1071, 1069, 871)), - (-84, ('[NPC][Deadspace]Sanshas Nation', 3009, 2237, 0, 0)), - (-85, ('[NPC][Deadspace]Serpentis', 0, 3110, 1929, 0)), + (-55, (_t('[NPC][Abyssal]All'), 130, 396, 258, 216)), + (-56, (_t('[NPC][Abyssal]Drifter'), 250, 250, 250, 250)), + (-57, (_t('[NPC][Abyssal]Drones'), 250, 250, 250, 250)), + (-58, (_t('[NPC][Abyssal]Overmind'), 0, 408, 592, 0)), + (-59, (_t('[NPC][Abyssal]Seeker'), 406, 406, 94, 94)), + (-60, (_t('[NPC][Abyssal]Sleeper'), 313, 313, 187, 187)), + (-61, (_t('[NPC][Abyssal]Triglavian'), 0, 610, 0, 390)), + (-62, (_t('[NPC][Asteroid]Angel Cartel'), 1838, 562, 2215, 3838)), + (-63, (_t('[NPC][Asteroid]Blood Raiders'), 5067, 4214, 0, 0)), + (-64, (_t('[NPC][Asteroid]Guristas'), 0, 1828, 7413, 0)), + (-65, (_t('[NPC][Asteroid]Rogue Drone'), 394, 666, 1090, 1687)), + (-66, (_t('[NPC][Asteroid]Sanshas Nation'), 5586, 4112, 0, 0)), + (-67, (_t('[NPC][Asteroid]Serpentis'), 0, 5373, 4813, 0)), + (-68, (_t('[NPC][Burner]Cruor (Blood Raiders)'), 90, 90, 0, 0)), + (-69, (_t('[NPC][Burner]Dramiel (Angel)'), 55, 0, 20, 96)), + (-70, (_t('[NPC][Burner]Daredevil (Serpentis)'), 0, 110, 154, 0)), + (-71, (_t('[NPC][Burner]Succubus (Sanshas Nation)'), 135, 30, 0, 0)), + (-72, (_t('[NPC][Burner]Worm (Guristas)'), 0, 0, 228, 0)), + (-73, (_t('[NPC][Burner]Enyo'), 0, 147, 147, 0)), + (-74, (_t('[NPC][Burner]Hawk'), 0, 0, 247, 0)), + (-75, (_t('[NPC][Burner]Jaguar'), 36, 0, 50, 182)), + (-76, (_t('[NPC][Burner]Vengeance'), 232, 0, 0, 0)), + (-77, (_t('[NPC][Burner]Ashimmu (Blood Raiders)'), 260, 100, 0, 0)), + (-78, (_t('[NPC][Burner]Talos'), 0, 413, 413, 0)), + (-79, (_t('[NPC][Burner]Sentinel'), 0, 75, 0, 90)), + (-80, (_t('[NPC][Deadspace]Angel Cartel'), 369, 533, 1395, 3302)), + (-81, (_t('[NPC][Deadspace]Blood Raiders'), 6040, 5052, 10, 15)), + (-82, (_t('[NPC][Deadspace]Guristas'), 0, 1531, 9680, 0)), + (-83, (_t('[NPC][Deadspace]Rogue Drone'), 276, 1071, 1069, 871)), + (-84, (_t('[NPC][Deadspace]Sanshas Nation'), 3009, 2237, 0, 0)), + (-85, (_t('[NPC][Deadspace]Serpentis'), 0, 3110, 1929, 0)), # Source: ticket #2067 - (-86, ('[NPC][Invasion][Invading Precursor Entities]Dread', 0, 417, 0, 583)), - (-87, ('[NPC][Invasion][Invading Precursor Entities]Normal Subcaps', 0, 610, 0, 390)), - (-88, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 0% spool up', 367, 155, 367, 112)), - (-89, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 50% spool up', 291, 243, 291, 175)), - (-90, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 100% spool up', 241, 301, 241, 217)), - (-91, ('[NPC][Invasion][Retaliating Amarr Entities]Dread/Subcaps', 583, 417, 0, 0)), - (-92, ('[NPC][Invasion][Retaliating Caldari Entities]Dread', 1000, 0, 0, 0)), - (-93, ('[NPC][Invasion][Retaliating Caldari Entities]Subcaps', 511, 21, 29, 440)), - (-94, ('[NPC][Invasion][Retaliating Gallente Entities]Dread/Subcaps', 0, 417, 583, 0)), - (-95, ('[NPC][Invasion][Retaliating Minmatar Entities]Dread', 0, 0, 583, 417)), - (-96, ('[NPC][Invasion][Retaliating Minmatar Entities]Subcaps', 302, 136, 328, 234)), - (-97, ('[NPC][Mission]Amarr Empire', 4464, 3546, 97, 0)), - (-98, ('[NPC][Mission]Caldari State', 0, 2139, 4867, 0)), - (-99, ('[NPC][Mission]CONCORD', 336, 134, 212, 412)), - (-100, ('[NPC][Mission]Gallente Federation', 9, 3712, 2758, 0)), - (-101, ('[NPC][Mission]Khanid', 612, 483, 43, 6)), - (-102, ('[NPC][Mission]Minmatar Republic', 1024, 388, 1655, 4285)), - (-103, ('[NPC][Mission]Mordus Legion', 25, 262, 625, 0)), - (-104, ('[NPC][Mission]Thukker', 0, 52, 10, 79)), - (-105, ('[NPC]Sansha Incursion', 1682, 1347, 3678, 3678)), - (-106, ('[NPC]Sleepers', 1472, 1472, 1384, 1384))]) + (-86, (_t('[NPC][Invasion][Invading Precursor Entities]Dread'), 0, 417, 0, 583)), + (-87, (_t('[NPC][Invasion][Invading Precursor Entities]Normal Subcaps'), 0, 610, 0, 390)), + (-88, (_t('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 0% spool up'), 367, 155, 367, 112)), + (-89, (_t('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 50% spool up'), 291, 243, 291, 175)), + (-90, (_t('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 100% spool up'), 241, 301, 241, 217)), + (-91, (_t('[NPC][Invasion][Retaliating Amarr Entities]Dread/Subcaps'), 583, 417, 0, 0)), + (-92, (_t('[NPC][Invasion][Retaliating Caldari Entities]Dread'), 1000, 0, 0, 0)), + (-93, (_t('[NPC][Invasion][Retaliating Caldari Entities]Subcaps'), 511, 21, 29, 440)), + (-94, (_t('[NPC][Invasion][Retaliating Gallente Entities]Dread/Subcaps'), 0, 417, 583, 0)), + (-95, (_t('[NPC][Invasion][Retaliating Minmatar Entities]Dread'), 0, 0, 583, 417)), + (-96, (_t('[NPC][Invasion][Retaliating Minmatar Entities]Subcaps'), 302, 136, 328, 234)), + (-97, (_t('[NPC][Mission]Amarr Empire'), 4464, 3546, 97, 0)), + (-98, (_t('[NPC][Mission]Caldari State'), 0, 2139, 4867, 0)), + (-99, (_t('[NPC][Mission]CONCORD'), 336, 134, 212, 412)), + (-100, (_t('[NPC][Mission]Gallente Federation'), 9, 3712, 2758, 0)), + (-101, (_t('[NPC][Mission]Khanid'), 612, 483, 43, 6)), + (-102, (_t('[NPC][Mission]Minmatar Republic'), 1024, 388, 1655, 4285)), + (-103, (_t('[NPC][Mission]Mordus Legion'), 25, 262, 625, 0)), + (-104, (_t('[NPC][Mission]Thukker'), 0, 52, 10, 79)), + (-105, (_t('[NPC]Sansha Incursion'), 1682, 1347, 3678, 3678)), + (-106, (_t('[NPC]Sleepers'), 1472, 1472, 1384, 1384))]) class DamagePattern: diff --git a/eos/saveddata/targetProfile.py b/eos/saveddata/targetProfile.py index e2a816d52..e4d1725ca 100644 --- a/eos/saveddata/targetProfile.py +++ b/eos/saveddata/targetProfile.py @@ -23,167 +23,166 @@ from collections import OrderedDict from logbook import Logger from sqlalchemy.orm import reconstructor +import wx import eos.db - pyfalog = Logger(__name__) - +_t = wx.GetTranslation BUILTINS = OrderedDict([ # 0 is taken by ideal target profile, composed manually in one of TargetProfile methods - (-1, ('Uniform (25%)', 0.25, 0.25, 0.25, 0.25)), - (-2, ('Uniform (50%)', 0.50, 0.50, 0.50, 0.50)), - (-3, ('Uniform (75%)', 0.75, 0.75, 0.75, 0.75)), - (-4, ('Uniform (90%)', 0.90, 0.90, 0.90, 0.90)), - (-5, ('[T1 Resist]Shield', 0.0, 0.20, 0.40, 0.50)), - (-6, ('[T1 Resist]Armor', 0.50, 0.45, 0.25, 0.10)), - (-7, ('[T1 Resist]Hull', 0.33, 0.33, 0.33, 0.33)), - (-8, ('[T1 Resist]Shield (+T2 DCU)', 0.125, 0.30, 0.475, 0.562)), - (-9, ('[T1 Resist]Armor (+T2 DCU)', 0.575, 0.532, 0.363, 0.235)), - (-10, ('[T1 Resist]Hull (+T2 DCU)', 0.598, 0.598, 0.598, 0.598)), - (-11, ('[T2 Resist]Amarr (Shield)', 0.0, 0.20, 0.70, 0.875)), - (-12, ('[T2 Resist]Amarr (Armor)', 0.50, 0.35, 0.625, 0.80)), - (-13, ('[T2 Resist]Caldari (Shield)', 0.20, 0.84, 0.76, 0.60)), - (-14, ('[T2 Resist]Caldari (Armor)', 0.50, 0.8625, 0.625, 0.10)), - (-15, ('[T2 Resist]Gallente (Shield)', 0.0, 0.60, 0.85, 0.50)), - (-16, ('[T2 Resist]Gallente (Armor)', 0.50, 0.675, 0.8375, 0.10)), - (-17, ('[T2 Resist]Minmatar (Shield)', 0.75, 0.60, 0.40, 0.50)), - (-18, ('[T2 Resist]Minmatar (Armor)', 0.90, 0.675, 0.25, 0.10)), - (-19, ('[NPC][Asteroid]Angel Cartel', 0.54, 0.42, 0.37, 0.32)), - (-20, ('[NPC][Asteroid]Blood Raiders', 0.34, 0.39, 0.45, 0.52)), - (-21, ('[NPC][Asteroid]Guristas', 0.55, 0.35, 0.3, 0.48)), - (-22, ('[NPC][Asteroid]Rogue Drones', 0.35, 0.38, 0.44, 0.49)), - (-23, ('[NPC][Asteroid]Sanshas Nation', 0.35, 0.4, 0.47, 0.53)), - (-24, ('[NPC][Asteroid]Serpentis', 0.49, 0.38, 0.29, 0.51)), - (-25, ('[NPC][Deadspace]Angel Cartel', 0.59, 0.48, 0.4, 0.32)), - (-26, ('[NPC][Deadspace]Blood Raiders', 0.31, 0.39, 0.47, 0.56)), - (-27, ('[NPC][Deadspace]Guristas', 0.57, 0.39, 0.31, 0.5)), - (-28, ('[NPC][Deadspace]Rogue Drones', 0.42, 0.42, 0.47, 0.49)), - (-29, ('[NPC][Deadspace]Sanshas Nation', 0.31, 0.39, 0.47, 0.56)), - (-30, ('[NPC][Deadspace]Serpentis', 0.49, 0.38, 0.29, 0.56)), - (-31, ('[NPC][Mission]Amarr Empire', 0.34, 0.38, 0.42, 0.46)), - (-32, ('[NPC][Mission]Caldari State', 0.51, 0.38, 0.3, 0.51)), - (-33, ('[NPC][Mission]CONCORD', 0.47, 0.46, 0.47, 0.47)), - (-34, ('[NPC][Mission]Gallente Federation', 0.51, 0.38, 0.31, 0.52)), - (-35, ('[NPC][Mission]Khanid', 0.51, 0.42, 0.36, 0.4)), - (-36, ('[NPC][Mission]Minmatar Republic', 0.51, 0.46, 0.41, 0.35)), - (-37, ('[NPC][Mission]Mordus Legion', 0.32, 0.48, 0.4, 0.62)), - (-38, ('[NPC][Other]Sleeper', 0.61, 0.61, 0.61, 0.61)), - (-39, ('[NPC][Other]Sansha Incursion', 0.65, 0.63, 0.64, 0.65)), - (-40, ('[NPC][Burner]Cruor (Blood Raiders)', 0.8, 0.73, 0.69, 0.67)), - (-41, ('[NPC][Burner]Dramiel (Angel)', 0.35, 0.48, 0.61, 0.68)), - (-42, ('[NPC][Burner]Daredevil (Serpentis)', 0.69, 0.59, 0.59, 0.43)), - (-43, ('[NPC][Burner]Succubus (Sanshas Nation)', 0.35, 0.48, 0.61, 0.68)), - (-44, ('[NPC][Burner]Worm (Guristas)', 0.48, 0.58, 0.69, 0.74)), - (-45, ('[NPC][Burner]Enyo', 0.58, 0.72, 0.86, 0.24)), - (-46, ('[NPC][Burner]Hawk', 0.3, 0.86, 0.79, 0.65)), - (-47, ('[NPC][Burner]Jaguar', 0.78, 0.65, 0.48, 0.56)), - (-48, ('[NPC][Burner]Vengeance', 0.66, 0.56, 0.75, 0.86)), - (-49, ('[NPC][Burner]Ashimmu (Blood Raiders)', 0.8, 0.76, 0.68, 0.7)), - (-50, ('[NPC][Burner]Talos', 0.68, 0.59, 0.59, 0.43)), - (-51, ('[NPC][Burner]Sentinel', 0.58, 0.45, 0.52, 0.66)), + (-1, (_t('Uniform (25%)'), 0.25, 0.25, 0.25, 0.25)), + (-2, (_t('Uniform (50%)'), 0.50, 0.50, 0.50, 0.50)), + (-3, (_t('Uniform (75%)'), 0.75, 0.75, 0.75, 0.75)), + (-4, (_t('Uniform (90%)'), 0.90, 0.90, 0.90, 0.90)), + (-5, (_t('[T1 Resist]Shield'), 0.0, 0.20, 0.40, 0.50)), + (-6, (_t('[T1 Resist]Armor'), 0.50, 0.45, 0.25, 0.10)), + (-7, (_t('[T1 Resist]Hull'), 0.33, 0.33, 0.33, 0.33)), + (-8, (_t('[T1 Resist]Shield (+T2 DCU)'), 0.125, 0.30, 0.475, 0.562)), + (-9, (_t('[T1 Resist]Armor (+T2 DCU)'), 0.575, 0.532, 0.363, 0.235)), + (-10, (_t('[T1 Resist]Hull (+T2 DCU)'), 0.598, 0.598, 0.598, 0.598)), + (-11, (_t('[T2 Resist]Amarr (Shield)'), 0.0, 0.20, 0.70, 0.875)), + (-12, (_t('[T2 Resist]Amarr (Armor)'), 0.50, 0.35, 0.625, 0.80)), + (-13, (_t('[T2 Resist]Caldari (Shield)'), 0.20, 0.84, 0.76, 0.60)), + (-14, (_t('[T2 Resist]Caldari (Armor)'), 0.50, 0.8625, 0.625, 0.10)), + (-15, (_t('[T2 Resist]Gallente (Shield)'), 0.0, 0.60, 0.85, 0.50)), + (-16, (_t('[T2 Resist]Gallente (Armor)'), 0.50, 0.675, 0.8375, 0.10)), + (-17, (_t('[T2 Resist]Minmatar (Shield)'), 0.75, 0.60, 0.40, 0.50)), + (-18, (_t('[T2 Resist]Minmatar (Armor)'), 0.90, 0.675, 0.25, 0.10)), + (-19, (_t('[NPC][Asteroid]Angel Cartel'), 0.54, 0.42, 0.37, 0.32)), + (-20, (_t('[NPC][Asteroid]Blood Raiders'), 0.34, 0.39, 0.45, 0.52)), + (-21, (_t('[NPC][Asteroid]Guristas'), 0.55, 0.35, 0.3, 0.48)), + (-22, (_t('[NPC][Asteroid]Rogue Drones'), 0.35, 0.38, 0.44, 0.49)), + (-23, (_t('[NPC][Asteroid]Sanshas Nation'), 0.35, 0.4, 0.47, 0.53)), + (-24, (_t('[NPC][Asteroid]Serpentis'), 0.49, 0.38, 0.29, 0.51)), + (-25, (_t('[NPC][Deadspace]Angel Cartel'), 0.59, 0.48, 0.4, 0.32)), + (-26, (_t('[NPC][Deadspace]Blood Raiders'), 0.31, 0.39, 0.47, 0.56)), + (-27, (_t('[NPC][Deadspace]Guristas'), 0.57, 0.39, 0.31, 0.5)), + (-28, (_t('[NPC][Deadspace]Rogue Drones'), 0.42, 0.42, 0.47, 0.49)), + (-29, (_t('[NPC][Deadspace]Sanshas Nation'), 0.31, 0.39, 0.47, 0.56)), + (-30, (_t('[NPC][Deadspace]Serpentis'), 0.49, 0.38, 0.29, 0.56)), + (-31, (_t('[NPC][Mission]Amarr Empire'), 0.34, 0.38, 0.42, 0.46)), + (-32, (_t('[NPC][Mission]Caldari State'), 0.51, 0.38, 0.3, 0.51)), + (-33, (_t('[NPC][Mission]CONCORD'), 0.47, 0.46, 0.47, 0.47)), + (-34, (_t('[NPC][Mission]Gallente Federation'), 0.51, 0.38, 0.31, 0.52)), + (-35, (_t('[NPC][Mission]Khanid'), 0.51, 0.42, 0.36, 0.4)), + (-36, (_t('[NPC][Mission]Minmatar Republic'), 0.51, 0.46, 0.41, 0.35)), + (-37, (_t('[NPC][Mission]Mordus Legion'), 0.32, 0.48, 0.4, 0.62)), + (-38, (_t('[NPC][Other]Sleeper'), 0.61, 0.61, 0.61, 0.61)), + (-39, (_t('[NPC][Other]Sansha Incursion'), 0.65, 0.63, 0.64, 0.65)), + (-40, (_t('[NPC][Burner]Cruor (Blood Raiders)'), 0.8, 0.73, 0.69, 0.67)), + (-41, (_t('[NPC][Burner]Dramiel (Angel)'), 0.35, 0.48, 0.61, 0.68)), + (-42, (_t('[NPC][Burner]Daredevil (Serpentis)'), 0.69, 0.59, 0.59, 0.43)), + (-43, (_t('[NPC][Burner]Succubus (Sanshas Nation)'), 0.35, 0.48, 0.61, 0.68)), + (-44, (_t('[NPC][Burner]Worm (Guristas)'), 0.48, 0.58, 0.69, 0.74)), + (-45, (_t('[NPC][Burner]Enyo'), 0.58, 0.72, 0.86, 0.24)), + (-46, (_t('[NPC][Burner]Hawk'), 0.3, 0.86, 0.79, 0.65)), + (-47, (_t('[NPC][Burner]Jaguar'), 0.78, 0.65, 0.48, 0.56)), + (-48, (_t('[NPC][Burner]Vengeance'), 0.66, 0.56, 0.75, 0.86)), + (-49, (_t('[NPC][Burner]Ashimmu (Blood Raiders)'), 0.8, 0.76, 0.68, 0.7)), + (-50, (_t('[NPC][Burner]Talos'), 0.68, 0.59, 0.59, 0.43)), + (-51, (_t('[NPC][Burner]Sentinel'), 0.58, 0.45, 0.52, 0.66)), # Source: ticket #2067 - (-52, ('[NPC][Invasion]Invading Precursor Entities', 0.422, 0.367, 0.453, 0.411)), - (-53, ('[NPC][Invasion]Retaliating Amarr Entities', 0.360, 0.310, 0.441, 0.602)), - (-54, ('[NPC][Invasion]Retaliating Caldari Entities', 0.287, 0.610, 0.487, 0.401)), - (-55, ('[NPC][Invasion]Retaliating Gallente Entities', 0.383, 0.414, 0.578, 0.513)), - (-56, ('[NPC][Invasion]Retaliating Minmatar Entities', 0.620, 0.422, 0.355, 0.399)), - (-57, ('[NPC][Abyssal][Dark Matter All Tiers]Drones', 0.439, 0.522, 0.529, 0.435)), - (-58, ('[NPC][Abyssal][Dark Matter All Tiers]Overmind', 0.626, 0.576, 0.612, 0.624)), - (-59, ('[NPC][Abyssal][Dark Matter All Tiers]Seeker', 0.082, 0.082, 0.082, 0.082)), - (-60, ('[NPC][Abyssal][Dark Matter All Tiers]Triglavian', 0.477, 0.401, 0.449, 0.37)), - (-61, ('[NPC][Abyssal][Dark Matter All Tiers]Drifter', 0.403, 0.403, 0.403, 0.403)), - (-62, ('[NPC][Abyssal][Dark Matter All Tiers]Sleeper', 0.435, 0.435, 0.435, 0.435)), - (-63, ('[NPC][Abyssal][Dark Matter All Tiers]All', 0.507, 0.477, 0.502, 0.493)), - (-64, ('[NPC][Abyssal][Electrical T1/T2]Drones', 0.323, 0.522, 0.529, 0.435)), - (-65, ('[NPC][Abyssal][Electrical T1/T2]Overmind', 0.521, 0.576, 0.612, 0.624)), - (-66, ('[NPC][Abyssal][Electrical T1/T2]Seeker', 0, 0.082, 0.082, 0.082)), - (-67, ('[NPC][Abyssal][Electrical T1/T2]Triglavian', 0.333, 0.401, 0.449, 0.37)), - (-68, ('[NPC][Abyssal][Electrical T1/T2]Drifter', 0.267, 0.403, 0.403, 0.403)), - (-69, ('[NPC][Abyssal][Electrical T1/T2]Sleeper', 0.329, 0.435, 0.435, 0.435)), - (-70, ('[NPC][Abyssal][Electrical T1/T2]All', 0.385, 0.477, 0.502, 0.493)), - (-71, ('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Drones', 0.255, 0.522, 0.529, 0.435)), - (-72, ('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Overmind', 0.457, 0.576, 0.612, 0.624)), - (-73, ('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Seeker', 0, 0.082, 0.082, 0.082)), - (-74, ('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Triglavian', 0.241, 0.401, 0.449, 0.37)), - (-75, ('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Drifter', 0.184, 0.403, 0.403, 0.403)), - (-76, ('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Sleeper', 0.268, 0.435, 0.435, 0.435)), - (-77, ('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]All', 0.313, 0.477, 0.502, 0.493)), - (-78, ('[NPC][Abyssal][Electrical T4/T5]Drones', 0.193, 0.522, 0.529, 0.435)), - (-79, ('[NPC][Abyssal][Electrical T4/T5]Overmind', 0.398, 0.576, 0.612, 0.624)), - (-80, ('[NPC][Abyssal][Electrical T4/T5]Seeker', 0, 0.082, 0.082, 0.082)), - (-81, ('[NPC][Abyssal][Electrical T4/T5]Triglavian', 0.183, 0.401, 0.449, 0.37)), - (-82, ('[NPC][Abyssal][Electrical T4/T5]Drifter', 0.107, 0.403, 0.403, 0.403)), - (-83, ('[NPC][Abyssal][Electrical T4/T5]Sleeper', 0.215, 0.435, 0.435, 0.435)), - (-84, ('[NPC][Abyssal][Electrical T4/T5]All', 0.25, 0.477, 0.502, 0.493)), - (-85, ('[NPC][Abyssal][Firestorm T1/T2]Drones', 0.461, 0.425, 0.541, 0.443)), - (-86, ('[NPC][Abyssal][Firestorm T1/T2]Overmind', 0.65, 0.469, 0.625, 0.633)), - (-87, ('[NPC][Abyssal][Firestorm T1/T2]Seeker', 0.084, 0, 0.084, 0.084)), - (-88, ('[NPC][Abyssal][Firestorm T1/T2]Triglavian', 0.534, 0.266, 0.484, 0.366)), - (-89, ('[NPC][Abyssal][Firestorm T1/T2]Drifter', 0.422, 0.282, 0.422, 0.422)), - (-90, ('[NPC][Abyssal][Firestorm T1/T2]Sleeper', 0.512, 0.402, 0.512, 0.512)), - (-91, ('[NPC][Abyssal][Firestorm T1/T2]All', 0.541, 0.365, 0.524, 0.504)), - (-92, ('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Drones', 0.461, 0.36, 0.541, 0.443)), - (-93, ('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Overmind', 0.65, 0.391, 0.625, 0.633)), - (-94, ('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Seeker', 0.084, 0, 0.084, 0.084)), - (-95, ('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Triglavian', 0.534, 0.161, 0.484, 0.366)), - (-96, ('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Drifter', 0.422, 0.196, 0.422, 0.422)), - (-97, ('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Sleeper', 0.512, 0.337, 0.512, 0.512)), - (-98, ('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]All', 0.541, 0.284, 0.524, 0.504)), - (-99, ('[NPC][Abyssal][Firestorm T4/T5]Drones', 0.461, 0.305, 0.541, 0.443)), - (-100, ('[NPC][Abyssal][Firestorm T4/T5]Overmind', 0.65, 0.323, 0.625, 0.633)), - (-101, ('[NPC][Abyssal][Firestorm T4/T5]Seeker', 0.084, 0, 0.084, 0.084)), - (-102, ('[NPC][Abyssal][Firestorm T4/T5]Triglavian', 0.534, 0.082, 0.484, 0.366)), - (-103, ('[NPC][Abyssal][Firestorm T4/T5]Drifter', 0.422, 0.114, 0.422, 0.422)), - (-104, ('[NPC][Abyssal][Firestorm T4/T5]Sleeper', 0.512, 0.276, 0.512, 0.512)), - (-105, ('[NPC][Abyssal][Firestorm T4/T5]All', 0.541, 0.214, 0.524, 0.504)), - (-106, ('[NPC][Abyssal][Exotic T1/T2]Drones', 0.439, 0.522, 0.417, 0.435)), - (-107, ('[NPC][Abyssal][Exotic T1/T2]Overmind', 0.626, 0.576, 0.496, 0.624)), - (-108, ('[NPC][Abyssal][Exotic T1/T2]Seeker', 0.082, 0.082, 0, 0.082)), - (-109, ('[NPC][Abyssal][Exotic T1/T2]Triglavian', 0.477, 0.401, 0.284, 0.37)), - (-110, ('[NPC][Abyssal][Exotic T1/T2]Drifter', 0.403, 0.403, 0.267, 0.403)), - (-111, ('[NPC][Abyssal][Exotic T1/T2]Sleeper', 0.435, 0.435, 0.329, 0.435)), - (-112, ('[NPC][Abyssal][Exotic T1/T2]All', 0.507, 0.477, 0.373, 0.493)), - (-113, ('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Drones', 0.439, 0.522, 0.351, 0.435)), - (-114, ('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Overmind', 0.626, 0.576, 0.419, 0.624)), - (-115, ('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Seeker', 0.082, 0.082, 0, 0.082)), - (-116, ('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Triglavian', 0.477, 0.401, 0.176, 0.37)), - (-117, ('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Drifter', 0.403, 0.403, 0.184, 0.403)), - (-118, ('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Sleeper', 0.435, 0.435, 0.268, 0.435)), - (-119, ('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]All', 0.507, 0.477, 0.293, 0.493)), - (-120, ('[NPC][Abyssal][Exotic T4/T5]Drones', 0.439, 0.522, 0.293, 0.435)), - (-121, ('[NPC][Abyssal][Exotic T4/T5]Overmind', 0.626, 0.576, 0.344, 0.624)), - (-122, ('[NPC][Abyssal][Exotic T4/T5]Seeker', 0.082, 0.082, 0, 0.082)), - (-123, ('[NPC][Abyssal][Exotic T4/T5]Triglavian', 0.477, 0.401, 0.107, 0.37)), - (-124, ('[NPC][Abyssal][Exotic T4/T5]Drifter', 0.403, 0.403, 0.107, 0.403)), - (-125, ('[NPC][Abyssal][Exotic T4/T5]Sleeper', 0.435, 0.435, 0.215, 0.435)), - (-126, ('[NPC][Abyssal][Exotic T4/T5]All', 0.507, 0.477, 0.223, 0.493)), - (-127, ('[NPC][Abyssal][Gamma T1/T2]Drones', 0.449, 0.54, 0.549, 0.336)), - (-128, ('[NPC][Abyssal][Gamma T1/T2]Overmind', 0.6, 0.557, 0.601, 0.504)), - (-129, ('[NPC][Abyssal][Gamma T1/T2]Seeker', 0.085, 0.085, 0.085, 0)), - (-130, ('[NPC][Abyssal][Gamma T1/T2]Triglavian', 0.463, 0.392, 0.447, 0.193)), - (-131, ('[NPC][Abyssal][Gamma T1/T2]Drifter', 0.428, 0.428, 0.428, 0.287)), - (-132, ('[NPC][Abyssal][Gamma T1/T2]Sleeper', 0.435, 0.435, 0.435, 0.329)), - (-133, ('[NPC][Abyssal][Gamma T1/T2]All', 0.493, 0.472, 0.5, 0.362)), - (-134, ('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Drones', 0.449, 0.54, 0.549, 0.264)), - (-135, ('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Overmind', 0.6, 0.557, 0.601, 0.428)), - (-136, ('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Seeker', 0.085, 0.085, 0.085, 0)), - (-137, ('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Triglavian', 0.463, 0.392, 0.447, 0.071)), - (-138, ('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Drifter', 0.428, 0.428, 0.428, 0.2)), - (-139, ('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Sleeper', 0.435, 0.435, 0.435, 0.268)), - (-140, ('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]All', 0.493, 0.472, 0.5, 0.28)), - (-141, ('[NPC][Abyssal][Gamma T4/T5]Drones', 0.449, 0.54, 0.549, 0.197)), - (-142, ('[NPC][Abyssal][Gamma T4/T5]Overmind', 0.6, 0.557, 0.601, 0.356)), - (-143, ('[NPC][Abyssal][Gamma T4/T5]Seeker', 0.085, 0.085, 0.085, 0)), - (-144, ('[NPC][Abyssal][Gamma T4/T5]Triglavian', 0.463, 0.392, 0.447, 0.029)), - (-145, ('[NPC][Abyssal][Gamma T4/T5]Drifter', 0.428, 0.428, 0.428, 0.117)), - (-146, ('[NPC][Abyssal][Gamma T4/T5]Sleeper', 0.435, 0.435, 0.435, 0.215)), - (-147, ('[NPC][Abyssal][Gamma T4/T5]All', 0.493, 0.472, 0.5, 0.21))]) + (-52, (_t('[NPC][Invasion]Invading Precursor Entities'), 0.422, 0.367, 0.453, 0.411)), + (-53, (_t('[NPC][Invasion]Retaliating Amarr Entities'), 0.360, 0.310, 0.441, 0.602)), + (-54, (_t('[NPC][Invasion]Retaliating Caldari Entities'), 0.287, 0.610, 0.487, 0.401)), + (-55, (_t('[NPC][Invasion]Retaliating Gallente Entities'), 0.383, 0.414, 0.578, 0.513)), + (-56, (_t('[NPC][Invasion]Retaliating Minmatar Entities'), 0.620, 0.422, 0.355, 0.399)), + (-57, (_t('[NPC][Abyssal][Dark Matter All Tiers]Drones'), 0.439, 0.522, 0.529, 0.435)), + (-58, (_t('[NPC][Abyssal][Dark Matter All Tiers]Overmind'), 0.626, 0.576, 0.612, 0.624)), + (-59, (_t('[NPC][Abyssal][Dark Matter All Tiers]Seeker'), 0.082, 0.082, 0.082, 0.082)), + (-60, (_t('[NPC][Abyssal][Dark Matter All Tiers]Triglavian'), 0.477, 0.401, 0.449, 0.37)), + (-61, (_t('[NPC][Abyssal][Dark Matter All Tiers]Drifter'), 0.403, 0.403, 0.403, 0.403)), + (-62, (_t('[NPC][Abyssal][Dark Matter All Tiers]Sleeper'), 0.435, 0.435, 0.435, 0.435)), + (-63, (_t('[NPC][Abyssal][Dark Matter All Tiers]All'), 0.507, 0.477, 0.502, 0.493)), + (-64, (_t('[NPC][Abyssal][Electrical T1/T2]Drones'), 0.323, 0.522, 0.529, 0.435)), + (-65, (_t('[NPC][Abyssal][Electrical T1/T2]Overmind'), 0.521, 0.576, 0.612, 0.624)), + (-66, (_t('[NPC][Abyssal][Electrical T1/T2]Seeker'), 0, 0.082, 0.082, 0.082)), + (-67, (_t('[NPC][Abyssal][Electrical T1/T2]Triglavian'), 0.333, 0.401, 0.449, 0.37)), + (-68, (_t('[NPC][Abyssal][Electrical T1/T2]Drifter'), 0.267, 0.403, 0.403, 0.403)), + (-69, (_t('[NPC][Abyssal][Electrical T1/T2]Sleeper'), 0.329, 0.435, 0.435, 0.435)), + (-70, (_t('[NPC][Abyssal][Electrical T1/T2]All'), 0.385, 0.477, 0.502, 0.493)), + (-71, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Drones'), 0.255, 0.522, 0.529, 0.435)), + (-72, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Overmind'), 0.457, 0.576, 0.612, 0.624)), + (-73, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Seeker'), 0, 0.082, 0.082, 0.082)), + (-74, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Triglavian'), 0.241, 0.401, 0.449, 0.37)), + (-75, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Drifter'), 0.184, 0.403, 0.403, 0.403)), + (-76, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Sleeper'), 0.268, 0.435, 0.435, 0.435)), + (-77, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]All'), 0.313, 0.477, 0.502, 0.493)), + (-78, (_t('[NPC][Abyssal][Electrical T4/T5]Drones'), 0.193, 0.522, 0.529, 0.435)), + (-79, (_t('[NPC][Abyssal][Electrical T4/T5]Overmind'), 0.398, 0.576, 0.612, 0.624)), + (-80, (_t('[NPC][Abyssal][Electrical T4/T5]Seeker'), 0, 0.082, 0.082, 0.082)), + (-81, (_t('[NPC][Abyssal][Electrical T4/T5]Triglavian'), 0.183, 0.401, 0.449, 0.37)), + (-82, (_t('[NPC][Abyssal][Electrical T4/T5]Drifter'), 0.107, 0.403, 0.403, 0.403)), + (-83, (_t('[NPC][Abyssal][Electrical T4/T5]Sleeper'), 0.215, 0.435, 0.435, 0.435)), + (-84, (_t('[NPC][Abyssal][Electrical T4/T5]All'), 0.25, 0.477, 0.502, 0.493)), + (-85, (_t('[NPC][Abyssal][Firestorm T1/T2]Drones'), 0.461, 0.425, 0.541, 0.443)), + (-86, (_t('[NPC][Abyssal][Firestorm T1/T2]Overmind'), 0.65, 0.469, 0.625, 0.633)), + (-87, (_t('[NPC][Abyssal][Firestorm T1/T2]Seeker'), 0.084, 0, 0.084, 0.084)), + (-88, (_t('[NPC][Abyssal][Firestorm T1/T2]Triglavian'), 0.534, 0.266, 0.484, 0.366)), + (-89, (_t('[NPC][Abyssal][Firestorm T1/T2]Drifter'), 0.422, 0.282, 0.422, 0.422)), + (-90, (_t('[NPC][Abyssal][Firestorm T1/T2]Sleeper'), 0.512, 0.402, 0.512, 0.512)), + (-91, (_t('[NPC][Abyssal][Firestorm T1/T2]All'), 0.541, 0.365, 0.524, 0.504)), + (-92, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Drones'), 0.461, 0.36, 0.541, 0.443)), + (-93, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Overmind'), 0.65, 0.391, 0.625, 0.633)), + (-94, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Seeker'), 0.084, 0, 0.084, 0.084)), + (-95, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Triglavian'), 0.534, 0.161, 0.484, 0.366)), + (-96, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Drifter'), 0.422, 0.196, 0.422, 0.422)), + (-97, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Sleeper'), 0.512, 0.337, 0.512, 0.512)), + (-98, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]All'), 0.541, 0.284, 0.524, 0.504)), + (-99, (_t('[NPC][Abyssal][Firestorm T4/T5]Drones'), 0.461, 0.305, 0.541, 0.443)), + (-100, (_t('[NPC][Abyssal][Firestorm T4/T5]Overmind'), 0.65, 0.323, 0.625, 0.633)), + (-101, (_t('[NPC][Abyssal][Firestorm T4/T5]Seeker'), 0.084, 0, 0.084, 0.084)), + (-102, (_t('[NPC][Abyssal][Firestorm T4/T5]Triglavian'), 0.534, 0.082, 0.484, 0.366)), + (-103, (_t('[NPC][Abyssal][Firestorm T4/T5]Drifter'), 0.422, 0.114, 0.422, 0.422)), + (-104, (_t('[NPC][Abyssal][Firestorm T4/T5]Sleeper'), 0.512, 0.276, 0.512, 0.512)), + (-105, (_t('[NPC][Abyssal][Firestorm T4/T5]All'), 0.541, 0.214, 0.524, 0.504)), + (-106, (_t('[NPC][Abyssal][Exotic T1/T2]Drones'), 0.439, 0.522, 0.417, 0.435)), + (-107, (_t('[NPC][Abyssal][Exotic T1/T2]Overmind'), 0.626, 0.576, 0.496, 0.624)), + (-108, (_t('[NPC][Abyssal][Exotic T1/T2]Seeker'), 0.082, 0.082, 0, 0.082)), + (-109, (_t('[NPC][Abyssal][Exotic T1/T2]Triglavian'), 0.477, 0.401, 0.284, 0.37)), + (-110, (_t('[NPC][Abyssal][Exotic T1/T2]Drifter'), 0.403, 0.403, 0.267, 0.403)), + (-111, (_t('[NPC][Abyssal][Exotic T1/T2]Sleeper'), 0.435, 0.435, 0.329, 0.435)), + (-112, (_t('[NPC][Abyssal][Exotic T1/T2]All'), 0.507, 0.477, 0.373, 0.493)), + (-113, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Drones'), 0.439, 0.522, 0.351, 0.435)), + (-114, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Overmind'), 0.626, 0.576, 0.419, 0.624)), + (-115, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Seeker'), 0.082, 0.082, 0, 0.082)), + (-116, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Triglavian'), 0.477, 0.401, 0.176, 0.37)), + (-117, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Drifter'), 0.403, 0.403, 0.184, 0.403)), + (-118, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Sleeper'), 0.435, 0.435, 0.268, 0.435)), + (-119, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]All'), 0.507, 0.477, 0.293, 0.493)), + (-120, (_t('[NPC][Abyssal][Exotic T4/T5]Drones'), 0.439, 0.522, 0.293, 0.435)), + (-121, (_t('[NPC][Abyssal][Exotic T4/T5]Overmind'), 0.626, 0.576, 0.344, 0.624)), + (-122, (_t('[NPC][Abyssal][Exotic T4/T5]Seeker'), 0.082, 0.082, 0, 0.082)), + (-123, (_t('[NPC][Abyssal][Exotic T4/T5]Triglavian'), 0.477, 0.401, 0.107, 0.37)), + (-124, (_t('[NPC][Abyssal][Exotic T4/T5]Drifter'), 0.403, 0.403, 0.107, 0.403)), + (-125, (_t('[NPC][Abyssal][Exotic T4/T5]Sleeper'), 0.435, 0.435, 0.215, 0.435)), + (-126, (_t('[NPC][Abyssal][Exotic T4/T5]All'), 0.507, 0.477, 0.223, 0.493)), + (-127, (_t('[NPC][Abyssal][Gamma T1/T2]Drones'), 0.449, 0.54, 0.549, 0.336)), + (-128, (_t('[NPC][Abyssal][Gamma T1/T2]Overmind'), 0.6, 0.557, 0.601, 0.504)), + (-129, (_t('[NPC][Abyssal][Gamma T1/T2]Seeker'), 0.085, 0.085, 0.085, 0)), + (-130, (_t('[NPC][Abyssal][Gamma T1/T2]Triglavian'), 0.463, 0.392, 0.447, 0.193)), + (-131, (_t('[NPC][Abyssal][Gamma T1/T2]Drifter'), 0.428, 0.428, 0.428, 0.287)), + (-132, (_t('[NPC][Abyssal][Gamma T1/T2]Sleeper'), 0.435, 0.435, 0.435, 0.329)), + (-133, (_t('[NPC][Abyssal][Gamma T1/T2]All'), 0.493, 0.472, 0.5, 0.362)), + (-134, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Drones'), 0.449, 0.54, 0.549, 0.264)), + (-135, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Overmind'), 0.6, 0.557, 0.601, 0.428)), + (-136, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Seeker'), 0.085, 0.085, 0.085, 0)), + (-137, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Triglavian'), 0.463, 0.392, 0.447, 0.071)), + (-138, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Drifter'), 0.428, 0.428, 0.428, 0.2)), + (-139, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Sleeper'), 0.435, 0.435, 0.435, 0.268)), + (-140, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]All'), 0.493, 0.472, 0.5, 0.28)), + (-141, (_t('[NPC][Abyssal][Gamma T4/T5]Drones'), 0.449, 0.54, 0.549, 0.197)), + (-142, (_t('[NPC][Abyssal][Gamma T4/T5]Overmind'), 0.6, 0.557, 0.601, 0.356)), + (-143, (_t('[NPC][Abyssal][Gamma T4/T5]Seeker'), 0.085, 0.085, 0.085, 0)), + (-144, (_t('[NPC][Abyssal][Gamma T4/T5]Triglavian'), 0.463, 0.392, 0.447, 0.029)), + (-145, (_t('[NPC][Abyssal][Gamma T4/T5]Drifter'), 0.428, 0.428, 0.428, 0.117)), + (-146, (_t('[NPC][Abyssal][Gamma T4/T5]Sleeper'), 0.435, 0.435, 0.435, 0.215)), + (-147, (_t('[NPC][Abyssal][Gamma T4/T5]All'), 0.493, 0.472, 0.5, 0.21))]) class TargetProfile: - # also determined import/export order - VERY IMPORTANT DAMAGE_TYPES = ('em', 'thermal', 'kinetic', 'explosive') _idealTarget = None @@ -234,14 +233,14 @@ class TargetProfile: def getIdeal(cls): if cls._idealTarget is None: cls._idealTarget = cls( - emAmount=0, - thermalAmount=0, - kineticAmount=0, - explosiveAmount=0, - maxVelocity=0, - signatureRadius=None, - radius=0) - cls._idealTarget.rawName = 'Ideal Target' + emAmount=0, + thermalAmount=0, + kineticAmount=0, + explosiveAmount=0, + maxVelocity=0, + signatureRadius=None, + radius=0) + cls._idealTarget.rawName = _t('Ideal Target') cls._idealTarget.ID = 0 cls._idealTarget.builtin = True return cls._idealTarget @@ -399,7 +398,7 @@ class TargetProfile: def __deepcopy__(self, memo): p = TargetProfile( - self.emAmount, self.thermalAmount, self.kineticAmount, self.explosiveAmount, - self._maxVelocity, self._signatureRadius, self._radius) + self.emAmount, self.thermalAmount, self.kineticAmount, self.explosiveAmount, + self._maxVelocity, self._signatureRadius, self._radius) p.rawName = "%s copy" % self.rawName return p diff --git a/pyfa.py b/pyfa.py index 085d23efe..81af6310a 100755 --- a/pyfa.py +++ b/pyfa.py @@ -77,7 +77,6 @@ parser.add_option("-i", "--language", action="store", dest="language", help="Set (options, args) = parser.parse_args() - if __name__ == "__main__": try: @@ -92,6 +91,7 @@ if __name__ == "__main__": import wx from logbook import Logger + pyfalog = Logger(__name__) from gui.errorDialog import ErrorHandler @@ -125,6 +125,10 @@ if __name__ == "__main__": if db_needs_update() is True: update_db() + from gui.app import PyfaApp + + pyfa = PyfaApp(False) + # Lets get to the good stuff, shall we? import eos.db import eos.events # todo: move this to eos initialization? @@ -137,15 +141,13 @@ if __name__ == "__main__": os.mkdir(config.savePath) eos.db.saveddata_meta.create_all() - from gui.app import PyfaApp # set title if it wasn't supplied by argument if options.title is None: options.title = "pyfa %s - Python Fitting Assistant" % (config.getVersion()) - pyfa = PyfaApp(False) - from gui.mainFrame import MainFrame + mf = MainFrame(options.title) ErrorHandler.SetParent(mf) @@ -153,6 +155,7 @@ if __name__ == "__main__": profile_path = os.path.join(options.profile_path, 'pyfa-{}.profile'.format(datetime.datetime.now().strftime('%Y%m%d_%H%M%S'))) pyfalog.debug("Starting pyfa with a profiler, saving to {}".format(profile_path)) import cProfile + cProfile.run('pyfa.MainLoop()', profile_path) else: pyfa.MainLoop() From 067f60bfcd2fcd69d5c8b74c9fe681ad626d67e6 Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Wed, 8 Jul 2020 17:51:55 +0800 Subject: [PATCH 07/13] i18n: separate strings for simpler translation --- eos/saveddata/damagePattern.py | 221 +++++++++++++------------ eos/saveddata/targetProfile.py | 286 ++++++++++++++++----------------- 2 files changed, 253 insertions(+), 254 deletions(-) diff --git a/eos/saveddata/damagePattern.py b/eos/saveddata/damagePattern.py index 8cf64c557..6c4670ddb 100644 --- a/eos/saveddata/damagePattern.py +++ b/eos/saveddata/damagePattern.py @@ -27,123 +27,121 @@ import eos.db _t = wx.GetTranslation - # Order is significant here - UI uses order as-is for built-in patterns BUILTINS = OrderedDict([ (-1, (_t('Uniform'), 25, 25, 25, 25)), - (-2, (_t('[Generic]EM'), 1, 0, 0, 0)), - (-3, (_t('[Generic]Thermal'), 0, 1, 0, 0)), - (-4, (_t('[Generic]Kinetic'), 0, 0, 1, 0)), - (-5, (_t('[Generic]Explosive'), 0, 0, 0, 1)), - (-6, (_t('[Frequency Crystals]|[T2] Aurora'), 5, 3, 0, 0)), - (-7, (_t('[Frequency Crystals]|[T2] Scorch'), 9, 2, 0, 0)), - (-8, (_t('[Frequency Crystals]Radio'), 5, 0, 0, 0)), - (-9, (_t('[Frequency Crystals]Microwave'), 4, 2, 0, 0)), - (-10, (_t('[Frequency Crystals]Infrared'), 5, 2, 0, 0)), - (-11, (_t('[Frequency Crystals]Standard'), 5, 3, 0, 0)), - (-12, (_t('[Frequency Crystals]Ultraviolet'), 6, 3, 0, 0)), - (-13, (_t('[Frequency Crystals]Xray'), 6, 4, 0, 0)), - (-14, (_t('[Frequency Crystals]Gamma'), 7, 4, 0, 0)), - (-15, (_t('[Frequency Crystals]Multifrequency'), 7, 5, 0, 0)), - (-16, (_t('[Frequency Crystals]|[T2] Gleam'), 7, 7, 0, 0)), - (-17, (_t('[Frequency Crystals]|[T2] Conflagration'), 7.7, 7.7, 0, 0)), + (-2, (_t('[Generic]') + _t('EM'), 1, 0, 0, 0)), + (-3, (_t('[Generic]') + _t('Thermal'), 0, 1, 0, 0)), + (-4, (_t('[Generic]') + _t('Kinetic'), 0, 0, 1, 0)), + (-5, (_t('[Generic]') + _t('Explosive'), 0, 0, 0, 1)), + (-6, (_t('[Frequency Crystals]') + '|' + _t('[T2] Aurora'), 5, 3, 0, 0)), + (-7, (_t('[Frequency Crystals]') + '|' + _t('[T2] Scorch'), 9, 2, 0, 0)), + (-8, (_t('[Frequency Crystals]') + _t('Radio'), 5, 0, 0, 0)), + (-9, (_t('[Frequency Crystals]') + _t('Microwave'), 4, 2, 0, 0)), + (-10, (_t('[Frequency Crystals]') + _t('Infrared'), 5, 2, 0, 0)), + (-11, (_t('[Frequency Crystals]') + _t('Standard'), 5, 3, 0, 0)), + (-12, (_t('[Frequency Crystals]') + _t('Ultraviolet'), 6, 3, 0, 0)), + (-13, (_t('[Frequency Crystals]') + _t('Xray'), 6, 4, 0, 0)), + (-14, (_t('[Frequency Crystals]') + _t('Gamma'), 7, 4, 0, 0)), + (-15, (_t('[Frequency Crystals]') + _t('Multifrequency'), 7, 5, 0, 0)), + (-16, (_t('[Frequency Crystals]') + '|' + _t('[T2] Gleam'), 7, 7, 0, 0)), + (-17, (_t('[Frequency Crystals]') + '|' + _t('[T2] Conflagration'), 7.7, 7.7, 0, 0)), # Different sizes of plasma do different damage ratios, the values here # are average of ratios across sizes - (-18, (_t('[Exotic Plasma]|[T2] Mystic'), 0, 66319, 0, 33681)), - (-19, (_t('[Exotic Plasma]Meson'), 0, 60519, 0, 39481)), - (-20, (_t('[Exotic Plasma]Baryon'), 0, 59737, 0, 40263)), - (-21, (_t('[Exotic Plasma]Tetryon'), 0, 69208, 0, 30792)), - (-22, (_t('[Exotic Plasma]|[T2] Occult'), 0, 55863, 0, 44137)), - (-23, (_t('[Hybrid Charges]|[T2] Spike'), 0, 4, 4, 0)), - (-24, (_t('[Hybrid Charges]|[T2] Null'), 0, 6, 5, 0)), - (-25, (_t('[Hybrid Charges]Iron'), 0, 2, 3, 0)), - (-26, (_t('[Hybrid Charges]Tungsten'), 0, 2, 4, 0)), - (-27, (_t('[Hybrid Charges]Iridium'), 0, 3, 4, 0)), - (-28, (_t('[Hybrid Charges]Lead'), 0, 3, 5, 0)), - (-29, (_t('[Hybrid Charges]Thorium'), 0, 4, 5, 0)), - (-30, (_t('[Hybrid Charges]Uranium'), 0, 4, 6, 0)), - (-31, (_t('[Hybrid Charges]Plutonium'), 0, 5, 6, 0)), - (-32, (_t('[Hybrid Charges]Antimatter'), 0, 5, 7, 0)), - (-33, (_t('[Hybrid Charges]|[T2] Javelin'), 0, 8, 6, 0)), - (-34, (_t('[Hybrid Charges]|[T2] Void'), 0, 7.7, 7.7, 0)), - (-35, (_t('[Projectile Ammo]|[T2] Tremor'), 0, 0, 3, 5)), - (-36, (_t('[Projectile Ammo]|[T2] Barrage'), 0, 0, 5, 6)), - (-37, (_t('[Projectile Ammo]Carbonized Lead'), 0, 0, 4, 1)), - (-38, (_t('[Projectile Ammo]Nuclear'), 0, 0, 1, 4)), - (-39, (_t('[Projectile Ammo]Proton'), 3, 0, 2, 0)), - (-40, (_t('[Projectile Ammo]Depleted Uranium'), 0, 3, 2, 3)), - (-41, (_t('[Projectile Ammo]Titanium Sabot'), 0, 0, 6, 2)), - (-42, (_t('[Projectile Ammo]EMP'), 9, 0, 1, 2)), - (-43, (_t('[Projectile Ammo]Phased Plasma'), 0, 10, 2, 0)), - (-44, (_t('[Projectile Ammo]Fusion'), 0, 0, 2, 10)), - (-45, (_t('[Projectile Ammo]|[T2] Quake'), 0, 0, 5, 9)), - (-46, (_t('[Projectile Ammo]|[T2] Hail'), 0, 0, 3.3, 12.1)), - (-47, (_t('[Missiles]Mjolnir'), 1, 0, 0, 0)), - (-48, (_t('[Missiles]Inferno'), 0, 1, 0, 0)), - (-49, (_t('[Missiles]Scourge'), 0, 0, 1, 0)), - (-50, (_t('[Missiles]Nova'), 0, 0, 0, 1)), - (-51, (_t('[Bombs]Electron Bomb'), 6400, 0, 0, 0)), - (-52, (_t('[Bombs]Scorch Bomb'), 0, 6400, 0, 0)), - (-53, (_t('[Bombs]Concussion Bomb'), 0, 0, 6400, 0)), - (-54, (_t('[Bombs]Shrapnel Bomb'), 0, 0, 0, 6400)), + (-18, (_t('[Exotic Plasma]') + '|' + _t('[T2] Mystic'), 0, 66319, 0, 33681)), + (-19, (_t('[Exotic Plasma]') + _t('Meson'), 0, 60519, 0, 39481)), + (-20, (_t('[Exotic Plasma]') + _t('Baryon'), 0, 59737, 0, 40263)), + (-21, (_t('[Exotic Plasma]') + _t('Tetryon'), 0, 69208, 0, 30792)), + (-22, (_t('[Exotic Plasma]') + '|' + _t('[T2] Occult'), 0, 55863, 0, 44137)), + (-23, (_t('[Hybrid Charges]') + '|' + _t('[T2] Spike'), 0, 4, 4, 0)), + (-24, (_t('[Hybrid Charges]') + '|' + _t('[T2] Null'), 0, 6, 5, 0)), + (-25, (_t('[Hybrid Charges]') + _t('Iron'), 0, 2, 3, 0)), + (-26, (_t('[Hybrid Charges]') + _t('Tungsten'), 0, 2, 4, 0)), + (-27, (_t('[Hybrid Charges]') + _t('Iridium'), 0, 3, 4, 0)), + (-28, (_t('[Hybrid Charges]') + _t('Lead'), 0, 3, 5, 0)), + (-29, (_t('[Hybrid Charges]') + _t('Thorium'), 0, 4, 5, 0)), + (-30, (_t('[Hybrid Charges]') + _t('Uranium'), 0, 4, 6, 0)), + (-31, (_t('[Hybrid Charges]') + _t('Plutonium'), 0, 5, 6, 0)), + (-32, (_t('[Hybrid Charges]') + _t('Antimatter'), 0, 5, 7, 0)), + (-33, (_t('[Hybrid Charges]') + '|' + _t('[T2] Javelin'), 0, 8, 6, 0)), + (-34, (_t('[Hybrid Charges]') + '|' + _t('[T2] Void'), 0, 7.7, 7.7, 0)), + (-35, (_t('[Projectile Ammo]') + '|' + _t('[T2] Tremor'), 0, 0, 3, 5)), + (-36, (_t('[Projectile Ammo]') + '|' + _t('[T2] Barrage'), 0, 0, 5, 6)), + (-37, (_t('[Projectile Ammo]') + _t('Carbonized Lead'), 0, 0, 4, 1)), + (-38, (_t('[Projectile Ammo]') + _t('Nuclear'), 0, 0, 1, 4)), + (-39, (_t('[Projectile Ammo]') + _t('Proton'), 3, 0, 2, 0)), + (-40, (_t('[Projectile Ammo]') + _t('Depleted Uranium'), 0, 3, 2, 3)), + (-41, (_t('[Projectile Ammo]') + _t('Titanium Sabot'), 0, 0, 6, 2)), + (-42, (_t('[Projectile Ammo]') + _t('EMP'), 9, 0, 1, 2)), + (-43, (_t('[Projectile Ammo]') + _t('Phased Plasma'), 0, 10, 2, 0)), + (-44, (_t('[Projectile Ammo]') + _t('Fusion'), 0, 0, 2, 10)), + (-45, (_t('[Projectile Ammo]') + '|' + _t('[T2] Quake'), 0, 0, 5, 9)), + (-46, (_t('[Projectile Ammo]') + '|' + _t('[T2] Hail'), 0, 0, 3.3, 12.1)), + (-47, (_t('[Missiles]') + _t('Mjolnir'), 1, 0, 0, 0)), + (-48, (_t('[Missiles]') + _t('Inferno'), 0, 1, 0, 0)), + (-49, (_t('[Missiles]') + _t('Scourge'), 0, 0, 1, 0)), + (-50, (_t('[Missiles]') + _t('Nova'), 0, 0, 0, 1)), + (-51, (_t('[Bombs]') + _t('Electron Bomb'), 6400, 0, 0, 0)), + (-52, (_t('[Bombs]') + _t('Scorch Bomb'), 0, 6400, 0, 0)), + (-53, (_t('[Bombs]') + _t('Concussion Bomb'), 0, 0, 6400, 0)), + (-54, (_t('[Bombs]') + _t('Shrapnel Bomb'), 0, 0, 0, 6400)), # Source: ticket #2067 - (-55, (_t('[NPC][Abyssal]All'), 130, 396, 258, 216)), - (-56, (_t('[NPC][Abyssal]Drifter'), 250, 250, 250, 250)), - (-57, (_t('[NPC][Abyssal]Drones'), 250, 250, 250, 250)), - (-58, (_t('[NPC][Abyssal]Overmind'), 0, 408, 592, 0)), - (-59, (_t('[NPC][Abyssal]Seeker'), 406, 406, 94, 94)), - (-60, (_t('[NPC][Abyssal]Sleeper'), 313, 313, 187, 187)), - (-61, (_t('[NPC][Abyssal]Triglavian'), 0, 610, 0, 390)), - (-62, (_t('[NPC][Asteroid]Angel Cartel'), 1838, 562, 2215, 3838)), - (-63, (_t('[NPC][Asteroid]Blood Raiders'), 5067, 4214, 0, 0)), - (-64, (_t('[NPC][Asteroid]Guristas'), 0, 1828, 7413, 0)), - (-65, (_t('[NPC][Asteroid]Rogue Drone'), 394, 666, 1090, 1687)), - (-66, (_t('[NPC][Asteroid]Sanshas Nation'), 5586, 4112, 0, 0)), - (-67, (_t('[NPC][Asteroid]Serpentis'), 0, 5373, 4813, 0)), - (-68, (_t('[NPC][Burner]Cruor (Blood Raiders)'), 90, 90, 0, 0)), - (-69, (_t('[NPC][Burner]Dramiel (Angel)'), 55, 0, 20, 96)), - (-70, (_t('[NPC][Burner]Daredevil (Serpentis)'), 0, 110, 154, 0)), - (-71, (_t('[NPC][Burner]Succubus (Sanshas Nation)'), 135, 30, 0, 0)), - (-72, (_t('[NPC][Burner]Worm (Guristas)'), 0, 0, 228, 0)), - (-73, (_t('[NPC][Burner]Enyo'), 0, 147, 147, 0)), - (-74, (_t('[NPC][Burner]Hawk'), 0, 0, 247, 0)), - (-75, (_t('[NPC][Burner]Jaguar'), 36, 0, 50, 182)), - (-76, (_t('[NPC][Burner]Vengeance'), 232, 0, 0, 0)), - (-77, (_t('[NPC][Burner]Ashimmu (Blood Raiders)'), 260, 100, 0, 0)), - (-78, (_t('[NPC][Burner]Talos'), 0, 413, 413, 0)), - (-79, (_t('[NPC][Burner]Sentinel'), 0, 75, 0, 90)), - (-80, (_t('[NPC][Deadspace]Angel Cartel'), 369, 533, 1395, 3302)), - (-81, (_t('[NPC][Deadspace]Blood Raiders'), 6040, 5052, 10, 15)), - (-82, (_t('[NPC][Deadspace]Guristas'), 0, 1531, 9680, 0)), - (-83, (_t('[NPC][Deadspace]Rogue Drone'), 276, 1071, 1069, 871)), - (-84, (_t('[NPC][Deadspace]Sanshas Nation'), 3009, 2237, 0, 0)), - (-85, (_t('[NPC][Deadspace]Serpentis'), 0, 3110, 1929, 0)), + (-55, (_t('[NPC]') + _t('[Abyssal]') + _t('All'), 130, 396, 258, 216)), + (-56, (_t('[NPC]') + _t('[Abyssal]') + _t('Drifter'), 250, 250, 250, 250)), + (-57, (_t('[NPC]') + _t('[Abyssal]') + _t('Drones'), 250, 250, 250, 250)), + (-58, (_t('[NPC]') + _t('[Abyssal]') + _t('Overmind'), 0, 408, 592, 0)), + (-59, (_t('[NPC]') + _t('[Abyssal]') + _t('Seeker'), 406, 406, 94, 94)), + (-60, (_t('[NPC]') + _t('[Abyssal]') + _t('Sleeper'), 313, 313, 187, 187)), + (-61, (_t('[NPC]') + _t('[Abyssal]') + _t('Triglavian'), 0, 610, 0, 390)), + (-62, (_t('[NPC]') + _t('[Asteroid]') + _t('Angel Cartel'), 1838, 562, 2215, 3838)), + (-63, (_t('[NPC]') + _t('[Asteroid]') + _t('Blood Raiders'), 5067, 4214, 0, 0)), + (-64, (_t('[NPC]') + _t('[Asteroid]') + _t('Guristas'), 0, 1828, 7413, 0)), + (-65, (_t('[NPC]') + _t('[Asteroid]') + _t('Rogue Drone'), 394, 666, 1090, 1687)), + (-66, (_t('[NPC]') + _t('[Asteroid]') + _t('Sanshas Nation'), 5586, 4112, 0, 0)), + (-67, (_t('[NPC]') + _t('[Asteroid]') + _t('Serpentis'), 0, 5373, 4813, 0)), + (-68, (_t('[NPC]') + _t('[Burner]') + _t('Cruor (Blood Raiders)'), 90, 90, 0, 0)), + (-69, (_t('[NPC]') + _t('[Burner]') + _t('Dramiel (Angel)'), 55, 0, 20, 96)), + (-70, (_t('[NPC]') + _t('[Burner]') + _t('Daredevil (Serpentis)'), 0, 110, 154, 0)), + (-71, (_t('[NPC]') + _t('[Burner]') + _t('Succubus (Sanshas Nation)'), 135, 30, 0, 0)), + (-72, (_t('[NPC]') + _t('[Burner]') + _t('Worm (Guristas)'), 0, 0, 228, 0)), + (-73, (_t('[NPC]') + _t('[Burner]') + _t('Enyo'), 0, 147, 147, 0)), + (-74, (_t('[NPC]') + _t('[Burner]') + _t('Hawk'), 0, 0, 247, 0)), + (-75, (_t('[NPC]') + _t('[Burner]') + _t('Jaguar'), 36, 0, 50, 182)), + (-76, (_t('[NPC]') + _t('[Burner]') + _t('Vengeance'), 232, 0, 0, 0)), + (-77, (_t('[NPC]') + _t('[Burner]') + _t('Ashimmu (Blood Raiders)'), 260, 100, 0, 0)), + (-78, (_t('[NPC]') + _t('[Burner]') + _t('Talos'), 0, 413, 413, 0)), + (-79, (_t('[NPC]') + _t('[Burner]') + _t('Sentinel'), 0, 75, 0, 90)), + (-80, (_t('[NPC]') + _t('[Deadspace]') + _t('Angel Cartel'), 369, 533, 1395, 3302)), + (-81, (_t('[NPC]') + _t('[Deadspace]') + _t('Blood Raiders'), 6040, 5052, 10, 15)), + (-82, (_t('[NPC]') + _t('[Deadspace]') + _t('Guristas'), 0, 1531, 9680, 0)), + (-83, (_t('[NPC]') + _t('[Deadspace]') + _t('Rogue Drone'), 276, 1071, 1069, 871)), + (-84, (_t('[NPC]') + _t('[Deadspace]') + _t('Sanshas Nation'), 3009, 2237, 0, 0)), + (-85, (_t('[NPC]') + _t('[Deadspace]') + _t('Serpentis'), 0, 3110, 1929, 0)), # Source: ticket #2067 - (-86, (_t('[NPC][Invasion][Invading Precursor Entities]Dread'), 0, 417, 0, 583)), - (-87, (_t('[NPC][Invasion][Invading Precursor Entities]Normal Subcaps'), 0, 610, 0, 390)), - (-88, (_t('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 0% spool up'), 367, 155, 367, 112)), - (-89, (_t('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 50% spool up'), 291, 243, 291, 175)), - (-90, (_t('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 100% spool up'), 241, 301, 241, 217)), - (-91, (_t('[NPC][Invasion][Retaliating Amarr Entities]Dread/Subcaps'), 583, 417, 0, 0)), - (-92, (_t('[NPC][Invasion][Retaliating Caldari Entities]Dread'), 1000, 0, 0, 0)), - (-93, (_t('[NPC][Invasion][Retaliating Caldari Entities]Subcaps'), 511, 21, 29, 440)), - (-94, (_t('[NPC][Invasion][Retaliating Gallente Entities]Dread/Subcaps'), 0, 417, 583, 0)), - (-95, (_t('[NPC][Invasion][Retaliating Minmatar Entities]Dread'), 0, 0, 583, 417)), - (-96, (_t('[NPC][Invasion][Retaliating Minmatar Entities]Subcaps'), 302, 136, 328, 234)), - (-97, (_t('[NPC][Mission]Amarr Empire'), 4464, 3546, 97, 0)), - (-98, (_t('[NPC][Mission]Caldari State'), 0, 2139, 4867, 0)), - (-99, (_t('[NPC][Mission]CONCORD'), 336, 134, 212, 412)), - (-100, (_t('[NPC][Mission]Gallente Federation'), 9, 3712, 2758, 0)), - (-101, (_t('[NPC][Mission]Khanid'), 612, 483, 43, 6)), - (-102, (_t('[NPC][Mission]Minmatar Republic'), 1024, 388, 1655, 4285)), - (-103, (_t('[NPC][Mission]Mordus Legion'), 25, 262, 625, 0)), - (-104, (_t('[NPC][Mission]Thukker'), 0, 52, 10, 79)), - (-105, (_t('[NPC]Sansha Incursion'), 1682, 1347, 3678, 3678)), - (-106, (_t('[NPC]Sleepers'), 1472, 1472, 1384, 1384))]) + (-86, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Dread'), 0, 417, 0, 583)), + (-87, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Normal Subcaps'), 0, 610, 0, 390)), + (-88, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Subcaps w/missiles 0% spool up'), 367, 155, 367, 112)), + (-89, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Subcaps w/missiles 50% spool up'), 291, 243, 291, 175)), + (-90, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Subcaps w/missiles 100% spool up'), 241, 301, 241, 217)), + (-91, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Amarr Entities]') + _t('Dread/Subcaps'), 583, 417, 0, 0)), + (-92, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Caldari Entities]') + _t('Dread'), 1000, 0, 0, 0)), + (-93, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Caldari Entities]') + _t('Subcaps'), 511, 21, 29, 440)), + (-94, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Gallente Entities]') + _t('Dread/Subcaps'), 0, 417, 583, 0)), + (-95, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Minmatar Entities]') + _t('Dread'), 0, 0, 583, 417)), + (-96, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Minmatar Entities]') + _t('Subcaps'), 302, 136, 328, 234)), + (-97, (_t('[NPC]') + _t('[Mission]') + _t('Amarr Empire'), 4464, 3546, 97, 0)), + (-98, (_t('[NPC]') + _t('[Mission]') + _t('Caldari State'), 0, 2139, 4867, 0)), + (-99, (_t('[NPC]') + _t('[Mission]') + _t('CONCORD'), 336, 134, 212, 412)), + (-100, (_t('[NPC]') + _t('[Mission]') + _t('Gallente Federation'), 9, 3712, 2758, 0)), + (-101, (_t('[NPC]') + _t('[Mission]') + _t('Khanid'), 612, 483, 43, 6)), + (-102, (_t('[NPC]') + _t('[Mission]') + _t('Minmatar Republic'), 1024, 388, 1655, 4285)), + (-103, (_t('[NPC]') + _t('[Mission]') + _t('Mordus Legion'), 25, 262, 625, 0)), + (-104, (_t('[NPC]') + _t('[Mission]') + _t('Thukker'), 0, 52, 10, 79)), + (-105, (_t('[NPC]') + _t('Sansha Incursion'), 1682, 1347, 3678, 3678)), + (-106, (_t('[NPC]') + _t('Sleepers'), 1472, 1472, 1384, 1384))]) class DamagePattern: - DAMAGE_TYPES = ('em', 'thermal', 'kinetic', 'explosive') _builtins = None @@ -204,7 +202,8 @@ class DamagePattern: "armorRepair": "armor", "armorRepairPreSpool": "armor", "armorRepairFullSpool": "armor", - "hullRepair": "hull"} + "hullRepair": "hull" + } ereps = {} for field in tankInfo: if field in typeMap: @@ -228,10 +227,10 @@ class DamagePattern: return amount / (specificDivider or 1) importMap = { - "em" : "em", + "em": "em", "therm": "thermal", - "kin" : "kinetic", - "exp" : "explosive" + "kin": "kinetic", + "exp": "explosive" } @classmethod diff --git a/eos/saveddata/targetProfile.py b/eos/saveddata/targetProfile.py index e4d1725ca..57e0207de 100644 --- a/eos/saveddata/targetProfile.py +++ b/eos/saveddata/targetProfile.py @@ -36,150 +36,150 @@ BUILTINS = OrderedDict([ (-2, (_t('Uniform (50%)'), 0.50, 0.50, 0.50, 0.50)), (-3, (_t('Uniform (75%)'), 0.75, 0.75, 0.75, 0.75)), (-4, (_t('Uniform (90%)'), 0.90, 0.90, 0.90, 0.90)), - (-5, (_t('[T1 Resist]Shield'), 0.0, 0.20, 0.40, 0.50)), - (-6, (_t('[T1 Resist]Armor'), 0.50, 0.45, 0.25, 0.10)), - (-7, (_t('[T1 Resist]Hull'), 0.33, 0.33, 0.33, 0.33)), - (-8, (_t('[T1 Resist]Shield (+T2 DCU)'), 0.125, 0.30, 0.475, 0.562)), - (-9, (_t('[T1 Resist]Armor (+T2 DCU)'), 0.575, 0.532, 0.363, 0.235)), - (-10, (_t('[T1 Resist]Hull (+T2 DCU)'), 0.598, 0.598, 0.598, 0.598)), - (-11, (_t('[T2 Resist]Amarr (Shield)'), 0.0, 0.20, 0.70, 0.875)), - (-12, (_t('[T2 Resist]Amarr (Armor)'), 0.50, 0.35, 0.625, 0.80)), - (-13, (_t('[T2 Resist]Caldari (Shield)'), 0.20, 0.84, 0.76, 0.60)), - (-14, (_t('[T2 Resist]Caldari (Armor)'), 0.50, 0.8625, 0.625, 0.10)), - (-15, (_t('[T2 Resist]Gallente (Shield)'), 0.0, 0.60, 0.85, 0.50)), - (-16, (_t('[T2 Resist]Gallente (Armor)'), 0.50, 0.675, 0.8375, 0.10)), - (-17, (_t('[T2 Resist]Minmatar (Shield)'), 0.75, 0.60, 0.40, 0.50)), - (-18, (_t('[T2 Resist]Minmatar (Armor)'), 0.90, 0.675, 0.25, 0.10)), - (-19, (_t('[NPC][Asteroid]Angel Cartel'), 0.54, 0.42, 0.37, 0.32)), - (-20, (_t('[NPC][Asteroid]Blood Raiders'), 0.34, 0.39, 0.45, 0.52)), - (-21, (_t('[NPC][Asteroid]Guristas'), 0.55, 0.35, 0.3, 0.48)), - (-22, (_t('[NPC][Asteroid]Rogue Drones'), 0.35, 0.38, 0.44, 0.49)), - (-23, (_t('[NPC][Asteroid]Sanshas Nation'), 0.35, 0.4, 0.47, 0.53)), - (-24, (_t('[NPC][Asteroid]Serpentis'), 0.49, 0.38, 0.29, 0.51)), - (-25, (_t('[NPC][Deadspace]Angel Cartel'), 0.59, 0.48, 0.4, 0.32)), - (-26, (_t('[NPC][Deadspace]Blood Raiders'), 0.31, 0.39, 0.47, 0.56)), - (-27, (_t('[NPC][Deadspace]Guristas'), 0.57, 0.39, 0.31, 0.5)), - (-28, (_t('[NPC][Deadspace]Rogue Drones'), 0.42, 0.42, 0.47, 0.49)), - (-29, (_t('[NPC][Deadspace]Sanshas Nation'), 0.31, 0.39, 0.47, 0.56)), - (-30, (_t('[NPC][Deadspace]Serpentis'), 0.49, 0.38, 0.29, 0.56)), - (-31, (_t('[NPC][Mission]Amarr Empire'), 0.34, 0.38, 0.42, 0.46)), - (-32, (_t('[NPC][Mission]Caldari State'), 0.51, 0.38, 0.3, 0.51)), - (-33, (_t('[NPC][Mission]CONCORD'), 0.47, 0.46, 0.47, 0.47)), - (-34, (_t('[NPC][Mission]Gallente Federation'), 0.51, 0.38, 0.31, 0.52)), - (-35, (_t('[NPC][Mission]Khanid'), 0.51, 0.42, 0.36, 0.4)), - (-36, (_t('[NPC][Mission]Minmatar Republic'), 0.51, 0.46, 0.41, 0.35)), - (-37, (_t('[NPC][Mission]Mordus Legion'), 0.32, 0.48, 0.4, 0.62)), - (-38, (_t('[NPC][Other]Sleeper'), 0.61, 0.61, 0.61, 0.61)), - (-39, (_t('[NPC][Other]Sansha Incursion'), 0.65, 0.63, 0.64, 0.65)), - (-40, (_t('[NPC][Burner]Cruor (Blood Raiders)'), 0.8, 0.73, 0.69, 0.67)), - (-41, (_t('[NPC][Burner]Dramiel (Angel)'), 0.35, 0.48, 0.61, 0.68)), - (-42, (_t('[NPC][Burner]Daredevil (Serpentis)'), 0.69, 0.59, 0.59, 0.43)), - (-43, (_t('[NPC][Burner]Succubus (Sanshas Nation)'), 0.35, 0.48, 0.61, 0.68)), - (-44, (_t('[NPC][Burner]Worm (Guristas)'), 0.48, 0.58, 0.69, 0.74)), - (-45, (_t('[NPC][Burner]Enyo'), 0.58, 0.72, 0.86, 0.24)), - (-46, (_t('[NPC][Burner]Hawk'), 0.3, 0.86, 0.79, 0.65)), - (-47, (_t('[NPC][Burner]Jaguar'), 0.78, 0.65, 0.48, 0.56)), - (-48, (_t('[NPC][Burner]Vengeance'), 0.66, 0.56, 0.75, 0.86)), - (-49, (_t('[NPC][Burner]Ashimmu (Blood Raiders)'), 0.8, 0.76, 0.68, 0.7)), - (-50, (_t('[NPC][Burner]Talos'), 0.68, 0.59, 0.59, 0.43)), - (-51, (_t('[NPC][Burner]Sentinel'), 0.58, 0.45, 0.52, 0.66)), + (-5, (_t('[T1 Resist]') + _t('Shield'), 0.0, 0.20, 0.40, 0.50)), + (-6, (_t('[T1 Resist]') + _t('Armor'), 0.50, 0.45, 0.25, 0.10)), + (-7, (_t('[T1 Resist]') + _t('Hull'), 0.33, 0.33, 0.33, 0.33)), + (-8, (_t('[T1 Resist]') + _t('Shield (+T2 DCU)'), 0.125, 0.30, 0.475, 0.562)), + (-9, (_t('[T1 Resist]') + _t('Armor (+T2 DCU)'), 0.575, 0.532, 0.363, 0.235)), + (-10, (_t('[T1 Resist]') + _t('Hull (+T2 DCU)'), 0.598, 0.598, 0.598, 0.598)), + (-11, (_t('[T2 Resist]') + _t('Amarr (Shield)'), 0.0, 0.20, 0.70, 0.875)), + (-12, (_t('[T2 Resist]') + _t('Amarr (Armor)'), 0.50, 0.35, 0.625, 0.80)), + (-13, (_t('[T2 Resist]') + _t('Caldari (Shield)'), 0.20, 0.84, 0.76, 0.60)), + (-14, (_t('[T2 Resist]') + _t('Caldari (Armor)'), 0.50, 0.8625, 0.625, 0.10)), + (-15, (_t('[T2 Resist]') + _t('Gallente (Shield)'), 0.0, 0.60, 0.85, 0.50)), + (-16, (_t('[T2 Resist]') + _t('Gallente (Armor)'), 0.50, 0.675, 0.8375, 0.10)), + (-17, (_t('[T2 Resist]') + _t('Minmatar (Shield)'), 0.75, 0.60, 0.40, 0.50)), + (-18, (_t('[T2 Resist]') + _t('Minmatar (Armor)'), 0.90, 0.675, 0.25, 0.10)), + (-19, (_t('[NPC]') + _t('[Asteroid]') + _t('Angel Cartel'), 0.54, 0.42, 0.37, 0.32)), + (-20, (_t('[NPC]') + _t('[Asteroid]') + _t('Blood Raiders'), 0.34, 0.39, 0.45, 0.52)), + (-21, (_t('[NPC]') + _t('[Asteroid]') + _t('Guristas'), 0.55, 0.35, 0.3, 0.48)), + (-22, (_t('[NPC]') + _t('[Asteroid]') + _t('Rogue Drones'), 0.35, 0.38, 0.44, 0.49)), + (-23, (_t('[NPC]') + _t('[Asteroid]') + _t('Sanshas Nation'), 0.35, 0.4, 0.47, 0.53)), + (-24, (_t('[NPC]') + _t('[Asteroid]') + _t('Serpentis'), 0.49, 0.38, 0.29, 0.51)), + (-25, (_t('[NPC]') + _t('[Deadspace]') + _t('Angel Cartel'), 0.59, 0.48, 0.4, 0.32)), + (-26, (_t('[NPC]') + _t('[Deadspace]') + _t('Blood Raiders'), 0.31, 0.39, 0.47, 0.56)), + (-27, (_t('[NPC]') + _t('[Deadspace]') + _t('Guristas'), 0.57, 0.39, 0.31, 0.5)), + (-28, (_t('[NPC]') + _t('[Deadspace]') + _t('Rogue Drones'), 0.42, 0.42, 0.47, 0.49)), + (-29, (_t('[NPC]') + _t('[Deadspace]') + _t('Sanshas Nation'), 0.31, 0.39, 0.47, 0.56)), + (-30, (_t('[NPC]') + _t('[Deadspace]') + _t('Serpentis'), 0.49, 0.38, 0.29, 0.56)), + (-31, (_t('[NPC]') + _t('[Mission]') + _t('Amarr Empire'), 0.34, 0.38, 0.42, 0.46)), + (-32, (_t('[NPC]') + _t('[Mission]') + _t('Caldari State'), 0.51, 0.38, 0.3, 0.51)), + (-33, (_t('[NPC]') + _t('[Mission]') + _t('CONCORD'), 0.47, 0.46, 0.47, 0.47)), + (-34, (_t('[NPC]') + _t('[Mission]') + _t('Gallente Federation'), 0.51, 0.38, 0.31, 0.52)), + (-35, (_t('[NPC]') + _t('[Mission]') + _t('Khanid'), 0.51, 0.42, 0.36, 0.4)), + (-36, (_t('[NPC]') + _t('[Mission]') + _t('Minmatar Republic'), 0.51, 0.46, 0.41, 0.35)), + (-37, (_t('[NPC]') + _t('[Mission]') + _t('Mordus Legion'), 0.32, 0.48, 0.4, 0.62)), + (-38, (_t('[NPC]') + _t('[Other]') + _t('Sleeper'), 0.61, 0.61, 0.61, 0.61)), + (-39, (_t('[NPC]') + _t('[Other]') + _t('Sansha Incursion'), 0.65, 0.63, 0.64, 0.65)), + (-40, (_t('[NPC]') + _t('[Burner]') + _t('Cruor (Blood Raiders)'), 0.8, 0.73, 0.69, 0.67)), + (-41, (_t('[NPC]') + _t('[Burner]') + _t('Dramiel (Angel)'), 0.35, 0.48, 0.61, 0.68)), + (-42, (_t('[NPC]') + _t('[Burner]') + _t('Daredevil (Serpentis)'), 0.69, 0.59, 0.59, 0.43)), + (-43, (_t('[NPC]') + _t('[Burner]') + _t('Succubus (Sanshas Nation)'), 0.35, 0.48, 0.61, 0.68)), + (-44, (_t('[NPC]') + _t('[Burner]') + _t('Worm (Guristas)'), 0.48, 0.58, 0.69, 0.74)), + (-45, (_t('[NPC]') + _t('[Burner]') + _t('Enyo'), 0.58, 0.72, 0.86, 0.24)), + (-46, (_t('[NPC]') + _t('[Burner]') + _t('Hawk'), 0.3, 0.86, 0.79, 0.65)), + (-47, (_t('[NPC]') + _t('[Burner]') + _t('Jaguar'), 0.78, 0.65, 0.48, 0.56)), + (-48, (_t('[NPC]') + _t('[Burner]') + _t('Vengeance'), 0.66, 0.56, 0.75, 0.86)), + (-49, (_t('[NPC]') + _t('[Burner]') + _t('Ashimmu (Blood Raiders)'), 0.8, 0.76, 0.68, 0.7)), + (-50, (_t('[NPC]') + _t('[Burner]') + _t('Talos'), 0.68, 0.59, 0.59, 0.43)), + (-51, (_t('[NPC]') + _t('[Burner]') + _t('Sentinel'), 0.58, 0.45, 0.52, 0.66)), # Source: ticket #2067 - (-52, (_t('[NPC][Invasion]Invading Precursor Entities'), 0.422, 0.367, 0.453, 0.411)), - (-53, (_t('[NPC][Invasion]Retaliating Amarr Entities'), 0.360, 0.310, 0.441, 0.602)), - (-54, (_t('[NPC][Invasion]Retaliating Caldari Entities'), 0.287, 0.610, 0.487, 0.401)), - (-55, (_t('[NPC][Invasion]Retaliating Gallente Entities'), 0.383, 0.414, 0.578, 0.513)), - (-56, (_t('[NPC][Invasion]Retaliating Minmatar Entities'), 0.620, 0.422, 0.355, 0.399)), - (-57, (_t('[NPC][Abyssal][Dark Matter All Tiers]Drones'), 0.439, 0.522, 0.529, 0.435)), - (-58, (_t('[NPC][Abyssal][Dark Matter All Tiers]Overmind'), 0.626, 0.576, 0.612, 0.624)), - (-59, (_t('[NPC][Abyssal][Dark Matter All Tiers]Seeker'), 0.082, 0.082, 0.082, 0.082)), - (-60, (_t('[NPC][Abyssal][Dark Matter All Tiers]Triglavian'), 0.477, 0.401, 0.449, 0.37)), - (-61, (_t('[NPC][Abyssal][Dark Matter All Tiers]Drifter'), 0.403, 0.403, 0.403, 0.403)), - (-62, (_t('[NPC][Abyssal][Dark Matter All Tiers]Sleeper'), 0.435, 0.435, 0.435, 0.435)), - (-63, (_t('[NPC][Abyssal][Dark Matter All Tiers]All'), 0.507, 0.477, 0.502, 0.493)), - (-64, (_t('[NPC][Abyssal][Electrical T1/T2]Drones'), 0.323, 0.522, 0.529, 0.435)), - (-65, (_t('[NPC][Abyssal][Electrical T1/T2]Overmind'), 0.521, 0.576, 0.612, 0.624)), - (-66, (_t('[NPC][Abyssal][Electrical T1/T2]Seeker'), 0, 0.082, 0.082, 0.082)), - (-67, (_t('[NPC][Abyssal][Electrical T1/T2]Triglavian'), 0.333, 0.401, 0.449, 0.37)), - (-68, (_t('[NPC][Abyssal][Electrical T1/T2]Drifter'), 0.267, 0.403, 0.403, 0.403)), - (-69, (_t('[NPC][Abyssal][Electrical T1/T2]Sleeper'), 0.329, 0.435, 0.435, 0.435)), - (-70, (_t('[NPC][Abyssal][Electrical T1/T2]All'), 0.385, 0.477, 0.502, 0.493)), - (-71, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Drones'), 0.255, 0.522, 0.529, 0.435)), - (-72, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Overmind'), 0.457, 0.576, 0.612, 0.624)), - (-73, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Seeker'), 0, 0.082, 0.082, 0.082)), - (-74, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Triglavian'), 0.241, 0.401, 0.449, 0.37)), - (-75, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Drifter'), 0.184, 0.403, 0.403, 0.403)), - (-76, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]Sleeper'), 0.268, 0.435, 0.435, 0.435)), - (-77, (_t('[NPC][Abyssal][Electrical T3 (Some T5 Rooms)]All'), 0.313, 0.477, 0.502, 0.493)), - (-78, (_t('[NPC][Abyssal][Electrical T4/T5]Drones'), 0.193, 0.522, 0.529, 0.435)), - (-79, (_t('[NPC][Abyssal][Electrical T4/T5]Overmind'), 0.398, 0.576, 0.612, 0.624)), - (-80, (_t('[NPC][Abyssal][Electrical T4/T5]Seeker'), 0, 0.082, 0.082, 0.082)), - (-81, (_t('[NPC][Abyssal][Electrical T4/T5]Triglavian'), 0.183, 0.401, 0.449, 0.37)), - (-82, (_t('[NPC][Abyssal][Electrical T4/T5]Drifter'), 0.107, 0.403, 0.403, 0.403)), - (-83, (_t('[NPC][Abyssal][Electrical T4/T5]Sleeper'), 0.215, 0.435, 0.435, 0.435)), - (-84, (_t('[NPC][Abyssal][Electrical T4/T5]All'), 0.25, 0.477, 0.502, 0.493)), - (-85, (_t('[NPC][Abyssal][Firestorm T1/T2]Drones'), 0.461, 0.425, 0.541, 0.443)), - (-86, (_t('[NPC][Abyssal][Firestorm T1/T2]Overmind'), 0.65, 0.469, 0.625, 0.633)), - (-87, (_t('[NPC][Abyssal][Firestorm T1/T2]Seeker'), 0.084, 0, 0.084, 0.084)), - (-88, (_t('[NPC][Abyssal][Firestorm T1/T2]Triglavian'), 0.534, 0.266, 0.484, 0.366)), - (-89, (_t('[NPC][Abyssal][Firestorm T1/T2]Drifter'), 0.422, 0.282, 0.422, 0.422)), - (-90, (_t('[NPC][Abyssal][Firestorm T1/T2]Sleeper'), 0.512, 0.402, 0.512, 0.512)), - (-91, (_t('[NPC][Abyssal][Firestorm T1/T2]All'), 0.541, 0.365, 0.524, 0.504)), - (-92, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Drones'), 0.461, 0.36, 0.541, 0.443)), - (-93, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Overmind'), 0.65, 0.391, 0.625, 0.633)), - (-94, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Seeker'), 0.084, 0, 0.084, 0.084)), - (-95, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Triglavian'), 0.534, 0.161, 0.484, 0.366)), - (-96, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Drifter'), 0.422, 0.196, 0.422, 0.422)), - (-97, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]Sleeper'), 0.512, 0.337, 0.512, 0.512)), - (-98, (_t('[NPC][Abyssal][Firestorm T3 (Some T5 Rooms)]All'), 0.541, 0.284, 0.524, 0.504)), - (-99, (_t('[NPC][Abyssal][Firestorm T4/T5]Drones'), 0.461, 0.305, 0.541, 0.443)), - (-100, (_t('[NPC][Abyssal][Firestorm T4/T5]Overmind'), 0.65, 0.323, 0.625, 0.633)), - (-101, (_t('[NPC][Abyssal][Firestorm T4/T5]Seeker'), 0.084, 0, 0.084, 0.084)), - (-102, (_t('[NPC][Abyssal][Firestorm T4/T5]Triglavian'), 0.534, 0.082, 0.484, 0.366)), - (-103, (_t('[NPC][Abyssal][Firestorm T4/T5]Drifter'), 0.422, 0.114, 0.422, 0.422)), - (-104, (_t('[NPC][Abyssal][Firestorm T4/T5]Sleeper'), 0.512, 0.276, 0.512, 0.512)), - (-105, (_t('[NPC][Abyssal][Firestorm T4/T5]All'), 0.541, 0.214, 0.524, 0.504)), - (-106, (_t('[NPC][Abyssal][Exotic T1/T2]Drones'), 0.439, 0.522, 0.417, 0.435)), - (-107, (_t('[NPC][Abyssal][Exotic T1/T2]Overmind'), 0.626, 0.576, 0.496, 0.624)), - (-108, (_t('[NPC][Abyssal][Exotic T1/T2]Seeker'), 0.082, 0.082, 0, 0.082)), - (-109, (_t('[NPC][Abyssal][Exotic T1/T2]Triglavian'), 0.477, 0.401, 0.284, 0.37)), - (-110, (_t('[NPC][Abyssal][Exotic T1/T2]Drifter'), 0.403, 0.403, 0.267, 0.403)), - (-111, (_t('[NPC][Abyssal][Exotic T1/T2]Sleeper'), 0.435, 0.435, 0.329, 0.435)), - (-112, (_t('[NPC][Abyssal][Exotic T1/T2]All'), 0.507, 0.477, 0.373, 0.493)), - (-113, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Drones'), 0.439, 0.522, 0.351, 0.435)), - (-114, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Overmind'), 0.626, 0.576, 0.419, 0.624)), - (-115, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Seeker'), 0.082, 0.082, 0, 0.082)), - (-116, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Triglavian'), 0.477, 0.401, 0.176, 0.37)), - (-117, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Drifter'), 0.403, 0.403, 0.184, 0.403)), - (-118, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]Sleeper'), 0.435, 0.435, 0.268, 0.435)), - (-119, (_t('[NPC][Abyssal][Exotic T3 (Some T5 Rooms)]All'), 0.507, 0.477, 0.293, 0.493)), - (-120, (_t('[NPC][Abyssal][Exotic T4/T5]Drones'), 0.439, 0.522, 0.293, 0.435)), - (-121, (_t('[NPC][Abyssal][Exotic T4/T5]Overmind'), 0.626, 0.576, 0.344, 0.624)), - (-122, (_t('[NPC][Abyssal][Exotic T4/T5]Seeker'), 0.082, 0.082, 0, 0.082)), - (-123, (_t('[NPC][Abyssal][Exotic T4/T5]Triglavian'), 0.477, 0.401, 0.107, 0.37)), - (-124, (_t('[NPC][Abyssal][Exotic T4/T5]Drifter'), 0.403, 0.403, 0.107, 0.403)), - (-125, (_t('[NPC][Abyssal][Exotic T4/T5]Sleeper'), 0.435, 0.435, 0.215, 0.435)), - (-126, (_t('[NPC][Abyssal][Exotic T4/T5]All'), 0.507, 0.477, 0.223, 0.493)), - (-127, (_t('[NPC][Abyssal][Gamma T1/T2]Drones'), 0.449, 0.54, 0.549, 0.336)), - (-128, (_t('[NPC][Abyssal][Gamma T1/T2]Overmind'), 0.6, 0.557, 0.601, 0.504)), - (-129, (_t('[NPC][Abyssal][Gamma T1/T2]Seeker'), 0.085, 0.085, 0.085, 0)), - (-130, (_t('[NPC][Abyssal][Gamma T1/T2]Triglavian'), 0.463, 0.392, 0.447, 0.193)), - (-131, (_t('[NPC][Abyssal][Gamma T1/T2]Drifter'), 0.428, 0.428, 0.428, 0.287)), - (-132, (_t('[NPC][Abyssal][Gamma T1/T2]Sleeper'), 0.435, 0.435, 0.435, 0.329)), - (-133, (_t('[NPC][Abyssal][Gamma T1/T2]All'), 0.493, 0.472, 0.5, 0.362)), - (-134, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Drones'), 0.449, 0.54, 0.549, 0.264)), - (-135, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Overmind'), 0.6, 0.557, 0.601, 0.428)), - (-136, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Seeker'), 0.085, 0.085, 0.085, 0)), - (-137, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Triglavian'), 0.463, 0.392, 0.447, 0.071)), - (-138, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Drifter'), 0.428, 0.428, 0.428, 0.2)), - (-139, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]Sleeper'), 0.435, 0.435, 0.435, 0.268)), - (-140, (_t('[NPC][Abyssal][Gamma T3 (Some T5 Rooms)]All'), 0.493, 0.472, 0.5, 0.28)), - (-141, (_t('[NPC][Abyssal][Gamma T4/T5]Drones'), 0.449, 0.54, 0.549, 0.197)), - (-142, (_t('[NPC][Abyssal][Gamma T4/T5]Overmind'), 0.6, 0.557, 0.601, 0.356)), - (-143, (_t('[NPC][Abyssal][Gamma T4/T5]Seeker'), 0.085, 0.085, 0.085, 0)), - (-144, (_t('[NPC][Abyssal][Gamma T4/T5]Triglavian'), 0.463, 0.392, 0.447, 0.029)), - (-145, (_t('[NPC][Abyssal][Gamma T4/T5]Drifter'), 0.428, 0.428, 0.428, 0.117)), - (-146, (_t('[NPC][Abyssal][Gamma T4/T5]Sleeper'), 0.435, 0.435, 0.435, 0.215)), - (-147, (_t('[NPC][Abyssal][Gamma T4/T5]All'), 0.493, 0.472, 0.5, 0.21))]) + (-52, (_t('[NPC]') + _t('[Invasion]') + _t('Invading Precursor Entities'), 0.422, 0.367, 0.453, 0.411)), + (-53, (_t('[NPC]') + _t('[Invasion]') + _t('Retaliating Amarr Entities'), 0.360, 0.310, 0.441, 0.602)), + (-54, (_t('[NPC]') + _t('[Invasion]') + _t('Retaliating Caldari Entities'), 0.287, 0.610, 0.487, 0.401)), + (-55, (_t('[NPC]') + _t('[Invasion]') + _t('Retaliating Gallente Entities'), 0.383, 0.414, 0.578, 0.513)), + (-56, (_t('[NPC]') + _t('[Invasion]') + _t('Retaliating Minmatar Entities'), 0.620, 0.422, 0.355, 0.399)), + (-57, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Drones'), 0.439, 0.522, 0.529, 0.435)), + (-58, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Overmind'), 0.626, 0.576, 0.612, 0.624)), + (-59, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Seeker'), 0.082, 0.082, 0.082, 0.082)), + (-60, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Triglavian'), 0.477, 0.401, 0.449, 0.37)), + (-61, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Drifter'), 0.403, 0.403, 0.403, 0.403)), + (-62, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Sleeper'), 0.435, 0.435, 0.435, 0.435)), + (-63, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('All'), 0.507, 0.477, 0.502, 0.493)), + (-64, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Drones'), 0.323, 0.522, 0.529, 0.435)), + (-65, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Overmind'), 0.521, 0.576, 0.612, 0.624)), + (-66, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Seeker'), 0, 0.082, 0.082, 0.082)), + (-67, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Triglavian'), 0.333, 0.401, 0.449, 0.37)), + (-68, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Drifter'), 0.267, 0.403, 0.403, 0.403)), + (-69, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Sleeper'), 0.329, 0.435, 0.435, 0.435)), + (-70, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('All'), 0.385, 0.477, 0.502, 0.493)), + (-71, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Drones'), 0.255, 0.522, 0.529, 0.435)), + (-72, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Overmind'), 0.457, 0.576, 0.612, 0.624)), + (-73, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Seeker'), 0, 0.082, 0.082, 0.082)), + (-74, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Triglavian'), 0.241, 0.401, 0.449, 0.37)), + (-75, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Drifter'), 0.184, 0.403, 0.403, 0.403)), + (-76, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Sleeper'), 0.268, 0.435, 0.435, 0.435)), + (-77, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('All'), 0.313, 0.477, 0.502, 0.493)), + (-78, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Drones'), 0.193, 0.522, 0.529, 0.435)), + (-79, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Overmind'), 0.398, 0.576, 0.612, 0.624)), + (-80, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Seeker'), 0, 0.082, 0.082, 0.082)), + (-81, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Triglavian'), 0.183, 0.401, 0.449, 0.37)), + (-82, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Drifter'), 0.107, 0.403, 0.403, 0.403)), + (-83, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Sleeper'), 0.215, 0.435, 0.435, 0.435)), + (-84, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('All'), 0.25, 0.477, 0.502, 0.493)), + (-85, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Drones'), 0.461, 0.425, 0.541, 0.443)), + (-86, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Overmind'), 0.65, 0.469, 0.625, 0.633)), + (-87, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Seeker'), 0.084, 0, 0.084, 0.084)), + (-88, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Triglavian'), 0.534, 0.266, 0.484, 0.366)), + (-89, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Drifter'), 0.422, 0.282, 0.422, 0.422)), + (-90, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Sleeper'), 0.512, 0.402, 0.512, 0.512)), + (-91, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('All'), 0.541, 0.365, 0.524, 0.504)), + (-92, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Drones'), 0.461, 0.36, 0.541, 0.443)), + (-93, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Overmind'), 0.65, 0.391, 0.625, 0.633)), + (-94, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Seeker'), 0.084, 0, 0.084, 0.084)), + (-95, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Triglavian'), 0.534, 0.161, 0.484, 0.366)), + (-96, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Drifter'), 0.422, 0.196, 0.422, 0.422)), + (-97, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Sleeper'), 0.512, 0.337, 0.512, 0.512)), + (-98, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('All'), 0.541, 0.284, 0.524, 0.504)), + (-99, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Drones'), 0.461, 0.305, 0.541, 0.443)), + (-100, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Overmind'), 0.65, 0.323, 0.625, 0.633)), + (-101, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Seeker'), 0.084, 0, 0.084, 0.084)), + (-102, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Triglavian'), 0.534, 0.082, 0.484, 0.366)), + (-103, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Drifter'), 0.422, 0.114, 0.422, 0.422)), + (-104, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Sleeper'), 0.512, 0.276, 0.512, 0.512)), + (-105, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('All'), 0.541, 0.214, 0.524, 0.504)), + (-106, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Drones'), 0.439, 0.522, 0.417, 0.435)), + (-107, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Overmind'), 0.626, 0.576, 0.496, 0.624)), + (-108, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Seeker'), 0.082, 0.082, 0, 0.082)), + (-109, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Triglavian'), 0.477, 0.401, 0.284, 0.37)), + (-110, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Drifter'), 0.403, 0.403, 0.267, 0.403)), + (-111, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Sleeper'), 0.435, 0.435, 0.329, 0.435)), + (-112, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('All'), 0.507, 0.477, 0.373, 0.493)), + (-113, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Drones'), 0.439, 0.522, 0.351, 0.435)), + (-114, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Overmind'), 0.626, 0.576, 0.419, 0.624)), + (-115, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Seeker'), 0.082, 0.082, 0, 0.082)), + (-116, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Triglavian'), 0.477, 0.401, 0.176, 0.37)), + (-117, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Drifter'), 0.403, 0.403, 0.184, 0.403)), + (-118, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Sleeper'), 0.435, 0.435, 0.268, 0.435)), + (-119, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('All'), 0.507, 0.477, 0.293, 0.493)), + (-120, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Drones'), 0.439, 0.522, 0.293, 0.435)), + (-121, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Overmind'), 0.626, 0.576, 0.344, 0.624)), + (-122, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Seeker'), 0.082, 0.082, 0, 0.082)), + (-123, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Triglavian'), 0.477, 0.401, 0.107, 0.37)), + (-124, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Drifter'), 0.403, 0.403, 0.107, 0.403)), + (-125, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Sleeper'), 0.435, 0.435, 0.215, 0.435)), + (-126, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('All'), 0.507, 0.477, 0.223, 0.493)), + (-127, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Drones'), 0.449, 0.54, 0.549, 0.336)), + (-128, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Overmind'), 0.6, 0.557, 0.601, 0.504)), + (-129, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Seeker'), 0.085, 0.085, 0.085, 0)), + (-130, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Triglavian'), 0.463, 0.392, 0.447, 0.193)), + (-131, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Drifter'), 0.428, 0.428, 0.428, 0.287)), + (-132, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Sleeper'), 0.435, 0.435, 0.435, 0.329)), + (-133, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('All'), 0.493, 0.472, 0.5, 0.362)), + (-134, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Drones'), 0.449, 0.54, 0.549, 0.264)), + (-135, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Overmind'), 0.6, 0.557, 0.601, 0.428)), + (-136, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Seeker'), 0.085, 0.085, 0.085, 0)), + (-137, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Triglavian'), 0.463, 0.392, 0.447, 0.071)), + (-138, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Drifter'), 0.428, 0.428, 0.428, 0.2)), + (-139, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Sleeper'), 0.435, 0.435, 0.435, 0.268)), + (-140, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('All'), 0.493, 0.472, 0.5, 0.28)), + (-141, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Drones'), 0.449, 0.54, 0.549, 0.197)), + (-142, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Overmind'), 0.6, 0.557, 0.601, 0.356)), + (-143, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Seeker'), 0.085, 0.085, 0.085, 0)), + (-144, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Triglavian'), 0.463, 0.392, 0.447, 0.029)), + (-145, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Drifter'), 0.428, 0.428, 0.428, 0.117)), + (-146, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Sleeper'), 0.435, 0.435, 0.435, 0.215)), + (-147, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('All'), 0.493, 0.472, 0.5, 0.21))]) class TargetProfile: From 2203767fded67d6c44ef768744b85bc48b51f05e Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Wed, 8 Jul 2020 17:57:38 +0800 Subject: [PATCH 08/13] i18n/zh_CN: update Chinese translation for damage pattern and target profile --- locale/zh_CN/LC_MESSAGES/lang.po | 907 ++++++++++++++++++++++++++++++- 1 file changed, 902 insertions(+), 5 deletions(-) diff --git a/locale/zh_CN/LC_MESSAGES/lang.po b/locale/zh_CN/LC_MESSAGES/lang.po index c7f00ecbf..fa97ad3e7 100644 --- a/locale/zh_CN/LC_MESSAGES/lang.po +++ b/locale/zh_CN/LC_MESSAGES/lang.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: pyfa 2.22.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-07-07 16:06+0800\n" -"PO-Revision-Date: 2020-07-07 17:10+0800\n" +"POT-Creation-Date: 2020-07-08 16:55+0800\n" +"PO-Revision-Date: 2020-07-09 00:39+0800\n" "Last-Translator: zhaoweny \n" "Language-Team: Chinese (simplified)\n" "Language: zh_CN\n" @@ -272,6 +272,16 @@ msgstr "起跳时间" msgid "Align:\t%.3fs" msgstr "起跳时间:%.3fs" +#: eos/saveddata/damagePattern.py:89 eos/saveddata/targetProfile.py:98 +#: eos/saveddata/targetProfile.py:105 eos/saveddata/targetProfile.py:112 +#: eos/saveddata/targetProfile.py:119 eos/saveddata/targetProfile.py:126 +#: eos/saveddata/targetProfile.py:133 eos/saveddata/targetProfile.py:140 +#: eos/saveddata/targetProfile.py:147 eos/saveddata/targetProfile.py:154 +#: eos/saveddata/targetProfile.py:161 eos/saveddata/targetProfile.py:168 +#: eos/saveddata/targetProfile.py:175 eos/saveddata/targetProfile.py:182 +msgid "All" +msgstr "全部" + #: gui/aboutData.py:32 msgid "All EVE-Online related materials are property of CCP hf." msgstr "所有 EvE Online 相关材料版权归CCP所有" @@ -288,14 +298,35 @@ msgstr "已达到所有技能要求" msgid "Allow pre-release notifications" msgstr "允许预发布版本更新通知" +#: eos/saveddata/targetProfile.py:46 +msgid "Amarr (Armor)" +msgstr "艾玛(护甲)" + +#: eos/saveddata/targetProfile.py:45 +msgid "Amarr (Shield)" +msgstr "艾玛(护盾)" + +#: eos/saveddata/damagePattern.py:132 eos/saveddata/targetProfile.py:65 +msgid "Amarr Empire" +msgstr "艾玛帝国" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:115 msgid "Ammo hold" msgstr "弹药仓" +#: eos/saveddata/damagePattern.py:96 eos/saveddata/damagePattern.py:114 +#: eos/saveddata/targetProfile.py:53 eos/saveddata/targetProfile.py:59 +msgid "Angel Cartel" +msgstr "天使联合企业" + #: gui/builtinPreferenceViews/pyfaGeneralPreferences.py:70 msgid "Animate gauges" msgstr "启用属性进度条动画" +#: eos/saveddata/damagePattern.py:65 +msgid "Antimatter" +msgstr "反物质" + #: gui/builtinContextMenus/implantSetApply.py:25 msgid "Apply Implant Set" msgstr "应用植入体配置" @@ -322,6 +353,14 @@ msgid "" "This could lead to wildly inaccurate results and possible errors." msgstr "您确定要忽略当前装配资源限制吗?这可能导致不准确或错误的结果。" +#: eos/saveddata/targetProfile.py:40 +msgid "Armor" +msgstr "装甲" + +#: eos/saveddata/targetProfile.py:43 +msgid "Armor (+T2 DCU)" +msgstr "护甲(+T2损控)" + #: gui/builtinStatsViews/rechargeViewFull.py:77 msgid "Armor repair amount" msgstr "装甲修量" @@ -334,6 +373,10 @@ msgstr "装甲抗性" msgid "Armor: " msgstr "装甲:" +#: eos/saveddata/damagePattern.py:111 eos/saveddata/targetProfile.py:83 +msgid "Ashimmu (Blood Raiders)" +msgstr "阿什姆级(血袭者)" + #: gui/builtinItemStatsViews/itemAttributes.py:44 #: gui/builtinItemStatsViews/itemProperties.py:56 msgid "Attribute" @@ -376,6 +419,10 @@ msgstr "备份所有装配到XML文件" msgid "Backup fits" msgstr "备份装配" +#: eos/saveddata/damagePattern.py:53 +msgid "Baryon" +msgstr "重子" + #: gui/builtinItemStatsViews/itemAttributes.py:47 msgid "Base Value" msgstr "基础值" @@ -396,6 +443,11 @@ msgstr "请注意已处理的装配未作保存" msgid "Bioluminescence" msgstr "生物荧光" +#: eos/saveddata/damagePattern.py:97 eos/saveddata/damagePattern.py:115 +#: eos/saveddata/targetProfile.py:54 eos/saveddata/targetProfile.py:60 +msgid "Blood Raiders" +msgstr "血袭者" + #: gui/builtinAdditionPanes/boosterView.py:215 msgid "Booster" msgstr "增效剂" @@ -411,6 +463,10 @@ msgstr "增效剂" msgid "Browse EVE Fittings" msgstr "浏览游戏内装配" +#: eos/saveddata/damagePattern.py:134 eos/saveddata/targetProfile.py:67 +msgid "CONCORD" +msgstr "统合部" + #: gui/builtinStatsViews/resourcesViewFull.py:153 msgid "CPU" msgstr "CPU" @@ -419,6 +475,18 @@ msgstr "CPU" msgid "CSV files" msgstr "逗号分隔符(CSV)文件" +#: eos/saveddata/targetProfile.py:48 +msgid "Caldari (Armor)" +msgstr "加达里(护甲)" + +#: eos/saveddata/targetProfile.py:47 +msgid "Caldari (Shield)" +msgstr "加达里(护盾)" + +#: eos/saveddata/damagePattern.py:133 eos/saveddata/targetProfile.py:66 +msgid "Caldari State" +msgstr "加达里合众国" + #: gui/builtinStatsViews/resourcesViewFull.py:115 msgid "Calibration" msgstr "校准" @@ -432,6 +500,10 @@ msgstr "电容" msgid "Capacitor stability" msgstr "电容稳定性" +#: eos/saveddata/damagePattern.py:70 +msgid "Carbonized Lead" +msgstr "碳铅弹" + #: gui/additionsPane.py:72 gui/builtinContextMenus/priceOptions.py:47 #: gui/builtinPreferenceViews/pyfaMarketPreferences.py:81 #: gui/builtinStatsViews/targetingMiscViewMinimal.py:90 @@ -591,6 +663,10 @@ msgstr "简洁技能需求提示" msgid "Compare" msgstr "对比" +#: eos/saveddata/damagePattern.py:86 +msgid "Concussion Bomb" +msgstr "震荡炸弹" + #: gui/builtinPreferenceViews/pyfaDatabasePreferences.py:98 #: gui/builtinPreferenceViews/pyfaDatabasePreferences.py:103 #: gui/builtinPreferenceViews/pyfaDatabasePreferences.py:108 @@ -693,6 +769,10 @@ msgstr "无法从剪贴板导入:未知错误" msgid "Cruiser" msgstr "巡洋" +#: eos/saveddata/damagePattern.py:102 eos/saveddata/targetProfile.py:74 +msgid "Cruor (Blood Raiders)" +msgstr "凝血级(血袭者)" + #: gui/builtinItemStatsViews/itemAttributes.py:45 #: gui/builtinItemStatsViews/itemProperties.py:57 msgid "Current Value" @@ -718,6 +798,10 @@ msgstr "伤害模型" msgid "Damage Profile name already in use, please choose another." msgstr "伤害模型名已占用,请使用其他名称。" +#: eos/saveddata/damagePattern.py:104 eos/saveddata/targetProfile.py:76 +msgid "Daredevil (Serpentis)" +msgstr "夜魔侠级(天蛇)" + #: gui/builtinPreferenceViews/pyfaDatabasePreferences.py:15 msgid "Database" msgstr "数据库" @@ -763,6 +847,10 @@ msgstr "删除游戏内装配" msgid "Dependents" msgstr "依赖" +#: eos/saveddata/damagePattern.py:73 +msgid "Depleted Uranium" +msgstr "硬钼弹" + #: gui/itemStats.py:174 msgid "Description" msgstr "简介" @@ -827,6 +915,29 @@ msgstr "拖拽装配到此处" msgid "Drag an item or fit, or use right-click menu for wormhole effects" msgstr "拖拽一个物品或装配以启用投射效果,或使用右键菜单选择一个虫洞环境效果" +#: eos/saveddata/damagePattern.py:103 eos/saveddata/targetProfile.py:75 +msgid "Dramiel (Angel)" +msgstr "德拉米尔级(天使)" + +#: eos/saveddata/damagePattern.py:121 eos/saveddata/damagePattern.py:127 +#: eos/saveddata/damagePattern.py:130 +msgid "Dread" +msgstr "无畏" + +#: eos/saveddata/damagePattern.py:126 eos/saveddata/damagePattern.py:129 +msgid "Dread/Subcaps" +msgstr "无畏/常规" + +#: eos/saveddata/damagePattern.py:90 eos/saveddata/targetProfile.py:96 +#: eos/saveddata/targetProfile.py:103 eos/saveddata/targetProfile.py:110 +#: eos/saveddata/targetProfile.py:117 eos/saveddata/targetProfile.py:124 +#: eos/saveddata/targetProfile.py:131 eos/saveddata/targetProfile.py:138 +#: eos/saveddata/targetProfile.py:145 eos/saveddata/targetProfile.py:152 +#: eos/saveddata/targetProfile.py:159 eos/saveddata/targetProfile.py:166 +#: eos/saveddata/targetProfile.py:173 eos/saveddata/targetProfile.py:180 +msgid "Drifter" +msgstr "流浪者" + #: gui/builtinStatsViews/firepowerViewFull.py:67 msgid "Drone" msgstr "无人机" @@ -847,6 +958,13 @@ msgstr "无人机仓库" msgid "Drone range" msgstr "无人机半径" +#: eos/saveddata/damagePattern.py:91 eos/saveddata/targetProfile.py:92 +#: eos/saveddata/targetProfile.py:99 eos/saveddata/targetProfile.py:106 +#: eos/saveddata/targetProfile.py:113 eos/saveddata/targetProfile.py:120 +#: eos/saveddata/targetProfile.py:127 eos/saveddata/targetProfile.py:134 +#: eos/saveddata/targetProfile.py:141 eos/saveddata/targetProfile.py:148 +#: eos/saveddata/targetProfile.py:155 eos/saveddata/targetProfile.py:162 +#: eos/saveddata/targetProfile.py:169 eos/saveddata/targetProfile.py:176 #: gui/additionsPane.py:66 gui/builtinContextMenus/additionsExportAll.py:18 #: gui/builtinContextMenus/additionsExportSelection.py:18 #: gui/builtinContextMenus/additionsImport.py:19 @@ -877,6 +995,7 @@ msgstr "EFT装配文本文件" msgid "EHP" msgstr "EHP" +#: eos/saveddata/damagePattern.py:33 #: gui/builtinContextMenus/moduleAmmoChange.py:24 msgid "EM" msgstr "电磁" @@ -885,6 +1004,10 @@ msgstr "电磁" msgid "EM resistance" msgstr "电磁抗性" +#: eos/saveddata/damagePattern.py:75 +msgid "EMP" +msgstr "电磁脉冲弹" + #: gui/esiFittings.py:313 gui/esiFittings.py:317 gui/esiFittings.py:325 msgid "ERROR" msgstr "错误" @@ -940,6 +1063,10 @@ msgstr "效果" msgid "Electromagnetic resistance" msgstr "电磁抗性" +#: eos/saveddata/damagePattern.py:84 +msgid "Electron Bomb" +msgstr "电子炸弹" + #: gui/builtinContextMenus/moduleAmmoChange.py:59 msgid "Empty" msgstr "空" @@ -1012,6 +1139,10 @@ msgstr "请为新角色输入一个名称:" msgid "Enter a name for your new Implant Set:" msgstr "请为新植入体配置输入一个名称:" +#: eos/saveddata/damagePattern.py:107 eos/saveddata/targetProfile.py:79 +msgid "Enyo" +msgstr "恩尤" + #: gui/characterEditor.py:83 gui/characterEditor.py:463 #: gui/characterEditor.py:898 gui/characterSelection.py:174 #: gui/mainFrame.py:898 gui/patternEditor.py:58 gui/setEditor.py:55 @@ -1031,6 +1162,7 @@ msgstr "错误!" msgid "Expand All" msgstr "展开所有" +#: eos/saveddata/damagePattern.py:36 #: gui/builtinContextMenus/moduleAmmoChange.py:26 msgid "Explosive" msgstr "爆炸" @@ -1255,10 +1387,30 @@ msgstr "燃料仓" msgid "Full" msgstr "完整" +#: eos/saveddata/damagePattern.py:77 +msgid "Fusion" +msgstr "聚变弹" + +#: eos/saveddata/targetProfile.py:50 +msgid "Gallente (Armor)" +msgstr "盖伦特(护甲)" + +#: eos/saveddata/targetProfile.py:49 +msgid "Gallente (Shield)" +msgstr "盖伦特(护盾)" + +#: eos/saveddata/damagePattern.py:135 eos/saveddata/targetProfile.py:68 +msgid "Gallente Federation" +msgstr "盖伦特联邦" + #: gui/builtinPreferenceViews/pyfaDatabasePreferences.py:57 msgid "Game Database:" msgstr "游戏数据库:" +#: eos/saveddata/damagePattern.py:45 +msgid "Gamma" +msgstr "伽玛" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:125 msgid "Gas hold" msgstr "气体矿物仓库" @@ -1291,6 +1443,11 @@ msgstr "转到GitHub上的百科页" msgid "Grant Missing Skills" msgstr "习得所需技能" +#: eos/saveddata/damagePattern.py:98 eos/saveddata/damagePattern.py:116 +#: eos/saveddata/targetProfile.py:55 eos/saveddata/targetProfile.py:61 +msgid "Guristas" +msgstr "古斯塔斯" + #: gui/builtinStatsViews/resistancesViewFull.py:172 #: gui/builtinStatsViews/resistancesViewFull.py:187 msgid "HP" @@ -1309,6 +1466,10 @@ msgstr "" "HTML导出(文件>导出到所有装配到网页)可以导出你的所有装配为HTML网页,放在指定" "路径下。网页版装配应用可以很容易的打开该HTML网页" +#: eos/saveddata/damagePattern.py:108 eos/saveddata/targetProfile.py:80 +msgid "Hawk" +msgstr "战鹰级" + #: gui/builtinAdditionPanes/fighterView.py:62 msgid "Heavy" msgstr "重型" @@ -1330,6 +1491,14 @@ msgstr "高" msgid "High Security" msgstr "高安" +#: eos/saveddata/targetProfile.py:41 +msgid "Hull" +msgstr "结构" + +#: eos/saveddata/targetProfile.py:44 +msgid "Hull (+T2 DCU)" +msgstr "结构(+T2 损控)" + #: gui/builtinStatsViews/rechargeViewFull.py:78 msgid "Hull repair amount" msgstr "结构修量" @@ -1346,6 +1515,10 @@ msgstr "结构:" msgid "ID" msgstr "ID" +#: eos/saveddata/targetProfile.py:243 +msgid "Ideal Target" +msgstr "理想目标" + #: gui/builtinContextMenus/graphDroneControlRange.py:23 msgid "Ignore Drone Control Range" msgstr "忽略无人机控制半径" @@ -1475,10 +1648,22 @@ msgstr "范围无效(必须是 0-100)" msgid "Industrial ship hold" msgstr "工业舰船仓" +#: eos/saveddata/damagePattern.py:81 +msgid "Inferno" +msgstr "炼狱" + +#: eos/saveddata/damagePattern.py:41 +msgid "Infrared" +msgstr "红外" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:164 msgid "Interceptor" msgstr "截击" +#: eos/saveddata/targetProfile.py:87 +msgid "Invading Precursor Entities" +msgstr "入侵的先驱者实体" + #: gui/mainFrame.py:894 msgid "Invalid Path" msgstr "无效路径" @@ -1487,6 +1672,14 @@ msgstr "无效路径" msgid "Invalid Token" msgstr "无效登录信息" +#: eos/saveddata/damagePattern.py:60 +msgid "Iridium" +msgstr "铱质" + +#: eos/saveddata/damagePattern.py:58 +msgid "Iron" +msgstr "铁质" + #: gui/builtinContextMenus/ammoToDmgPattern.py:32 #: gui/builtinContextMenus/itemMarketJump.py:44 #: gui/builtinContextMenus/itemRemove.py:43 @@ -1503,6 +1696,15 @@ msgstr "切换物品分类时" msgid "Item stats" msgstr "物品属性" +#: eos/saveddata/damagePattern.py:109 eos/saveddata/targetProfile.py:81 +msgid "Jaguar" +msgstr "美洲豹" + +#: eos/saveddata/damagePattern.py:136 eos/saveddata/targetProfile.py:69 +msgid "Khanid" +msgstr "卡尼迪" + +#: eos/saveddata/damagePattern.py:35 #: gui/builtinContextMenus/moduleAmmoChange.py:27 msgid "Kinetic" msgstr "动能" @@ -1529,8 +1731,12 @@ msgstr "可维持" msgid "Launcher hardpoints" msgstr "发射器" +#: eos/saveddata/damagePattern.py:61 +msgid "Lead" +msgstr "铅质" + #: gui/builtinContextMenus/moduleAmmoChange.py:94 -#: gui/builtinContextMenus/moduleAmmoChange.py:109 +#: gui/builtinContextMenus/moduleAmmoChange.py:112 msgid "Less Damage" msgstr "更少伤害" @@ -1674,6 +1880,14 @@ msgstr "中" msgid "Medium ship hold" msgstr "中型舰船仓" +#: eos/saveddata/damagePattern.py:52 +msgid "Meson" +msgstr "介子" + +#: eos/saveddata/damagePattern.py:40 +msgid "Microwave" +msgstr "微波" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:123 msgid "Mineral hold" msgstr "矿物仓" @@ -1693,6 +1907,18 @@ msgstr "简洁" msgid "Mining Yield" msgstr "矿物产出" +#: eos/saveddata/targetProfile.py:52 +msgid "Minmatar (Armor)" +msgstr "米玛塔尔(护甲)" + +#: eos/saveddata/targetProfile.py:51 +msgid "Minmatar (Shield)" +msgstr "米玛塔尔(护盾)" + +#: eos/saveddata/damagePattern.py:137 eos/saveddata/targetProfile.py:70 +msgid "Minmatar Republic" +msgstr "米玛塔尔共和国" + #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:87 msgid "Misc" msgstr "杂项" @@ -1705,6 +1931,10 @@ msgstr "杂项" msgid "Mixed" msgstr "混合" +#: eos/saveddata/damagePattern.py:80 +msgid "Mjolnir" +msgstr "雷神" + #: gui/builtinPreferenceViews/pyfaNetworkPreferences.py:83 msgid "Mode:" msgstr "模式" @@ -1713,11 +1943,19 @@ msgstr "模式" msgid "Module" msgstr "模块" +#: eos/saveddata/damagePattern.py:138 eos/saveddata/targetProfile.py:71 +msgid "Mordus Legion" +msgstr "莫德团" + #: gui/builtinContextMenus/moduleAmmoChange.py:97 -#: gui/builtinContextMenus/moduleAmmoChange.py:112 +#: gui/builtinContextMenus/moduleAmmoChange.py:115 msgid "More Damage" msgstr "更多伤害" +#: eos/saveddata/damagePattern.py:46 +msgid "Multifrequency" +msgstr "多频" + #: gui/copySelectDialog.py:54 msgid "Mutated Attributes" msgstr "已变异属性" @@ -1795,6 +2033,10 @@ msgstr "无代理" msgid "None" msgstr "无" +#: eos/saveddata/damagePattern.py:122 +msgid "Normal Subcaps" +msgstr "常规非旗舰" + #: gui/builtinContextMenus/skillAffectors.py:77 msgid "Not Learned" msgstr "未学习" @@ -1807,6 +2049,14 @@ msgstr "未学习" msgid "Notes" msgstr "备注" +#: eos/saveddata/damagePattern.py:83 +msgid "Nova" +msgstr "星爆" + +#: eos/saveddata/damagePattern.py:71 +msgid "Nuclear" +msgstr "核芯弹" + #: gui/builtinContextMenus/fitSystemSecurity.py:21 msgid "Null Security" msgstr "零安" @@ -1859,6 +2109,16 @@ msgstr "优化价格" msgid "Ore hold" msgstr "矿石仓" +#: eos/saveddata/damagePattern.py:92 eos/saveddata/targetProfile.py:93 +#: eos/saveddata/targetProfile.py:100 eos/saveddata/targetProfile.py:107 +#: eos/saveddata/targetProfile.py:114 eos/saveddata/targetProfile.py:121 +#: eos/saveddata/targetProfile.py:128 eos/saveddata/targetProfile.py:135 +#: eos/saveddata/targetProfile.py:142 eos/saveddata/targetProfile.py:149 +#: eos/saveddata/targetProfile.py:156 eos/saveddata/targetProfile.py:163 +#: eos/saveddata/targetProfile.py:170 eos/saveddata/targetProfile.py:177 +msgid "Overmind" +msgstr "主宰" + #: gui/builtinStatsViews/rechargeViewFull.py:75 msgid "Passive shield recharge" msgstr "被动回充" @@ -1879,6 +2139,10 @@ msgstr "伤害模型已导出到剪贴板" msgid "Patterns successfully imported from clipboard" msgstr "从剪贴板导入伤害模型成功" +#: eos/saveddata/damagePattern.py:76 +msgid "Phased Plasma" +msgstr "定相等离子弹" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:128 msgid "Planetary goods hold" msgstr "星系物质仓" @@ -1908,6 +2172,10 @@ msgstr "请确认Pyfa偏好保存位置。" msgid "Plot with Different Ammo..." msgstr "使用不同的弹药..." +#: eos/saveddata/damagePattern.py:64 +msgid "Plutonium" +msgstr "锰质" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:164 msgid "Pod" msgstr "逃生舱" @@ -1984,6 +2252,10 @@ msgstr "属性" msgid "Propulsion" msgstr "高速" +#: eos/saveddata/damagePattern.py:72 +msgid "Proton" +msgstr "质子弹" + #: gui/builtinPreferenceViews/pyfaNetworkPreferences.py:49 msgid "Proxy settings" msgstr "代理设置" @@ -2028,6 +2300,10 @@ msgstr "激活的物品数量" msgid "Quantity of all items" msgstr "所有物品数量" +#: eos/saveddata/damagePattern.py:39 +msgid "Radio" +msgstr "射频" + #: gui/targetProfileEditor.py:126 msgid "Radius" msgstr "信号半径" @@ -2150,6 +2426,22 @@ msgstr "抗性" msgid "Resources" msgstr "装配资源" +#: eos/saveddata/targetProfile.py:88 +msgid "Retaliating Amarr Entities" +msgstr "反击艾玛单位" + +#: eos/saveddata/targetProfile.py:89 +msgid "Retaliating Caldari Entities" +msgstr "反击加达里单位" + +#: eos/saveddata/targetProfile.py:90 +msgid "Retaliating Gallente Entities" +msgstr "反击盖伦特单位" + +#: eos/saveddata/targetProfile.py:91 +msgid "Retaliating Minmatar Entities" +msgstr "反击米玛塔尔单位" + #: gui/builtinItemStatsViews/itemMutator.py:57 msgid "Revert changes" msgstr "还原到初始状态" @@ -2162,6 +2454,14 @@ msgstr "还原为{}" msgid "Rig" msgstr "改装" +#: eos/saveddata/damagePattern.py:99 eos/saveddata/damagePattern.py:117 +msgid "Rogue Drone" +msgstr "自由无人机" + +#: eos/saveddata/targetProfile.py:56 eos/saveddata/targetProfile.py:62 +msgid "Rogue Drones" +msgstr "自由无人机" + #: gui/builtinItemStatsViews/itemEffects.py:34 msgid "Run Time" msgstr "运行时长" @@ -2182,10 +2482,16 @@ msgstr "单点登录(SSO)模式" msgid "Salvage hold" msgstr "打捞件仓" +#: eos/saveddata/damagePattern.py:140 eos/saveddata/targetProfile.py:73 #: gui/builtinContextMenus/envEffectAdd.py:112 msgid "Sansha Incursion" msgstr "萨沙入侵" +#: eos/saveddata/damagePattern.py:100 eos/saveddata/damagePattern.py:118 +#: eos/saveddata/targetProfile.py:57 eos/saveddata/targetProfile.py:63 +msgid "Sanshas Nation" +msgstr "萨沙国度" + #: gui/mainFrame.py:860 msgid "Save Backup As..." msgstr "保存备份为..." @@ -2219,6 +2525,14 @@ msgstr "保存为新的植入体配置" msgid "Scan res." msgstr "扫描精度" +#: eos/saveddata/damagePattern.py:85 +msgid "Scorch Bomb" +msgstr "灼烧炸弹" + +#: eos/saveddata/damagePattern.py:82 +msgid "Scourge" +msgstr "鞭挞" + #: gui/builtinShipBrowser/navigationPanel.py:61 msgid "Search fittings" msgstr "搜索装配" @@ -2230,7 +2544,17 @@ msgstr "安全等级: {0:.2f}" #: gui/characterEditor.py:914 msgid "Security Status is used in some CONCORD hull calculations" -msgstr "安全等级会用于计算CONCORD警察船体属性" +msgstr "安全等级会用于计算统合部船体属性" + +#: eos/saveddata/damagePattern.py:93 eos/saveddata/targetProfile.py:94 +#: eos/saveddata/targetProfile.py:101 eos/saveddata/targetProfile.py:108 +#: eos/saveddata/targetProfile.py:115 eos/saveddata/targetProfile.py:122 +#: eos/saveddata/targetProfile.py:129 eos/saveddata/targetProfile.py:136 +#: eos/saveddata/targetProfile.py:143 eos/saveddata/targetProfile.py:150 +#: eos/saveddata/targetProfile.py:157 eos/saveddata/targetProfile.py:164 +#: eos/saveddata/targetProfile.py:171 eos/saveddata/targetProfile.py:178 +msgid "Seeker" +msgstr "探寻者" #: gui/copySelectDialog.py:62 msgid "Select a format" @@ -2244,10 +2568,19 @@ msgstr "正在发送请求和接收响应" msgid "Sensor str." msgstr "传感器强度" +#: eos/saveddata/damagePattern.py:113 eos/saveddata/targetProfile.py:85 +msgid "Sentinel" +msgstr "哨兵级" + #: gui/builtinPreferenceViews/pyfaGeneralPreferences.py:59 msgid "Separate Racks" msgstr "分隔不同槽位类型" +#: eos/saveddata/damagePattern.py:101 eos/saveddata/damagePattern.py:119 +#: eos/saveddata/targetProfile.py:58 eos/saveddata/targetProfile.py:64 +msgid "Serpentis" +msgstr "天蛇" + #: gui/builtinViewColumns/baseName.py:64 msgid "Service" msgstr "服务" @@ -2283,6 +2616,14 @@ msgstr "" msgid "Sharpshooter" msgstr "狙击" +#: eos/saveddata/targetProfile.py:39 +msgid "Shield" +msgstr "护盾" + +#: eos/saveddata/targetProfile.py:42 +msgid "Shield (+T2 DCU)" +msgstr "护盾(+T2损控)" + #: gui/builtinStatsViews/resistancesViewFull.py:112 msgid "Shield resistance" msgstr "护盾抗性" @@ -2337,6 +2678,10 @@ msgstr "显示市场快捷方式" msgid "Show ship browser tooltip" msgstr "船体列表显示预览" +#: eos/saveddata/damagePattern.py:87 +msgid "Shrapnel Bomb" +msgstr "榴霰炸弹" + #: gui/builtinContextMenus/boosterSideEffects.py:34 msgid "Side Effects" msgstr "副作用" @@ -2370,6 +2715,21 @@ msgstr "技能列表" msgid "Skills required:" msgstr "所需技能:" +#: eos/saveddata/damagePattern.py:94 eos/saveddata/targetProfile.py:72 +#: eos/saveddata/targetProfile.py:97 eos/saveddata/targetProfile.py:104 +#: eos/saveddata/targetProfile.py:111 eos/saveddata/targetProfile.py:118 +#: eos/saveddata/targetProfile.py:125 eos/saveddata/targetProfile.py:132 +#: eos/saveddata/targetProfile.py:139 eos/saveddata/targetProfile.py:146 +#: eos/saveddata/targetProfile.py:153 eos/saveddata/targetProfile.py:160 +#: eos/saveddata/targetProfile.py:167 eos/saveddata/targetProfile.py:174 +#: eos/saveddata/targetProfile.py:181 +msgid "Sleeper" +msgstr "冬眠者" + +#: eos/saveddata/damagePattern.py:141 +msgid "Sleepers" +msgstr "冬眠者" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:118 msgid "Small ship hold" msgstr "小型舰船仓" @@ -2394,10 +2754,33 @@ msgstr "预热周期" msgid "Stable: " msgstr "稳定:" +#: eos/saveddata/damagePattern.py:42 +msgid "Standard" +msgstr "标准" + #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:22 msgid "Statistics Panel" msgstr "属性面板" +#: eos/saveddata/damagePattern.py:128 eos/saveddata/damagePattern.py:131 +msgid "Subcaps" +msgstr "非旗舰" + +#: eos/saveddata/damagePattern.py:123 +#, python-format +msgid "Subcaps w/missiles 0% spool up" +msgstr "非旗舰0%预热" + +#: eos/saveddata/damagePattern.py:125 +#, python-format +msgid "Subcaps w/missiles 100% spool up" +msgstr "非旗舰100%预热" + +#: eos/saveddata/damagePattern.py:124 +#, python-format +msgid "Subcaps w/missiles 50% spool up" +msgstr "非旗舰50%预热" + #: gui/builtinViewColumns/baseName.py:62 msgid "Subsystem" msgstr "子系统" @@ -2410,6 +2793,10 @@ msgstr "成功" msgid "Successfully fetched skills" msgstr "成功获取到技能列表" +#: eos/saveddata/damagePattern.py:105 eos/saveddata/targetProfile.py:77 +msgid "Succubus (Sanshas Nation)" +msgstr "魔女级(萨沙)" + #: gui/builtinAdditionPanes/fighterView.py:62 msgid "Support" msgstr "支援" @@ -2428,6 +2815,10 @@ msgstr "持续回充" msgid "Tactical Mode" msgstr "战术模式" +#: eos/saveddata/damagePattern.py:112 eos/saveddata/targetProfile.py:84 +msgid "Talos" +msgstr "塔洛斯级" + #: graphs/gui/lists.py:358 msgid "Target" msgstr "目标" @@ -2456,6 +2847,10 @@ msgstr "目标和杂项" msgid "Targets" msgstr "最大锁定数" +#: eos/saveddata/damagePattern.py:54 +msgid "Tetryon" +msgstr "四重子" + #: gui/mainFrame.py:811 msgid "Text skills training file" msgstr "技能列表文本文件" @@ -2518,6 +2913,7 @@ msgstr "" "无法启动本地服务器,请尝试转到偏好设置->EVE SSO->登录验证方法并设置为手动模" "式。如果仍然遇到问题,请在Github填写issue以报告该问题。" +#: eos/saveddata/damagePattern.py:34 #: gui/builtinContextMenus/moduleAmmoChange.py:25 msgid "Thermal" msgstr "热能" @@ -2584,6 +2980,18 @@ msgid "" "back to with information about the character login." msgstr "本选项将启动一个本地服务器以接收登录页返回的角色信息。" +#: eos/saveddata/damagePattern.py:62 +msgid "Thorium" +msgstr "钍质" + +#: eos/saveddata/damagePattern.py:139 +msgid "Thukker" +msgstr "图克尔" + +#: eos/saveddata/damagePattern.py:74 +msgid "Titanium Sabot" +msgstr "钛合金萨博弹" + #: gui/builtinItemStatsViews/itemAffectedBy.py:70 msgid "Toggle Names" msgstr "切换名称" @@ -2614,11 +3022,25 @@ msgstr "总计:" msgid "Traits" msgstr "特征" +#: eos/saveddata/damagePattern.py:95 eos/saveddata/targetProfile.py:95 +#: eos/saveddata/targetProfile.py:102 eos/saveddata/targetProfile.py:109 +#: eos/saveddata/targetProfile.py:116 eos/saveddata/targetProfile.py:123 +#: eos/saveddata/targetProfile.py:130 eos/saveddata/targetProfile.py:137 +#: eos/saveddata/targetProfile.py:144 eos/saveddata/targetProfile.py:151 +#: eos/saveddata/targetProfile.py:158 eos/saveddata/targetProfile.py:165 +#: eos/saveddata/targetProfile.py:172 eos/saveddata/targetProfile.py:179 +msgid "Triglavian" +msgstr "三神裔" + #: gui/builtinContextMenus/envEffectAdd.py:115 #: gui/builtinContextMenus/envEffectAdd.py:118 msgid "Triglavian Invasion" msgstr "三神裔入侵" +#: eos/saveddata/damagePattern.py:59 +msgid "Tungsten" +msgstr "钨质" + #: gui/builtinStatsViews/resourcesViewFull.py:111 msgid "Turret hardpoints" msgstr "炮台" @@ -2636,10 +3058,34 @@ msgstr "扫描类型:{0}\n" msgid "Type: {}" msgstr "扫描类型:{}" +#: eos/saveddata/damagePattern.py:43 +msgid "Ultraviolet" +msgstr "紫外" + #: gui/mainMenuBar.py:83 msgid "Undo the most recent action" msgstr "撤销最近一次操作" +#: eos/saveddata/damagePattern.py:32 +msgid "Uniform" +msgstr "均匀" + +#: eos/saveddata/targetProfile.py:35 +msgid "Uniform (25%)" +msgstr "均匀(25%)" + +#: eos/saveddata/targetProfile.py:36 +msgid "Uniform (50%)" +msgstr "均匀(50%)" + +#: eos/saveddata/targetProfile.py:37 +msgid "Uniform (75%)" +msgstr "均匀(75%)" + +#: eos/saveddata/targetProfile.py:38 +msgid "Uniform (90%)" +msgstr "均匀(90%)" + #: gui/characterEditor.py:614 msgid "Unlearn" msgstr "未学习" @@ -2652,6 +3098,10 @@ msgstr "有更新可用" msgid "Updates" msgstr "更新" +#: eos/saveddata/damagePattern.py:63 +msgid "Uranium" +msgstr "钼质" + #: gui/builtinAdditionPanes/implantView.py:68 msgid "Use Character Implants" msgstr "使用角色植入体组" @@ -2685,6 +3135,10 @@ msgstr "使用Pyfa可执行文件路径来保存装配数据库和偏好设置" msgid "Variations" msgstr "变种" +#: eos/saveddata/damagePattern.py:110 eos/saveddata/targetProfile.py:82 +msgid "Vengeance" +msgstr "复仇级" + #: gui/builtinItemStatsViews/itemAttributes.py:53 msgid "View Raw Data" msgstr "显示原始数据" @@ -2737,10 +3191,18 @@ msgstr "" "启用时,技能级别变化时将检查并移除未达等级要求的相关技能。\n" "例如:将无人机从5级设置为4级将移除重型无人机操作技能,因为该技能要求无人机5级" +#: eos/saveddata/damagePattern.py:106 eos/saveddata/targetProfile.py:78 +msgid "Worm (Guristas)" +msgstr "潜龙级(古斯塔斯)" + #: gui/builtinContextMenus/envEffectAdd.py:105 msgid "Wormhole" msgstr "虫洞" +#: eos/saveddata/damagePattern.py:44 +msgid "Xray" +msgstr "X射线" + #: gui/builtinItemStatsViews/itemEffects.py:56 msgid "Yes" msgstr "是" @@ -2765,6 +3227,441 @@ msgstr "您必须填写一个伤害模型名!" msgid "You must supply a name for your Target Profile!" msgstr "您必须填写一个目标属性名!" +#: eos/saveddata/damagePattern.py:89 eos/saveddata/damagePattern.py:90 +#: eos/saveddata/damagePattern.py:91 eos/saveddata/damagePattern.py:92 +#: eos/saveddata/damagePattern.py:93 eos/saveddata/damagePattern.py:94 +#: eos/saveddata/damagePattern.py:95 eos/saveddata/targetProfile.py:92 +#: eos/saveddata/targetProfile.py:93 eos/saveddata/targetProfile.py:94 +#: eos/saveddata/targetProfile.py:95 eos/saveddata/targetProfile.py:96 +#: eos/saveddata/targetProfile.py:97 eos/saveddata/targetProfile.py:98 +#: eos/saveddata/targetProfile.py:99 eos/saveddata/targetProfile.py:100 +#: eos/saveddata/targetProfile.py:101 eos/saveddata/targetProfile.py:102 +#: eos/saveddata/targetProfile.py:103 eos/saveddata/targetProfile.py:104 +#: eos/saveddata/targetProfile.py:105 eos/saveddata/targetProfile.py:106 +#: eos/saveddata/targetProfile.py:107 eos/saveddata/targetProfile.py:108 +#: eos/saveddata/targetProfile.py:109 eos/saveddata/targetProfile.py:110 +#: eos/saveddata/targetProfile.py:111 eos/saveddata/targetProfile.py:112 +#: eos/saveddata/targetProfile.py:113 eos/saveddata/targetProfile.py:114 +#: eos/saveddata/targetProfile.py:115 eos/saveddata/targetProfile.py:116 +#: eos/saveddata/targetProfile.py:117 eos/saveddata/targetProfile.py:118 +#: eos/saveddata/targetProfile.py:119 eos/saveddata/targetProfile.py:120 +#: eos/saveddata/targetProfile.py:121 eos/saveddata/targetProfile.py:122 +#: eos/saveddata/targetProfile.py:123 eos/saveddata/targetProfile.py:124 +#: eos/saveddata/targetProfile.py:125 eos/saveddata/targetProfile.py:126 +#: eos/saveddata/targetProfile.py:127 eos/saveddata/targetProfile.py:128 +#: eos/saveddata/targetProfile.py:129 eos/saveddata/targetProfile.py:130 +#: eos/saveddata/targetProfile.py:131 eos/saveddata/targetProfile.py:132 +#: eos/saveddata/targetProfile.py:133 eos/saveddata/targetProfile.py:134 +#: eos/saveddata/targetProfile.py:135 eos/saveddata/targetProfile.py:136 +#: eos/saveddata/targetProfile.py:137 eos/saveddata/targetProfile.py:138 +#: eos/saveddata/targetProfile.py:139 eos/saveddata/targetProfile.py:140 +#: eos/saveddata/targetProfile.py:141 eos/saveddata/targetProfile.py:142 +#: eos/saveddata/targetProfile.py:143 eos/saveddata/targetProfile.py:144 +#: eos/saveddata/targetProfile.py:145 eos/saveddata/targetProfile.py:146 +#: eos/saveddata/targetProfile.py:147 eos/saveddata/targetProfile.py:148 +#: eos/saveddata/targetProfile.py:149 eos/saveddata/targetProfile.py:150 +#: eos/saveddata/targetProfile.py:151 eos/saveddata/targetProfile.py:152 +#: eos/saveddata/targetProfile.py:153 eos/saveddata/targetProfile.py:154 +#: eos/saveddata/targetProfile.py:155 eos/saveddata/targetProfile.py:156 +#: eos/saveddata/targetProfile.py:157 eos/saveddata/targetProfile.py:158 +#: eos/saveddata/targetProfile.py:159 eos/saveddata/targetProfile.py:160 +#: eos/saveddata/targetProfile.py:161 eos/saveddata/targetProfile.py:162 +#: eos/saveddata/targetProfile.py:163 eos/saveddata/targetProfile.py:164 +#: eos/saveddata/targetProfile.py:165 eos/saveddata/targetProfile.py:166 +#: eos/saveddata/targetProfile.py:167 eos/saveddata/targetProfile.py:168 +#: eos/saveddata/targetProfile.py:169 eos/saveddata/targetProfile.py:170 +#: eos/saveddata/targetProfile.py:171 eos/saveddata/targetProfile.py:172 +#: eos/saveddata/targetProfile.py:173 eos/saveddata/targetProfile.py:174 +#: eos/saveddata/targetProfile.py:175 eos/saveddata/targetProfile.py:176 +#: eos/saveddata/targetProfile.py:177 eos/saveddata/targetProfile.py:178 +#: eos/saveddata/targetProfile.py:179 eos/saveddata/targetProfile.py:180 +#: eos/saveddata/targetProfile.py:181 eos/saveddata/targetProfile.py:182 +msgid "[Abyssal]" +msgstr "[深渊]" + +#: eos/saveddata/damagePattern.py:96 eos/saveddata/damagePattern.py:97 +#: eos/saveddata/damagePattern.py:98 eos/saveddata/damagePattern.py:99 +#: eos/saveddata/damagePattern.py:100 eos/saveddata/damagePattern.py:101 +#: eos/saveddata/targetProfile.py:53 eos/saveddata/targetProfile.py:54 +#: eos/saveddata/targetProfile.py:55 eos/saveddata/targetProfile.py:56 +#: eos/saveddata/targetProfile.py:57 eos/saveddata/targetProfile.py:58 +msgid "[Asteroid]" +msgstr "[小行星]" + +#: eos/saveddata/damagePattern.py:84 eos/saveddata/damagePattern.py:85 +#: eos/saveddata/damagePattern.py:86 eos/saveddata/damagePattern.py:87 +msgid "[Bombs]" +msgstr "[炸弹]" + +#: eos/saveddata/damagePattern.py:102 eos/saveddata/damagePattern.py:103 +#: eos/saveddata/damagePattern.py:104 eos/saveddata/damagePattern.py:105 +#: eos/saveddata/damagePattern.py:106 eos/saveddata/damagePattern.py:107 +#: eos/saveddata/damagePattern.py:108 eos/saveddata/damagePattern.py:109 +#: eos/saveddata/damagePattern.py:110 eos/saveddata/damagePattern.py:111 +#: eos/saveddata/damagePattern.py:112 eos/saveddata/damagePattern.py:113 +#: eos/saveddata/targetProfile.py:74 eos/saveddata/targetProfile.py:75 +#: eos/saveddata/targetProfile.py:76 eos/saveddata/targetProfile.py:77 +#: eos/saveddata/targetProfile.py:78 eos/saveddata/targetProfile.py:79 +#: eos/saveddata/targetProfile.py:80 eos/saveddata/targetProfile.py:81 +#: eos/saveddata/targetProfile.py:82 eos/saveddata/targetProfile.py:83 +#: eos/saveddata/targetProfile.py:84 eos/saveddata/targetProfile.py:85 +msgid "[Burner]" +msgstr "[燃烧者]" + +#: eos/saveddata/targetProfile.py:92 eos/saveddata/targetProfile.py:93 +#: eos/saveddata/targetProfile.py:94 eos/saveddata/targetProfile.py:95 +#: eos/saveddata/targetProfile.py:96 eos/saveddata/targetProfile.py:97 +#: eos/saveddata/targetProfile.py:98 +msgid "[Dark Matter All Tiers]" +msgstr "[暗物质全部级别]" + +#: eos/saveddata/damagePattern.py:114 eos/saveddata/damagePattern.py:115 +#: eos/saveddata/damagePattern.py:116 eos/saveddata/damagePattern.py:117 +#: eos/saveddata/damagePattern.py:118 eos/saveddata/damagePattern.py:119 +#: eos/saveddata/targetProfile.py:59 eos/saveddata/targetProfile.py:60 +#: eos/saveddata/targetProfile.py:61 eos/saveddata/targetProfile.py:62 +#: eos/saveddata/targetProfile.py:63 eos/saveddata/targetProfile.py:64 +msgid "[Deadspace]" +msgstr "[死亡空间]" + +#: eos/saveddata/targetProfile.py:99 eos/saveddata/targetProfile.py:100 +#: eos/saveddata/targetProfile.py:101 eos/saveddata/targetProfile.py:102 +#: eos/saveddata/targetProfile.py:103 eos/saveddata/targetProfile.py:104 +#: eos/saveddata/targetProfile.py:105 +msgid "[Electrical T1/T2]" +msgstr "[电子 T1/T2]" + +#: eos/saveddata/targetProfile.py:106 eos/saveddata/targetProfile.py:107 +#: eos/saveddata/targetProfile.py:108 eos/saveddata/targetProfile.py:109 +#: eos/saveddata/targetProfile.py:110 eos/saveddata/targetProfile.py:111 +#: eos/saveddata/targetProfile.py:112 +msgid "[Electrical T3 (Some T5 Rooms)]" +msgstr "[电子 T3 (含部分T5关卡)]" + +#: eos/saveddata/targetProfile.py:113 eos/saveddata/targetProfile.py:114 +#: eos/saveddata/targetProfile.py:115 eos/saveddata/targetProfile.py:116 +#: eos/saveddata/targetProfile.py:117 eos/saveddata/targetProfile.py:118 +#: eos/saveddata/targetProfile.py:119 +msgid "[Electrical T4/T5]" +msgstr "[电子 T4/T5]" + +#: eos/saveddata/damagePattern.py:51 eos/saveddata/damagePattern.py:52 +#: eos/saveddata/damagePattern.py:53 eos/saveddata/damagePattern.py:54 +#: eos/saveddata/damagePattern.py:55 +msgid "[Exotic Plasma]" +msgstr "[异种等离子]" + +#: eos/saveddata/targetProfile.py:141 eos/saveddata/targetProfile.py:142 +#: eos/saveddata/targetProfile.py:143 eos/saveddata/targetProfile.py:144 +#: eos/saveddata/targetProfile.py:145 eos/saveddata/targetProfile.py:146 +#: eos/saveddata/targetProfile.py:147 +msgid "[Exotic T1/T2]" +msgstr "[异种 T1/T2]" + +#: eos/saveddata/targetProfile.py:148 eos/saveddata/targetProfile.py:149 +#: eos/saveddata/targetProfile.py:150 eos/saveddata/targetProfile.py:151 +#: eos/saveddata/targetProfile.py:152 eos/saveddata/targetProfile.py:153 +#: eos/saveddata/targetProfile.py:154 +msgid "[Exotic T3 (Some T5 Rooms)]" +msgstr "[异种 T3 (含部分T5关卡)]" + +#: eos/saveddata/targetProfile.py:155 eos/saveddata/targetProfile.py:156 +#: eos/saveddata/targetProfile.py:157 eos/saveddata/targetProfile.py:158 +#: eos/saveddata/targetProfile.py:159 eos/saveddata/targetProfile.py:160 +#: eos/saveddata/targetProfile.py:161 +msgid "[Exotic T4/T5]" +msgstr "[异种 T4/T5]" + +#: eos/saveddata/targetProfile.py:120 eos/saveddata/targetProfile.py:121 +#: eos/saveddata/targetProfile.py:122 eos/saveddata/targetProfile.py:123 +#: eos/saveddata/targetProfile.py:124 eos/saveddata/targetProfile.py:125 +#: eos/saveddata/targetProfile.py:126 +msgid "[Firestorm T1/T2]" +msgstr "[火瀑 T1/T2]" + +#: eos/saveddata/targetProfile.py:127 eos/saveddata/targetProfile.py:128 +#: eos/saveddata/targetProfile.py:129 eos/saveddata/targetProfile.py:130 +#: eos/saveddata/targetProfile.py:131 eos/saveddata/targetProfile.py:132 +#: eos/saveddata/targetProfile.py:133 +msgid "[Firestorm T3 (Some T5 Rooms)]" +msgstr "[火瀑 T3 (含部分T5关卡)]" + +#: eos/saveddata/targetProfile.py:134 eos/saveddata/targetProfile.py:135 +#: eos/saveddata/targetProfile.py:136 eos/saveddata/targetProfile.py:137 +#: eos/saveddata/targetProfile.py:138 eos/saveddata/targetProfile.py:139 +#: eos/saveddata/targetProfile.py:140 +msgid "[Firestorm T4/T5]" +msgstr "[火瀑 T4/T5]" + +#: eos/saveddata/damagePattern.py:37 eos/saveddata/damagePattern.py:38 +#: eos/saveddata/damagePattern.py:39 eos/saveddata/damagePattern.py:40 +#: eos/saveddata/damagePattern.py:41 eos/saveddata/damagePattern.py:42 +#: eos/saveddata/damagePattern.py:43 eos/saveddata/damagePattern.py:44 +#: eos/saveddata/damagePattern.py:45 eos/saveddata/damagePattern.py:46 +#: eos/saveddata/damagePattern.py:47 eos/saveddata/damagePattern.py:48 +msgid "[Frequency Crystals]" +msgstr "[频率晶体]" + +#: eos/saveddata/targetProfile.py:162 eos/saveddata/targetProfile.py:163 +#: eos/saveddata/targetProfile.py:164 eos/saveddata/targetProfile.py:165 +#: eos/saveddata/targetProfile.py:166 eos/saveddata/targetProfile.py:167 +#: eos/saveddata/targetProfile.py:168 +msgid "[Gamma T1/T2]" +msgstr "[伽玛 T1/T2]" + +#: eos/saveddata/targetProfile.py:169 eos/saveddata/targetProfile.py:170 +#: eos/saveddata/targetProfile.py:171 eos/saveddata/targetProfile.py:172 +#: eos/saveddata/targetProfile.py:173 eos/saveddata/targetProfile.py:174 +#: eos/saveddata/targetProfile.py:175 +msgid "[Gamma T3 (Some T5 Rooms)]" +msgstr "[伽玛 T3 (含部分T5关卡)]" + +#: eos/saveddata/targetProfile.py:176 eos/saveddata/targetProfile.py:177 +#: eos/saveddata/targetProfile.py:178 eos/saveddata/targetProfile.py:179 +#: eos/saveddata/targetProfile.py:180 eos/saveddata/targetProfile.py:181 +#: eos/saveddata/targetProfile.py:182 +msgid "[Gamma T4/T5]" +msgstr "[伽玛 T4/T5]" + +#: eos/saveddata/damagePattern.py:33 eos/saveddata/damagePattern.py:34 +#: eos/saveddata/damagePattern.py:35 eos/saveddata/damagePattern.py:36 +msgid "[Generic]" +msgstr "[通用]" + +#: eos/saveddata/damagePattern.py:56 eos/saveddata/damagePattern.py:57 +#: eos/saveddata/damagePattern.py:58 eos/saveddata/damagePattern.py:59 +#: eos/saveddata/damagePattern.py:60 eos/saveddata/damagePattern.py:61 +#: eos/saveddata/damagePattern.py:62 eos/saveddata/damagePattern.py:63 +#: eos/saveddata/damagePattern.py:64 eos/saveddata/damagePattern.py:65 +#: eos/saveddata/damagePattern.py:66 eos/saveddata/damagePattern.py:67 +msgid "[Hybrid Charges]" +msgstr "[混合弹药]" + +#: eos/saveddata/damagePattern.py:121 eos/saveddata/damagePattern.py:122 +#: eos/saveddata/damagePattern.py:123 eos/saveddata/damagePattern.py:124 +#: eos/saveddata/damagePattern.py:125 +msgid "[Invading Precursor Entities]" +msgstr "[入侵的先驱者实体]" + +#: eos/saveddata/damagePattern.py:121 eos/saveddata/damagePattern.py:122 +#: eos/saveddata/damagePattern.py:123 eos/saveddata/damagePattern.py:124 +#: eos/saveddata/damagePattern.py:125 eos/saveddata/damagePattern.py:126 +#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:128 +#: eos/saveddata/damagePattern.py:129 eos/saveddata/damagePattern.py:130 +#: eos/saveddata/damagePattern.py:131 eos/saveddata/targetProfile.py:87 +#: eos/saveddata/targetProfile.py:88 eos/saveddata/targetProfile.py:89 +#: eos/saveddata/targetProfile.py:90 eos/saveddata/targetProfile.py:91 +msgid "[Invasion]" +msgstr "[入侵]" + +#: eos/saveddata/damagePattern.py:80 eos/saveddata/damagePattern.py:81 +#: eos/saveddata/damagePattern.py:82 eos/saveddata/damagePattern.py:83 +msgid "[Missiles]" +msgstr "[导弹]" + +#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:133 +#: eos/saveddata/damagePattern.py:134 eos/saveddata/damagePattern.py:135 +#: eos/saveddata/damagePattern.py:136 eos/saveddata/damagePattern.py:137 +#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:139 +#: eos/saveddata/targetProfile.py:65 eos/saveddata/targetProfile.py:66 +#: eos/saveddata/targetProfile.py:67 eos/saveddata/targetProfile.py:68 +#: eos/saveddata/targetProfile.py:69 eos/saveddata/targetProfile.py:70 +#: eos/saveddata/targetProfile.py:71 +msgid "[Mission]" +msgstr "[任务]" + +#: eos/saveddata/damagePattern.py:89 eos/saveddata/damagePattern.py:90 +#: eos/saveddata/damagePattern.py:91 eos/saveddata/damagePattern.py:92 +#: eos/saveddata/damagePattern.py:93 eos/saveddata/damagePattern.py:94 +#: eos/saveddata/damagePattern.py:95 eos/saveddata/damagePattern.py:96 +#: eos/saveddata/damagePattern.py:97 eos/saveddata/damagePattern.py:98 +#: eos/saveddata/damagePattern.py:99 eos/saveddata/damagePattern.py:100 +#: eos/saveddata/damagePattern.py:101 eos/saveddata/damagePattern.py:102 +#: eos/saveddata/damagePattern.py:103 eos/saveddata/damagePattern.py:104 +#: eos/saveddata/damagePattern.py:105 eos/saveddata/damagePattern.py:106 +#: eos/saveddata/damagePattern.py:107 eos/saveddata/damagePattern.py:108 +#: eos/saveddata/damagePattern.py:109 eos/saveddata/damagePattern.py:110 +#: eos/saveddata/damagePattern.py:111 eos/saveddata/damagePattern.py:112 +#: eos/saveddata/damagePattern.py:113 eos/saveddata/damagePattern.py:114 +#: eos/saveddata/damagePattern.py:115 eos/saveddata/damagePattern.py:116 +#: eos/saveddata/damagePattern.py:117 eos/saveddata/damagePattern.py:118 +#: eos/saveddata/damagePattern.py:119 eos/saveddata/damagePattern.py:121 +#: eos/saveddata/damagePattern.py:122 eos/saveddata/damagePattern.py:123 +#: eos/saveddata/damagePattern.py:124 eos/saveddata/damagePattern.py:125 +#: eos/saveddata/damagePattern.py:126 eos/saveddata/damagePattern.py:127 +#: eos/saveddata/damagePattern.py:128 eos/saveddata/damagePattern.py:129 +#: eos/saveddata/damagePattern.py:130 eos/saveddata/damagePattern.py:131 +#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:133 +#: eos/saveddata/damagePattern.py:134 eos/saveddata/damagePattern.py:135 +#: eos/saveddata/damagePattern.py:136 eos/saveddata/damagePattern.py:137 +#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:139 +#: eos/saveddata/damagePattern.py:140 eos/saveddata/damagePattern.py:141 +#: eos/saveddata/targetProfile.py:53 eos/saveddata/targetProfile.py:54 +#: eos/saveddata/targetProfile.py:55 eos/saveddata/targetProfile.py:56 +#: eos/saveddata/targetProfile.py:57 eos/saveddata/targetProfile.py:58 +#: eos/saveddata/targetProfile.py:59 eos/saveddata/targetProfile.py:60 +#: eos/saveddata/targetProfile.py:61 eos/saveddata/targetProfile.py:62 +#: eos/saveddata/targetProfile.py:63 eos/saveddata/targetProfile.py:64 +#: eos/saveddata/targetProfile.py:65 eos/saveddata/targetProfile.py:66 +#: eos/saveddata/targetProfile.py:67 eos/saveddata/targetProfile.py:68 +#: eos/saveddata/targetProfile.py:69 eos/saveddata/targetProfile.py:70 +#: eos/saveddata/targetProfile.py:71 eos/saveddata/targetProfile.py:72 +#: eos/saveddata/targetProfile.py:73 eos/saveddata/targetProfile.py:74 +#: eos/saveddata/targetProfile.py:75 eos/saveddata/targetProfile.py:76 +#: eos/saveddata/targetProfile.py:77 eos/saveddata/targetProfile.py:78 +#: eos/saveddata/targetProfile.py:79 eos/saveddata/targetProfile.py:80 +#: eos/saveddata/targetProfile.py:81 eos/saveddata/targetProfile.py:82 +#: eos/saveddata/targetProfile.py:83 eos/saveddata/targetProfile.py:84 +#: eos/saveddata/targetProfile.py:85 eos/saveddata/targetProfile.py:87 +#: eos/saveddata/targetProfile.py:88 eos/saveddata/targetProfile.py:89 +#: eos/saveddata/targetProfile.py:90 eos/saveddata/targetProfile.py:91 +#: eos/saveddata/targetProfile.py:92 eos/saveddata/targetProfile.py:93 +#: eos/saveddata/targetProfile.py:94 eos/saveddata/targetProfile.py:95 +#: eos/saveddata/targetProfile.py:96 eos/saveddata/targetProfile.py:97 +#: eos/saveddata/targetProfile.py:98 eos/saveddata/targetProfile.py:99 +#: eos/saveddata/targetProfile.py:100 eos/saveddata/targetProfile.py:101 +#: eos/saveddata/targetProfile.py:102 eos/saveddata/targetProfile.py:103 +#: eos/saveddata/targetProfile.py:104 eos/saveddata/targetProfile.py:105 +#: eos/saveddata/targetProfile.py:106 eos/saveddata/targetProfile.py:107 +#: eos/saveddata/targetProfile.py:108 eos/saveddata/targetProfile.py:109 +#: eos/saveddata/targetProfile.py:110 eos/saveddata/targetProfile.py:111 +#: eos/saveddata/targetProfile.py:112 eos/saveddata/targetProfile.py:113 +#: eos/saveddata/targetProfile.py:114 eos/saveddata/targetProfile.py:115 +#: eos/saveddata/targetProfile.py:116 eos/saveddata/targetProfile.py:117 +#: eos/saveddata/targetProfile.py:118 eos/saveddata/targetProfile.py:119 +#: eos/saveddata/targetProfile.py:120 eos/saveddata/targetProfile.py:121 +#: eos/saveddata/targetProfile.py:122 eos/saveddata/targetProfile.py:123 +#: eos/saveddata/targetProfile.py:124 eos/saveddata/targetProfile.py:125 +#: eos/saveddata/targetProfile.py:126 eos/saveddata/targetProfile.py:127 +#: eos/saveddata/targetProfile.py:128 eos/saveddata/targetProfile.py:129 +#: eos/saveddata/targetProfile.py:130 eos/saveddata/targetProfile.py:131 +#: eos/saveddata/targetProfile.py:132 eos/saveddata/targetProfile.py:133 +#: eos/saveddata/targetProfile.py:134 eos/saveddata/targetProfile.py:135 +#: eos/saveddata/targetProfile.py:136 eos/saveddata/targetProfile.py:137 +#: eos/saveddata/targetProfile.py:138 eos/saveddata/targetProfile.py:139 +#: eos/saveddata/targetProfile.py:140 eos/saveddata/targetProfile.py:141 +#: eos/saveddata/targetProfile.py:142 eos/saveddata/targetProfile.py:143 +#: eos/saveddata/targetProfile.py:144 eos/saveddata/targetProfile.py:145 +#: eos/saveddata/targetProfile.py:146 eos/saveddata/targetProfile.py:147 +#: eos/saveddata/targetProfile.py:148 eos/saveddata/targetProfile.py:149 +#: eos/saveddata/targetProfile.py:150 eos/saveddata/targetProfile.py:151 +#: eos/saveddata/targetProfile.py:152 eos/saveddata/targetProfile.py:153 +#: eos/saveddata/targetProfile.py:154 eos/saveddata/targetProfile.py:155 +#: eos/saveddata/targetProfile.py:156 eos/saveddata/targetProfile.py:157 +#: eos/saveddata/targetProfile.py:158 eos/saveddata/targetProfile.py:159 +#: eos/saveddata/targetProfile.py:160 eos/saveddata/targetProfile.py:161 +#: eos/saveddata/targetProfile.py:162 eos/saveddata/targetProfile.py:163 +#: eos/saveddata/targetProfile.py:164 eos/saveddata/targetProfile.py:165 +#: eos/saveddata/targetProfile.py:166 eos/saveddata/targetProfile.py:167 +#: eos/saveddata/targetProfile.py:168 eos/saveddata/targetProfile.py:169 +#: eos/saveddata/targetProfile.py:170 eos/saveddata/targetProfile.py:171 +#: eos/saveddata/targetProfile.py:172 eos/saveddata/targetProfile.py:173 +#: eos/saveddata/targetProfile.py:174 eos/saveddata/targetProfile.py:175 +#: eos/saveddata/targetProfile.py:176 eos/saveddata/targetProfile.py:177 +#: eos/saveddata/targetProfile.py:178 eos/saveddata/targetProfile.py:179 +#: eos/saveddata/targetProfile.py:180 eos/saveddata/targetProfile.py:181 +#: eos/saveddata/targetProfile.py:182 +msgid "[NPC]" +msgstr "[NPC]" + +#: eos/saveddata/targetProfile.py:72 eos/saveddata/targetProfile.py:73 +msgid "[Other]" +msgstr "[其他]" + +#: eos/saveddata/damagePattern.py:68 eos/saveddata/damagePattern.py:69 +#: eos/saveddata/damagePattern.py:70 eos/saveddata/damagePattern.py:71 +#: eos/saveddata/damagePattern.py:72 eos/saveddata/damagePattern.py:73 +#: eos/saveddata/damagePattern.py:74 eos/saveddata/damagePattern.py:75 +#: eos/saveddata/damagePattern.py:76 eos/saveddata/damagePattern.py:77 +#: eos/saveddata/damagePattern.py:78 eos/saveddata/damagePattern.py:79 +msgid "[Projectile Ammo]" +msgstr "[射弹弹药]" + +#: eos/saveddata/damagePattern.py:126 +msgid "[Retaliating Amarr Entities]" +msgstr "[反击艾玛单位]" + +#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:128 +msgid "[Retaliating Caldari Entities]" +msgstr "[反击加达里单位]" + +#: eos/saveddata/damagePattern.py:129 +msgid "[Retaliating Gallente Entities]" +msgstr "[反击盖伦特单位]" + +#: eos/saveddata/damagePattern.py:130 eos/saveddata/damagePattern.py:131 +msgid "[Retaliating Minmatar Entities]" +msgstr "[反击米玛塔尔单位]" + +#: eos/saveddata/targetProfile.py:39 eos/saveddata/targetProfile.py:40 +#: eos/saveddata/targetProfile.py:41 eos/saveddata/targetProfile.py:42 +#: eos/saveddata/targetProfile.py:43 eos/saveddata/targetProfile.py:44 +msgid "[T1 Resist]" +msgstr "[T1抗性]" + +#: eos/saveddata/targetProfile.py:45 eos/saveddata/targetProfile.py:46 +#: eos/saveddata/targetProfile.py:47 eos/saveddata/targetProfile.py:48 +#: eos/saveddata/targetProfile.py:49 eos/saveddata/targetProfile.py:50 +#: eos/saveddata/targetProfile.py:51 eos/saveddata/targetProfile.py:52 +msgid "[T2 Resist]" +msgstr "[T2抗性]" + +#: eos/saveddata/damagePattern.py:37 +msgid "[T2] Aurora" +msgstr "[T2] 极光" + +#: eos/saveddata/damagePattern.py:69 +msgid "[T2] Barrage" +msgstr "[T2] 雷暴" + +#: eos/saveddata/damagePattern.py:48 +msgid "[T2] Conflagration" +msgstr "[T2] 爆燃" + +#: eos/saveddata/damagePattern.py:47 +msgid "[T2] Gleam" +msgstr "[T2] 微光" + +#: eos/saveddata/damagePattern.py:79 +msgid "[T2] Hail" +msgstr "[T2] 冰雹" + +#: eos/saveddata/damagePattern.py:66 +msgid "[T2] Javelin" +msgstr "[T2] 标枪" + +#: eos/saveddata/damagePattern.py:51 +msgid "[T2] Mystic" +msgstr "[T2] 奥秘" + +#: eos/saveddata/damagePattern.py:57 +msgid "[T2] Null" +msgstr "[T2] 虚空" + +#: eos/saveddata/damagePattern.py:55 +msgid "[T2] Occult" +msgstr "[T2] 神秘" + +#: eos/saveddata/damagePattern.py:78 +msgid "[T2] Quake" +msgstr "[T2] 地震" + +#: eos/saveddata/damagePattern.py:38 +msgid "[T2] Scorch" +msgstr "[T2] 灼烧" + +#: eos/saveddata/damagePattern.py:56 +msgid "[T2] Spike" +msgstr "[T2] 钉刺" + +#: eos/saveddata/damagePattern.py:68 +msgid "[T2] Tremor" +msgstr "[T2] 战栗" + +#: eos/saveddata/damagePattern.py:67 +msgid "[T2] Void" +msgstr "[T2] 涅槃" + #: gui/builtinPreferenceViews/pyfaDatabasePreferences.py:38 msgid "pyfa User Path:" msgstr "pyfa用户数据路径:" From 7451ce147eb9d4cbd2c125f72114c0b75fe4a8ec Mon Sep 17 00:00:00 2001 From: blitzmann Date: Fri, 10 Jul 2020 23:36:52 -0400 Subject: [PATCH 09/13] Create a dummy translation annotation for damage patterns, and do translations on the GUI side --- eos/saveddata/damagePattern.py | 6 +++++- gui/builtinContextMenus/damagePatternChange.py | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/eos/saveddata/damagePattern.py b/eos/saveddata/damagePattern.py index 6c4670ddb..16a13116f 100644 --- a/eos/saveddata/damagePattern.py +++ b/eos/saveddata/damagePattern.py @@ -25,7 +25,7 @@ from sqlalchemy.orm import reconstructor import eos.db -_t = wx.GetTranslation +_t = lambda x: x # Order is significant here - UI uses order as-is for built-in patterns BUILTINS = OrderedDict([ @@ -340,6 +340,10 @@ class DamagePattern: categories.append(remainingName[start + 1:end]) remainingName = remainingName[end + 1:].strip() + @property + def isBuiltin(self): + return self.ID < 0 + def __deepcopy__(self, memo): p = DamagePattern(self.emAmount, self.thermalAmount, self.kineticAmount, self.explosiveAmount) p.rawName = "%s copy" % self.rawName diff --git a/gui/builtinContextMenus/damagePatternChange.py b/gui/builtinContextMenus/damagePatternChange.py index b26c6e0f4..a769cd6b9 100644 --- a/gui/builtinContextMenus/damagePatternChange.py +++ b/gui/builtinContextMenus/damagePatternChange.py @@ -11,6 +11,8 @@ from gui.utils.sorter import smartSort from service.damagePattern import DamagePattern as DmgPatternSvc from service.fit import Fit +_t = wx.GetTranslation + class ChangeDamagePattern(ContextMenuUnconditional): @@ -43,8 +45,10 @@ class ChangeDamagePattern(ContextMenuUnconditional): for pattern in self.patterns: container = self.items for categoryName in pattern.hierarchy: + categoryName = _t('[' + categoryName + ']')[1:-1] if pattern.isBuiltin else categoryName container = container[1].setdefault(categoryName, (OrderedDict(), OrderedDict())) - container[0][pattern.shortName] = pattern + shortName = _t(pattern.shortName) if pattern.isBuiltin else pattern.shortName + container[0][shortName] = pattern return list(self.items[0].keys()) + list(self.items[1].keys()) From 9868b219d7d7876f1eea3767de98cef18e4ff334 Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Sat, 11 Jul 2020 16:07:42 +0800 Subject: [PATCH 10/13] i18n: deferred translation and category annotation for targetProfile and damagePattern * use deferred translation annotation, to annotate strings in eos.db and translate on the GUI side As @blitzmann said in #2222, we should not include wx as a dependency for eos module. * category annotation _c for taking '[]' out of string literals --- eos/saveddata/damagePattern.py | 224 ++++++------- eos/saveddata/targetProfile.py | 297 +++++++++--------- .../damagePatternChange.py | 4 +- .../targetProfile/adder.py | 4 +- .../targetProfile/switcher.py | 4 +- 5 files changed, 273 insertions(+), 260 deletions(-) diff --git a/eos/saveddata/damagePattern.py b/eos/saveddata/damagePattern.py index 16a13116f..6ff6ff3b2 100644 --- a/eos/saveddata/damagePattern.py +++ b/eos/saveddata/damagePattern.py @@ -20,125 +20,131 @@ import re from collections import OrderedDict -import wx from sqlalchemy.orm import reconstructor import eos.db -_t = lambda x: x + +def _t(x): + return x + + +def _c(x): + return '[' + x + ']' + # Order is significant here - UI uses order as-is for built-in patterns BUILTINS = OrderedDict([ (-1, (_t('Uniform'), 25, 25, 25, 25)), - (-2, (_t('[Generic]') + _t('EM'), 1, 0, 0, 0)), - (-3, (_t('[Generic]') + _t('Thermal'), 0, 1, 0, 0)), - (-4, (_t('[Generic]') + _t('Kinetic'), 0, 0, 1, 0)), - (-5, (_t('[Generic]') + _t('Explosive'), 0, 0, 0, 1)), - (-6, (_t('[Frequency Crystals]') + '|' + _t('[T2] Aurora'), 5, 3, 0, 0)), - (-7, (_t('[Frequency Crystals]') + '|' + _t('[T2] Scorch'), 9, 2, 0, 0)), - (-8, (_t('[Frequency Crystals]') + _t('Radio'), 5, 0, 0, 0)), - (-9, (_t('[Frequency Crystals]') + _t('Microwave'), 4, 2, 0, 0)), - (-10, (_t('[Frequency Crystals]') + _t('Infrared'), 5, 2, 0, 0)), - (-11, (_t('[Frequency Crystals]') + _t('Standard'), 5, 3, 0, 0)), - (-12, (_t('[Frequency Crystals]') + _t('Ultraviolet'), 6, 3, 0, 0)), - (-13, (_t('[Frequency Crystals]') + _t('Xray'), 6, 4, 0, 0)), - (-14, (_t('[Frequency Crystals]') + _t('Gamma'), 7, 4, 0, 0)), - (-15, (_t('[Frequency Crystals]') + _t('Multifrequency'), 7, 5, 0, 0)), - (-16, (_t('[Frequency Crystals]') + '|' + _t('[T2] Gleam'), 7, 7, 0, 0)), - (-17, (_t('[Frequency Crystals]') + '|' + _t('[T2] Conflagration'), 7.7, 7.7, 0, 0)), + (-2, (_c(_t('Generic')) + _t('EM'), 1, 0, 0, 0)), + (-3, (_c(_t('Generic')) + _t('Thermal'), 0, 1, 0, 0)), + (-4, (_c(_t('Generic')) + _t('Kinetic'), 0, 0, 1, 0)), + (-5, (_c(_t('Generic')) + _t('Explosive'), 0, 0, 0, 1)), + (-6, (_c(_t('Frequency Crystals')) + '|' + _t('[T2] Aurora'), 5, 3, 0, 0)), + (-7, (_c(_t('Frequency Crystals')) + '|' + _t('[T2] Scorch'), 9, 2, 0, 0)), + (-8, (_c(_t('Frequency Crystals')) + _t('Radio'), 5, 0, 0, 0)), + (-9, (_c(_t('Frequency Crystals')) + _t('Microwave'), 4, 2, 0, 0)), + (-10, (_c(_t('Frequency Crystals')) + _t('Infrared'), 5, 2, 0, 0)), + (-11, (_c(_t('Frequency Crystals')) + _t('Standard'), 5, 3, 0, 0)), + (-12, (_c(_t('Frequency Crystals')) + _t('Ultraviolet'), 6, 3, 0, 0)), + (-13, (_c(_t('Frequency Crystals')) + _t('Xray'), 6, 4, 0, 0)), + (-14, (_c(_t('Frequency Crystals')) + _t('Gamma'), 7, 4, 0, 0)), + (-15, (_c(_t('Frequency Crystals')) + _t('Multifrequency'), 7, 5, 0, 0)), + (-16, (_c(_t('Frequency Crystals')) + '|' + _t('[T2] Gleam'), 7, 7, 0, 0)), + (-17, (_c(_t('Frequency Crystals')) + '|' + _t('[T2] Conflagration'), 7.7, 7.7, 0, 0)), # Different sizes of plasma do different damage ratios, the values here # are average of ratios across sizes - (-18, (_t('[Exotic Plasma]') + '|' + _t('[T2] Mystic'), 0, 66319, 0, 33681)), - (-19, (_t('[Exotic Plasma]') + _t('Meson'), 0, 60519, 0, 39481)), - (-20, (_t('[Exotic Plasma]') + _t('Baryon'), 0, 59737, 0, 40263)), - (-21, (_t('[Exotic Plasma]') + _t('Tetryon'), 0, 69208, 0, 30792)), - (-22, (_t('[Exotic Plasma]') + '|' + _t('[T2] Occult'), 0, 55863, 0, 44137)), - (-23, (_t('[Hybrid Charges]') + '|' + _t('[T2] Spike'), 0, 4, 4, 0)), - (-24, (_t('[Hybrid Charges]') + '|' + _t('[T2] Null'), 0, 6, 5, 0)), - (-25, (_t('[Hybrid Charges]') + _t('Iron'), 0, 2, 3, 0)), - (-26, (_t('[Hybrid Charges]') + _t('Tungsten'), 0, 2, 4, 0)), - (-27, (_t('[Hybrid Charges]') + _t('Iridium'), 0, 3, 4, 0)), - (-28, (_t('[Hybrid Charges]') + _t('Lead'), 0, 3, 5, 0)), - (-29, (_t('[Hybrid Charges]') + _t('Thorium'), 0, 4, 5, 0)), - (-30, (_t('[Hybrid Charges]') + _t('Uranium'), 0, 4, 6, 0)), - (-31, (_t('[Hybrid Charges]') + _t('Plutonium'), 0, 5, 6, 0)), - (-32, (_t('[Hybrid Charges]') + _t('Antimatter'), 0, 5, 7, 0)), - (-33, (_t('[Hybrid Charges]') + '|' + _t('[T2] Javelin'), 0, 8, 6, 0)), - (-34, (_t('[Hybrid Charges]') + '|' + _t('[T2] Void'), 0, 7.7, 7.7, 0)), - (-35, (_t('[Projectile Ammo]') + '|' + _t('[T2] Tremor'), 0, 0, 3, 5)), - (-36, (_t('[Projectile Ammo]') + '|' + _t('[T2] Barrage'), 0, 0, 5, 6)), - (-37, (_t('[Projectile Ammo]') + _t('Carbonized Lead'), 0, 0, 4, 1)), - (-38, (_t('[Projectile Ammo]') + _t('Nuclear'), 0, 0, 1, 4)), - (-39, (_t('[Projectile Ammo]') + _t('Proton'), 3, 0, 2, 0)), - (-40, (_t('[Projectile Ammo]') + _t('Depleted Uranium'), 0, 3, 2, 3)), - (-41, (_t('[Projectile Ammo]') + _t('Titanium Sabot'), 0, 0, 6, 2)), - (-42, (_t('[Projectile Ammo]') + _t('EMP'), 9, 0, 1, 2)), - (-43, (_t('[Projectile Ammo]') + _t('Phased Plasma'), 0, 10, 2, 0)), - (-44, (_t('[Projectile Ammo]') + _t('Fusion'), 0, 0, 2, 10)), - (-45, (_t('[Projectile Ammo]') + '|' + _t('[T2] Quake'), 0, 0, 5, 9)), - (-46, (_t('[Projectile Ammo]') + '|' + _t('[T2] Hail'), 0, 0, 3.3, 12.1)), - (-47, (_t('[Missiles]') + _t('Mjolnir'), 1, 0, 0, 0)), - (-48, (_t('[Missiles]') + _t('Inferno'), 0, 1, 0, 0)), - (-49, (_t('[Missiles]') + _t('Scourge'), 0, 0, 1, 0)), - (-50, (_t('[Missiles]') + _t('Nova'), 0, 0, 0, 1)), - (-51, (_t('[Bombs]') + _t('Electron Bomb'), 6400, 0, 0, 0)), - (-52, (_t('[Bombs]') + _t('Scorch Bomb'), 0, 6400, 0, 0)), - (-53, (_t('[Bombs]') + _t('Concussion Bomb'), 0, 0, 6400, 0)), - (-54, (_t('[Bombs]') + _t('Shrapnel Bomb'), 0, 0, 0, 6400)), + (-18, (_c(_t('Exotic Plasma')) + '|' + _t('[T2] Mystic'), 0, 66319, 0, 33681)), + (-19, (_c(_t('Exotic Plasma')) + _t('Meson'), 0, 60519, 0, 39481)), + (-20, (_c(_t('Exotic Plasma')) + _t('Baryon'), 0, 59737, 0, 40263)), + (-21, (_c(_t('Exotic Plasma')) + _t('Tetryon'), 0, 69208, 0, 30792)), + (-22, (_c(_t('Exotic Plasma')) + '|' + _t('[T2] Occult'), 0, 55863, 0, 44137)), + (-23, (_c(_t('Hybrid Charges')) + '|' + _t('[T2] Spike'), 0, 4, 4, 0)), + (-24, (_c(_t('Hybrid Charges')) + '|' + _t('[T2] Null'), 0, 6, 5, 0)), + (-25, (_c(_t('Hybrid Charges')) + _t('Iron'), 0, 2, 3, 0)), + (-26, (_c(_t('Hybrid Charges')) + _t('Tungsten'), 0, 2, 4, 0)), + (-27, (_c(_t('Hybrid Charges')) + _t('Iridium'), 0, 3, 4, 0)), + (-28, (_c(_t('Hybrid Charges')) + _t('Lead'), 0, 3, 5, 0)), + (-29, (_c(_t('Hybrid Charges')) + _t('Thorium'), 0, 4, 5, 0)), + (-30, (_c(_t('Hybrid Charges')) + _t('Uranium'), 0, 4, 6, 0)), + (-31, (_c(_t('Hybrid Charges')) + _t('Plutonium'), 0, 5, 6, 0)), + (-32, (_c(_t('Hybrid Charges')) + _t('Antimatter'), 0, 5, 7, 0)), + (-33, (_c(_t('Hybrid Charges')) + '|' + _t('[T2] Javelin'), 0, 8, 6, 0)), + (-34, (_c(_t('Hybrid Charges')) + '|' + _t('[T2] Void'), 0, 7.7, 7.7, 0)), + (-35, (_c(_t('Projectile Ammo')) + '|' + _t('[T2] Tremor'), 0, 0, 3, 5)), + (-36, (_c(_t('Projectile Ammo')) + '|' + _t('[T2] Barrage'), 0, 0, 5, 6)), + (-37, (_c(_t('Projectile Ammo')) + _t('Carbonized Lead'), 0, 0, 4, 1)), + (-38, (_c(_t('Projectile Ammo')) + _t('Nuclear'), 0, 0, 1, 4)), + (-39, (_c(_t('Projectile Ammo')) + _t('Proton'), 3, 0, 2, 0)), + (-40, (_c(_t('Projectile Ammo')) + _t('Depleted Uranium'), 0, 3, 2, 3)), + (-41, (_c(_t('Projectile Ammo')) + _t('Titanium Sabot'), 0, 0, 6, 2)), + (-42, (_c(_t('Projectile Ammo')) + _t('EMP'), 9, 0, 1, 2)), + (-43, (_c(_t('Projectile Ammo')) + _t('Phased Plasma'), 0, 10, 2, 0)), + (-44, (_c(_t('Projectile Ammo')) + _t('Fusion'), 0, 0, 2, 10)), + (-45, (_c(_t('Projectile Ammo')) + '|' + _t('[T2] Quake'), 0, 0, 5, 9)), + (-46, (_c(_t('Projectile Ammo')) + '|' + _t('[T2] Hail'), 0, 0, 3.3, 12.1)), + (-47, (_c(_t('Missiles')) + _t('Mjolnir'), 1, 0, 0, 0)), + (-48, (_c(_t('Missiles')) + _t('Inferno'), 0, 1, 0, 0)), + (-49, (_c(_t('Missiles')) + _t('Scourge'), 0, 0, 1, 0)), + (-50, (_c(_t('Missiles')) + _t('Nova'), 0, 0, 0, 1)), + (-51, (_c(_t('Bombs')) + _t('Electron Bomb'), 6400, 0, 0, 0)), + (-52, (_c(_t('Bombs')) + _t('Scorch Bomb'), 0, 6400, 0, 0)), + (-53, (_c(_t('Bombs')) + _t('Concussion Bomb'), 0, 0, 6400, 0)), + (-54, (_c(_t('Bombs')) + _t('Shrapnel Bomb'), 0, 0, 0, 6400)), # Source: ticket #2067 - (-55, (_t('[NPC]') + _t('[Abyssal]') + _t('All'), 130, 396, 258, 216)), - (-56, (_t('[NPC]') + _t('[Abyssal]') + _t('Drifter'), 250, 250, 250, 250)), - (-57, (_t('[NPC]') + _t('[Abyssal]') + _t('Drones'), 250, 250, 250, 250)), - (-58, (_t('[NPC]') + _t('[Abyssal]') + _t('Overmind'), 0, 408, 592, 0)), - (-59, (_t('[NPC]') + _t('[Abyssal]') + _t('Seeker'), 406, 406, 94, 94)), - (-60, (_t('[NPC]') + _t('[Abyssal]') + _t('Sleeper'), 313, 313, 187, 187)), - (-61, (_t('[NPC]') + _t('[Abyssal]') + _t('Triglavian'), 0, 610, 0, 390)), - (-62, (_t('[NPC]') + _t('[Asteroid]') + _t('Angel Cartel'), 1838, 562, 2215, 3838)), - (-63, (_t('[NPC]') + _t('[Asteroid]') + _t('Blood Raiders'), 5067, 4214, 0, 0)), - (-64, (_t('[NPC]') + _t('[Asteroid]') + _t('Guristas'), 0, 1828, 7413, 0)), - (-65, (_t('[NPC]') + _t('[Asteroid]') + _t('Rogue Drone'), 394, 666, 1090, 1687)), - (-66, (_t('[NPC]') + _t('[Asteroid]') + _t('Sanshas Nation'), 5586, 4112, 0, 0)), - (-67, (_t('[NPC]') + _t('[Asteroid]') + _t('Serpentis'), 0, 5373, 4813, 0)), - (-68, (_t('[NPC]') + _t('[Burner]') + _t('Cruor (Blood Raiders)'), 90, 90, 0, 0)), - (-69, (_t('[NPC]') + _t('[Burner]') + _t('Dramiel (Angel)'), 55, 0, 20, 96)), - (-70, (_t('[NPC]') + _t('[Burner]') + _t('Daredevil (Serpentis)'), 0, 110, 154, 0)), - (-71, (_t('[NPC]') + _t('[Burner]') + _t('Succubus (Sanshas Nation)'), 135, 30, 0, 0)), - (-72, (_t('[NPC]') + _t('[Burner]') + _t('Worm (Guristas)'), 0, 0, 228, 0)), - (-73, (_t('[NPC]') + _t('[Burner]') + _t('Enyo'), 0, 147, 147, 0)), - (-74, (_t('[NPC]') + _t('[Burner]') + _t('Hawk'), 0, 0, 247, 0)), - (-75, (_t('[NPC]') + _t('[Burner]') + _t('Jaguar'), 36, 0, 50, 182)), - (-76, (_t('[NPC]') + _t('[Burner]') + _t('Vengeance'), 232, 0, 0, 0)), - (-77, (_t('[NPC]') + _t('[Burner]') + _t('Ashimmu (Blood Raiders)'), 260, 100, 0, 0)), - (-78, (_t('[NPC]') + _t('[Burner]') + _t('Talos'), 0, 413, 413, 0)), - (-79, (_t('[NPC]') + _t('[Burner]') + _t('Sentinel'), 0, 75, 0, 90)), - (-80, (_t('[NPC]') + _t('[Deadspace]') + _t('Angel Cartel'), 369, 533, 1395, 3302)), - (-81, (_t('[NPC]') + _t('[Deadspace]') + _t('Blood Raiders'), 6040, 5052, 10, 15)), - (-82, (_t('[NPC]') + _t('[Deadspace]') + _t('Guristas'), 0, 1531, 9680, 0)), - (-83, (_t('[NPC]') + _t('[Deadspace]') + _t('Rogue Drone'), 276, 1071, 1069, 871)), - (-84, (_t('[NPC]') + _t('[Deadspace]') + _t('Sanshas Nation'), 3009, 2237, 0, 0)), - (-85, (_t('[NPC]') + _t('[Deadspace]') + _t('Serpentis'), 0, 3110, 1929, 0)), + (-55, (_c(_t('NPC')) + _c(_t('Abyssal')) + _t('All'), 130, 396, 258, 216)), + (-56, (_c(_t('NPC')) + _c(_t('Abyssal')) + _t('Drifter'), 250, 250, 250, 250)), + (-57, (_c(_t('NPC')) + _c(_t('Abyssal')) + _t('Drones'), 250, 250, 250, 250)), + (-58, (_c(_t('NPC')) + _c(_t('Abyssal')) + _t('Overmind'), 0, 408, 592, 0)), + (-59, (_c(_t('NPC')) + _c(_t('Abyssal')) + _t('Seeker'), 406, 406, 94, 94)), + (-60, (_c(_t('NPC')) + _c(_t('Abyssal')) + _t('Sleeper'), 313, 313, 187, 187)), + (-61, (_c(_t('NPC')) + _c(_t('Abyssal')) + _t('Triglavian'), 0, 610, 0, 390)), + (-62, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Angel Cartel'), 1838, 562, 2215, 3838)), + (-63, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Blood Raiders'), 5067, 4214, 0, 0)), + (-64, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Guristas'), 0, 1828, 7413, 0)), + (-65, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Rogue Drone'), 394, 666, 1090, 1687)), + (-66, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Sanshas Nation'), 5586, 4112, 0, 0)), + (-67, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Serpentis'), 0, 5373, 4813, 0)), + (-68, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Cruor (Blood Raiders)'), 90, 90, 0, 0)), + (-69, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Dramiel (Angel)'), 55, 0, 20, 96)), + (-70, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Daredevil (Serpentis)'), 0, 110, 154, 0)), + (-71, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Succubus (Sanshas Nation)'), 135, 30, 0, 0)), + (-72, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Worm (Guristas)'), 0, 0, 228, 0)), + (-73, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Enyo'), 0, 147, 147, 0)), + (-74, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Hawk'), 0, 0, 247, 0)), + (-75, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Jaguar'), 36, 0, 50, 182)), + (-76, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Vengeance'), 232, 0, 0, 0)), + (-77, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Ashimmu (Blood Raiders)'), 260, 100, 0, 0)), + (-78, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Talos'), 0, 413, 413, 0)), + (-79, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Sentinel'), 0, 75, 0, 90)), + (-80, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Angel Cartel'), 369, 533, 1395, 3302)), + (-81, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Blood Raiders'), 6040, 5052, 10, 15)), + (-82, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Guristas'), 0, 1531, 9680, 0)), + (-83, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Rogue Drone'), 276, 1071, 1069, 871)), + (-84, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Sanshas Nation'), 3009, 2237, 0, 0)), + (-85, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Serpentis'), 0, 3110, 1929, 0)), # Source: ticket #2067 - (-86, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Dread'), 0, 417, 0, 583)), - (-87, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Normal Subcaps'), 0, 610, 0, 390)), - (-88, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Subcaps w/missiles 0% spool up'), 367, 155, 367, 112)), - (-89, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Subcaps w/missiles 50% spool up'), 291, 243, 291, 175)), - (-90, (_t('[NPC]') + _t('[Invasion]') + _t('[Invading Precursor Entities]') + _t('Subcaps w/missiles 100% spool up'), 241, 301, 241, 217)), - (-91, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Amarr Entities]') + _t('Dread/Subcaps'), 583, 417, 0, 0)), - (-92, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Caldari Entities]') + _t('Dread'), 1000, 0, 0, 0)), - (-93, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Caldari Entities]') + _t('Subcaps'), 511, 21, 29, 440)), - (-94, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Gallente Entities]') + _t('Dread/Subcaps'), 0, 417, 583, 0)), - (-95, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Minmatar Entities]') + _t('Dread'), 0, 0, 583, 417)), - (-96, (_t('[NPC]') + _t('[Invasion]') + _t('[Retaliating Minmatar Entities]') + _t('Subcaps'), 302, 136, 328, 234)), - (-97, (_t('[NPC]') + _t('[Mission]') + _t('Amarr Empire'), 4464, 3546, 97, 0)), - (-98, (_t('[NPC]') + _t('[Mission]') + _t('Caldari State'), 0, 2139, 4867, 0)), - (-99, (_t('[NPC]') + _t('[Mission]') + _t('CONCORD'), 336, 134, 212, 412)), - (-100, (_t('[NPC]') + _t('[Mission]') + _t('Gallente Federation'), 9, 3712, 2758, 0)), - (-101, (_t('[NPC]') + _t('[Mission]') + _t('Khanid'), 612, 483, 43, 6)), - (-102, (_t('[NPC]') + _t('[Mission]') + _t('Minmatar Republic'), 1024, 388, 1655, 4285)), - (-103, (_t('[NPC]') + _t('[Mission]') + _t('Mordus Legion'), 25, 262, 625, 0)), - (-104, (_t('[NPC]') + _t('[Mission]') + _t('Thukker'), 0, 52, 10, 79)), - (-105, (_t('[NPC]') + _t('Sansha Incursion'), 1682, 1347, 3678, 3678)), - (-106, (_t('[NPC]') + _t('Sleepers'), 1472, 1472, 1384, 1384))]) + (-86, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Dread'), 0, 417, 0, 583)), + (-87, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Normal Subcaps'), 0, 610, 0, 390)), + (-88, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Subcaps w/missiles 0% spool up'), 367, 155, 367, 112)), + (-89, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Subcaps w/missiles 50% spool up'), 291, 243, 291, 175)), + (-90, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Subcaps w/missiles 100% spool up'), 241, 301, 241, 217)), + (-91, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Amarr Entities')) + _t('Dread/Subcaps'), 583, 417, 0, 0)), + (-92, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Caldari Entities')) + _t('Dread'), 1000, 0, 0, 0)), + (-93, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Caldari Entities')) + _t('Subcaps'), 511, 21, 29, 440)), + (-94, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Gallente Entities')) + _t('Dread/Subcaps'), 0, 417, 583, 0)), + (-95, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Minmatar Entities')) + _t('Dread'), 0, 0, 583, 417)), + (-96, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Minmatar Entities')) + _t('Subcaps'), 302, 136, 328, 234)), + (-97, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Amarr Empire'), 4464, 3546, 97, 0)), + (-98, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Caldari State'), 0, 2139, 4867, 0)), + (-99, (_c(_t('NPC')) + _c(_t('Mission')) + _t('CONCORD'), 336, 134, 212, 412)), + (-100, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Gallente Federation'), 9, 3712, 2758, 0)), + (-101, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Khanid'), 612, 483, 43, 6)), + (-102, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Minmatar Republic'), 1024, 388, 1655, 4285)), + (-103, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Mordus Legion'), 25, 262, 625, 0)), + (-104, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Thukker'), 0, 52, 10, 79)), + (-105, (_c(_t('NPC')) + _t('Sansha Incursion'), 1682, 1347, 3678, 3678)), + (-106, (_c(_t('NPC')) + _t('Sleepers'), 1472, 1472, 1384, 1384))]) class DamagePattern: @@ -340,10 +346,6 @@ class DamagePattern: categories.append(remainingName[start + 1:end]) remainingName = remainingName[end + 1:].strip() - @property - def isBuiltin(self): - return self.ID < 0 - def __deepcopy__(self, memo): p = DamagePattern(self.emAmount, self.thermalAmount, self.kineticAmount, self.explosiveAmount) p.rawName = "%s copy" % self.rawName diff --git a/eos/saveddata/targetProfile.py b/eos/saveddata/targetProfile.py index 57e0207de..9f2d24199 100644 --- a/eos/saveddata/targetProfile.py +++ b/eos/saveddata/targetProfile.py @@ -23,12 +23,19 @@ from collections import OrderedDict from logbook import Logger from sqlalchemy.orm import reconstructor -import wx import eos.db pyfalog = Logger(__name__) -_t = wx.GetTranslation + + +def _t(x): + return x + + +def _c(x): + return '[' + x + ']' + BUILTINS = OrderedDict([ # 0 is taken by ideal target profile, composed manually in one of TargetProfile methods @@ -36,150 +43,150 @@ BUILTINS = OrderedDict([ (-2, (_t('Uniform (50%)'), 0.50, 0.50, 0.50, 0.50)), (-3, (_t('Uniform (75%)'), 0.75, 0.75, 0.75, 0.75)), (-4, (_t('Uniform (90%)'), 0.90, 0.90, 0.90, 0.90)), - (-5, (_t('[T1 Resist]') + _t('Shield'), 0.0, 0.20, 0.40, 0.50)), - (-6, (_t('[T1 Resist]') + _t('Armor'), 0.50, 0.45, 0.25, 0.10)), - (-7, (_t('[T1 Resist]') + _t('Hull'), 0.33, 0.33, 0.33, 0.33)), - (-8, (_t('[T1 Resist]') + _t('Shield (+T2 DCU)'), 0.125, 0.30, 0.475, 0.562)), - (-9, (_t('[T1 Resist]') + _t('Armor (+T2 DCU)'), 0.575, 0.532, 0.363, 0.235)), - (-10, (_t('[T1 Resist]') + _t('Hull (+T2 DCU)'), 0.598, 0.598, 0.598, 0.598)), - (-11, (_t('[T2 Resist]') + _t('Amarr (Shield)'), 0.0, 0.20, 0.70, 0.875)), - (-12, (_t('[T2 Resist]') + _t('Amarr (Armor)'), 0.50, 0.35, 0.625, 0.80)), - (-13, (_t('[T2 Resist]') + _t('Caldari (Shield)'), 0.20, 0.84, 0.76, 0.60)), - (-14, (_t('[T2 Resist]') + _t('Caldari (Armor)'), 0.50, 0.8625, 0.625, 0.10)), - (-15, (_t('[T2 Resist]') + _t('Gallente (Shield)'), 0.0, 0.60, 0.85, 0.50)), - (-16, (_t('[T2 Resist]') + _t('Gallente (Armor)'), 0.50, 0.675, 0.8375, 0.10)), - (-17, (_t('[T2 Resist]') + _t('Minmatar (Shield)'), 0.75, 0.60, 0.40, 0.50)), - (-18, (_t('[T2 Resist]') + _t('Minmatar (Armor)'), 0.90, 0.675, 0.25, 0.10)), - (-19, (_t('[NPC]') + _t('[Asteroid]') + _t('Angel Cartel'), 0.54, 0.42, 0.37, 0.32)), - (-20, (_t('[NPC]') + _t('[Asteroid]') + _t('Blood Raiders'), 0.34, 0.39, 0.45, 0.52)), - (-21, (_t('[NPC]') + _t('[Asteroid]') + _t('Guristas'), 0.55, 0.35, 0.3, 0.48)), - (-22, (_t('[NPC]') + _t('[Asteroid]') + _t('Rogue Drones'), 0.35, 0.38, 0.44, 0.49)), - (-23, (_t('[NPC]') + _t('[Asteroid]') + _t('Sanshas Nation'), 0.35, 0.4, 0.47, 0.53)), - (-24, (_t('[NPC]') + _t('[Asteroid]') + _t('Serpentis'), 0.49, 0.38, 0.29, 0.51)), - (-25, (_t('[NPC]') + _t('[Deadspace]') + _t('Angel Cartel'), 0.59, 0.48, 0.4, 0.32)), - (-26, (_t('[NPC]') + _t('[Deadspace]') + _t('Blood Raiders'), 0.31, 0.39, 0.47, 0.56)), - (-27, (_t('[NPC]') + _t('[Deadspace]') + _t('Guristas'), 0.57, 0.39, 0.31, 0.5)), - (-28, (_t('[NPC]') + _t('[Deadspace]') + _t('Rogue Drones'), 0.42, 0.42, 0.47, 0.49)), - (-29, (_t('[NPC]') + _t('[Deadspace]') + _t('Sanshas Nation'), 0.31, 0.39, 0.47, 0.56)), - (-30, (_t('[NPC]') + _t('[Deadspace]') + _t('Serpentis'), 0.49, 0.38, 0.29, 0.56)), - (-31, (_t('[NPC]') + _t('[Mission]') + _t('Amarr Empire'), 0.34, 0.38, 0.42, 0.46)), - (-32, (_t('[NPC]') + _t('[Mission]') + _t('Caldari State'), 0.51, 0.38, 0.3, 0.51)), - (-33, (_t('[NPC]') + _t('[Mission]') + _t('CONCORD'), 0.47, 0.46, 0.47, 0.47)), - (-34, (_t('[NPC]') + _t('[Mission]') + _t('Gallente Federation'), 0.51, 0.38, 0.31, 0.52)), - (-35, (_t('[NPC]') + _t('[Mission]') + _t('Khanid'), 0.51, 0.42, 0.36, 0.4)), - (-36, (_t('[NPC]') + _t('[Mission]') + _t('Minmatar Republic'), 0.51, 0.46, 0.41, 0.35)), - (-37, (_t('[NPC]') + _t('[Mission]') + _t('Mordus Legion'), 0.32, 0.48, 0.4, 0.62)), - (-38, (_t('[NPC]') + _t('[Other]') + _t('Sleeper'), 0.61, 0.61, 0.61, 0.61)), - (-39, (_t('[NPC]') + _t('[Other]') + _t('Sansha Incursion'), 0.65, 0.63, 0.64, 0.65)), - (-40, (_t('[NPC]') + _t('[Burner]') + _t('Cruor (Blood Raiders)'), 0.8, 0.73, 0.69, 0.67)), - (-41, (_t('[NPC]') + _t('[Burner]') + _t('Dramiel (Angel)'), 0.35, 0.48, 0.61, 0.68)), - (-42, (_t('[NPC]') + _t('[Burner]') + _t('Daredevil (Serpentis)'), 0.69, 0.59, 0.59, 0.43)), - (-43, (_t('[NPC]') + _t('[Burner]') + _t('Succubus (Sanshas Nation)'), 0.35, 0.48, 0.61, 0.68)), - (-44, (_t('[NPC]') + _t('[Burner]') + _t('Worm (Guristas)'), 0.48, 0.58, 0.69, 0.74)), - (-45, (_t('[NPC]') + _t('[Burner]') + _t('Enyo'), 0.58, 0.72, 0.86, 0.24)), - (-46, (_t('[NPC]') + _t('[Burner]') + _t('Hawk'), 0.3, 0.86, 0.79, 0.65)), - (-47, (_t('[NPC]') + _t('[Burner]') + _t('Jaguar'), 0.78, 0.65, 0.48, 0.56)), - (-48, (_t('[NPC]') + _t('[Burner]') + _t('Vengeance'), 0.66, 0.56, 0.75, 0.86)), - (-49, (_t('[NPC]') + _t('[Burner]') + _t('Ashimmu (Blood Raiders)'), 0.8, 0.76, 0.68, 0.7)), - (-50, (_t('[NPC]') + _t('[Burner]') + _t('Talos'), 0.68, 0.59, 0.59, 0.43)), - (-51, (_t('[NPC]') + _t('[Burner]') + _t('Sentinel'), 0.58, 0.45, 0.52, 0.66)), + (-5, (_c(_t('T1 Resist')) + _t('Shield'), 0.0, 0.20, 0.40, 0.50)), + (-6, (_c(_t('T1 Resist')) + _t('Armor'), 0.50, 0.45, 0.25, 0.10)), + (-7, (_c(_t('T1 Resist')) + _t('Hull'), 0.33, 0.33, 0.33, 0.33)), + (-8, (_c(_t('T1 Resist')) + _t('Shield (+T2 DCU)'), 0.125, 0.30, 0.475, 0.562)), + (-9, (_c(_t('T1 Resist')) + _t('Armor (+T2 DCU)'), 0.575, 0.532, 0.363, 0.235)), + (-10, (_c(_t('T1 Resist')) + _t('Hull (+T2 DCU)'), 0.598, 0.598, 0.598, 0.598)), + (-11, (_c(_t('T2 Resist')) + _t('Amarr (Shield)'), 0.0, 0.20, 0.70, 0.875)), + (-12, (_c(_t('T2 Resist')) + _t('Amarr (Armor)'), 0.50, 0.35, 0.625, 0.80)), + (-13, (_c(_t('T2 Resist')) + _t('Caldari (Shield)'), 0.20, 0.84, 0.76, 0.60)), + (-14, (_c(_t('T2 Resist')) + _t('Caldari (Armor)'), 0.50, 0.8625, 0.625, 0.10)), + (-15, (_c(_t('T2 Resist')) + _t('Gallente (Shield)'), 0.0, 0.60, 0.85, 0.50)), + (-16, (_c(_t('T2 Resist')) + _t('Gallente (Armor)'), 0.50, 0.675, 0.8375, 0.10)), + (-17, (_c(_t('T2 Resist')) + _t('Minmatar (Shield)'), 0.75, 0.60, 0.40, 0.50)), + (-18, (_c(_t('T2 Resist')) + _t('Minmatar (Armor)'), 0.90, 0.675, 0.25, 0.10)), + (-19, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Angel Cartel'), 0.54, 0.42, 0.37, 0.32)), + (-20, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Blood Raiders'), 0.34, 0.39, 0.45, 0.52)), + (-21, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Guristas'), 0.55, 0.35, 0.3, 0.48)), + (-22, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Rogue Drones'), 0.35, 0.38, 0.44, 0.49)), + (-23, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Sanshas Nation'), 0.35, 0.4, 0.47, 0.53)), + (-24, (_c(_t('NPC')) + _c(_t('Asteroid')) + _t('Serpentis'), 0.49, 0.38, 0.29, 0.51)), + (-25, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Angel Cartel'), 0.59, 0.48, 0.4, 0.32)), + (-26, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Blood Raiders'), 0.31, 0.39, 0.47, 0.56)), + (-27, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Guristas'), 0.57, 0.39, 0.31, 0.5)), + (-28, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Rogue Drones'), 0.42, 0.42, 0.47, 0.49)), + (-29, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Sanshas Nation'), 0.31, 0.39, 0.47, 0.56)), + (-30, (_c(_t('NPC')) + _c(_t('Deadspace')) + _t('Serpentis'), 0.49, 0.38, 0.29, 0.56)), + (-31, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Amarr Empire'), 0.34, 0.38, 0.42, 0.46)), + (-32, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Caldari State'), 0.51, 0.38, 0.3, 0.51)), + (-33, (_c(_t('NPC')) + _c(_t('Mission')) + _t('CONCORD'), 0.47, 0.46, 0.47, 0.47)), + (-34, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Gallente Federation'), 0.51, 0.38, 0.31, 0.52)), + (-35, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Khanid'), 0.51, 0.42, 0.36, 0.4)), + (-36, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Minmatar Republic'), 0.51, 0.46, 0.41, 0.35)), + (-37, (_c(_t('NPC')) + _c(_t('Mission')) + _t('Mordus Legion'), 0.32, 0.48, 0.4, 0.62)), + (-38, (_c(_t('NPC')) + _c(_t('Other')) + _t('Sleeper'), 0.61, 0.61, 0.61, 0.61)), + (-39, (_c(_t('NPC')) + _c(_t('Other')) + _t('Sansha Incursion'), 0.65, 0.63, 0.64, 0.65)), + (-40, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Cruor (Blood Raiders)'), 0.8, 0.73, 0.69, 0.67)), + (-41, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Dramiel (Angel)'), 0.35, 0.48, 0.61, 0.68)), + (-42, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Daredevil (Serpentis)'), 0.69, 0.59, 0.59, 0.43)), + (-43, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Succubus (Sanshas Nation)'), 0.35, 0.48, 0.61, 0.68)), + (-44, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Worm (Guristas)'), 0.48, 0.58, 0.69, 0.74)), + (-45, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Enyo'), 0.58, 0.72, 0.86, 0.24)), + (-46, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Hawk'), 0.3, 0.86, 0.79, 0.65)), + (-47, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Jaguar'), 0.78, 0.65, 0.48, 0.56)), + (-48, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Vengeance'), 0.66, 0.56, 0.75, 0.86)), + (-49, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Ashimmu (Blood Raiders)'), 0.8, 0.76, 0.68, 0.7)), + (-50, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Talos'), 0.68, 0.59, 0.59, 0.43)), + (-51, (_c(_t('NPC')) + _c(_t('Burner')) + _t('Sentinel'), 0.58, 0.45, 0.52, 0.66)), # Source: ticket #2067 - (-52, (_t('[NPC]') + _t('[Invasion]') + _t('Invading Precursor Entities'), 0.422, 0.367, 0.453, 0.411)), - (-53, (_t('[NPC]') + _t('[Invasion]') + _t('Retaliating Amarr Entities'), 0.360, 0.310, 0.441, 0.602)), - (-54, (_t('[NPC]') + _t('[Invasion]') + _t('Retaliating Caldari Entities'), 0.287, 0.610, 0.487, 0.401)), - (-55, (_t('[NPC]') + _t('[Invasion]') + _t('Retaliating Gallente Entities'), 0.383, 0.414, 0.578, 0.513)), - (-56, (_t('[NPC]') + _t('[Invasion]') + _t('Retaliating Minmatar Entities'), 0.620, 0.422, 0.355, 0.399)), - (-57, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Drones'), 0.439, 0.522, 0.529, 0.435)), - (-58, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Overmind'), 0.626, 0.576, 0.612, 0.624)), - (-59, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Seeker'), 0.082, 0.082, 0.082, 0.082)), - (-60, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Triglavian'), 0.477, 0.401, 0.449, 0.37)), - (-61, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Drifter'), 0.403, 0.403, 0.403, 0.403)), - (-62, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('Sleeper'), 0.435, 0.435, 0.435, 0.435)), - (-63, (_t('[NPC]') + _t('[Abyssal]') + _t('[Dark Matter All Tiers]') + _t('All'), 0.507, 0.477, 0.502, 0.493)), - (-64, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Drones'), 0.323, 0.522, 0.529, 0.435)), - (-65, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Overmind'), 0.521, 0.576, 0.612, 0.624)), - (-66, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Seeker'), 0, 0.082, 0.082, 0.082)), - (-67, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Triglavian'), 0.333, 0.401, 0.449, 0.37)), - (-68, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Drifter'), 0.267, 0.403, 0.403, 0.403)), - (-69, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('Sleeper'), 0.329, 0.435, 0.435, 0.435)), - (-70, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T1/T2]') + _t('All'), 0.385, 0.477, 0.502, 0.493)), - (-71, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Drones'), 0.255, 0.522, 0.529, 0.435)), - (-72, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Overmind'), 0.457, 0.576, 0.612, 0.624)), - (-73, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Seeker'), 0, 0.082, 0.082, 0.082)), - (-74, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Triglavian'), 0.241, 0.401, 0.449, 0.37)), - (-75, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Drifter'), 0.184, 0.403, 0.403, 0.403)), - (-76, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('Sleeper'), 0.268, 0.435, 0.435, 0.435)), - (-77, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T3 (Some T5 Rooms)]') + _t('All'), 0.313, 0.477, 0.502, 0.493)), - (-78, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Drones'), 0.193, 0.522, 0.529, 0.435)), - (-79, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Overmind'), 0.398, 0.576, 0.612, 0.624)), - (-80, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Seeker'), 0, 0.082, 0.082, 0.082)), - (-81, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Triglavian'), 0.183, 0.401, 0.449, 0.37)), - (-82, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Drifter'), 0.107, 0.403, 0.403, 0.403)), - (-83, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('Sleeper'), 0.215, 0.435, 0.435, 0.435)), - (-84, (_t('[NPC]') + _t('[Abyssal]') + _t('[Electrical T4/T5]') + _t('All'), 0.25, 0.477, 0.502, 0.493)), - (-85, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Drones'), 0.461, 0.425, 0.541, 0.443)), - (-86, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Overmind'), 0.65, 0.469, 0.625, 0.633)), - (-87, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Seeker'), 0.084, 0, 0.084, 0.084)), - (-88, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Triglavian'), 0.534, 0.266, 0.484, 0.366)), - (-89, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Drifter'), 0.422, 0.282, 0.422, 0.422)), - (-90, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('Sleeper'), 0.512, 0.402, 0.512, 0.512)), - (-91, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T1/T2]') + _t('All'), 0.541, 0.365, 0.524, 0.504)), - (-92, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Drones'), 0.461, 0.36, 0.541, 0.443)), - (-93, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Overmind'), 0.65, 0.391, 0.625, 0.633)), - (-94, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Seeker'), 0.084, 0, 0.084, 0.084)), - (-95, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Triglavian'), 0.534, 0.161, 0.484, 0.366)), - (-96, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Drifter'), 0.422, 0.196, 0.422, 0.422)), - (-97, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('Sleeper'), 0.512, 0.337, 0.512, 0.512)), - (-98, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T3 (Some T5 Rooms)]') + _t('All'), 0.541, 0.284, 0.524, 0.504)), - (-99, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Drones'), 0.461, 0.305, 0.541, 0.443)), - (-100, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Overmind'), 0.65, 0.323, 0.625, 0.633)), - (-101, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Seeker'), 0.084, 0, 0.084, 0.084)), - (-102, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Triglavian'), 0.534, 0.082, 0.484, 0.366)), - (-103, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Drifter'), 0.422, 0.114, 0.422, 0.422)), - (-104, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('Sleeper'), 0.512, 0.276, 0.512, 0.512)), - (-105, (_t('[NPC]') + _t('[Abyssal]') + _t('[Firestorm T4/T5]') + _t('All'), 0.541, 0.214, 0.524, 0.504)), - (-106, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Drones'), 0.439, 0.522, 0.417, 0.435)), - (-107, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Overmind'), 0.626, 0.576, 0.496, 0.624)), - (-108, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Seeker'), 0.082, 0.082, 0, 0.082)), - (-109, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Triglavian'), 0.477, 0.401, 0.284, 0.37)), - (-110, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Drifter'), 0.403, 0.403, 0.267, 0.403)), - (-111, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('Sleeper'), 0.435, 0.435, 0.329, 0.435)), - (-112, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T1/T2]') + _t('All'), 0.507, 0.477, 0.373, 0.493)), - (-113, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Drones'), 0.439, 0.522, 0.351, 0.435)), - (-114, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Overmind'), 0.626, 0.576, 0.419, 0.624)), - (-115, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Seeker'), 0.082, 0.082, 0, 0.082)), - (-116, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Triglavian'), 0.477, 0.401, 0.176, 0.37)), - (-117, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Drifter'), 0.403, 0.403, 0.184, 0.403)), - (-118, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('Sleeper'), 0.435, 0.435, 0.268, 0.435)), - (-119, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T3 (Some T5 Rooms)]') + _t('All'), 0.507, 0.477, 0.293, 0.493)), - (-120, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Drones'), 0.439, 0.522, 0.293, 0.435)), - (-121, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Overmind'), 0.626, 0.576, 0.344, 0.624)), - (-122, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Seeker'), 0.082, 0.082, 0, 0.082)), - (-123, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Triglavian'), 0.477, 0.401, 0.107, 0.37)), - (-124, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Drifter'), 0.403, 0.403, 0.107, 0.403)), - (-125, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('Sleeper'), 0.435, 0.435, 0.215, 0.435)), - (-126, (_t('[NPC]') + _t('[Abyssal]') + _t('[Exotic T4/T5]') + _t('All'), 0.507, 0.477, 0.223, 0.493)), - (-127, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Drones'), 0.449, 0.54, 0.549, 0.336)), - (-128, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Overmind'), 0.6, 0.557, 0.601, 0.504)), - (-129, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Seeker'), 0.085, 0.085, 0.085, 0)), - (-130, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Triglavian'), 0.463, 0.392, 0.447, 0.193)), - (-131, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Drifter'), 0.428, 0.428, 0.428, 0.287)), - (-132, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('Sleeper'), 0.435, 0.435, 0.435, 0.329)), - (-133, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T1/T2]') + _t('All'), 0.493, 0.472, 0.5, 0.362)), - (-134, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Drones'), 0.449, 0.54, 0.549, 0.264)), - (-135, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Overmind'), 0.6, 0.557, 0.601, 0.428)), - (-136, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Seeker'), 0.085, 0.085, 0.085, 0)), - (-137, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Triglavian'), 0.463, 0.392, 0.447, 0.071)), - (-138, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Drifter'), 0.428, 0.428, 0.428, 0.2)), - (-139, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('Sleeper'), 0.435, 0.435, 0.435, 0.268)), - (-140, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T3 (Some T5 Rooms)]') + _t('All'), 0.493, 0.472, 0.5, 0.28)), - (-141, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Drones'), 0.449, 0.54, 0.549, 0.197)), - (-142, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Overmind'), 0.6, 0.557, 0.601, 0.356)), - (-143, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Seeker'), 0.085, 0.085, 0.085, 0)), - (-144, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Triglavian'), 0.463, 0.392, 0.447, 0.029)), - (-145, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Drifter'), 0.428, 0.428, 0.428, 0.117)), - (-146, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('Sleeper'), 0.435, 0.435, 0.435, 0.215)), - (-147, (_t('[NPC]') + _t('[Abyssal]') + _t('[Gamma T4/T5]') + _t('All'), 0.493, 0.472, 0.5, 0.21))]) + (-52, (_c(_t('NPC')) + _c(_t('Invasion')) + _t('Invading Precursor Entities'), 0.422, 0.367, 0.453, 0.411)), + (-53, (_c(_t('NPC')) + _c(_t('Invasion')) + _t('Retaliating Amarr Entities'), 0.360, 0.310, 0.441, 0.602)), + (-54, (_c(_t('NPC')) + _c(_t('Invasion')) + _t('Retaliating Caldari Entities'), 0.287, 0.610, 0.487, 0.401)), + (-55, (_c(_t('NPC')) + _c(_t('Invasion')) + _t('Retaliating Gallente Entities'), 0.383, 0.414, 0.578, 0.513)), + (-56, (_c(_t('NPC')) + _c(_t('Invasion')) + _t('Retaliating Minmatar Entities'), 0.620, 0.422, 0.355, 0.399)), + (-57, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Dark Matter All Tiers')) + _t('Drones'), 0.439, 0.522, 0.529, 0.435)), + (-58, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Dark Matter All Tiers')) + _t('Overmind'), 0.626, 0.576, 0.612, 0.624)), + (-59, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Dark Matter All Tiers')) + _t('Seeker'), 0.082, 0.082, 0.082, 0.082)), + (-60, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Dark Matter All Tiers')) + _t('Triglavian'), 0.477, 0.401, 0.449, 0.37)), + (-61, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Dark Matter All Tiers')) + _t('Drifter'), 0.403, 0.403, 0.403, 0.403)), + (-62, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Dark Matter All Tiers')) + _t('Sleeper'), 0.435, 0.435, 0.435, 0.435)), + (-63, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Dark Matter All Tiers')) + _t('All'), 0.507, 0.477, 0.502, 0.493)), + (-64, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T1/T2')) + _t('Drones'), 0.323, 0.522, 0.529, 0.435)), + (-65, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T1/T2')) + _t('Overmind'), 0.521, 0.576, 0.612, 0.624)), + (-66, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T1/T2')) + _t('Seeker'), 0, 0.082, 0.082, 0.082)), + (-67, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T1/T2')) + _t('Triglavian'), 0.333, 0.401, 0.449, 0.37)), + (-68, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T1/T2')) + _t('Drifter'), 0.267, 0.403, 0.403, 0.403)), + (-69, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T1/T2')) + _t('Sleeper'), 0.329, 0.435, 0.435, 0.435)), + (-70, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T1/T2')) + _t('All'), 0.385, 0.477, 0.502, 0.493)), + (-71, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T3 (Some T5 Rooms)')) + _t('Drones'), 0.255, 0.522, 0.529, 0.435)), + (-72, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T3 (Some T5 Rooms)')) + _t('Overmind'), 0.457, 0.576, 0.612, 0.624)), + (-73, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T3 (Some T5 Rooms)')) + _t('Seeker'), 0, 0.082, 0.082, 0.082)), + (-74, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T3 (Some T5 Rooms)')) + _t('Triglavian'), 0.241, 0.401, 0.449, 0.37)), + (-75, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T3 (Some T5 Rooms)')) + _t('Drifter'), 0.184, 0.403, 0.403, 0.403)), + (-76, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T3 (Some T5 Rooms)')) + _t('Sleeper'), 0.268, 0.435, 0.435, 0.435)), + (-77, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T3 (Some T5 Rooms)')) + _t('All'), 0.313, 0.477, 0.502, 0.493)), + (-78, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T4/T5')) + _t('Drones'), 0.193, 0.522, 0.529, 0.435)), + (-79, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T4/T5')) + _t('Overmind'), 0.398, 0.576, 0.612, 0.624)), + (-80, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T4/T5')) + _t('Seeker'), 0, 0.082, 0.082, 0.082)), + (-81, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T4/T5')) + _t('Triglavian'), 0.183, 0.401, 0.449, 0.37)), + (-82, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T4/T5')) + _t('Drifter'), 0.107, 0.403, 0.403, 0.403)), + (-83, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T4/T5')) + _t('Sleeper'), 0.215, 0.435, 0.435, 0.435)), + (-84, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Electrical T4/T5')) + _t('All'), 0.25, 0.477, 0.502, 0.493)), + (-85, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T1/T2')) + _t('Drones'), 0.461, 0.425, 0.541, 0.443)), + (-86, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T1/T2')) + _t('Overmind'), 0.65, 0.469, 0.625, 0.633)), + (-87, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T1/T2')) + _t('Seeker'), 0.084, 0, 0.084, 0.084)), + (-88, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T1/T2')) + _t('Triglavian'), 0.534, 0.266, 0.484, 0.366)), + (-89, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T1/T2')) + _t('Drifter'), 0.422, 0.282, 0.422, 0.422)), + (-90, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T1/T2')) + _t('Sleeper'), 0.512, 0.402, 0.512, 0.512)), + (-91, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T1/T2')) + _t('All'), 0.541, 0.365, 0.524, 0.504)), + (-92, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T3 (Some T5 Rooms)')) + _t('Drones'), 0.461, 0.36, 0.541, 0.443)), + (-93, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T3 (Some T5 Rooms)')) + _t('Overmind'), 0.65, 0.391, 0.625, 0.633)), + (-94, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T3 (Some T5 Rooms)')) + _t('Seeker'), 0.084, 0, 0.084, 0.084)), + (-95, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T3 (Some T5 Rooms)')) + _t('Triglavian'), 0.534, 0.161, 0.484, 0.366)), + (-96, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T3 (Some T5 Rooms)')) + _t('Drifter'), 0.422, 0.196, 0.422, 0.422)), + (-97, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T3 (Some T5 Rooms)')) + _t('Sleeper'), 0.512, 0.337, 0.512, 0.512)), + (-98, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T3 (Some T5 Rooms)')) + _t('All'), 0.541, 0.284, 0.524, 0.504)), + (-99, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T4/T5')) + _t('Drones'), 0.461, 0.305, 0.541, 0.443)), + (-100, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T4/T5')) + _t('Overmind'), 0.65, 0.323, 0.625, 0.633)), + (-101, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T4/T5')) + _t('Seeker'), 0.084, 0, 0.084, 0.084)), + (-102, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T4/T5')) + _t('Triglavian'), 0.534, 0.082, 0.484, 0.366)), + (-103, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T4/T5')) + _t('Drifter'), 0.422, 0.114, 0.422, 0.422)), + (-104, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T4/T5')) + _t('Sleeper'), 0.512, 0.276, 0.512, 0.512)), + (-105, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Firestorm T4/T5')) + _t('All'), 0.541, 0.214, 0.524, 0.504)), + (-106, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T1/T2')) + _t('Drones'), 0.439, 0.522, 0.417, 0.435)), + (-107, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T1/T2')) + _t('Overmind'), 0.626, 0.576, 0.496, 0.624)), + (-108, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T1/T2')) + _t('Seeker'), 0.082, 0.082, 0, 0.082)), + (-109, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T1/T2')) + _t('Triglavian'), 0.477, 0.401, 0.284, 0.37)), + (-110, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T1/T2')) + _t('Drifter'), 0.403, 0.403, 0.267, 0.403)), + (-111, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T1/T2')) + _t('Sleeper'), 0.435, 0.435, 0.329, 0.435)), + (-112, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T1/T2')) + _t('All'), 0.507, 0.477, 0.373, 0.493)), + (-113, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T3 (Some T5 Rooms)')) + _t('Drones'), 0.439, 0.522, 0.351, 0.435)), + (-114, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T3 (Some T5 Rooms)')) + _t('Overmind'), 0.626, 0.576, 0.419, 0.624)), + (-115, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T3 (Some T5 Rooms)')) + _t('Seeker'), 0.082, 0.082, 0, 0.082)), + (-116, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T3 (Some T5 Rooms)')) + _t('Triglavian'), 0.477, 0.401, 0.176, 0.37)), + (-117, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T3 (Some T5 Rooms)')) + _t('Drifter'), 0.403, 0.403, 0.184, 0.403)), + (-118, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T3 (Some T5 Rooms)')) + _t('Sleeper'), 0.435, 0.435, 0.268, 0.435)), + (-119, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T3 (Some T5 Rooms)')) + _t('All'), 0.507, 0.477, 0.293, 0.493)), + (-120, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T4/T5')) + _t('Drones'), 0.439, 0.522, 0.293, 0.435)), + (-121, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T4/T5')) + _t('Overmind'), 0.626, 0.576, 0.344, 0.624)), + (-122, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T4/T5')) + _t('Seeker'), 0.082, 0.082, 0, 0.082)), + (-123, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T4/T5')) + _t('Triglavian'), 0.477, 0.401, 0.107, 0.37)), + (-124, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T4/T5')) + _t('Drifter'), 0.403, 0.403, 0.107, 0.403)), + (-125, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T4/T5')) + _t('Sleeper'), 0.435, 0.435, 0.215, 0.435)), + (-126, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Exotic T4/T5')) + _t('All'), 0.507, 0.477, 0.223, 0.493)), + (-127, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T1/T2')) + _t('Drones'), 0.449, 0.54, 0.549, 0.336)), + (-128, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T1/T2')) + _t('Overmind'), 0.6, 0.557, 0.601, 0.504)), + (-129, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T1/T2')) + _t('Seeker'), 0.085, 0.085, 0.085, 0)), + (-130, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T1/T2')) + _t('Triglavian'), 0.463, 0.392, 0.447, 0.193)), + (-131, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T1/T2')) + _t('Drifter'), 0.428, 0.428, 0.428, 0.287)), + (-132, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T1/T2')) + _t('Sleeper'), 0.435, 0.435, 0.435, 0.329)), + (-133, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T1/T2')) + _t('All'), 0.493, 0.472, 0.5, 0.362)), + (-134, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T3 (Some T5 Rooms)')) + _t('Drones'), 0.449, 0.54, 0.549, 0.264)), + (-135, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T3 (Some T5 Rooms)')) + _t('Overmind'), 0.6, 0.557, 0.601, 0.428)), + (-136, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T3 (Some T5 Rooms)')) + _t('Seeker'), 0.085, 0.085, 0.085, 0)), + (-137, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T3 (Some T5 Rooms)')) + _t('Triglavian'), 0.463, 0.392, 0.447, 0.071)), + (-138, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T3 (Some T5 Rooms)')) + _t('Drifter'), 0.428, 0.428, 0.428, 0.2)), + (-139, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T3 (Some T5 Rooms)')) + _t('Sleeper'), 0.435, 0.435, 0.435, 0.268)), + (-140, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T3 (Some T5 Rooms)')) + _t('All'), 0.493, 0.472, 0.5, 0.28)), + (-141, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T4/T5')) + _t('Drones'), 0.449, 0.54, 0.549, 0.197)), + (-142, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T4/T5')) + _t('Overmind'), 0.6, 0.557, 0.601, 0.356)), + (-143, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T4/T5')) + _t('Seeker'), 0.085, 0.085, 0.085, 0)), + (-144, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T4/T5')) + _t('Triglavian'), 0.463, 0.392, 0.447, 0.029)), + (-145, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T4/T5')) + _t('Drifter'), 0.428, 0.428, 0.428, 0.117)), + (-146, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T4/T5')) + _t('Sleeper'), 0.435, 0.435, 0.435, 0.215)), + (-147, (_c(_t('NPC')) + _c(_t('Abyssal')) + _c(_t('Gamma T4/T5')) + _t('All'), 0.493, 0.472, 0.5, 0.21))]) class TargetProfile: diff --git a/gui/builtinContextMenus/damagePatternChange.py b/gui/builtinContextMenus/damagePatternChange.py index a769cd6b9..57720e87c 100644 --- a/gui/builtinContextMenus/damagePatternChange.py +++ b/gui/builtinContextMenus/damagePatternChange.py @@ -45,9 +45,9 @@ class ChangeDamagePattern(ContextMenuUnconditional): for pattern in self.patterns: container = self.items for categoryName in pattern.hierarchy: - categoryName = _t('[' + categoryName + ']')[1:-1] if pattern.isBuiltin else categoryName + categoryName = _t(categoryName) if pattern.builtin else categoryName container = container[1].setdefault(categoryName, (OrderedDict(), OrderedDict())) - shortName = _t(pattern.shortName) if pattern.isBuiltin else pattern.shortName + shortName = _t(pattern.shortName) if pattern.builtin else pattern.shortName container[0][shortName] = pattern return list(self.items[0].keys()) + list(self.items[1].keys()) diff --git a/gui/builtinContextMenus/targetProfile/adder.py b/gui/builtinContextMenus/targetProfile/adder.py index 391ca33c6..8b3089e66 100644 --- a/gui/builtinContextMenus/targetProfile/adder.py +++ b/gui/builtinContextMenus/targetProfile/adder.py @@ -59,8 +59,10 @@ class TargetProfileAdder(ContextMenuUnconditional): for profile in profiles: container = items for categoryName in profile.hierarchy: + categoryName = _t(categoryName) if profile.builtin else categoryName container = container[1].setdefault(categoryName, (OrderedDict(), OrderedDict())) - container[0][profile.shortName] = profile + shortName = _t(profile.shortName) if profile.builtin else profile.shortName + container[0][shortName] = profile # Category as menu item - expands further msw = "wxMSW" in wx.PlatformInfo diff --git a/gui/builtinContextMenus/targetProfile/switcher.py b/gui/builtinContextMenus/targetProfile/switcher.py index 80f3a02bf..cdbf5f0bc 100644 --- a/gui/builtinContextMenus/targetProfile/switcher.py +++ b/gui/builtinContextMenus/targetProfile/switcher.py @@ -71,8 +71,10 @@ class TargetProfileSwitcher(ContextMenuUnconditional): for profile in profiles: container = items for categoryName in profile.hierarchy: + categoryName = _t(categoryName) if profile.builtin else categoryName container = container[1].setdefault(categoryName, (OrderedDict(), OrderedDict())) - container[0][profile.shortName] = profile + shortName = _t(profile.shortName) if profile.builtin else profile.shortName + container[0][shortName] = profile # Category as menu item - expands further msw = "wxMSW" in wx.PlatformInfo From b82030090cdda6c3ebc564c12b8a3c3f396a0c95 Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Sat, 11 Jul 2020 16:09:45 +0800 Subject: [PATCH 11/13] i18n/zh_CN: update translation for damagePattern and targetProfiles --- locale/zh_CN/LC_MESSAGES/lang.po | 1091 +++++++++++++++--------------- 1 file changed, 536 insertions(+), 555 deletions(-) diff --git a/locale/zh_CN/LC_MESSAGES/lang.po b/locale/zh_CN/LC_MESSAGES/lang.po index fa97ad3e7..1c1089dda 100644 --- a/locale/zh_CN/LC_MESSAGES/lang.po +++ b/locale/zh_CN/LC_MESSAGES/lang.po @@ -2,13 +2,13 @@ # Copyright (C) 2020 THE pyfa'S COPYRIGHT HOLDER # This file is distributed under the same license as the pyfa package. # zhaoweny , 2020. -# +# msgid "" msgstr "" "Project-Id-Version: pyfa 2.22.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-07-08 16:55+0800\n" -"PO-Revision-Date: 2020-07-09 00:39+0800\n" +"POT-Creation-Date: 2020-07-11 15:41+0800\n" +"PO-Revision-Date: 2020-07-11 15:42+0800\n" "Last-Translator: zhaoweny \n" "Language-Team: Chinese (simplified)\n" "Language: zh_CN\n" @@ -181,6 +181,58 @@ msgstr "0秒" msgid "Abilities" msgstr "铁骑技能" +#: eos/saveddata/damagePattern.py:95 eos/saveddata/damagePattern.py:96 +#: eos/saveddata/damagePattern.py:97 eos/saveddata/damagePattern.py:98 +#: eos/saveddata/damagePattern.py:99 eos/saveddata/damagePattern.py:100 +#: eos/saveddata/damagePattern.py:101 eos/saveddata/targetProfile.py:99 +#: eos/saveddata/targetProfile.py:100 eos/saveddata/targetProfile.py:101 +#: eos/saveddata/targetProfile.py:102 eos/saveddata/targetProfile.py:103 +#: eos/saveddata/targetProfile.py:104 eos/saveddata/targetProfile.py:105 +#: eos/saveddata/targetProfile.py:106 eos/saveddata/targetProfile.py:107 +#: eos/saveddata/targetProfile.py:108 eos/saveddata/targetProfile.py:109 +#: eos/saveddata/targetProfile.py:110 eos/saveddata/targetProfile.py:111 +#: eos/saveddata/targetProfile.py:112 eos/saveddata/targetProfile.py:113 +#: eos/saveddata/targetProfile.py:114 eos/saveddata/targetProfile.py:115 +#: eos/saveddata/targetProfile.py:116 eos/saveddata/targetProfile.py:117 +#: eos/saveddata/targetProfile.py:118 eos/saveddata/targetProfile.py:119 +#: eos/saveddata/targetProfile.py:120 eos/saveddata/targetProfile.py:121 +#: eos/saveddata/targetProfile.py:122 eos/saveddata/targetProfile.py:123 +#: eos/saveddata/targetProfile.py:124 eos/saveddata/targetProfile.py:125 +#: eos/saveddata/targetProfile.py:126 eos/saveddata/targetProfile.py:127 +#: eos/saveddata/targetProfile.py:128 eos/saveddata/targetProfile.py:129 +#: eos/saveddata/targetProfile.py:130 eos/saveddata/targetProfile.py:131 +#: eos/saveddata/targetProfile.py:132 eos/saveddata/targetProfile.py:133 +#: eos/saveddata/targetProfile.py:134 eos/saveddata/targetProfile.py:135 +#: eos/saveddata/targetProfile.py:136 eos/saveddata/targetProfile.py:137 +#: eos/saveddata/targetProfile.py:138 eos/saveddata/targetProfile.py:139 +#: eos/saveddata/targetProfile.py:140 eos/saveddata/targetProfile.py:141 +#: eos/saveddata/targetProfile.py:142 eos/saveddata/targetProfile.py:143 +#: eos/saveddata/targetProfile.py:144 eos/saveddata/targetProfile.py:145 +#: eos/saveddata/targetProfile.py:146 eos/saveddata/targetProfile.py:147 +#: eos/saveddata/targetProfile.py:148 eos/saveddata/targetProfile.py:149 +#: eos/saveddata/targetProfile.py:150 eos/saveddata/targetProfile.py:151 +#: eos/saveddata/targetProfile.py:152 eos/saveddata/targetProfile.py:153 +#: eos/saveddata/targetProfile.py:154 eos/saveddata/targetProfile.py:155 +#: eos/saveddata/targetProfile.py:156 eos/saveddata/targetProfile.py:157 +#: eos/saveddata/targetProfile.py:158 eos/saveddata/targetProfile.py:159 +#: eos/saveddata/targetProfile.py:160 eos/saveddata/targetProfile.py:161 +#: eos/saveddata/targetProfile.py:162 eos/saveddata/targetProfile.py:163 +#: eos/saveddata/targetProfile.py:164 eos/saveddata/targetProfile.py:165 +#: eos/saveddata/targetProfile.py:166 eos/saveddata/targetProfile.py:167 +#: eos/saveddata/targetProfile.py:168 eos/saveddata/targetProfile.py:169 +#: eos/saveddata/targetProfile.py:170 eos/saveddata/targetProfile.py:171 +#: eos/saveddata/targetProfile.py:172 eos/saveddata/targetProfile.py:173 +#: eos/saveddata/targetProfile.py:174 eos/saveddata/targetProfile.py:175 +#: eos/saveddata/targetProfile.py:176 eos/saveddata/targetProfile.py:177 +#: eos/saveddata/targetProfile.py:178 eos/saveddata/targetProfile.py:179 +#: eos/saveddata/targetProfile.py:180 eos/saveddata/targetProfile.py:181 +#: eos/saveddata/targetProfile.py:182 eos/saveddata/targetProfile.py:183 +#: eos/saveddata/targetProfile.py:184 eos/saveddata/targetProfile.py:185 +#: eos/saveddata/targetProfile.py:186 eos/saveddata/targetProfile.py:187 +#: eos/saveddata/targetProfile.py:188 eos/saveddata/targetProfile.py:189 +msgid "Abyssal" +msgstr "深渊" + #: gui/builtinContextMenus/envEffectAdd.py:119 msgid "Abyssal Weather" msgstr "深渊环境" @@ -272,13 +324,13 @@ msgstr "起跳时间" msgid "Align:\t%.3fs" msgstr "起跳时间:%.3fs" -#: eos/saveddata/damagePattern.py:89 eos/saveddata/targetProfile.py:98 -#: eos/saveddata/targetProfile.py:105 eos/saveddata/targetProfile.py:112 -#: eos/saveddata/targetProfile.py:119 eos/saveddata/targetProfile.py:126 -#: eos/saveddata/targetProfile.py:133 eos/saveddata/targetProfile.py:140 -#: eos/saveddata/targetProfile.py:147 eos/saveddata/targetProfile.py:154 -#: eos/saveddata/targetProfile.py:161 eos/saveddata/targetProfile.py:168 -#: eos/saveddata/targetProfile.py:175 eos/saveddata/targetProfile.py:182 +#: eos/saveddata/damagePattern.py:95 eos/saveddata/targetProfile.py:105 +#: eos/saveddata/targetProfile.py:112 eos/saveddata/targetProfile.py:119 +#: eos/saveddata/targetProfile.py:126 eos/saveddata/targetProfile.py:133 +#: eos/saveddata/targetProfile.py:140 eos/saveddata/targetProfile.py:147 +#: eos/saveddata/targetProfile.py:154 eos/saveddata/targetProfile.py:161 +#: eos/saveddata/targetProfile.py:168 eos/saveddata/targetProfile.py:175 +#: eos/saveddata/targetProfile.py:182 eos/saveddata/targetProfile.py:189 msgid "All" msgstr "全部" @@ -298,15 +350,15 @@ msgstr "已达到所有技能要求" msgid "Allow pre-release notifications" msgstr "允许预发布版本更新通知" -#: eos/saveddata/targetProfile.py:46 +#: eos/saveddata/targetProfile.py:53 msgid "Amarr (Armor)" msgstr "艾玛(护甲)" -#: eos/saveddata/targetProfile.py:45 +#: eos/saveddata/targetProfile.py:52 msgid "Amarr (Shield)" msgstr "艾玛(护盾)" -#: eos/saveddata/damagePattern.py:132 eos/saveddata/targetProfile.py:65 +#: eos/saveddata/damagePattern.py:138 eos/saveddata/targetProfile.py:72 msgid "Amarr Empire" msgstr "艾玛帝国" @@ -314,8 +366,8 @@ msgstr "艾玛帝国" msgid "Ammo hold" msgstr "弹药仓" -#: eos/saveddata/damagePattern.py:96 eos/saveddata/damagePattern.py:114 -#: eos/saveddata/targetProfile.py:53 eos/saveddata/targetProfile.py:59 +#: eos/saveddata/damagePattern.py:102 eos/saveddata/damagePattern.py:120 +#: eos/saveddata/targetProfile.py:60 eos/saveddata/targetProfile.py:66 msgid "Angel Cartel" msgstr "天使联合企业" @@ -323,7 +375,7 @@ msgstr "天使联合企业" msgid "Animate gauges" msgstr "启用属性进度条动画" -#: eos/saveddata/damagePattern.py:65 +#: eos/saveddata/damagePattern.py:71 msgid "Antimatter" msgstr "反物质" @@ -353,11 +405,11 @@ msgid "" "This could lead to wildly inaccurate results and possible errors." msgstr "您确定要忽略当前装配资源限制吗?这可能导致不准确或错误的结果。" -#: eos/saveddata/targetProfile.py:40 +#: eos/saveddata/targetProfile.py:47 msgid "Armor" msgstr "装甲" -#: eos/saveddata/targetProfile.py:43 +#: eos/saveddata/targetProfile.py:50 msgid "Armor (+T2 DCU)" msgstr "护甲(+T2损控)" @@ -373,10 +425,19 @@ msgstr "装甲抗性" msgid "Armor: " msgstr "装甲:" -#: eos/saveddata/damagePattern.py:111 eos/saveddata/targetProfile.py:83 +#: eos/saveddata/damagePattern.py:117 eos/saveddata/targetProfile.py:90 msgid "Ashimmu (Blood Raiders)" msgstr "阿什姆级(血袭者)" +#: eos/saveddata/damagePattern.py:102 eos/saveddata/damagePattern.py:103 +#: eos/saveddata/damagePattern.py:104 eos/saveddata/damagePattern.py:105 +#: eos/saveddata/damagePattern.py:106 eos/saveddata/damagePattern.py:107 +#: eos/saveddata/targetProfile.py:60 eos/saveddata/targetProfile.py:61 +#: eos/saveddata/targetProfile.py:62 eos/saveddata/targetProfile.py:63 +#: eos/saveddata/targetProfile.py:64 eos/saveddata/targetProfile.py:65 +msgid "Asteroid" +msgstr "小行星" + #: gui/builtinItemStatsViews/itemAttributes.py:44 #: gui/builtinItemStatsViews/itemProperties.py:56 msgid "Attribute" @@ -419,7 +480,7 @@ msgstr "备份所有装配到XML文件" msgid "Backup fits" msgstr "备份装配" -#: eos/saveddata/damagePattern.py:53 +#: eos/saveddata/damagePattern.py:59 msgid "Baryon" msgstr "重子" @@ -443,11 +504,16 @@ msgstr "请注意已处理的装配未作保存" msgid "Bioluminescence" msgstr "生物荧光" -#: eos/saveddata/damagePattern.py:97 eos/saveddata/damagePattern.py:115 -#: eos/saveddata/targetProfile.py:54 eos/saveddata/targetProfile.py:60 +#: eos/saveddata/damagePattern.py:103 eos/saveddata/damagePattern.py:121 +#: eos/saveddata/targetProfile.py:61 eos/saveddata/targetProfile.py:67 msgid "Blood Raiders" msgstr "血袭者" +#: eos/saveddata/damagePattern.py:90 eos/saveddata/damagePattern.py:91 +#: eos/saveddata/damagePattern.py:92 eos/saveddata/damagePattern.py:93 +msgid "Bombs" +msgstr "炸弹" + #: gui/builtinAdditionPanes/boosterView.py:215 msgid "Booster" msgstr "增效剂" @@ -463,7 +529,22 @@ msgstr "增效剂" msgid "Browse EVE Fittings" msgstr "浏览游戏内装配" -#: eos/saveddata/damagePattern.py:134 eos/saveddata/targetProfile.py:67 +#: eos/saveddata/damagePattern.py:108 eos/saveddata/damagePattern.py:109 +#: eos/saveddata/damagePattern.py:110 eos/saveddata/damagePattern.py:111 +#: eos/saveddata/damagePattern.py:112 eos/saveddata/damagePattern.py:113 +#: eos/saveddata/damagePattern.py:114 eos/saveddata/damagePattern.py:115 +#: eos/saveddata/damagePattern.py:116 eos/saveddata/damagePattern.py:117 +#: eos/saveddata/damagePattern.py:118 eos/saveddata/damagePattern.py:119 +#: eos/saveddata/targetProfile.py:81 eos/saveddata/targetProfile.py:82 +#: eos/saveddata/targetProfile.py:83 eos/saveddata/targetProfile.py:84 +#: eos/saveddata/targetProfile.py:85 eos/saveddata/targetProfile.py:86 +#: eos/saveddata/targetProfile.py:87 eos/saveddata/targetProfile.py:88 +#: eos/saveddata/targetProfile.py:89 eos/saveddata/targetProfile.py:90 +#: eos/saveddata/targetProfile.py:91 eos/saveddata/targetProfile.py:92 +msgid "Burner" +msgstr "燃烧者" + +#: eos/saveddata/damagePattern.py:140 eos/saveddata/targetProfile.py:74 msgid "CONCORD" msgstr "统合部" @@ -475,15 +556,15 @@ msgstr "CPU" msgid "CSV files" msgstr "逗号分隔符(CSV)文件" -#: eos/saveddata/targetProfile.py:48 +#: eos/saveddata/targetProfile.py:55 msgid "Caldari (Armor)" msgstr "加达里(护甲)" -#: eos/saveddata/targetProfile.py:47 +#: eos/saveddata/targetProfile.py:54 msgid "Caldari (Shield)" msgstr "加达里(护盾)" -#: eos/saveddata/damagePattern.py:133 eos/saveddata/targetProfile.py:66 +#: eos/saveddata/damagePattern.py:139 eos/saveddata/targetProfile.py:73 msgid "Caldari State" msgstr "加达里合众国" @@ -500,7 +581,7 @@ msgstr "电容" msgid "Capacitor stability" msgstr "电容稳定性" -#: eos/saveddata/damagePattern.py:70 +#: eos/saveddata/damagePattern.py:76 msgid "Carbonized Lead" msgstr "碳铅弹" @@ -663,7 +744,7 @@ msgstr "简洁技能需求提示" msgid "Compare" msgstr "对比" -#: eos/saveddata/damagePattern.py:86 +#: eos/saveddata/damagePattern.py:92 msgid "Concussion Bomb" msgstr "震荡炸弹" @@ -752,8 +833,7 @@ msgstr "拷贝选中的{}" msgid "Copy and paste the block of text provided by pyfa.io" msgstr "请复制和粘贴pyfa.io提供的字符串" -#: gui/patternEditor.py:290 gui/setEditor.py:222 -#: gui/targetProfileEditor.py:366 +#: gui/patternEditor.py:290 gui/setEditor.py:222 gui/targetProfileEditor.py:366 msgid "Could not import from clipboard" msgstr "无法从剪贴板导入" @@ -769,7 +849,7 @@ msgstr "无法从剪贴板导入:未知错误" msgid "Cruiser" msgstr "巡洋" -#: eos/saveddata/damagePattern.py:102 eos/saveddata/targetProfile.py:74 +#: eos/saveddata/damagePattern.py:108 eos/saveddata/targetProfile.py:81 msgid "Cruor (Blood Raiders)" msgstr "凝血级(血袭者)" @@ -798,14 +878,30 @@ msgstr "伤害模型" msgid "Damage Profile name already in use, please choose another." msgstr "伤害模型名已占用,请使用其他名称。" -#: eos/saveddata/damagePattern.py:104 eos/saveddata/targetProfile.py:76 +#: eos/saveddata/damagePattern.py:110 eos/saveddata/targetProfile.py:83 msgid "Daredevil (Serpentis)" msgstr "夜魔侠级(天蛇)" +#: eos/saveddata/targetProfile.py:99 eos/saveddata/targetProfile.py:100 +#: eos/saveddata/targetProfile.py:101 eos/saveddata/targetProfile.py:102 +#: eos/saveddata/targetProfile.py:103 eos/saveddata/targetProfile.py:104 +#: eos/saveddata/targetProfile.py:105 +msgid "Dark Matter All Tiers" +msgstr "暗物质全部级别" + #: gui/builtinPreferenceViews/pyfaDatabasePreferences.py:15 msgid "Database" msgstr "数据库" +#: eos/saveddata/damagePattern.py:120 eos/saveddata/damagePattern.py:121 +#: eos/saveddata/damagePattern.py:122 eos/saveddata/damagePattern.py:123 +#: eos/saveddata/damagePattern.py:124 eos/saveddata/damagePattern.py:125 +#: eos/saveddata/targetProfile.py:66 eos/saveddata/targetProfile.py:67 +#: eos/saveddata/targetProfile.py:68 eos/saveddata/targetProfile.py:69 +#: eos/saveddata/targetProfile.py:70 eos/saveddata/targetProfile.py:71 +msgid "Deadspace" +msgstr "死亡空间" + #: gui/builtinPreferenceViews/pyfaLoggingPreferences.py:56 msgid "Debug Logging Enabled" msgstr "调试日志已开启" @@ -847,7 +943,7 @@ msgstr "删除游戏内装配" msgid "Dependents" msgstr "依赖" -#: eos/saveddata/damagePattern.py:73 +#: eos/saveddata/damagePattern.py:79 msgid "Depleted Uranium" msgstr "硬钼弹" @@ -915,26 +1011,26 @@ msgstr "拖拽装配到此处" msgid "Drag an item or fit, or use right-click menu for wormhole effects" msgstr "拖拽一个物品或装配以启用投射效果,或使用右键菜单选择一个虫洞环境效果" -#: eos/saveddata/damagePattern.py:103 eos/saveddata/targetProfile.py:75 +#: eos/saveddata/damagePattern.py:109 eos/saveddata/targetProfile.py:82 msgid "Dramiel (Angel)" msgstr "德拉米尔级(天使)" -#: eos/saveddata/damagePattern.py:121 eos/saveddata/damagePattern.py:127 -#: eos/saveddata/damagePattern.py:130 +#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:133 +#: eos/saveddata/damagePattern.py:136 msgid "Dread" msgstr "无畏" -#: eos/saveddata/damagePattern.py:126 eos/saveddata/damagePattern.py:129 +#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:135 msgid "Dread/Subcaps" msgstr "无畏/常规" -#: eos/saveddata/damagePattern.py:90 eos/saveddata/targetProfile.py:96 -#: eos/saveddata/targetProfile.py:103 eos/saveddata/targetProfile.py:110 -#: eos/saveddata/targetProfile.py:117 eos/saveddata/targetProfile.py:124 -#: eos/saveddata/targetProfile.py:131 eos/saveddata/targetProfile.py:138 -#: eos/saveddata/targetProfile.py:145 eos/saveddata/targetProfile.py:152 -#: eos/saveddata/targetProfile.py:159 eos/saveddata/targetProfile.py:166 -#: eos/saveddata/targetProfile.py:173 eos/saveddata/targetProfile.py:180 +#: eos/saveddata/damagePattern.py:96 eos/saveddata/targetProfile.py:103 +#: eos/saveddata/targetProfile.py:110 eos/saveddata/targetProfile.py:117 +#: eos/saveddata/targetProfile.py:124 eos/saveddata/targetProfile.py:131 +#: eos/saveddata/targetProfile.py:138 eos/saveddata/targetProfile.py:145 +#: eos/saveddata/targetProfile.py:152 eos/saveddata/targetProfile.py:159 +#: eos/saveddata/targetProfile.py:166 eos/saveddata/targetProfile.py:173 +#: eos/saveddata/targetProfile.py:180 eos/saveddata/targetProfile.py:187 msgid "Drifter" msgstr "流浪者" @@ -958,13 +1054,13 @@ msgstr "无人机仓库" msgid "Drone range" msgstr "无人机半径" -#: eos/saveddata/damagePattern.py:91 eos/saveddata/targetProfile.py:92 -#: eos/saveddata/targetProfile.py:99 eos/saveddata/targetProfile.py:106 -#: eos/saveddata/targetProfile.py:113 eos/saveddata/targetProfile.py:120 -#: eos/saveddata/targetProfile.py:127 eos/saveddata/targetProfile.py:134 -#: eos/saveddata/targetProfile.py:141 eos/saveddata/targetProfile.py:148 -#: eos/saveddata/targetProfile.py:155 eos/saveddata/targetProfile.py:162 -#: eos/saveddata/targetProfile.py:169 eos/saveddata/targetProfile.py:176 +#: eos/saveddata/damagePattern.py:97 eos/saveddata/targetProfile.py:99 +#: eos/saveddata/targetProfile.py:106 eos/saveddata/targetProfile.py:113 +#: eos/saveddata/targetProfile.py:120 eos/saveddata/targetProfile.py:127 +#: eos/saveddata/targetProfile.py:134 eos/saveddata/targetProfile.py:141 +#: eos/saveddata/targetProfile.py:148 eos/saveddata/targetProfile.py:155 +#: eos/saveddata/targetProfile.py:162 eos/saveddata/targetProfile.py:169 +#: eos/saveddata/targetProfile.py:176 eos/saveddata/targetProfile.py:183 #: gui/additionsPane.py:66 gui/builtinContextMenus/additionsExportAll.py:18 #: gui/builtinContextMenus/additionsExportSelection.py:18 #: gui/builtinContextMenus/additionsImport.py:19 @@ -995,7 +1091,7 @@ msgstr "EFT装配文本文件" msgid "EHP" msgstr "EHP" -#: eos/saveddata/damagePattern.py:33 +#: eos/saveddata/damagePattern.py:39 #: gui/builtinContextMenus/moduleAmmoChange.py:24 msgid "EM" msgstr "电磁" @@ -1004,7 +1100,7 @@ msgstr "电磁" msgid "EM resistance" msgstr "电磁抗性" -#: eos/saveddata/damagePattern.py:75 +#: eos/saveddata/damagePattern.py:81 msgid "EMP" msgstr "电磁脉冲弹" @@ -1059,11 +1155,32 @@ msgstr "有效:%dHP" msgid "Effects" msgstr "效果" +#: eos/saveddata/targetProfile.py:106 eos/saveddata/targetProfile.py:107 +#: eos/saveddata/targetProfile.py:108 eos/saveddata/targetProfile.py:109 +#: eos/saveddata/targetProfile.py:110 eos/saveddata/targetProfile.py:111 +#: eos/saveddata/targetProfile.py:112 +msgid "Electrical T1/T2" +msgstr "电子 T1/T2" + +#: eos/saveddata/targetProfile.py:113 eos/saveddata/targetProfile.py:114 +#: eos/saveddata/targetProfile.py:115 eos/saveddata/targetProfile.py:116 +#: eos/saveddata/targetProfile.py:117 eos/saveddata/targetProfile.py:118 +#: eos/saveddata/targetProfile.py:119 +msgid "Electrical T3 (Some T5 Rooms)" +msgstr "电子 T3 (含部分T5关卡)" + +#: eos/saveddata/targetProfile.py:120 eos/saveddata/targetProfile.py:121 +#: eos/saveddata/targetProfile.py:122 eos/saveddata/targetProfile.py:123 +#: eos/saveddata/targetProfile.py:124 eos/saveddata/targetProfile.py:125 +#: eos/saveddata/targetProfile.py:126 +msgid "Electrical T4/T5" +msgstr "电子 T4/T5" + #: gui/builtinStatsViews/resistancesViewFull.py:85 msgid "Electromagnetic resistance" msgstr "电磁抗性" -#: eos/saveddata/damagePattern.py:84 +#: eos/saveddata/damagePattern.py:90 msgid "Electron Bomb" msgstr "电子炸弹" @@ -1139,7 +1256,7 @@ msgstr "请为新角色输入一个名称:" msgid "Enter a name for your new Implant Set:" msgstr "请为新植入体配置输入一个名称:" -#: eos/saveddata/damagePattern.py:107 eos/saveddata/targetProfile.py:79 +#: eos/saveddata/damagePattern.py:113 eos/saveddata/targetProfile.py:86 msgid "Enyo" msgstr "恩尤" @@ -1158,11 +1275,38 @@ msgstr "无法获取技能信息" msgid "Error!" msgstr "错误!" +#: eos/saveddata/damagePattern.py:57 eos/saveddata/damagePattern.py:58 +#: eos/saveddata/damagePattern.py:59 eos/saveddata/damagePattern.py:60 +#: eos/saveddata/damagePattern.py:61 +msgid "Exotic Plasma" +msgstr "异种等离子" + +#: eos/saveddata/targetProfile.py:148 eos/saveddata/targetProfile.py:149 +#: eos/saveddata/targetProfile.py:150 eos/saveddata/targetProfile.py:151 +#: eos/saveddata/targetProfile.py:152 eos/saveddata/targetProfile.py:153 +#: eos/saveddata/targetProfile.py:154 +msgid "Exotic T1/T2" +msgstr "异种 T1/T2" + +#: eos/saveddata/targetProfile.py:155 eos/saveddata/targetProfile.py:156 +#: eos/saveddata/targetProfile.py:157 eos/saveddata/targetProfile.py:158 +#: eos/saveddata/targetProfile.py:159 eos/saveddata/targetProfile.py:160 +#: eos/saveddata/targetProfile.py:161 +msgid "Exotic T3 (Some T5 Rooms)" +msgstr "异种 T3 (含部分T5关卡)" + +#: eos/saveddata/targetProfile.py:162 eos/saveddata/targetProfile.py:163 +#: eos/saveddata/targetProfile.py:164 eos/saveddata/targetProfile.py:165 +#: eos/saveddata/targetProfile.py:166 eos/saveddata/targetProfile.py:167 +#: eos/saveddata/targetProfile.py:168 +msgid "Exotic T4/T5" +msgstr "异种 T4/T5" + #: gui/builtinItemStatsViews/itemAffectedBy.py:67 msgid "Expand All" msgstr "展开所有" -#: eos/saveddata/damagePattern.py:36 +#: eos/saveddata/damagePattern.py:42 #: gui/builtinContextMenus/moduleAmmoChange.py:26 msgid "Explosive" msgstr "爆炸" @@ -1343,6 +1487,27 @@ msgstr "用该模块填满空白槽位" msgid "Firepower" msgstr "火力" +#: eos/saveddata/targetProfile.py:127 eos/saveddata/targetProfile.py:128 +#: eos/saveddata/targetProfile.py:129 eos/saveddata/targetProfile.py:130 +#: eos/saveddata/targetProfile.py:131 eos/saveddata/targetProfile.py:132 +#: eos/saveddata/targetProfile.py:133 +msgid "Firestorm T1/T2" +msgstr "火瀑 T1/T2" + +#: eos/saveddata/targetProfile.py:134 eos/saveddata/targetProfile.py:135 +#: eos/saveddata/targetProfile.py:136 eos/saveddata/targetProfile.py:137 +#: eos/saveddata/targetProfile.py:138 eos/saveddata/targetProfile.py:139 +#: eos/saveddata/targetProfile.py:140 +msgid "Firestorm T3 (Some T5 Rooms)" +msgstr "火瀑 T3 (含部分T5关卡)" + +#: eos/saveddata/targetProfile.py:141 eos/saveddata/targetProfile.py:142 +#: eos/saveddata/targetProfile.py:143 eos/saveddata/targetProfile.py:144 +#: eos/saveddata/targetProfile.py:145 eos/saveddata/targetProfile.py:146 +#: eos/saveddata/targetProfile.py:147 +msgid "Firestorm T4/T5" +msgstr "火瀑 T4/T5" + #: graphs/gui/lists.py:305 msgid "Fit" msgstr "装配" @@ -1368,6 +1533,15 @@ msgstr "舰队机库" msgid "Formatting Tags" msgstr "格式化标签" +#: eos/saveddata/damagePattern.py:43 eos/saveddata/damagePattern.py:44 +#: eos/saveddata/damagePattern.py:45 eos/saveddata/damagePattern.py:46 +#: eos/saveddata/damagePattern.py:47 eos/saveddata/damagePattern.py:48 +#: eos/saveddata/damagePattern.py:49 eos/saveddata/damagePattern.py:50 +#: eos/saveddata/damagePattern.py:51 eos/saveddata/damagePattern.py:52 +#: eos/saveddata/damagePattern.py:53 eos/saveddata/damagePattern.py:54 +msgid "Frequency Crystals" +msgstr "频率晶体" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:164 msgid "Frigate" msgstr "护卫" @@ -1387,19 +1561,19 @@ msgstr "燃料仓" msgid "Full" msgstr "完整" -#: eos/saveddata/damagePattern.py:77 +#: eos/saveddata/damagePattern.py:83 msgid "Fusion" msgstr "聚变弹" -#: eos/saveddata/targetProfile.py:50 +#: eos/saveddata/targetProfile.py:57 msgid "Gallente (Armor)" msgstr "盖伦特(护甲)" -#: eos/saveddata/targetProfile.py:49 +#: eos/saveddata/targetProfile.py:56 msgid "Gallente (Shield)" msgstr "盖伦特(护盾)" -#: eos/saveddata/damagePattern.py:135 eos/saveddata/targetProfile.py:68 +#: eos/saveddata/damagePattern.py:141 eos/saveddata/targetProfile.py:75 msgid "Gallente Federation" msgstr "盖伦特联邦" @@ -1407,10 +1581,31 @@ msgstr "盖伦特联邦" msgid "Game Database:" msgstr "游戏数据库:" -#: eos/saveddata/damagePattern.py:45 +#: eos/saveddata/damagePattern.py:51 msgid "Gamma" msgstr "伽玛" +#: eos/saveddata/targetProfile.py:169 eos/saveddata/targetProfile.py:170 +#: eos/saveddata/targetProfile.py:171 eos/saveddata/targetProfile.py:172 +#: eos/saveddata/targetProfile.py:173 eos/saveddata/targetProfile.py:174 +#: eos/saveddata/targetProfile.py:175 +msgid "Gamma T1/T2" +msgstr "伽玛 T1/T2" + +#: eos/saveddata/targetProfile.py:176 eos/saveddata/targetProfile.py:177 +#: eos/saveddata/targetProfile.py:178 eos/saveddata/targetProfile.py:179 +#: eos/saveddata/targetProfile.py:180 eos/saveddata/targetProfile.py:181 +#: eos/saveddata/targetProfile.py:182 +msgid "Gamma T3 (Some T5 Rooms)" +msgstr "伽玛 T3 (含部分T5关卡)" + +#: eos/saveddata/targetProfile.py:183 eos/saveddata/targetProfile.py:184 +#: eos/saveddata/targetProfile.py:185 eos/saveddata/targetProfile.py:186 +#: eos/saveddata/targetProfile.py:187 eos/saveddata/targetProfile.py:188 +#: eos/saveddata/targetProfile.py:189 +msgid "Gamma T4/T5" +msgstr "伽玛 T4/T5" + #: gui/builtinStatsViews/targetingMiscViewMinimal.py:125 msgid "Gas hold" msgstr "气体矿物仓库" @@ -1423,6 +1618,11 @@ msgstr "通用" msgid "Generating HTML file at: {}" msgstr "正在生成HTML网页到:{}" +#: eos/saveddata/damagePattern.py:39 eos/saveddata/damagePattern.py:40 +#: eos/saveddata/damagePattern.py:41 eos/saveddata/damagePattern.py:42 +msgid "Generic" +msgstr "通用" + #: gui/characterEditor.py:778 msgid "Get Skills" msgstr "获取技能列表" @@ -1443,8 +1643,8 @@ msgstr "转到GitHub上的百科页" msgid "Grant Missing Skills" msgstr "习得所需技能" -#: eos/saveddata/damagePattern.py:98 eos/saveddata/damagePattern.py:116 -#: eos/saveddata/targetProfile.py:55 eos/saveddata/targetProfile.py:61 +#: eos/saveddata/damagePattern.py:104 eos/saveddata/damagePattern.py:122 +#: eos/saveddata/targetProfile.py:62 eos/saveddata/targetProfile.py:68 msgid "Guristas" msgstr "古斯塔斯" @@ -1466,7 +1666,7 @@ msgstr "" "HTML导出(文件>导出到所有装配到网页)可以导出你的所有装配为HTML网页,放在指定" "路径下。网页版装配应用可以很容易的打开该HTML网页" -#: eos/saveddata/damagePattern.py:108 eos/saveddata/targetProfile.py:80 +#: eos/saveddata/damagePattern.py:114 eos/saveddata/targetProfile.py:87 msgid "Hawk" msgstr "战鹰级" @@ -1491,11 +1691,11 @@ msgstr "高" msgid "High Security" msgstr "高安" -#: eos/saveddata/targetProfile.py:41 +#: eos/saveddata/targetProfile.py:48 msgid "Hull" msgstr "结构" -#: eos/saveddata/targetProfile.py:44 +#: eos/saveddata/targetProfile.py:51 msgid "Hull (+T2 DCU)" msgstr "结构(+T2 损控)" @@ -1511,11 +1711,20 @@ msgstr "结构抗性" msgid "Hull: " msgstr "结构:" +#: eos/saveddata/damagePattern.py:62 eos/saveddata/damagePattern.py:63 +#: eos/saveddata/damagePattern.py:64 eos/saveddata/damagePattern.py:65 +#: eos/saveddata/damagePattern.py:66 eos/saveddata/damagePattern.py:67 +#: eos/saveddata/damagePattern.py:68 eos/saveddata/damagePattern.py:69 +#: eos/saveddata/damagePattern.py:70 eos/saveddata/damagePattern.py:71 +#: eos/saveddata/damagePattern.py:72 eos/saveddata/damagePattern.py:73 +msgid "Hybrid Charges" +msgstr "混合弹药" + #: gui/builtinItemStatsViews/itemEffects.py:35 msgid "ID" msgstr "ID" -#: eos/saveddata/targetProfile.py:243 +#: eos/saveddata/targetProfile.py:250 msgid "Ideal Target" msgstr "理想目标" @@ -1648,11 +1857,11 @@ msgstr "范围无效(必须是 0-100)" msgid "Industrial ship hold" msgstr "工业舰船仓" -#: eos/saveddata/damagePattern.py:81 +#: eos/saveddata/damagePattern.py:87 msgid "Inferno" msgstr "炼狱" -#: eos/saveddata/damagePattern.py:41 +#: eos/saveddata/damagePattern.py:47 msgid "Infrared" msgstr "红外" @@ -1660,7 +1869,9 @@ msgstr "红外" msgid "Interceptor" msgstr "截击" -#: eos/saveddata/targetProfile.py:87 +#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:128 +#: eos/saveddata/damagePattern.py:129 eos/saveddata/damagePattern.py:130 +#: eos/saveddata/damagePattern.py:131 eos/saveddata/targetProfile.py:94 msgid "Invading Precursor Entities" msgstr "入侵的先驱者实体" @@ -1672,11 +1883,22 @@ msgstr "无效路径" msgid "Invalid Token" msgstr "无效登录信息" -#: eos/saveddata/damagePattern.py:60 +#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:128 +#: eos/saveddata/damagePattern.py:129 eos/saveddata/damagePattern.py:130 +#: eos/saveddata/damagePattern.py:131 eos/saveddata/damagePattern.py:132 +#: eos/saveddata/damagePattern.py:133 eos/saveddata/damagePattern.py:134 +#: eos/saveddata/damagePattern.py:135 eos/saveddata/damagePattern.py:136 +#: eos/saveddata/damagePattern.py:137 eos/saveddata/targetProfile.py:94 +#: eos/saveddata/targetProfile.py:95 eos/saveddata/targetProfile.py:96 +#: eos/saveddata/targetProfile.py:97 eos/saveddata/targetProfile.py:98 +msgid "Invasion" +msgstr "入侵" + +#: eos/saveddata/damagePattern.py:66 msgid "Iridium" msgstr "铱质" -#: eos/saveddata/damagePattern.py:58 +#: eos/saveddata/damagePattern.py:64 msgid "Iron" msgstr "铁质" @@ -1696,15 +1918,15 @@ msgstr "切换物品分类时" msgid "Item stats" msgstr "物品属性" -#: eos/saveddata/damagePattern.py:109 eos/saveddata/targetProfile.py:81 +#: eos/saveddata/damagePattern.py:115 eos/saveddata/targetProfile.py:88 msgid "Jaguar" msgstr "美洲豹" -#: eos/saveddata/damagePattern.py:136 eos/saveddata/targetProfile.py:69 +#: eos/saveddata/damagePattern.py:142 eos/saveddata/targetProfile.py:76 msgid "Khanid" msgstr "卡尼迪" -#: eos/saveddata/damagePattern.py:35 +#: eos/saveddata/damagePattern.py:41 #: gui/builtinContextMenus/moduleAmmoChange.py:27 msgid "Kinetic" msgstr "动能" @@ -1731,7 +1953,7 @@ msgstr "可维持" msgid "Launcher hardpoints" msgstr "发射器" -#: eos/saveddata/damagePattern.py:61 +#: eos/saveddata/damagePattern.py:67 msgid "Lead" msgstr "铅质" @@ -1880,11 +2102,11 @@ msgstr "中" msgid "Medium ship hold" msgstr "中型舰船仓" -#: eos/saveddata/damagePattern.py:52 +#: eos/saveddata/damagePattern.py:58 msgid "Meson" msgstr "介子" -#: eos/saveddata/damagePattern.py:40 +#: eos/saveddata/damagePattern.py:46 msgid "Microwave" msgstr "微波" @@ -1907,15 +2129,15 @@ msgstr "简洁" msgid "Mining Yield" msgstr "矿物产出" -#: eos/saveddata/targetProfile.py:52 +#: eos/saveddata/targetProfile.py:59 msgid "Minmatar (Armor)" msgstr "米玛塔尔(护甲)" -#: eos/saveddata/targetProfile.py:51 +#: eos/saveddata/targetProfile.py:58 msgid "Minmatar (Shield)" msgstr "米玛塔尔(护盾)" -#: eos/saveddata/damagePattern.py:137 eos/saveddata/targetProfile.py:70 +#: eos/saveddata/damagePattern.py:143 eos/saveddata/targetProfile.py:77 msgid "Minmatar Republic" msgstr "米玛塔尔共和国" @@ -1927,11 +2149,27 @@ msgstr "杂项" msgid "Misc data" msgstr "杂项" +#: eos/saveddata/damagePattern.py:86 eos/saveddata/damagePattern.py:87 +#: eos/saveddata/damagePattern.py:88 eos/saveddata/damagePattern.py:89 +msgid "Missiles" +msgstr "导弹" + +#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:139 +#: eos/saveddata/damagePattern.py:140 eos/saveddata/damagePattern.py:141 +#: eos/saveddata/damagePattern.py:142 eos/saveddata/damagePattern.py:143 +#: eos/saveddata/damagePattern.py:144 eos/saveddata/damagePattern.py:145 +#: eos/saveddata/targetProfile.py:72 eos/saveddata/targetProfile.py:73 +#: eos/saveddata/targetProfile.py:74 eos/saveddata/targetProfile.py:75 +#: eos/saveddata/targetProfile.py:76 eos/saveddata/targetProfile.py:77 +#: eos/saveddata/targetProfile.py:78 +msgid "Mission" +msgstr "任务" + #: gui/builtinContextMenus/moduleAmmoChange.py:28 msgid "Mixed" msgstr "混合" -#: eos/saveddata/damagePattern.py:80 +#: eos/saveddata/damagePattern.py:86 msgid "Mjolnir" msgstr "雷神" @@ -1943,7 +2181,7 @@ msgstr "模式" msgid "Module" msgstr "模块" -#: eos/saveddata/damagePattern.py:138 eos/saveddata/targetProfile.py:71 +#: eos/saveddata/damagePattern.py:144 eos/saveddata/targetProfile.py:78 msgid "Mordus Legion" msgstr "莫德团" @@ -1952,7 +2190,7 @@ msgstr "莫德团" msgid "More Damage" msgstr "更多伤害" -#: eos/saveddata/damagePattern.py:46 +#: eos/saveddata/damagePattern.py:52 msgid "Multifrequency" msgstr "多频" @@ -1964,6 +2202,100 @@ msgstr "已变异属性" msgid "Mutations" msgstr "变质" +#: eos/saveddata/damagePattern.py:95 eos/saveddata/damagePattern.py:96 +#: eos/saveddata/damagePattern.py:97 eos/saveddata/damagePattern.py:98 +#: eos/saveddata/damagePattern.py:99 eos/saveddata/damagePattern.py:100 +#: eos/saveddata/damagePattern.py:101 eos/saveddata/damagePattern.py:102 +#: eos/saveddata/damagePattern.py:103 eos/saveddata/damagePattern.py:104 +#: eos/saveddata/damagePattern.py:105 eos/saveddata/damagePattern.py:106 +#: eos/saveddata/damagePattern.py:107 eos/saveddata/damagePattern.py:108 +#: eos/saveddata/damagePattern.py:109 eos/saveddata/damagePattern.py:110 +#: eos/saveddata/damagePattern.py:111 eos/saveddata/damagePattern.py:112 +#: eos/saveddata/damagePattern.py:113 eos/saveddata/damagePattern.py:114 +#: eos/saveddata/damagePattern.py:115 eos/saveddata/damagePattern.py:116 +#: eos/saveddata/damagePattern.py:117 eos/saveddata/damagePattern.py:118 +#: eos/saveddata/damagePattern.py:119 eos/saveddata/damagePattern.py:120 +#: eos/saveddata/damagePattern.py:121 eos/saveddata/damagePattern.py:122 +#: eos/saveddata/damagePattern.py:123 eos/saveddata/damagePattern.py:124 +#: eos/saveddata/damagePattern.py:125 eos/saveddata/damagePattern.py:127 +#: eos/saveddata/damagePattern.py:128 eos/saveddata/damagePattern.py:129 +#: eos/saveddata/damagePattern.py:130 eos/saveddata/damagePattern.py:131 +#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:133 +#: eos/saveddata/damagePattern.py:134 eos/saveddata/damagePattern.py:135 +#: eos/saveddata/damagePattern.py:136 eos/saveddata/damagePattern.py:137 +#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:139 +#: eos/saveddata/damagePattern.py:140 eos/saveddata/damagePattern.py:141 +#: eos/saveddata/damagePattern.py:142 eos/saveddata/damagePattern.py:143 +#: eos/saveddata/damagePattern.py:144 eos/saveddata/damagePattern.py:145 +#: eos/saveddata/damagePattern.py:146 eos/saveddata/damagePattern.py:147 +#: eos/saveddata/targetProfile.py:60 eos/saveddata/targetProfile.py:61 +#: eos/saveddata/targetProfile.py:62 eos/saveddata/targetProfile.py:63 +#: eos/saveddata/targetProfile.py:64 eos/saveddata/targetProfile.py:65 +#: eos/saveddata/targetProfile.py:66 eos/saveddata/targetProfile.py:67 +#: eos/saveddata/targetProfile.py:68 eos/saveddata/targetProfile.py:69 +#: eos/saveddata/targetProfile.py:70 eos/saveddata/targetProfile.py:71 +#: eos/saveddata/targetProfile.py:72 eos/saveddata/targetProfile.py:73 +#: eos/saveddata/targetProfile.py:74 eos/saveddata/targetProfile.py:75 +#: eos/saveddata/targetProfile.py:76 eos/saveddata/targetProfile.py:77 +#: eos/saveddata/targetProfile.py:78 eos/saveddata/targetProfile.py:79 +#: eos/saveddata/targetProfile.py:80 eos/saveddata/targetProfile.py:81 +#: eos/saveddata/targetProfile.py:82 eos/saveddata/targetProfile.py:83 +#: eos/saveddata/targetProfile.py:84 eos/saveddata/targetProfile.py:85 +#: eos/saveddata/targetProfile.py:86 eos/saveddata/targetProfile.py:87 +#: eos/saveddata/targetProfile.py:88 eos/saveddata/targetProfile.py:89 +#: eos/saveddata/targetProfile.py:90 eos/saveddata/targetProfile.py:91 +#: eos/saveddata/targetProfile.py:92 eos/saveddata/targetProfile.py:94 +#: eos/saveddata/targetProfile.py:95 eos/saveddata/targetProfile.py:96 +#: eos/saveddata/targetProfile.py:97 eos/saveddata/targetProfile.py:98 +#: eos/saveddata/targetProfile.py:99 eos/saveddata/targetProfile.py:100 +#: eos/saveddata/targetProfile.py:101 eos/saveddata/targetProfile.py:102 +#: eos/saveddata/targetProfile.py:103 eos/saveddata/targetProfile.py:104 +#: eos/saveddata/targetProfile.py:105 eos/saveddata/targetProfile.py:106 +#: eos/saveddata/targetProfile.py:107 eos/saveddata/targetProfile.py:108 +#: eos/saveddata/targetProfile.py:109 eos/saveddata/targetProfile.py:110 +#: eos/saveddata/targetProfile.py:111 eos/saveddata/targetProfile.py:112 +#: eos/saveddata/targetProfile.py:113 eos/saveddata/targetProfile.py:114 +#: eos/saveddata/targetProfile.py:115 eos/saveddata/targetProfile.py:116 +#: eos/saveddata/targetProfile.py:117 eos/saveddata/targetProfile.py:118 +#: eos/saveddata/targetProfile.py:119 eos/saveddata/targetProfile.py:120 +#: eos/saveddata/targetProfile.py:121 eos/saveddata/targetProfile.py:122 +#: eos/saveddata/targetProfile.py:123 eos/saveddata/targetProfile.py:124 +#: eos/saveddata/targetProfile.py:125 eos/saveddata/targetProfile.py:126 +#: eos/saveddata/targetProfile.py:127 eos/saveddata/targetProfile.py:128 +#: eos/saveddata/targetProfile.py:129 eos/saveddata/targetProfile.py:130 +#: eos/saveddata/targetProfile.py:131 eos/saveddata/targetProfile.py:132 +#: eos/saveddata/targetProfile.py:133 eos/saveddata/targetProfile.py:134 +#: eos/saveddata/targetProfile.py:135 eos/saveddata/targetProfile.py:136 +#: eos/saveddata/targetProfile.py:137 eos/saveddata/targetProfile.py:138 +#: eos/saveddata/targetProfile.py:139 eos/saveddata/targetProfile.py:140 +#: eos/saveddata/targetProfile.py:141 eos/saveddata/targetProfile.py:142 +#: eos/saveddata/targetProfile.py:143 eos/saveddata/targetProfile.py:144 +#: eos/saveddata/targetProfile.py:145 eos/saveddata/targetProfile.py:146 +#: eos/saveddata/targetProfile.py:147 eos/saveddata/targetProfile.py:148 +#: eos/saveddata/targetProfile.py:149 eos/saveddata/targetProfile.py:150 +#: eos/saveddata/targetProfile.py:151 eos/saveddata/targetProfile.py:152 +#: eos/saveddata/targetProfile.py:153 eos/saveddata/targetProfile.py:154 +#: eos/saveddata/targetProfile.py:155 eos/saveddata/targetProfile.py:156 +#: eos/saveddata/targetProfile.py:157 eos/saveddata/targetProfile.py:158 +#: eos/saveddata/targetProfile.py:159 eos/saveddata/targetProfile.py:160 +#: eos/saveddata/targetProfile.py:161 eos/saveddata/targetProfile.py:162 +#: eos/saveddata/targetProfile.py:163 eos/saveddata/targetProfile.py:164 +#: eos/saveddata/targetProfile.py:165 eos/saveddata/targetProfile.py:166 +#: eos/saveddata/targetProfile.py:167 eos/saveddata/targetProfile.py:168 +#: eos/saveddata/targetProfile.py:169 eos/saveddata/targetProfile.py:170 +#: eos/saveddata/targetProfile.py:171 eos/saveddata/targetProfile.py:172 +#: eos/saveddata/targetProfile.py:173 eos/saveddata/targetProfile.py:174 +#: eos/saveddata/targetProfile.py:175 eos/saveddata/targetProfile.py:176 +#: eos/saveddata/targetProfile.py:177 eos/saveddata/targetProfile.py:178 +#: eos/saveddata/targetProfile.py:179 eos/saveddata/targetProfile.py:180 +#: eos/saveddata/targetProfile.py:181 eos/saveddata/targetProfile.py:182 +#: eos/saveddata/targetProfile.py:183 eos/saveddata/targetProfile.py:184 +#: eos/saveddata/targetProfile.py:185 eos/saveddata/targetProfile.py:186 +#: eos/saveddata/targetProfile.py:187 eos/saveddata/targetProfile.py:188 +#: eos/saveddata/targetProfile.py:189 +msgid "NPC" +msgstr "NPC" + #: gui/builtinItemStatsViews/itemEffects.py:30 #: gui/builtinViewColumns/baseName.py:55 msgid "Name" @@ -2001,7 +2333,7 @@ msgstr "新装配" msgid "No" msgstr "否" -#: gui/builtinContextMenus/targetProfile/switcher.py:83 +#: gui/builtinContextMenus/targetProfile/switcher.py:85 msgid "No Profile" msgstr "无伤害模型" @@ -2033,7 +2365,7 @@ msgstr "无代理" msgid "None" msgstr "无" -#: eos/saveddata/damagePattern.py:122 +#: eos/saveddata/damagePattern.py:128 msgid "Normal Subcaps" msgstr "常规非旗舰" @@ -2049,11 +2381,11 @@ msgstr "未学习" msgid "Notes" msgstr "备注" -#: eos/saveddata/damagePattern.py:83 +#: eos/saveddata/damagePattern.py:89 msgid "Nova" msgstr "星爆" -#: eos/saveddata/damagePattern.py:71 +#: eos/saveddata/damagePattern.py:77 msgid "Nuclear" msgstr "核芯弹" @@ -2109,13 +2441,17 @@ msgstr "优化价格" msgid "Ore hold" msgstr "矿石仓" -#: eos/saveddata/damagePattern.py:92 eos/saveddata/targetProfile.py:93 -#: eos/saveddata/targetProfile.py:100 eos/saveddata/targetProfile.py:107 -#: eos/saveddata/targetProfile.py:114 eos/saveddata/targetProfile.py:121 -#: eos/saveddata/targetProfile.py:128 eos/saveddata/targetProfile.py:135 -#: eos/saveddata/targetProfile.py:142 eos/saveddata/targetProfile.py:149 -#: eos/saveddata/targetProfile.py:156 eos/saveddata/targetProfile.py:163 -#: eos/saveddata/targetProfile.py:170 eos/saveddata/targetProfile.py:177 +#: eos/saveddata/targetProfile.py:79 eos/saveddata/targetProfile.py:80 +msgid "Other" +msgstr "其他" + +#: eos/saveddata/damagePattern.py:98 eos/saveddata/targetProfile.py:100 +#: eos/saveddata/targetProfile.py:107 eos/saveddata/targetProfile.py:114 +#: eos/saveddata/targetProfile.py:121 eos/saveddata/targetProfile.py:128 +#: eos/saveddata/targetProfile.py:135 eos/saveddata/targetProfile.py:142 +#: eos/saveddata/targetProfile.py:149 eos/saveddata/targetProfile.py:156 +#: eos/saveddata/targetProfile.py:163 eos/saveddata/targetProfile.py:170 +#: eos/saveddata/targetProfile.py:177 eos/saveddata/targetProfile.py:184 msgid "Overmind" msgstr "主宰" @@ -2139,7 +2475,7 @@ msgstr "伤害模型已导出到剪贴板" msgid "Patterns successfully imported from clipboard" msgstr "从剪贴板导入伤害模型成功" -#: eos/saveddata/damagePattern.py:76 +#: eos/saveddata/damagePattern.py:82 msgid "Phased Plasma" msgstr "定相等离子弹" @@ -2172,7 +2508,7 @@ msgstr "请确认Pyfa偏好保存位置。" msgid "Plot with Different Ammo..." msgstr "使用不同的弹药..." -#: eos/saveddata/damagePattern.py:64 +#: eos/saveddata/damagePattern.py:70 msgid "Plutonium" msgstr "锰质" @@ -2244,6 +2580,15 @@ msgstr "远程效果" msgid "Projected Item" msgstr "远程效果物品" +#: eos/saveddata/damagePattern.py:74 eos/saveddata/damagePattern.py:75 +#: eos/saveddata/damagePattern.py:76 eos/saveddata/damagePattern.py:77 +#: eos/saveddata/damagePattern.py:78 eos/saveddata/damagePattern.py:79 +#: eos/saveddata/damagePattern.py:80 eos/saveddata/damagePattern.py:81 +#: eos/saveddata/damagePattern.py:82 eos/saveddata/damagePattern.py:83 +#: eos/saveddata/damagePattern.py:84 eos/saveddata/damagePattern.py:85 +msgid "Projectile Ammo" +msgstr "射弹弹药" + #: gui/itemStats.py:200 msgid "Properties" msgstr "属性" @@ -2252,7 +2597,7 @@ msgstr "属性" msgid "Propulsion" msgstr "高速" -#: eos/saveddata/damagePattern.py:72 +#: eos/saveddata/damagePattern.py:78 msgid "Proton" msgstr "质子弹" @@ -2300,7 +2645,7 @@ msgstr "激活的物品数量" msgid "Quantity of all items" msgstr "所有物品数量" -#: eos/saveddata/damagePattern.py:39 +#: eos/saveddata/damagePattern.py:45 msgid "Radio" msgstr "射频" @@ -2426,19 +2771,21 @@ msgstr "抗性" msgid "Resources" msgstr "装配资源" -#: eos/saveddata/targetProfile.py:88 +#: eos/saveddata/damagePattern.py:132 eos/saveddata/targetProfile.py:95 msgid "Retaliating Amarr Entities" msgstr "反击艾玛单位" -#: eos/saveddata/targetProfile.py:89 +#: eos/saveddata/damagePattern.py:133 eos/saveddata/damagePattern.py:134 +#: eos/saveddata/targetProfile.py:96 msgid "Retaliating Caldari Entities" msgstr "反击加达里单位" -#: eos/saveddata/targetProfile.py:90 +#: eos/saveddata/damagePattern.py:135 eos/saveddata/targetProfile.py:97 msgid "Retaliating Gallente Entities" msgstr "反击盖伦特单位" -#: eos/saveddata/targetProfile.py:91 +#: eos/saveddata/damagePattern.py:136 eos/saveddata/damagePattern.py:137 +#: eos/saveddata/targetProfile.py:98 msgid "Retaliating Minmatar Entities" msgstr "反击米玛塔尔单位" @@ -2454,11 +2801,11 @@ msgstr "还原为{}" msgid "Rig" msgstr "改装" -#: eos/saveddata/damagePattern.py:99 eos/saveddata/damagePattern.py:117 +#: eos/saveddata/damagePattern.py:105 eos/saveddata/damagePattern.py:123 msgid "Rogue Drone" msgstr "自由无人机" -#: eos/saveddata/targetProfile.py:56 eos/saveddata/targetProfile.py:62 +#: eos/saveddata/targetProfile.py:63 eos/saveddata/targetProfile.py:69 msgid "Rogue Drones" msgstr "自由无人机" @@ -2482,13 +2829,13 @@ msgstr "单点登录(SSO)模式" msgid "Salvage hold" msgstr "打捞件仓" -#: eos/saveddata/damagePattern.py:140 eos/saveddata/targetProfile.py:73 +#: eos/saveddata/damagePattern.py:146 eos/saveddata/targetProfile.py:80 #: gui/builtinContextMenus/envEffectAdd.py:112 msgid "Sansha Incursion" msgstr "萨沙入侵" -#: eos/saveddata/damagePattern.py:100 eos/saveddata/damagePattern.py:118 -#: eos/saveddata/targetProfile.py:57 eos/saveddata/targetProfile.py:63 +#: eos/saveddata/damagePattern.py:106 eos/saveddata/damagePattern.py:124 +#: eos/saveddata/targetProfile.py:64 eos/saveddata/targetProfile.py:70 msgid "Sanshas Nation" msgstr "萨沙国度" @@ -2525,11 +2872,11 @@ msgstr "保存为新的植入体配置" msgid "Scan res." msgstr "扫描精度" -#: eos/saveddata/damagePattern.py:85 +#: eos/saveddata/damagePattern.py:91 msgid "Scorch Bomb" msgstr "灼烧炸弹" -#: eos/saveddata/damagePattern.py:82 +#: eos/saveddata/damagePattern.py:88 msgid "Scourge" msgstr "鞭挞" @@ -2546,13 +2893,13 @@ msgstr "安全等级: {0:.2f}" msgid "Security Status is used in some CONCORD hull calculations" msgstr "安全等级会用于计算统合部船体属性" -#: eos/saveddata/damagePattern.py:93 eos/saveddata/targetProfile.py:94 -#: eos/saveddata/targetProfile.py:101 eos/saveddata/targetProfile.py:108 -#: eos/saveddata/targetProfile.py:115 eos/saveddata/targetProfile.py:122 -#: eos/saveddata/targetProfile.py:129 eos/saveddata/targetProfile.py:136 -#: eos/saveddata/targetProfile.py:143 eos/saveddata/targetProfile.py:150 -#: eos/saveddata/targetProfile.py:157 eos/saveddata/targetProfile.py:164 -#: eos/saveddata/targetProfile.py:171 eos/saveddata/targetProfile.py:178 +#: eos/saveddata/damagePattern.py:99 eos/saveddata/targetProfile.py:101 +#: eos/saveddata/targetProfile.py:108 eos/saveddata/targetProfile.py:115 +#: eos/saveddata/targetProfile.py:122 eos/saveddata/targetProfile.py:129 +#: eos/saveddata/targetProfile.py:136 eos/saveddata/targetProfile.py:143 +#: eos/saveddata/targetProfile.py:150 eos/saveddata/targetProfile.py:157 +#: eos/saveddata/targetProfile.py:164 eos/saveddata/targetProfile.py:171 +#: eos/saveddata/targetProfile.py:178 eos/saveddata/targetProfile.py:185 msgid "Seeker" msgstr "探寻者" @@ -2568,7 +2915,7 @@ msgstr "正在发送请求和接收响应" msgid "Sensor str." msgstr "传感器强度" -#: eos/saveddata/damagePattern.py:113 eos/saveddata/targetProfile.py:85 +#: eos/saveddata/damagePattern.py:119 eos/saveddata/targetProfile.py:92 msgid "Sentinel" msgstr "哨兵级" @@ -2576,8 +2923,8 @@ msgstr "哨兵级" msgid "Separate Racks" msgstr "分隔不同槽位类型" -#: eos/saveddata/damagePattern.py:101 eos/saveddata/damagePattern.py:119 -#: eos/saveddata/targetProfile.py:58 eos/saveddata/targetProfile.py:64 +#: eos/saveddata/damagePattern.py:107 eos/saveddata/damagePattern.py:125 +#: eos/saveddata/targetProfile.py:65 eos/saveddata/targetProfile.py:71 msgid "Serpentis" msgstr "天蛇" @@ -2616,11 +2963,11 @@ msgstr "" msgid "Sharpshooter" msgstr "狙击" -#: eos/saveddata/targetProfile.py:39 +#: eos/saveddata/targetProfile.py:46 msgid "Shield" msgstr "护盾" -#: eos/saveddata/targetProfile.py:42 +#: eos/saveddata/targetProfile.py:49 msgid "Shield (+T2 DCU)" msgstr "护盾(+T2损控)" @@ -2678,7 +3025,7 @@ msgstr "显示市场快捷方式" msgid "Show ship browser tooltip" msgstr "船体列表显示预览" -#: eos/saveddata/damagePattern.py:87 +#: eos/saveddata/damagePattern.py:93 msgid "Shrapnel Bomb" msgstr "榴霰炸弹" @@ -2715,18 +3062,18 @@ msgstr "技能列表" msgid "Skills required:" msgstr "所需技能:" -#: eos/saveddata/damagePattern.py:94 eos/saveddata/targetProfile.py:72 -#: eos/saveddata/targetProfile.py:97 eos/saveddata/targetProfile.py:104 -#: eos/saveddata/targetProfile.py:111 eos/saveddata/targetProfile.py:118 -#: eos/saveddata/targetProfile.py:125 eos/saveddata/targetProfile.py:132 -#: eos/saveddata/targetProfile.py:139 eos/saveddata/targetProfile.py:146 -#: eos/saveddata/targetProfile.py:153 eos/saveddata/targetProfile.py:160 -#: eos/saveddata/targetProfile.py:167 eos/saveddata/targetProfile.py:174 -#: eos/saveddata/targetProfile.py:181 +#: eos/saveddata/damagePattern.py:100 eos/saveddata/targetProfile.py:79 +#: eos/saveddata/targetProfile.py:104 eos/saveddata/targetProfile.py:111 +#: eos/saveddata/targetProfile.py:118 eos/saveddata/targetProfile.py:125 +#: eos/saveddata/targetProfile.py:132 eos/saveddata/targetProfile.py:139 +#: eos/saveddata/targetProfile.py:146 eos/saveddata/targetProfile.py:153 +#: eos/saveddata/targetProfile.py:160 eos/saveddata/targetProfile.py:167 +#: eos/saveddata/targetProfile.py:174 eos/saveddata/targetProfile.py:181 +#: eos/saveddata/targetProfile.py:188 msgid "Sleeper" msgstr "冬眠者" -#: eos/saveddata/damagePattern.py:141 +#: eos/saveddata/damagePattern.py:147 msgid "Sleepers" msgstr "冬眠者" @@ -2754,7 +3101,7 @@ msgstr "预热周期" msgid "Stable: " msgstr "稳定:" -#: eos/saveddata/damagePattern.py:42 +#: eos/saveddata/damagePattern.py:48 msgid "Standard" msgstr "标准" @@ -2762,21 +3109,21 @@ msgstr "标准" msgid "Statistics Panel" msgstr "属性面板" -#: eos/saveddata/damagePattern.py:128 eos/saveddata/damagePattern.py:131 +#: eos/saveddata/damagePattern.py:134 eos/saveddata/damagePattern.py:137 msgid "Subcaps" msgstr "非旗舰" -#: eos/saveddata/damagePattern.py:123 +#: eos/saveddata/damagePattern.py:129 #, python-format msgid "Subcaps w/missiles 0% spool up" msgstr "非旗舰0%预热" -#: eos/saveddata/damagePattern.py:125 +#: eos/saveddata/damagePattern.py:131 #, python-format msgid "Subcaps w/missiles 100% spool up" msgstr "非旗舰100%预热" -#: eos/saveddata/damagePattern.py:124 +#: eos/saveddata/damagePattern.py:130 #, python-format msgid "Subcaps w/missiles 50% spool up" msgstr "非旗舰50%预热" @@ -2793,7 +3140,7 @@ msgstr "成功" msgid "Successfully fetched skills" msgstr "成功获取到技能列表" -#: eos/saveddata/damagePattern.py:105 eos/saveddata/targetProfile.py:77 +#: eos/saveddata/damagePattern.py:111 eos/saveddata/targetProfile.py:84 msgid "Succubus (Sanshas Nation)" msgstr "魔女级(萨沙)" @@ -2810,12 +3157,25 @@ msgstr "有{0}个未提示的版本更新" msgid "Sustained" msgstr "持续回充" +#: eos/saveddata/targetProfile.py:46 eos/saveddata/targetProfile.py:47 +#: eos/saveddata/targetProfile.py:48 eos/saveddata/targetProfile.py:49 +#: eos/saveddata/targetProfile.py:50 eos/saveddata/targetProfile.py:51 +msgid "T1 Resist" +msgstr "T1抗性" + +#: eos/saveddata/targetProfile.py:52 eos/saveddata/targetProfile.py:53 +#: eos/saveddata/targetProfile.py:54 eos/saveddata/targetProfile.py:55 +#: eos/saveddata/targetProfile.py:56 eos/saveddata/targetProfile.py:57 +#: eos/saveddata/targetProfile.py:58 eos/saveddata/targetProfile.py:59 +msgid "T2 Resist" +msgstr "T2抗性" + #: gui/builtinContextMenus/shipModeChange.py:37 #: gui/builtinViewColumns/baseName.py:102 gui/builtinViews/fittingView.py:657 msgid "Tactical Mode" msgstr "战术模式" -#: eos/saveddata/damagePattern.py:112 eos/saveddata/targetProfile.py:84 +#: eos/saveddata/damagePattern.py:118 eos/saveddata/targetProfile.py:91 msgid "Talos" msgstr "塔洛斯级" @@ -2847,7 +3207,7 @@ msgstr "目标和杂项" msgid "Targets" msgstr "最大锁定数" -#: eos/saveddata/damagePattern.py:54 +#: eos/saveddata/damagePattern.py:60 msgid "Tetryon" msgstr "四重子" @@ -2913,7 +3273,7 @@ msgstr "" "无法启动本地服务器,请尝试转到偏好设置->EVE SSO->登录验证方法并设置为手动模" "式。如果仍然遇到问题,请在Github填写issue以报告该问题。" -#: eos/saveddata/damagePattern.py:34 +#: eos/saveddata/damagePattern.py:40 #: gui/builtinContextMenus/moduleAmmoChange.py:25 msgid "Thermal" msgstr "热能" @@ -2980,15 +3340,15 @@ msgid "" "back to with information about the character login." msgstr "本选项将启动一个本地服务器以接收登录页返回的角色信息。" -#: eos/saveddata/damagePattern.py:62 +#: eos/saveddata/damagePattern.py:68 msgid "Thorium" msgstr "钍质" -#: eos/saveddata/damagePattern.py:139 +#: eos/saveddata/damagePattern.py:145 msgid "Thukker" msgstr "图克尔" -#: eos/saveddata/damagePattern.py:74 +#: eos/saveddata/damagePattern.py:80 msgid "Titanium Sabot" msgstr "钛合金萨博弹" @@ -3022,13 +3382,13 @@ msgstr "总计:" msgid "Traits" msgstr "特征" -#: eos/saveddata/damagePattern.py:95 eos/saveddata/targetProfile.py:95 -#: eos/saveddata/targetProfile.py:102 eos/saveddata/targetProfile.py:109 -#: eos/saveddata/targetProfile.py:116 eos/saveddata/targetProfile.py:123 -#: eos/saveddata/targetProfile.py:130 eos/saveddata/targetProfile.py:137 -#: eos/saveddata/targetProfile.py:144 eos/saveddata/targetProfile.py:151 -#: eos/saveddata/targetProfile.py:158 eos/saveddata/targetProfile.py:165 -#: eos/saveddata/targetProfile.py:172 eos/saveddata/targetProfile.py:179 +#: eos/saveddata/damagePattern.py:101 eos/saveddata/targetProfile.py:102 +#: eos/saveddata/targetProfile.py:109 eos/saveddata/targetProfile.py:116 +#: eos/saveddata/targetProfile.py:123 eos/saveddata/targetProfile.py:130 +#: eos/saveddata/targetProfile.py:137 eos/saveddata/targetProfile.py:144 +#: eos/saveddata/targetProfile.py:151 eos/saveddata/targetProfile.py:158 +#: eos/saveddata/targetProfile.py:165 eos/saveddata/targetProfile.py:172 +#: eos/saveddata/targetProfile.py:179 eos/saveddata/targetProfile.py:186 msgid "Triglavian" msgstr "三神裔" @@ -3037,7 +3397,7 @@ msgstr "三神裔" msgid "Triglavian Invasion" msgstr "三神裔入侵" -#: eos/saveddata/damagePattern.py:59 +#: eos/saveddata/damagePattern.py:65 msgid "Tungsten" msgstr "钨质" @@ -3058,7 +3418,7 @@ msgstr "扫描类型:{0}\n" msgid "Type: {}" msgstr "扫描类型:{}" -#: eos/saveddata/damagePattern.py:43 +#: eos/saveddata/damagePattern.py:49 msgid "Ultraviolet" msgstr "紫外" @@ -3066,23 +3426,23 @@ msgstr "紫外" msgid "Undo the most recent action" msgstr "撤销最近一次操作" -#: eos/saveddata/damagePattern.py:32 +#: eos/saveddata/damagePattern.py:38 msgid "Uniform" msgstr "均匀" -#: eos/saveddata/targetProfile.py:35 +#: eos/saveddata/targetProfile.py:42 msgid "Uniform (25%)" msgstr "均匀(25%)" -#: eos/saveddata/targetProfile.py:36 +#: eos/saveddata/targetProfile.py:43 msgid "Uniform (50%)" msgstr "均匀(50%)" -#: eos/saveddata/targetProfile.py:37 +#: eos/saveddata/targetProfile.py:44 msgid "Uniform (75%)" msgstr "均匀(75%)" -#: eos/saveddata/targetProfile.py:38 +#: eos/saveddata/targetProfile.py:45 msgid "Uniform (90%)" msgstr "均匀(90%)" @@ -3098,7 +3458,7 @@ msgstr "有更新可用" msgid "Updates" msgstr "更新" -#: eos/saveddata/damagePattern.py:63 +#: eos/saveddata/damagePattern.py:69 msgid "Uranium" msgstr "钼质" @@ -3135,7 +3495,7 @@ msgstr "使用Pyfa可执行文件路径来保存装配数据库和偏好设置" msgid "Variations" msgstr "变种" -#: eos/saveddata/damagePattern.py:110 eos/saveddata/targetProfile.py:82 +#: eos/saveddata/damagePattern.py:116 eos/saveddata/targetProfile.py:89 msgid "Vengeance" msgstr "复仇级" @@ -3191,7 +3551,7 @@ msgstr "" "启用时,技能级别变化时将检查并移除未达等级要求的相关技能。\n" "例如:将无人机从5级设置为4级将移除重型无人机操作技能,因为该技能要求无人机5级" -#: eos/saveddata/damagePattern.py:106 eos/saveddata/targetProfile.py:78 +#: eos/saveddata/damagePattern.py:112 eos/saveddata/targetProfile.py:85 msgid "Worm (Guristas)" msgstr "潜龙级(古斯塔斯)" @@ -3199,7 +3559,7 @@ msgstr "潜龙级(古斯塔斯)" msgid "Wormhole" msgstr "虫洞" -#: eos/saveddata/damagePattern.py:44 +#: eos/saveddata/damagePattern.py:50 msgid "Xray" msgstr "X射线" @@ -3227,438 +3587,59 @@ msgstr "您必须填写一个伤害模型名!" msgid "You must supply a name for your Target Profile!" msgstr "您必须填写一个目标属性名!" -#: eos/saveddata/damagePattern.py:89 eos/saveddata/damagePattern.py:90 -#: eos/saveddata/damagePattern.py:91 eos/saveddata/damagePattern.py:92 -#: eos/saveddata/damagePattern.py:93 eos/saveddata/damagePattern.py:94 -#: eos/saveddata/damagePattern.py:95 eos/saveddata/targetProfile.py:92 -#: eos/saveddata/targetProfile.py:93 eos/saveddata/targetProfile.py:94 -#: eos/saveddata/targetProfile.py:95 eos/saveddata/targetProfile.py:96 -#: eos/saveddata/targetProfile.py:97 eos/saveddata/targetProfile.py:98 -#: eos/saveddata/targetProfile.py:99 eos/saveddata/targetProfile.py:100 -#: eos/saveddata/targetProfile.py:101 eos/saveddata/targetProfile.py:102 -#: eos/saveddata/targetProfile.py:103 eos/saveddata/targetProfile.py:104 -#: eos/saveddata/targetProfile.py:105 eos/saveddata/targetProfile.py:106 -#: eos/saveddata/targetProfile.py:107 eos/saveddata/targetProfile.py:108 -#: eos/saveddata/targetProfile.py:109 eos/saveddata/targetProfile.py:110 -#: eos/saveddata/targetProfile.py:111 eos/saveddata/targetProfile.py:112 -#: eos/saveddata/targetProfile.py:113 eos/saveddata/targetProfile.py:114 -#: eos/saveddata/targetProfile.py:115 eos/saveddata/targetProfile.py:116 -#: eos/saveddata/targetProfile.py:117 eos/saveddata/targetProfile.py:118 -#: eos/saveddata/targetProfile.py:119 eos/saveddata/targetProfile.py:120 -#: eos/saveddata/targetProfile.py:121 eos/saveddata/targetProfile.py:122 -#: eos/saveddata/targetProfile.py:123 eos/saveddata/targetProfile.py:124 -#: eos/saveddata/targetProfile.py:125 eos/saveddata/targetProfile.py:126 -#: eos/saveddata/targetProfile.py:127 eos/saveddata/targetProfile.py:128 -#: eos/saveddata/targetProfile.py:129 eos/saveddata/targetProfile.py:130 -#: eos/saveddata/targetProfile.py:131 eos/saveddata/targetProfile.py:132 -#: eos/saveddata/targetProfile.py:133 eos/saveddata/targetProfile.py:134 -#: eos/saveddata/targetProfile.py:135 eos/saveddata/targetProfile.py:136 -#: eos/saveddata/targetProfile.py:137 eos/saveddata/targetProfile.py:138 -#: eos/saveddata/targetProfile.py:139 eos/saveddata/targetProfile.py:140 -#: eos/saveddata/targetProfile.py:141 eos/saveddata/targetProfile.py:142 -#: eos/saveddata/targetProfile.py:143 eos/saveddata/targetProfile.py:144 -#: eos/saveddata/targetProfile.py:145 eos/saveddata/targetProfile.py:146 -#: eos/saveddata/targetProfile.py:147 eos/saveddata/targetProfile.py:148 -#: eos/saveddata/targetProfile.py:149 eos/saveddata/targetProfile.py:150 -#: eos/saveddata/targetProfile.py:151 eos/saveddata/targetProfile.py:152 -#: eos/saveddata/targetProfile.py:153 eos/saveddata/targetProfile.py:154 -#: eos/saveddata/targetProfile.py:155 eos/saveddata/targetProfile.py:156 -#: eos/saveddata/targetProfile.py:157 eos/saveddata/targetProfile.py:158 -#: eos/saveddata/targetProfile.py:159 eos/saveddata/targetProfile.py:160 -#: eos/saveddata/targetProfile.py:161 eos/saveddata/targetProfile.py:162 -#: eos/saveddata/targetProfile.py:163 eos/saveddata/targetProfile.py:164 -#: eos/saveddata/targetProfile.py:165 eos/saveddata/targetProfile.py:166 -#: eos/saveddata/targetProfile.py:167 eos/saveddata/targetProfile.py:168 -#: eos/saveddata/targetProfile.py:169 eos/saveddata/targetProfile.py:170 -#: eos/saveddata/targetProfile.py:171 eos/saveddata/targetProfile.py:172 -#: eos/saveddata/targetProfile.py:173 eos/saveddata/targetProfile.py:174 -#: eos/saveddata/targetProfile.py:175 eos/saveddata/targetProfile.py:176 -#: eos/saveddata/targetProfile.py:177 eos/saveddata/targetProfile.py:178 -#: eos/saveddata/targetProfile.py:179 eos/saveddata/targetProfile.py:180 -#: eos/saveddata/targetProfile.py:181 eos/saveddata/targetProfile.py:182 -msgid "[Abyssal]" -msgstr "[深渊]" - -#: eos/saveddata/damagePattern.py:96 eos/saveddata/damagePattern.py:97 -#: eos/saveddata/damagePattern.py:98 eos/saveddata/damagePattern.py:99 -#: eos/saveddata/damagePattern.py:100 eos/saveddata/damagePattern.py:101 -#: eos/saveddata/targetProfile.py:53 eos/saveddata/targetProfile.py:54 -#: eos/saveddata/targetProfile.py:55 eos/saveddata/targetProfile.py:56 -#: eos/saveddata/targetProfile.py:57 eos/saveddata/targetProfile.py:58 -msgid "[Asteroid]" -msgstr "[小行星]" - -#: eos/saveddata/damagePattern.py:84 eos/saveddata/damagePattern.py:85 -#: eos/saveddata/damagePattern.py:86 eos/saveddata/damagePattern.py:87 -msgid "[Bombs]" -msgstr "[炸弹]" - -#: eos/saveddata/damagePattern.py:102 eos/saveddata/damagePattern.py:103 -#: eos/saveddata/damagePattern.py:104 eos/saveddata/damagePattern.py:105 -#: eos/saveddata/damagePattern.py:106 eos/saveddata/damagePattern.py:107 -#: eos/saveddata/damagePattern.py:108 eos/saveddata/damagePattern.py:109 -#: eos/saveddata/damagePattern.py:110 eos/saveddata/damagePattern.py:111 -#: eos/saveddata/damagePattern.py:112 eos/saveddata/damagePattern.py:113 -#: eos/saveddata/targetProfile.py:74 eos/saveddata/targetProfile.py:75 -#: eos/saveddata/targetProfile.py:76 eos/saveddata/targetProfile.py:77 -#: eos/saveddata/targetProfile.py:78 eos/saveddata/targetProfile.py:79 -#: eos/saveddata/targetProfile.py:80 eos/saveddata/targetProfile.py:81 -#: eos/saveddata/targetProfile.py:82 eos/saveddata/targetProfile.py:83 -#: eos/saveddata/targetProfile.py:84 eos/saveddata/targetProfile.py:85 -msgid "[Burner]" -msgstr "[燃烧者]" - -#: eos/saveddata/targetProfile.py:92 eos/saveddata/targetProfile.py:93 -#: eos/saveddata/targetProfile.py:94 eos/saveddata/targetProfile.py:95 -#: eos/saveddata/targetProfile.py:96 eos/saveddata/targetProfile.py:97 -#: eos/saveddata/targetProfile.py:98 -msgid "[Dark Matter All Tiers]" -msgstr "[暗物质全部级别]" - -#: eos/saveddata/damagePattern.py:114 eos/saveddata/damagePattern.py:115 -#: eos/saveddata/damagePattern.py:116 eos/saveddata/damagePattern.py:117 -#: eos/saveddata/damagePattern.py:118 eos/saveddata/damagePattern.py:119 -#: eos/saveddata/targetProfile.py:59 eos/saveddata/targetProfile.py:60 -#: eos/saveddata/targetProfile.py:61 eos/saveddata/targetProfile.py:62 -#: eos/saveddata/targetProfile.py:63 eos/saveddata/targetProfile.py:64 -msgid "[Deadspace]" -msgstr "[死亡空间]" - -#: eos/saveddata/targetProfile.py:99 eos/saveddata/targetProfile.py:100 -#: eos/saveddata/targetProfile.py:101 eos/saveddata/targetProfile.py:102 -#: eos/saveddata/targetProfile.py:103 eos/saveddata/targetProfile.py:104 -#: eos/saveddata/targetProfile.py:105 -msgid "[Electrical T1/T2]" -msgstr "[电子 T1/T2]" - -#: eos/saveddata/targetProfile.py:106 eos/saveddata/targetProfile.py:107 -#: eos/saveddata/targetProfile.py:108 eos/saveddata/targetProfile.py:109 -#: eos/saveddata/targetProfile.py:110 eos/saveddata/targetProfile.py:111 -#: eos/saveddata/targetProfile.py:112 -msgid "[Electrical T3 (Some T5 Rooms)]" -msgstr "[电子 T3 (含部分T5关卡)]" - -#: eos/saveddata/targetProfile.py:113 eos/saveddata/targetProfile.py:114 -#: eos/saveddata/targetProfile.py:115 eos/saveddata/targetProfile.py:116 -#: eos/saveddata/targetProfile.py:117 eos/saveddata/targetProfile.py:118 -#: eos/saveddata/targetProfile.py:119 -msgid "[Electrical T4/T5]" -msgstr "[电子 T4/T5]" - -#: eos/saveddata/damagePattern.py:51 eos/saveddata/damagePattern.py:52 -#: eos/saveddata/damagePattern.py:53 eos/saveddata/damagePattern.py:54 -#: eos/saveddata/damagePattern.py:55 -msgid "[Exotic Plasma]" -msgstr "[异种等离子]" - -#: eos/saveddata/targetProfile.py:141 eos/saveddata/targetProfile.py:142 -#: eos/saveddata/targetProfile.py:143 eos/saveddata/targetProfile.py:144 -#: eos/saveddata/targetProfile.py:145 eos/saveddata/targetProfile.py:146 -#: eos/saveddata/targetProfile.py:147 -msgid "[Exotic T1/T2]" -msgstr "[异种 T1/T2]" - -#: eos/saveddata/targetProfile.py:148 eos/saveddata/targetProfile.py:149 -#: eos/saveddata/targetProfile.py:150 eos/saveddata/targetProfile.py:151 -#: eos/saveddata/targetProfile.py:152 eos/saveddata/targetProfile.py:153 -#: eos/saveddata/targetProfile.py:154 -msgid "[Exotic T3 (Some T5 Rooms)]" -msgstr "[异种 T3 (含部分T5关卡)]" - -#: eos/saveddata/targetProfile.py:155 eos/saveddata/targetProfile.py:156 -#: eos/saveddata/targetProfile.py:157 eos/saveddata/targetProfile.py:158 -#: eos/saveddata/targetProfile.py:159 eos/saveddata/targetProfile.py:160 -#: eos/saveddata/targetProfile.py:161 -msgid "[Exotic T4/T5]" -msgstr "[异种 T4/T5]" - -#: eos/saveddata/targetProfile.py:120 eos/saveddata/targetProfile.py:121 -#: eos/saveddata/targetProfile.py:122 eos/saveddata/targetProfile.py:123 -#: eos/saveddata/targetProfile.py:124 eos/saveddata/targetProfile.py:125 -#: eos/saveddata/targetProfile.py:126 -msgid "[Firestorm T1/T2]" -msgstr "[火瀑 T1/T2]" - -#: eos/saveddata/targetProfile.py:127 eos/saveddata/targetProfile.py:128 -#: eos/saveddata/targetProfile.py:129 eos/saveddata/targetProfile.py:130 -#: eos/saveddata/targetProfile.py:131 eos/saveddata/targetProfile.py:132 -#: eos/saveddata/targetProfile.py:133 -msgid "[Firestorm T3 (Some T5 Rooms)]" -msgstr "[火瀑 T3 (含部分T5关卡)]" - -#: eos/saveddata/targetProfile.py:134 eos/saveddata/targetProfile.py:135 -#: eos/saveddata/targetProfile.py:136 eos/saveddata/targetProfile.py:137 -#: eos/saveddata/targetProfile.py:138 eos/saveddata/targetProfile.py:139 -#: eos/saveddata/targetProfile.py:140 -msgid "[Firestorm T4/T5]" -msgstr "[火瀑 T4/T5]" - -#: eos/saveddata/damagePattern.py:37 eos/saveddata/damagePattern.py:38 -#: eos/saveddata/damagePattern.py:39 eos/saveddata/damagePattern.py:40 -#: eos/saveddata/damagePattern.py:41 eos/saveddata/damagePattern.py:42 -#: eos/saveddata/damagePattern.py:43 eos/saveddata/damagePattern.py:44 -#: eos/saveddata/damagePattern.py:45 eos/saveddata/damagePattern.py:46 -#: eos/saveddata/damagePattern.py:47 eos/saveddata/damagePattern.py:48 -msgid "[Frequency Crystals]" -msgstr "[频率晶体]" - -#: eos/saveddata/targetProfile.py:162 eos/saveddata/targetProfile.py:163 -#: eos/saveddata/targetProfile.py:164 eos/saveddata/targetProfile.py:165 -#: eos/saveddata/targetProfile.py:166 eos/saveddata/targetProfile.py:167 -#: eos/saveddata/targetProfile.py:168 -msgid "[Gamma T1/T2]" -msgstr "[伽玛 T1/T2]" - -#: eos/saveddata/targetProfile.py:169 eos/saveddata/targetProfile.py:170 -#: eos/saveddata/targetProfile.py:171 eos/saveddata/targetProfile.py:172 -#: eos/saveddata/targetProfile.py:173 eos/saveddata/targetProfile.py:174 -#: eos/saveddata/targetProfile.py:175 -msgid "[Gamma T3 (Some T5 Rooms)]" -msgstr "[伽玛 T3 (含部分T5关卡)]" - -#: eos/saveddata/targetProfile.py:176 eos/saveddata/targetProfile.py:177 -#: eos/saveddata/targetProfile.py:178 eos/saveddata/targetProfile.py:179 -#: eos/saveddata/targetProfile.py:180 eos/saveddata/targetProfile.py:181 -#: eos/saveddata/targetProfile.py:182 -msgid "[Gamma T4/T5]" -msgstr "[伽玛 T4/T5]" - -#: eos/saveddata/damagePattern.py:33 eos/saveddata/damagePattern.py:34 -#: eos/saveddata/damagePattern.py:35 eos/saveddata/damagePattern.py:36 -msgid "[Generic]" -msgstr "[通用]" - -#: eos/saveddata/damagePattern.py:56 eos/saveddata/damagePattern.py:57 -#: eos/saveddata/damagePattern.py:58 eos/saveddata/damagePattern.py:59 -#: eos/saveddata/damagePattern.py:60 eos/saveddata/damagePattern.py:61 -#: eos/saveddata/damagePattern.py:62 eos/saveddata/damagePattern.py:63 -#: eos/saveddata/damagePattern.py:64 eos/saveddata/damagePattern.py:65 -#: eos/saveddata/damagePattern.py:66 eos/saveddata/damagePattern.py:67 -msgid "[Hybrid Charges]" -msgstr "[混合弹药]" - -#: eos/saveddata/damagePattern.py:121 eos/saveddata/damagePattern.py:122 -#: eos/saveddata/damagePattern.py:123 eos/saveddata/damagePattern.py:124 -#: eos/saveddata/damagePattern.py:125 -msgid "[Invading Precursor Entities]" -msgstr "[入侵的先驱者实体]" - -#: eos/saveddata/damagePattern.py:121 eos/saveddata/damagePattern.py:122 -#: eos/saveddata/damagePattern.py:123 eos/saveddata/damagePattern.py:124 -#: eos/saveddata/damagePattern.py:125 eos/saveddata/damagePattern.py:126 -#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:128 -#: eos/saveddata/damagePattern.py:129 eos/saveddata/damagePattern.py:130 -#: eos/saveddata/damagePattern.py:131 eos/saveddata/targetProfile.py:87 -#: eos/saveddata/targetProfile.py:88 eos/saveddata/targetProfile.py:89 -#: eos/saveddata/targetProfile.py:90 eos/saveddata/targetProfile.py:91 -msgid "[Invasion]" -msgstr "[入侵]" - -#: eos/saveddata/damagePattern.py:80 eos/saveddata/damagePattern.py:81 -#: eos/saveddata/damagePattern.py:82 eos/saveddata/damagePattern.py:83 -msgid "[Missiles]" -msgstr "[导弹]" - -#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:133 -#: eos/saveddata/damagePattern.py:134 eos/saveddata/damagePattern.py:135 -#: eos/saveddata/damagePattern.py:136 eos/saveddata/damagePattern.py:137 -#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:139 -#: eos/saveddata/targetProfile.py:65 eos/saveddata/targetProfile.py:66 -#: eos/saveddata/targetProfile.py:67 eos/saveddata/targetProfile.py:68 -#: eos/saveddata/targetProfile.py:69 eos/saveddata/targetProfile.py:70 -#: eos/saveddata/targetProfile.py:71 -msgid "[Mission]" -msgstr "[任务]" - -#: eos/saveddata/damagePattern.py:89 eos/saveddata/damagePattern.py:90 -#: eos/saveddata/damagePattern.py:91 eos/saveddata/damagePattern.py:92 -#: eos/saveddata/damagePattern.py:93 eos/saveddata/damagePattern.py:94 -#: eos/saveddata/damagePattern.py:95 eos/saveddata/damagePattern.py:96 -#: eos/saveddata/damagePattern.py:97 eos/saveddata/damagePattern.py:98 -#: eos/saveddata/damagePattern.py:99 eos/saveddata/damagePattern.py:100 -#: eos/saveddata/damagePattern.py:101 eos/saveddata/damagePattern.py:102 -#: eos/saveddata/damagePattern.py:103 eos/saveddata/damagePattern.py:104 -#: eos/saveddata/damagePattern.py:105 eos/saveddata/damagePattern.py:106 -#: eos/saveddata/damagePattern.py:107 eos/saveddata/damagePattern.py:108 -#: eos/saveddata/damagePattern.py:109 eos/saveddata/damagePattern.py:110 -#: eos/saveddata/damagePattern.py:111 eos/saveddata/damagePattern.py:112 -#: eos/saveddata/damagePattern.py:113 eos/saveddata/damagePattern.py:114 -#: eos/saveddata/damagePattern.py:115 eos/saveddata/damagePattern.py:116 -#: eos/saveddata/damagePattern.py:117 eos/saveddata/damagePattern.py:118 -#: eos/saveddata/damagePattern.py:119 eos/saveddata/damagePattern.py:121 -#: eos/saveddata/damagePattern.py:122 eos/saveddata/damagePattern.py:123 -#: eos/saveddata/damagePattern.py:124 eos/saveddata/damagePattern.py:125 -#: eos/saveddata/damagePattern.py:126 eos/saveddata/damagePattern.py:127 -#: eos/saveddata/damagePattern.py:128 eos/saveddata/damagePattern.py:129 -#: eos/saveddata/damagePattern.py:130 eos/saveddata/damagePattern.py:131 -#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:133 -#: eos/saveddata/damagePattern.py:134 eos/saveddata/damagePattern.py:135 -#: eos/saveddata/damagePattern.py:136 eos/saveddata/damagePattern.py:137 -#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:139 -#: eos/saveddata/damagePattern.py:140 eos/saveddata/damagePattern.py:141 -#: eos/saveddata/targetProfile.py:53 eos/saveddata/targetProfile.py:54 -#: eos/saveddata/targetProfile.py:55 eos/saveddata/targetProfile.py:56 -#: eos/saveddata/targetProfile.py:57 eos/saveddata/targetProfile.py:58 -#: eos/saveddata/targetProfile.py:59 eos/saveddata/targetProfile.py:60 -#: eos/saveddata/targetProfile.py:61 eos/saveddata/targetProfile.py:62 -#: eos/saveddata/targetProfile.py:63 eos/saveddata/targetProfile.py:64 -#: eos/saveddata/targetProfile.py:65 eos/saveddata/targetProfile.py:66 -#: eos/saveddata/targetProfile.py:67 eos/saveddata/targetProfile.py:68 -#: eos/saveddata/targetProfile.py:69 eos/saveddata/targetProfile.py:70 -#: eos/saveddata/targetProfile.py:71 eos/saveddata/targetProfile.py:72 -#: eos/saveddata/targetProfile.py:73 eos/saveddata/targetProfile.py:74 -#: eos/saveddata/targetProfile.py:75 eos/saveddata/targetProfile.py:76 -#: eos/saveddata/targetProfile.py:77 eos/saveddata/targetProfile.py:78 -#: eos/saveddata/targetProfile.py:79 eos/saveddata/targetProfile.py:80 -#: eos/saveddata/targetProfile.py:81 eos/saveddata/targetProfile.py:82 -#: eos/saveddata/targetProfile.py:83 eos/saveddata/targetProfile.py:84 -#: eos/saveddata/targetProfile.py:85 eos/saveddata/targetProfile.py:87 -#: eos/saveddata/targetProfile.py:88 eos/saveddata/targetProfile.py:89 -#: eos/saveddata/targetProfile.py:90 eos/saveddata/targetProfile.py:91 -#: eos/saveddata/targetProfile.py:92 eos/saveddata/targetProfile.py:93 -#: eos/saveddata/targetProfile.py:94 eos/saveddata/targetProfile.py:95 -#: eos/saveddata/targetProfile.py:96 eos/saveddata/targetProfile.py:97 -#: eos/saveddata/targetProfile.py:98 eos/saveddata/targetProfile.py:99 -#: eos/saveddata/targetProfile.py:100 eos/saveddata/targetProfile.py:101 -#: eos/saveddata/targetProfile.py:102 eos/saveddata/targetProfile.py:103 -#: eos/saveddata/targetProfile.py:104 eos/saveddata/targetProfile.py:105 -#: eos/saveddata/targetProfile.py:106 eos/saveddata/targetProfile.py:107 -#: eos/saveddata/targetProfile.py:108 eos/saveddata/targetProfile.py:109 -#: eos/saveddata/targetProfile.py:110 eos/saveddata/targetProfile.py:111 -#: eos/saveddata/targetProfile.py:112 eos/saveddata/targetProfile.py:113 -#: eos/saveddata/targetProfile.py:114 eos/saveddata/targetProfile.py:115 -#: eos/saveddata/targetProfile.py:116 eos/saveddata/targetProfile.py:117 -#: eos/saveddata/targetProfile.py:118 eos/saveddata/targetProfile.py:119 -#: eos/saveddata/targetProfile.py:120 eos/saveddata/targetProfile.py:121 -#: eos/saveddata/targetProfile.py:122 eos/saveddata/targetProfile.py:123 -#: eos/saveddata/targetProfile.py:124 eos/saveddata/targetProfile.py:125 -#: eos/saveddata/targetProfile.py:126 eos/saveddata/targetProfile.py:127 -#: eos/saveddata/targetProfile.py:128 eos/saveddata/targetProfile.py:129 -#: eos/saveddata/targetProfile.py:130 eos/saveddata/targetProfile.py:131 -#: eos/saveddata/targetProfile.py:132 eos/saveddata/targetProfile.py:133 -#: eos/saveddata/targetProfile.py:134 eos/saveddata/targetProfile.py:135 -#: eos/saveddata/targetProfile.py:136 eos/saveddata/targetProfile.py:137 -#: eos/saveddata/targetProfile.py:138 eos/saveddata/targetProfile.py:139 -#: eos/saveddata/targetProfile.py:140 eos/saveddata/targetProfile.py:141 -#: eos/saveddata/targetProfile.py:142 eos/saveddata/targetProfile.py:143 -#: eos/saveddata/targetProfile.py:144 eos/saveddata/targetProfile.py:145 -#: eos/saveddata/targetProfile.py:146 eos/saveddata/targetProfile.py:147 -#: eos/saveddata/targetProfile.py:148 eos/saveddata/targetProfile.py:149 -#: eos/saveddata/targetProfile.py:150 eos/saveddata/targetProfile.py:151 -#: eos/saveddata/targetProfile.py:152 eos/saveddata/targetProfile.py:153 -#: eos/saveddata/targetProfile.py:154 eos/saveddata/targetProfile.py:155 -#: eos/saveddata/targetProfile.py:156 eos/saveddata/targetProfile.py:157 -#: eos/saveddata/targetProfile.py:158 eos/saveddata/targetProfile.py:159 -#: eos/saveddata/targetProfile.py:160 eos/saveddata/targetProfile.py:161 -#: eos/saveddata/targetProfile.py:162 eos/saveddata/targetProfile.py:163 -#: eos/saveddata/targetProfile.py:164 eos/saveddata/targetProfile.py:165 -#: eos/saveddata/targetProfile.py:166 eos/saveddata/targetProfile.py:167 -#: eos/saveddata/targetProfile.py:168 eos/saveddata/targetProfile.py:169 -#: eos/saveddata/targetProfile.py:170 eos/saveddata/targetProfile.py:171 -#: eos/saveddata/targetProfile.py:172 eos/saveddata/targetProfile.py:173 -#: eos/saveddata/targetProfile.py:174 eos/saveddata/targetProfile.py:175 -#: eos/saveddata/targetProfile.py:176 eos/saveddata/targetProfile.py:177 -#: eos/saveddata/targetProfile.py:178 eos/saveddata/targetProfile.py:179 -#: eos/saveddata/targetProfile.py:180 eos/saveddata/targetProfile.py:181 -#: eos/saveddata/targetProfile.py:182 -msgid "[NPC]" -msgstr "[NPC]" - -#: eos/saveddata/targetProfile.py:72 eos/saveddata/targetProfile.py:73 -msgid "[Other]" -msgstr "[其他]" - -#: eos/saveddata/damagePattern.py:68 eos/saveddata/damagePattern.py:69 -#: eos/saveddata/damagePattern.py:70 eos/saveddata/damagePattern.py:71 -#: eos/saveddata/damagePattern.py:72 eos/saveddata/damagePattern.py:73 -#: eos/saveddata/damagePattern.py:74 eos/saveddata/damagePattern.py:75 -#: eos/saveddata/damagePattern.py:76 eos/saveddata/damagePattern.py:77 -#: eos/saveddata/damagePattern.py:78 eos/saveddata/damagePattern.py:79 -msgid "[Projectile Ammo]" -msgstr "[射弹弹药]" - -#: eos/saveddata/damagePattern.py:126 -msgid "[Retaliating Amarr Entities]" -msgstr "[反击艾玛单位]" - -#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:128 -msgid "[Retaliating Caldari Entities]" -msgstr "[反击加达里单位]" - -#: eos/saveddata/damagePattern.py:129 -msgid "[Retaliating Gallente Entities]" -msgstr "[反击盖伦特单位]" - -#: eos/saveddata/damagePattern.py:130 eos/saveddata/damagePattern.py:131 -msgid "[Retaliating Minmatar Entities]" -msgstr "[反击米玛塔尔单位]" - -#: eos/saveddata/targetProfile.py:39 eos/saveddata/targetProfile.py:40 -#: eos/saveddata/targetProfile.py:41 eos/saveddata/targetProfile.py:42 -#: eos/saveddata/targetProfile.py:43 eos/saveddata/targetProfile.py:44 -msgid "[T1 Resist]" -msgstr "[T1抗性]" - -#: eos/saveddata/targetProfile.py:45 eos/saveddata/targetProfile.py:46 -#: eos/saveddata/targetProfile.py:47 eos/saveddata/targetProfile.py:48 -#: eos/saveddata/targetProfile.py:49 eos/saveddata/targetProfile.py:50 -#: eos/saveddata/targetProfile.py:51 eos/saveddata/targetProfile.py:52 -msgid "[T2 Resist]" -msgstr "[T2抗性]" - -#: eos/saveddata/damagePattern.py:37 +#: eos/saveddata/damagePattern.py:43 msgid "[T2] Aurora" msgstr "[T2] 极光" -#: eos/saveddata/damagePattern.py:69 +#: eos/saveddata/damagePattern.py:75 msgid "[T2] Barrage" msgstr "[T2] 雷暴" -#: eos/saveddata/damagePattern.py:48 +#: eos/saveddata/damagePattern.py:54 msgid "[T2] Conflagration" msgstr "[T2] 爆燃" -#: eos/saveddata/damagePattern.py:47 +#: eos/saveddata/damagePattern.py:53 msgid "[T2] Gleam" msgstr "[T2] 微光" -#: eos/saveddata/damagePattern.py:79 +#: eos/saveddata/damagePattern.py:85 msgid "[T2] Hail" msgstr "[T2] 冰雹" -#: eos/saveddata/damagePattern.py:66 +#: eos/saveddata/damagePattern.py:72 msgid "[T2] Javelin" msgstr "[T2] 标枪" -#: eos/saveddata/damagePattern.py:51 +#: eos/saveddata/damagePattern.py:57 msgid "[T2] Mystic" msgstr "[T2] 奥秘" -#: eos/saveddata/damagePattern.py:57 +#: eos/saveddata/damagePattern.py:63 msgid "[T2] Null" msgstr "[T2] 虚空" -#: eos/saveddata/damagePattern.py:55 +#: eos/saveddata/damagePattern.py:61 msgid "[T2] Occult" msgstr "[T2] 神秘" -#: eos/saveddata/damagePattern.py:78 +#: eos/saveddata/damagePattern.py:84 msgid "[T2] Quake" msgstr "[T2] 地震" -#: eos/saveddata/damagePattern.py:38 +#: eos/saveddata/damagePattern.py:44 msgid "[T2] Scorch" msgstr "[T2] 灼烧" -#: eos/saveddata/damagePattern.py:56 +#: eos/saveddata/damagePattern.py:62 msgid "[T2] Spike" msgstr "[T2] 钉刺" -#: eos/saveddata/damagePattern.py:68 +#: eos/saveddata/damagePattern.py:74 msgid "[T2] Tremor" msgstr "[T2] 战栗" -#: eos/saveddata/damagePattern.py:67 +#: eos/saveddata/damagePattern.py:73 msgid "[T2] Void" msgstr "[T2] 涅槃" From e536aa5f1c327c639449f36dd8f2d629468d179c Mon Sep 17 00:00:00 2001 From: zhaoweny Date: Sat, 11 Jul 2020 21:12:57 +0800 Subject: [PATCH 12/13] i18n: special comments to mark strings containing '%' mean literally '%', not part of escape sequence see also: * https://github.com/vslavik/poedit/issues/645 * https://www.gnu.org/software/gettext/manual/html_node/PO-Files.html * https://www.gnu.org/software/gettext/manual/html_node/c_002dformat-Flag.html --- eos/saveddata/damagePattern.py | 16 +- .../targetingMiscViewMinimal.py | 10 +- locale/zh_CN/LC_MESSAGES/lang.po | 208 +++++++++--------- 3 files changed, 124 insertions(+), 110 deletions(-) diff --git a/eos/saveddata/damagePattern.py b/eos/saveddata/damagePattern.py index 6ff6ff3b2..7cf1bd930 100644 --- a/eos/saveddata/damagePattern.py +++ b/eos/saveddata/damagePattern.py @@ -126,9 +126,19 @@ BUILTINS = OrderedDict([ # Source: ticket #2067 (-86, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Dread'), 0, 417, 0, 583)), (-87, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Normal Subcaps'), 0, 610, 0, 390)), - (-88, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Subcaps w/missiles 0% spool up'), 367, 155, 367, 112)), - (-89, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Subcaps w/missiles 50% spool up'), 291, 243, 291, 175)), - (-90, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + _t('Subcaps w/missiles 100% spool up'), 241, 301, 241, 217)), + + # To avoid errors on msgfmt, we have to mark that '0%' is meaning literally 0% with no-python-format. + # See also: https://github.com/vslavik/poedit/issues/645 + (-88, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + + # xgettext:no-python-format + _t('Subcaps w/missiles 0% spool up'), 367, 155, 367, 112)), + (-89, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + + # xgettext:no-python-format + _t('Subcaps w/missiles 50% spool up'), 291, 243, 291, 175)), + (-90, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Invading Precursor Entities')) + + # xgettext:no-python-format + _t('Subcaps w/missiles 100% spool up'), 241, 301, 241, 217)), + (-91, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Amarr Entities')) + _t('Dread/Subcaps'), 583, 417, 0, 0)), (-92, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Caldari Entities')) + _t('Dread'), 1000, 0, 0, 0)), (-93, (_c(_t('NPC')) + _c(_t('Invasion')) + _c(_t('Retaliating Caldari Entities')) + _t('Subcaps'), 511, 21, 29, 440)), diff --git a/gui/builtinStatsViews/targetingMiscViewMinimal.py b/gui/builtinStatsViews/targetingMiscViewMinimal.py index ac6b56fa6..8a0f023e5 100644 --- a/gui/builtinStatsViews/targetingMiscViewMinimal.py +++ b/gui/builtinStatsViews/targetingMiscViewMinimal.py @@ -215,9 +215,9 @@ class TargetingMiscViewMinimal(StatsView): ecmChance = otherValues["jamChance"] ecmChance = round(ecmChance, 1) if ecmChance > 0: - label.SetToolTip(wx.ToolTip( - _t("Type: {0}\n").foramt(fit.scanType) + "{}%".format(formatAmount(ecmChance, 3, 0, 0)) + _t(" chance to be jammed").format( - formatAmount(ecmChance, 3, 0, 0)))) + label.SetToolTip(wx.ToolTip(_t("Type: {0}\n").foramt(fit.scanType) + + # xgettext:no-python-format,python-brace-format + _t("{}% chance to be jammed").format(formatAmount(ecmChance, 3, 0, 0)))) else: label.SetToolTip(wx.ToolTip(_t("Type: {}").format(fit.scanType))) elif labelName == "labelFullAlignTime": @@ -226,7 +226,7 @@ class TargetingMiscViewMinimal(StatsView): agility = _t("Agility:\t%.3fx") % (fit.ship.getModifiedItemAttr("agility") or 0) label.SetToolTip(wx.ToolTip("%s\n%s\n%s" % (alignTime, mass, agility))) elif labelName == "labelFullCargo": - tipLines = [_t("Cargohold: ")+"{:,.2f}m\u00B3 / {:,.2f}m\u00B3".format(fit.cargoBayUsed, newValues["main"])] + tipLines = [_t("Cargohold: ") + "{:,.2f}m\u00B3 / {:,.2f}m\u00B3".format(fit.cargoBayUsed, newValues["main"])] for attrName, tipAlias in list(cargoNamesOrder.items()): if newValues[attrName] > 0: tipLines.append("{}: {:,.2f}m\u00B3".format(tipAlias, newValues[attrName])) @@ -251,7 +251,7 @@ class TargetingMiscViewMinimal(StatsView): cachedCargo = self._cachedValues[counter] # if you add stuff to cargo, the capacity doesn't change and thus it is still cached # This assures us that we force refresh of cargo tooltip - tipLines = [_t("Cargohold: ")+"{:,.2f}m\u00B3 / {:,.2f}m\u00B3".format(fit.cargoBayUsed, cachedCargo["main"])] + tipLines = [_t("Cargohold: ") + "{:,.2f}m\u00B3 / {:,.2f}m\u00B3".format(fit.cargoBayUsed, cachedCargo["main"])] for attrName, tipAlias in list(cargoNamesOrder.items()): if cachedCargo[attrName] > 0: tipLines.append("{}: {:,.2f}m\u00B3".format(tipAlias, cachedCargo[attrName])) diff --git a/locale/zh_CN/LC_MESSAGES/lang.po b/locale/zh_CN/LC_MESSAGES/lang.po index 1c1089dda..0895bc563 100644 --- a/locale/zh_CN/LC_MESSAGES/lang.po +++ b/locale/zh_CN/LC_MESSAGES/lang.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: pyfa 2.22.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-07-11 15:41+0800\n" -"PO-Revision-Date: 2020-07-11 15:42+0800\n" +"POT-Creation-Date: 2020-07-11 21:04+0800\n" +"PO-Revision-Date: 2020-07-11 21:07+0800\n" "Last-Translator: zhaoweny \n" "Language-Team: Chinese (simplified)\n" "Language: zh_CN\n" @@ -30,10 +30,6 @@ msgstr "堆" msgid " Volley: " msgstr "齐射" -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:219 -msgid " chance to be jammed" -msgstr "概率丢失目标" - #: gui/builtinItemStatsViews/itemProperties.py:98 #, python-format msgid "%d attribute." @@ -79,7 +75,7 @@ msgstr "导出装配(&E)" msgid "&Export Skills Needed" msgstr "导出所需技能列表(&E)" -#: gui/mainMenuBar.py:66 gui/propertyEditor.py:42 +#: gui/propertyEditor.py:42 gui/mainMenuBar.py:66 msgid "&File" msgstr "文件(&F)" @@ -155,7 +151,7 @@ msgstr "导出到剪贴板(&T)" msgid "&Turn Overrides Off" msgstr "启用自定义属性(&T)" -#: gui/mainFrame.py:690 gui/mainMenuBar.py:131 +#: gui/mainMenuBar.py:131 gui/mainFrame.py:690 msgid "&Turn Overrides On" msgstr "启用自定义属性(&T)" @@ -310,7 +306,7 @@ msgstr "地址:" msgid "Affected by" msgstr "影响因素" -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:226 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:227 #, python-format msgid "Agility:\t%.3fx" msgstr "灵活性:%.3fx" @@ -319,7 +315,7 @@ msgstr "灵活性:%.3fx" msgid "Align time" msgstr "起跳时间" -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:224 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:225 #, python-format msgid "Align:\t%.3fs" msgstr "起跳时间:%.3fs" @@ -358,7 +354,7 @@ msgstr "艾玛(护甲)" msgid "Amarr (Shield)" msgstr "艾玛(护盾)" -#: eos/saveddata/damagePattern.py:138 eos/saveddata/targetProfile.py:72 +#: eos/saveddata/damagePattern.py:148 eos/saveddata/targetProfile.py:72 msgid "Amarr Empire" msgstr "艾玛帝国" @@ -438,8 +434,8 @@ msgstr "阿什姆级(血袭者)" msgid "Asteroid" msgstr "小行星" -#: gui/builtinItemStatsViews/itemAttributes.py:44 #: gui/builtinItemStatsViews/itemProperties.py:56 +#: gui/builtinItemStatsViews/itemAttributes.py:44 msgid "Attribute" msgstr "属性" @@ -518,10 +514,11 @@ msgstr "炸弹" msgid "Booster" msgstr "增效剂" -#: gui/additionsPane.py:78 gui/builtinContextMenus/additionsExportAll.py:23 +#: gui/copySelectDialog.py:48 gui/copySelectDialog.py:56 +#: gui/additionsPane.py:78 #: gui/builtinContextMenus/additionsExportSelection.py:23 -#: gui/builtinContextMenus/additionsImport.py:24 gui/copySelectDialog.py:48 -#: gui/copySelectDialog.py:56 +#: gui/builtinContextMenus/additionsImport.py:24 +#: gui/builtinContextMenus/additionsExportAll.py:23 msgid "Boosters" msgstr "增效剂" @@ -544,7 +541,7 @@ msgstr "浏览游戏内装配" msgid "Burner" msgstr "燃烧者" -#: eos/saveddata/damagePattern.py:140 eos/saveddata/targetProfile.py:74 +#: eos/saveddata/damagePattern.py:150 eos/saveddata/targetProfile.py:74 msgid "CONCORD" msgstr "统合部" @@ -564,7 +561,7 @@ msgstr "加达里(护甲)" msgid "Caldari (Shield)" msgstr "加达里(护盾)" -#: eos/saveddata/damagePattern.py:139 eos/saveddata/targetProfile.py:73 +#: eos/saveddata/damagePattern.py:149 eos/saveddata/targetProfile.py:73 msgid "Caldari State" msgstr "加达里合众国" @@ -585,16 +582,16 @@ msgstr "电容稳定性" msgid "Carbonized Lead" msgstr "碳铅弹" -#: gui/additionsPane.py:72 gui/builtinContextMenus/priceOptions.py:47 #: gui/builtinPreferenceViews/pyfaMarketPreferences.py:81 -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:90 #: gui/copySelectDialog.py:49 gui/copySelectDialog.py:57 +#: gui/additionsPane.py:72 gui/builtinStatsViews/targetingMiscViewMinimal.py:90 +#: gui/builtinContextMenus/priceOptions.py:47 msgid "Cargo" msgstr "货舱" -#: gui/builtinContextMenus/additionsExportAll.py:20 #: gui/builtinContextMenus/additionsExportSelection.py:20 #: gui/builtinContextMenus/additionsImport.py:21 +#: gui/builtinContextMenus/additionsExportAll.py:20 msgid "Cargo Items" msgstr "货舱物品" @@ -603,8 +600,8 @@ msgstr "货舱物品" msgid "Cargo bay" msgstr "货舱" -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:229 -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:254 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:230 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:255 msgid "Cargohold: " msgstr "货舱:" @@ -650,8 +647,8 @@ msgstr "变更{}半径" msgid "Changes require restart of pyfa to take effect." msgstr "变更将在重启Pyfa之后生效。" -#: gui/builtinStatsViews/priceViewFull.py:57 gui/characterEditor.py:90 -#: gui/esiFittings.py:341 +#: gui/characterEditor.py:90 gui/esiFittings.py:341 +#: gui/builtinStatsViews/priceViewFull.py:57 msgid "Character" msgstr "角色" @@ -755,7 +752,7 @@ msgstr "震荡炸弹" msgid "Confirm" msgstr "确认" -#: gui/esiFittings.py:157 gui/propertyEditor.py:147 +#: gui/propertyEditor.py:147 gui/esiFittings.py:157 msgid "Confirm Delete" msgstr "删除确认" @@ -807,9 +804,9 @@ msgstr "三神裔入侵" msgid "ContextMenu|ProjectedEffectManipulation|Wolf Rayet" msgstr "沃尔夫-拉叶星" -#: gui/builtinItemStatsViews/itemDescription.py:43 -#: gui/builtinItemStatsViews/itemTraits.py:25 #: gui/builtinShipBrowser/fitItem.py:107 +#: gui/builtinItemStatsViews/itemTraits.py:25 +#: gui/builtinItemStatsViews/itemDescription.py:43 msgid "Copy" msgstr "复制" @@ -853,8 +850,8 @@ msgstr "巡洋" msgid "Cruor (Blood Raiders)" msgstr "凝血级(血袭者)" -#: gui/builtinItemStatsViews/itemAttributes.py:45 #: gui/builtinItemStatsViews/itemProperties.py:57 +#: gui/builtinItemStatsViews/itemAttributes.py:45 msgid "Current Value" msgstr "当前值" @@ -998,8 +995,8 @@ msgstr "不再提示此更新" msgid "Don't see your EVE character in the list?" msgstr "列表中没有你的EvE角色?" -#: gui/builtinPreferenceViews/pyfaUpdatePreferences.py:71 #: gui/updateDialog.py:113 +#: gui/builtinPreferenceViews/pyfaUpdatePreferences.py:71 msgid "Download" msgstr "下载" @@ -1015,12 +1012,12 @@ msgstr "拖拽一个物品或装配以启用投射效果,或使用右键菜单 msgid "Dramiel (Angel)" msgstr "德拉米尔级(天使)" -#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:133 -#: eos/saveddata/damagePattern.py:136 +#: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:143 +#: eos/saveddata/damagePattern.py:146 msgid "Dread" msgstr "无畏" -#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:135 +#: eos/saveddata/damagePattern.py:142 eos/saveddata/damagePattern.py:145 msgid "Dread/Subcaps" msgstr "无畏/常规" @@ -1061,12 +1058,12 @@ msgstr "无人机半径" #: eos/saveddata/targetProfile.py:148 eos/saveddata/targetProfile.py:155 #: eos/saveddata/targetProfile.py:162 eos/saveddata/targetProfile.py:169 #: eos/saveddata/targetProfile.py:176 eos/saveddata/targetProfile.py:183 -#: gui/additionsPane.py:66 gui/builtinContextMenus/additionsExportAll.py:18 -#: gui/builtinContextMenus/additionsExportSelection.py:18 -#: gui/builtinContextMenus/additionsImport.py:19 -#: gui/builtinContextMenus/priceOptions.py:40 #: gui/builtinPreferenceViews/pyfaMarketPreferences.py:77 -#: gui/builtinStatsViews/priceViewFull.py:58 +#: gui/additionsPane.py:66 gui/builtinStatsViews/priceViewFull.py:58 +#: gui/builtinContextMenus/additionsExportSelection.py:18 +#: gui/builtinContextMenus/priceOptions.py:40 +#: gui/builtinContextMenus/additionsImport.py:19 +#: gui/builtinContextMenus/additionsExportAll.py:18 msgid "Drones" msgstr "无人机" @@ -1116,8 +1113,8 @@ msgstr "EvE API XML角色文件" msgid "EVE IGB HTML fitting file" msgstr "EvE IGB 装配HTML网页文件" -#: gui/builtinPreferenceViews/pyfaEsiPreferences.py:16 #: gui/characterEditor.py:162 +#: gui/builtinPreferenceViews/pyfaEsiPreferences.py:16 msgid "EVE SSO" msgstr "EvE单点登录(SSO)" @@ -1262,8 +1259,8 @@ msgstr "恩尤" #: gui/characterEditor.py:83 gui/characterEditor.py:463 #: gui/characterEditor.py:898 gui/characterSelection.py:174 -#: gui/mainFrame.py:898 gui/patternEditor.py:58 gui/setEditor.py:55 -#: gui/targetProfileEditor.py:78 +#: gui/patternEditor.py:58 gui/setEditor.py:55 gui/targetProfileEditor.py:78 +#: gui/mainFrame.py:898 msgid "Error" msgstr "错误" @@ -1459,9 +1456,10 @@ msgstr "铁骑舰载机仓库" msgid "Fighter squadrons active" msgstr "激活的铁骑舰载机中队" -#: gui/additionsPane.py:69 gui/builtinContextMenus/additionsExportAll.py:19 +#: gui/additionsPane.py:69 #: gui/builtinContextMenus/additionsExportSelection.py:19 #: gui/builtinContextMenus/additionsImport.py:20 +#: gui/builtinContextMenus/additionsExportAll.py:19 msgid "Fighters" msgstr "铁骑舰载机" @@ -1573,7 +1571,7 @@ msgstr "盖伦特(护甲)" msgid "Gallente (Shield)" msgstr "盖伦特(护盾)" -#: eos/saveddata/damagePattern.py:141 eos/saveddata/targetProfile.py:75 +#: eos/saveddata/damagePattern.py:151 eos/saveddata/targetProfile.py:75 msgid "Gallente Federation" msgstr "盖伦特联邦" @@ -1752,18 +1750,19 @@ msgstr "植入体配置编辑器" msgid "Implant Set name already in use, please choose another." msgstr "植入体配置名已使用,请选择其他名称。" -#: gui/additionsPane.py:75 gui/builtinContextMenus/additionsExportAll.py:21 -#: gui/builtinContextMenus/additionsExportAll.py:22 +#: gui/characterEditor.py:161 gui/copySelectDialog.py:47 +#: gui/copySelectDialog.py:55 gui/additionsPane.py:75 #: gui/builtinContextMenus/additionsExportSelection.py:21 #: gui/builtinContextMenus/additionsExportSelection.py:22 #: gui/builtinContextMenus/additionsImport.py:22 -#: gui/builtinContextMenus/additionsImport.py:23 gui/characterEditor.py:161 -#: gui/copySelectDialog.py:47 gui/copySelectDialog.py:55 +#: gui/builtinContextMenus/additionsImport.py:23 +#: gui/builtinContextMenus/additionsExportAll.py:21 +#: gui/builtinContextMenus/additionsExportAll.py:22 msgid "Implants" msgstr "植入体" -#: gui/builtinContextMenus/priceOptions.py:54 #: gui/builtinPreferenceViews/pyfaMarketPreferences.py:85 +#: gui/builtinContextMenus/priceOptions.py:54 msgid "Implants && Boosters" msgstr "植入体和增效剂" @@ -1870,8 +1869,8 @@ msgid "Interceptor" msgstr "截击" #: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:128 -#: eos/saveddata/damagePattern.py:129 eos/saveddata/damagePattern.py:130 -#: eos/saveddata/damagePattern.py:131 eos/saveddata/targetProfile.py:94 +#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:135 +#: eos/saveddata/damagePattern.py:138 eos/saveddata/targetProfile.py:94 msgid "Invading Precursor Entities" msgstr "入侵的先驱者实体" @@ -1884,11 +1883,11 @@ msgid "Invalid Token" msgstr "无效登录信息" #: eos/saveddata/damagePattern.py:127 eos/saveddata/damagePattern.py:128 -#: eos/saveddata/damagePattern.py:129 eos/saveddata/damagePattern.py:130 -#: eos/saveddata/damagePattern.py:131 eos/saveddata/damagePattern.py:132 -#: eos/saveddata/damagePattern.py:133 eos/saveddata/damagePattern.py:134 -#: eos/saveddata/damagePattern.py:135 eos/saveddata/damagePattern.py:136 -#: eos/saveddata/damagePattern.py:137 eos/saveddata/targetProfile.py:94 +#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:135 +#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:142 +#: eos/saveddata/damagePattern.py:143 eos/saveddata/damagePattern.py:144 +#: eos/saveddata/damagePattern.py:145 eos/saveddata/damagePattern.py:146 +#: eos/saveddata/damagePattern.py:147 eos/saveddata/targetProfile.py:94 #: eos/saveddata/targetProfile.py:95 eos/saveddata/targetProfile.py:96 #: eos/saveddata/targetProfile.py:97 eos/saveddata/targetProfile.py:98 msgid "Invasion" @@ -1902,11 +1901,11 @@ msgstr "铱质" msgid "Iron" msgstr "铁质" -#: gui/builtinContextMenus/ammoToDmgPattern.py:32 -#: gui/builtinContextMenus/itemMarketJump.py:44 -#: gui/builtinContextMenus/itemRemove.py:43 -#: gui/builtinContextMenus/itemStats.py:38 #: gui/builtinItemStatsViews/itemCompare.py:147 +#: gui/builtinContextMenus/itemMarketJump.py:44 +#: gui/builtinContextMenus/itemStats.py:38 +#: gui/builtinContextMenus/ammoToDmgPattern.py:32 +#: gui/builtinContextMenus/itemRemove.py:43 msgid "Item" msgstr "物品" @@ -1922,7 +1921,7 @@ msgstr "物品属性" msgid "Jaguar" msgstr "美洲豹" -#: eos/saveddata/damagePattern.py:142 eos/saveddata/targetProfile.py:76 +#: eos/saveddata/damagePattern.py:152 eos/saveddata/targetProfile.py:76 msgid "Khanid" msgstr "卡尼迪" @@ -1971,8 +1970,8 @@ msgstr "技能等级" msgid "Level %s" msgstr "等级%s" -#: gui/builtinItemStatsViews/itemDependants.py:46 gui/characterEditor.py:591 -#: gui/characterEditor.py:616 gui/characterEditor.py:649 +#: gui/characterEditor.py:591 gui/characterEditor.py:616 +#: gui/characterEditor.py:649 gui/builtinItemStatsViews/itemDependants.py:46 msgid "Level {}" msgstr "等级{}" @@ -2076,7 +2075,7 @@ msgstr "搜索和显示最近使用列表时" msgid "Market Search Delay (ms):" msgstr "市场搜索延迟(毫秒):" -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:225 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:226 msgid "Mass:\t{:,.0f}kg" msgstr "质量:{:,.0f}kg" @@ -2085,7 +2084,7 @@ msgid "Material bay" msgstr "物料仓" #: gui/builtinStatsViews/targetingMiscViewMinimal.py:208 -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:241 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:242 #, python-format msgid "Max Warp Distance: %.1f AU" msgstr "最大跃迁距离:%.1f AU" @@ -2137,7 +2136,7 @@ msgstr "米玛塔尔(护甲)" msgid "Minmatar (Shield)" msgstr "米玛塔尔(护盾)" -#: eos/saveddata/damagePattern.py:143 eos/saveddata/targetProfile.py:77 +#: eos/saveddata/damagePattern.py:153 eos/saveddata/targetProfile.py:77 msgid "Minmatar Republic" msgstr "米玛塔尔共和国" @@ -2154,10 +2153,10 @@ msgstr "杂项" msgid "Missiles" msgstr "导弹" -#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:139 -#: eos/saveddata/damagePattern.py:140 eos/saveddata/damagePattern.py:141 -#: eos/saveddata/damagePattern.py:142 eos/saveddata/damagePattern.py:143 -#: eos/saveddata/damagePattern.py:144 eos/saveddata/damagePattern.py:145 +#: eos/saveddata/damagePattern.py:148 eos/saveddata/damagePattern.py:149 +#: eos/saveddata/damagePattern.py:150 eos/saveddata/damagePattern.py:151 +#: eos/saveddata/damagePattern.py:152 eos/saveddata/damagePattern.py:153 +#: eos/saveddata/damagePattern.py:154 eos/saveddata/damagePattern.py:155 #: eos/saveddata/targetProfile.py:72 eos/saveddata/targetProfile.py:73 #: eos/saveddata/targetProfile.py:74 eos/saveddata/targetProfile.py:75 #: eos/saveddata/targetProfile.py:76 eos/saveddata/targetProfile.py:77 @@ -2181,7 +2180,7 @@ msgstr "模式" msgid "Module" msgstr "模块" -#: eos/saveddata/damagePattern.py:144 eos/saveddata/targetProfile.py:78 +#: eos/saveddata/damagePattern.py:154 eos/saveddata/targetProfile.py:78 msgid "Mordus Legion" msgstr "莫德团" @@ -2218,16 +2217,16 @@ msgstr "变质" #: eos/saveddata/damagePattern.py:121 eos/saveddata/damagePattern.py:122 #: eos/saveddata/damagePattern.py:123 eos/saveddata/damagePattern.py:124 #: eos/saveddata/damagePattern.py:125 eos/saveddata/damagePattern.py:127 -#: eos/saveddata/damagePattern.py:128 eos/saveddata/damagePattern.py:129 -#: eos/saveddata/damagePattern.py:130 eos/saveddata/damagePattern.py:131 -#: eos/saveddata/damagePattern.py:132 eos/saveddata/damagePattern.py:133 -#: eos/saveddata/damagePattern.py:134 eos/saveddata/damagePattern.py:135 -#: eos/saveddata/damagePattern.py:136 eos/saveddata/damagePattern.py:137 -#: eos/saveddata/damagePattern.py:138 eos/saveddata/damagePattern.py:139 -#: eos/saveddata/damagePattern.py:140 eos/saveddata/damagePattern.py:141 +#: eos/saveddata/damagePattern.py:128 eos/saveddata/damagePattern.py:132 +#: eos/saveddata/damagePattern.py:135 eos/saveddata/damagePattern.py:138 #: eos/saveddata/damagePattern.py:142 eos/saveddata/damagePattern.py:143 #: eos/saveddata/damagePattern.py:144 eos/saveddata/damagePattern.py:145 #: eos/saveddata/damagePattern.py:146 eos/saveddata/damagePattern.py:147 +#: eos/saveddata/damagePattern.py:148 eos/saveddata/damagePattern.py:149 +#: eos/saveddata/damagePattern.py:150 eos/saveddata/damagePattern.py:151 +#: eos/saveddata/damagePattern.py:152 eos/saveddata/damagePattern.py:153 +#: eos/saveddata/damagePattern.py:154 eos/saveddata/damagePattern.py:155 +#: eos/saveddata/damagePattern.py:156 eos/saveddata/damagePattern.py:157 #: eos/saveddata/targetProfile.py:60 eos/saveddata/targetProfile.py:61 #: eos/saveddata/targetProfile.py:62 eos/saveddata/targetProfile.py:63 #: eos/saveddata/targetProfile.py:64 eos/saveddata/targetProfile.py:65 @@ -2296,8 +2295,8 @@ msgstr "变质" msgid "NPC" msgstr "NPC" -#: gui/builtinItemStatsViews/itemEffects.py:30 #: gui/builtinViewColumns/baseName.py:55 +#: gui/builtinItemStatsViews/itemEffects.py:30 msgid "Name" msgstr "名称" @@ -2352,7 +2351,7 @@ msgstr "不改变衍生分类按钮" msgid "No proxy" msgstr "无代理" -#: gui/builtinPreferenceViews/pyfaGeneralPreferences.py:90 +#: gui/characterEditor.py:855 #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:42 #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:50 #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:58 @@ -2361,7 +2360,7 @@ msgstr "无代理" #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:87 #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:99 #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:104 -#: gui/characterEditor.py:855 +#: gui/builtinPreferenceViews/pyfaGeneralPreferences.py:90 msgid "None" msgstr "无" @@ -2533,9 +2532,9 @@ msgid "" "Pressing this button will cause all logs in memory to write to the log file:" msgstr "点击此按钮以将所有缓存的日志写入到日志文件:" -#: gui/builtinItemStatsViews/itemCompare.py:155 #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:99 #: gui/builtinStatsViews/priceViewFull.py:40 +#: gui/builtinItemStatsViews/itemCompare.py:155 msgid "Price" msgstr "价格" @@ -2543,7 +2542,7 @@ msgstr "价格" msgid "Pricing updates" msgstr "价格更新" -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:265 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:266 #, python-format msgid "Probe Size: %.3f" msgstr "Probe Size: %.3f" @@ -2708,8 +2707,8 @@ msgid "Reinforced" msgstr "加强回充" #: gui/builtinPreferenceViews/pyfaStatViewPreferences.py:104 -#: gui/builtinStatsViews/outgoingViewFull.py:66 #: gui/builtinStatsViews/outgoingViewMinimal.py:65 +#: gui/builtinStatsViews/outgoingViewFull.py:66 msgid "Remote Reps" msgstr "遥修" @@ -2771,20 +2770,20 @@ msgstr "抗性" msgid "Resources" msgstr "装配资源" -#: eos/saveddata/damagePattern.py:132 eos/saveddata/targetProfile.py:95 +#: eos/saveddata/damagePattern.py:142 eos/saveddata/targetProfile.py:95 msgid "Retaliating Amarr Entities" msgstr "反击艾玛单位" -#: eos/saveddata/damagePattern.py:133 eos/saveddata/damagePattern.py:134 +#: eos/saveddata/damagePattern.py:143 eos/saveddata/damagePattern.py:144 #: eos/saveddata/targetProfile.py:96 msgid "Retaliating Caldari Entities" msgstr "反击加达里单位" -#: eos/saveddata/damagePattern.py:135 eos/saveddata/targetProfile.py:97 +#: eos/saveddata/damagePattern.py:145 eos/saveddata/targetProfile.py:97 msgid "Retaliating Gallente Entities" msgstr "反击盖伦特单位" -#: eos/saveddata/damagePattern.py:136 eos/saveddata/damagePattern.py:137 +#: eos/saveddata/damagePattern.py:146 eos/saveddata/damagePattern.py:147 #: eos/saveddata/targetProfile.py:98 msgid "Retaliating Minmatar Entities" msgstr "反击米玛塔尔单位" @@ -2829,7 +2828,7 @@ msgstr "单点登录(SSO)模式" msgid "Salvage hold" msgstr "打捞件仓" -#: eos/saveddata/damagePattern.py:146 eos/saveddata/targetProfile.py:80 +#: eos/saveddata/damagePattern.py:156 eos/saveddata/targetProfile.py:80 #: gui/builtinContextMenus/envEffectAdd.py:112 msgid "Sansha Incursion" msgstr "萨沙入侵" @@ -3073,7 +3072,7 @@ msgstr "所需技能:" msgid "Sleeper" msgstr "冬眠者" -#: eos/saveddata/damagePattern.py:147 +#: eos/saveddata/damagePattern.py:157 msgid "Sleepers" msgstr "冬眠者" @@ -3109,22 +3108,22 @@ msgstr "标准" msgid "Statistics Panel" msgstr "属性面板" -#: eos/saveddata/damagePattern.py:134 eos/saveddata/damagePattern.py:137 +#: eos/saveddata/damagePattern.py:144 eos/saveddata/damagePattern.py:147 msgid "Subcaps" msgstr "非旗舰" -#: eos/saveddata/damagePattern.py:129 -#, python-format +#: eos/saveddata/damagePattern.py:134 +#, no-python-format msgid "Subcaps w/missiles 0% spool up" msgstr "非旗舰0%预热" -#: eos/saveddata/damagePattern.py:131 -#, python-format +#: eos/saveddata/damagePattern.py:140 +#, no-python-format msgid "Subcaps w/missiles 100% spool up" msgstr "非旗舰100%预热" -#: eos/saveddata/damagePattern.py:130 -#, python-format +#: eos/saveddata/damagePattern.py:137 +#, no-python-format msgid "Subcaps w/missiles 50% spool up" msgstr "非旗舰50%预热" @@ -3170,8 +3169,9 @@ msgstr "T1抗性" msgid "T2 Resist" msgstr "T2抗性" +#: gui/builtinViewColumns/baseName.py:102 #: gui/builtinContextMenus/shipModeChange.py:37 -#: gui/builtinViewColumns/baseName.py:102 gui/builtinViews/fittingView.py:657 +#: gui/builtinViews/fittingView.py:657 msgid "Tactical Mode" msgstr "战术模式" @@ -3344,7 +3344,7 @@ msgstr "本选项将启动一个本地服务器以接收登录页返回的角色 msgid "Thorium" msgstr "钍质" -#: eos/saveddata/damagePattern.py:145 +#: eos/saveddata/damagePattern.py:155 msgid "Thukker" msgstr "图克尔" @@ -3364,9 +3364,9 @@ msgstr "切换视图" msgid "Toggle view mode" msgstr "切换显示模式" -#: gui/builtinStatsViews/miningyieldViewFull.py:89 #: gui/builtinStatsViews/priceViewFull.py:58 #: gui/builtinStatsViews/priceViewMinimal.py:57 +#: gui/builtinStatsViews/miningyieldViewFull.py:89 msgid "Total" msgstr "总计" @@ -3414,7 +3414,7 @@ msgstr "类型" msgid "Type: {0}\n" msgstr "扫描类型:{0}\n" -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:222 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:223 msgid "Type: {}" msgstr "扫描类型:{}" @@ -3490,8 +3490,8 @@ msgstr "用户名:" msgid "Using Executable Path for Saved Fit Database and Settings" msgstr "使用Pyfa可执行文件路径来保存装配数据库和偏好设置" -#: gui/builtinContextMenus/itemVariationChange.py:49 #: gui/builtinPreferenceViews/pyfaContextMenuPreferences.py:51 +#: gui/builtinContextMenus/itemVariationChange.py:49 msgid "Variations" msgstr "变种" @@ -3513,8 +3513,8 @@ msgstr "正在等待角色通过EvE登录。" #: gui/builtinStatsViews/targetingMiscViewMinimal.py:210 #: gui/builtinStatsViews/targetingMiscViewMinimal.py:212 -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:243 -#: gui/builtinStatsViews/targetingMiscViewMinimal.py:245 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:244 +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:246 #, python-format msgid "Warp Core Strength: %.1f" msgstr "跃迁核心强度:%.1f" @@ -3714,3 +3714,7 @@ msgstr "{}属性" #: gui/builtinViewColumns/baseName.py:104 msgid "{} {} Slot" msgstr "{} {}槽" + +#: gui/builtinStatsViews/targetingMiscViewMinimal.py:221 +msgid "{}% chance to be jammed" +msgstr "{}%概率丢失目标" From 04f9c1c9f8f2cec9fb856f1cda03eb9fdfaa93b0 Mon Sep 17 00:00:00 2001 From: blitzmann Date: Sat, 11 Jul 2020 12:27:09 -0400 Subject: [PATCH 13/13] Move the pyfa app initialization back to where it was --- pyfa.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pyfa.py b/pyfa.py index 81af6310a..f0063f8d6 100755 --- a/pyfa.py +++ b/pyfa.py @@ -125,10 +125,6 @@ if __name__ == "__main__": if db_needs_update() is True: update_db() - from gui.app import PyfaApp - - pyfa = PyfaApp(False) - # Lets get to the good stuff, shall we? import eos.db import eos.events # todo: move this to eos initialization? @@ -141,11 +137,14 @@ if __name__ == "__main__": os.mkdir(config.savePath) eos.db.saveddata_meta.create_all() + from gui.app import PyfaApp # set title if it wasn't supplied by argument if options.title is None: options.title = "pyfa %s - Python Fitting Assistant" % (config.getVersion()) + pyfa = PyfaApp(False) + from gui.mainFrame import MainFrame mf = MainFrame(options.title)