From 8fec03bcbf560d4ade6d8ec776d981335dab25cd Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sun, 25 Sep 2016 04:16:07 +0500 Subject: [PATCH 01/76] Add proxy login/pass fields to NetworkSettings class. Use named "constants" instead of hardcoded numbers for proxy "mode" parameter --- service/settings.py | 37 ++++++++++++++++++++++++++++--------- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/service/settings.py b/service/settings.py index cd1b33b44..971ce59ef 100644 --- a/service/settings.py +++ b/service/settings.py @@ -113,6 +113,12 @@ class Settings(): class NetworkSettings(): _instance = None + + # constants for serviceNetworkDefaultSettings["mode"] parameter + PROXY_MODE_NONE = 0 # 0 - No proxy + PROXY_MODE_AUTODETECT = 1 # 1 - Auto-detected proxy settings + PROXY_MODE_MANUAL = 2 # 2 - Manual proxy settings + @classmethod def getInstance(cls): if cls._instance == None: @@ -122,13 +128,18 @@ class NetworkSettings(): def __init__(self): - # mode - # 0 - No proxy - # 1 - Auto-detected proxy settings - # 2 - Manual proxy settings - serviceNetworkDefaultSettings = {"mode": 1, "type": "https", "address": "", "port": "", "access": 15} + serviceNetworkDefaultSettings = { + "mode": self.PROXY_MODE_AUTODETECT, + "type": "https", + "address": "", + "port": "", + "access": 15, + "login": None, + "password": None + } - self.serviceNetworkSettings = SettingsProvider.getInstance().getSettings("pyfaServiceNetworkSettings", serviceNetworkDefaultSettings) + self.serviceNetworkSettings = SettingsProvider.getInstance().getSettings( + "pyfaServiceNetworkSettings", serviceNetworkDefaultSettings) def isEnabled(self, type): if type & self.serviceNetworkSettings["access"]: @@ -198,13 +209,21 @@ class NetworkSettings(): def getProxySettings(self): - if self.getMode() == 0: + if self.getMode() == self.PROXY_MODE_NONE: return None - if self.getMode() == 1: + if self.getMode() == self.PROXY_MODE_AUTODETECT: return self.autodetect() - if self.getMode() == 2: + if self.getMode() == self.PROXY_MODE_MANUAL: return (self.getAddress(), int(self.getPort())) + def getProxyAuthDetails(self): + if self.getMode() == self.PROXY_MODE_NONE: + return None + if (self.serviceNetworkSettings["login"] is None) or (self.serviceNetworkSettings["password"] is None): + return None + # in all other cases, return tuple of (login, password) + return (self.serviceNetworkSettings["login"], self.serviceNetworkSettings["password"]) + """ From a0359b8bd982eb375cd442e9fbfda5981cf6a596 Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Wed, 28 Sep 2016 01:42:59 +0500 Subject: [PATCH 02/76] [WIP] Add basic proxy authorization support to Network service class. not tested yet, will test later --- service/network.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/service/network.py b/service/network.py index 04ba49875..be0380e82 100644 --- a/service/network.py +++ b/service/network.py @@ -75,8 +75,23 @@ class Network(): proxy = NetworkSettings.getInstance().getProxySettings() if proxy is not None: - proxy = urllib2.ProxyHandler({'https': "{0}:{1}".format(*proxy)}) - opener = urllib2.build_opener(proxy) + # proxy is tuple of (host, port): (u'192.168.20.1', 3128) + proxy_handler = urllib2.ProxyHandler({'https': "{0}:{1}".format(proxy[0], proxy[1])}) + proxy_auth = NetworkSettings.getInstance().getProxyAuthDetails() + if proxy_auth is not None: + # if we have proxy login/pass configured, construct a different opener, + # which uses both proxy handler *and* proxy auth handler + password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm() + # A realm of None is considered a catch-all realm, which is searched if no other realm fits. + password_mgr.add_password(realm=None, + uri='https://{0}:{1}'.format(proxy[0], proxy[1]), # TODO: is uri correct? + user=proxy_auth[0], + passwd=proxy_auth[1]) + proxy_auth_handler = urllib2.ProxyBasicAuthHandler(password_mgr) + opener = urllib2.build_opener(proxy_handler, proxy_auth_handler) + else: + # With no proxy login/pass provided, use opener with the only proxy handler + opener = urllib2.build_opener(proxy_handler) urllib2.install_opener(opener) request = urllib2.Request(url, headers=headers, data=urllib.urlencode(data) if data else None) From 75f07afcb7d6589fb2ae02e65c5f98b1d9a0e8bf Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Thu, 29 Sep 2016 20:21:11 +0500 Subject: [PATCH 03/76] NetworkSettings: add setter method for proxy auth details (login, password) --- service/settings.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/service/settings.py b/service/settings.py index 971ce59ef..a1607d150 100644 --- a/service/settings.py +++ b/service/settings.py @@ -224,6 +224,14 @@ class NetworkSettings(): # in all other cases, return tuple of (login, password) return (self.serviceNetworkSettings["login"], self.serviceNetworkSettings["password"]) + def setProxyAuthDetails(self, login, password): + if (login is None) or (password is None): + self.serviceNetworkSettings["login"] = None + self.serviceNetworkSettings["password"] = None + return + self.serviceNetworkSettings["login"] = login + self.serviceNetworkSettings["password"] = password + """ From 02557701f04df125027fd990d7d9df6090f1c8e8 Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sat, 1 Oct 2016 13:47:27 +0500 Subject: [PATCH 04/76] NetworkSettings: never return None in proxy auth details getter, return a tuple with empty strings instead --- service/settings.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/service/settings.py b/service/settings.py index a1607d150..a1fe77572 100644 --- a/service/settings.py +++ b/service/settings.py @@ -218,9 +218,9 @@ class NetworkSettings(): def getProxyAuthDetails(self): if self.getMode() == self.PROXY_MODE_NONE: - return None + return ("", "") # never return none, return tuple with empty strings if (self.serviceNetworkSettings["login"] is None) or (self.serviceNetworkSettings["password"] is None): - return None + return ("", "") # never return none, return tuple with empty strings # in all other cases, return tuple of (login, password) return (self.serviceNetworkSettings["login"], self.serviceNetworkSettings["password"]) From 3a7e343f1c1d7dfd8f9dcc1d0eb22fa009369c0e Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sun, 2 Oct 2016 19:15:32 +0500 Subject: [PATCH 05/76] Network preferences settings: GUI to set proxy login/password --- .../pyfaNetworkPreferences.py | 41 ++++++++++++++++++- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/gui/builtinPreferenceViews/pyfaNetworkPreferences.py b/gui/builtinPreferenceViews/pyfaNetworkPreferences.py index b4c0dedae..c2767ca31 100644 --- a/gui/builtinPreferenceViews/pyfaNetworkPreferences.py +++ b/gui/builtinPreferenceViews/pyfaNetworkPreferences.py @@ -69,6 +69,7 @@ class PFNetworkPref ( PreferenceView): self.nAddr = self.settings.getAddress() self.nPort = self.settings.getPort() self.nType = self.settings.getType() + self.nAuth = self.settings.getProxyAuthDetails() # tuple of (login, password) ptypeSizer = wx.BoxSizer( wx.HORIZONTAL ) @@ -111,6 +112,21 @@ class PFNetworkPref ( PreferenceView): mainSizer.Add( fgAddrSizer, 0, wx.EXPAND, 5) + # proxy auth information: login and pass + self.stPSetLogin = wx.StaticText(panel, wx.ID_ANY, u"Proxy login:", wx.DefaultPosition, wx.DefaultSize, 0) + self.stPSetLogin.Wrap(-1) + self.editProxySettingsLogin = wx.TextCtrl(panel, wx.ID_ANY, self.nAuth[0], wx.DefaultPosition, wx.DefaultSize, 0) + self.stPSetPassword = wx.StaticText(panel, wx.ID_ANY, u"pass:", wx.DefaultPosition, wx.DefaultSize, 0) + self.stPSetPassword.Wrap(-1) + self.editProxySettingsPassword = wx.TextCtrl(panel, wx.ID_ANY, self.nAuth[1], wx.DefaultPosition, + wx.DefaultSize, wx.TE_PASSWORD) + pAuthSizer = wx.BoxSizer(wx.HORIZONTAL) + pAuthSizer.Add(self.stPSetLogin, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 5) + pAuthSizer.Add(self.editProxySettingsLogin, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 5) + pAuthSizer.Add(self.stPSetPassword, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 5) + pAuthSizer.Add(self.editProxySettingsPassword, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 5) + mainSizer.Add(pAuthSizer, 0, wx.EXPAND, 5) + self.stPSAutoDetected = wx.StaticText( panel, wx.ID_ANY, u"Auto-detected: ", wx.DefaultPosition, wx.DefaultSize, 0 ) self.stPSAutoDetected.Wrap( -1 ) mainSizer.Add( self.stPSAutoDetected, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5 ) @@ -138,13 +154,15 @@ class PFNetworkPref ( PreferenceView): self.chProxyType.Bind(wx.EVT_CHOICE, self.OnCHProxyTypeSelect) self.editProxySettingsAddr.Bind(wx.EVT_TEXT, self.OnEditPSAddrText) self.editProxySettingsPort.Bind(wx.EVT_TEXT, self.OnEditPSPortText) + self.editProxySettingsLogin.Bind(wx.EVT_TEXT, self.OnEditPSLoginText) + self.editProxySettingsPassword.Bind(wx.EVT_TEXT, self.OnEditPSPasswordText) self.btnApply.Bind(wx.EVT_BUTTON, self.OnBtnApply) self.UpdateApplyButtonState() - if self.nMode is not 2: + if self.nMode is not service.settings.NetworkSettings.PROXY_MODE_MANUAL: # == 2 self.ToggleProxySettings(False) else: self.ToggleProxySettings(True) @@ -180,6 +198,16 @@ class PFNetworkPref ( PreferenceView): self.dirtySettings = True self.UpdateApplyButtonState() + def OnEditPSLoginText(self, event): + self.nAuth = (self.editProxySettingsLogin.GetValue(), self.nAuth[1]) + self.dirtySettings = True + self.UpdateApplyButtonState() + + def OnEditPSPasswordText(self, event): + self.nAuth = (self.nAuth[0], self.editProxySettingsPassword.GetValue()) + self.dirtySettings = True + self.UpdateApplyButtonState() + def OnBtnApply(self, event): self.dirtySettings = False self.UpdateApplyButtonState() @@ -190,6 +218,7 @@ class PFNetworkPref ( PreferenceView): self.settings.setAddress(self.nAddr) self.settings.setPort(self.nPort) self.settings.setType(self.nType) + self.settings.setProxyAuthDetails(self.nAuth[0], self.nAuth[1]) def UpdateApplyButtonState(self): if self.dirtySettings: @@ -205,7 +234,7 @@ class PFNetworkPref ( PreferenceView): self.UpdateApplyButtonState() - if choice is not 2: + if choice is not service.settings.NetworkSettings.PROXY_MODE_MANUAL: self.ToggleProxySettings(False) else: self.ToggleProxySettings(True) @@ -216,11 +245,19 @@ class PFNetworkPref ( PreferenceView): self.editProxySettingsAddr.Enable() self.stPSetPort.Enable() self.editProxySettingsPort.Enable() + self.stPSetLogin.Enable() + self.stPSetPassword.Enable() + self.editProxySettingsLogin.Enable() + self.editProxySettingsPassword.Enable() else: self.stPSetAddr.Disable() self.editProxySettingsAddr.Disable() self.stPSetPort.Disable() self.editProxySettingsPort.Disable() + self.stPSetLogin.Disable() + self.stPSetPassword.Disable() + self.editProxySettingsLogin.Disable() + self.editProxySettingsPassword.Disable() def getImage(self): return BitmapLoader.getBitmap("prefs_proxy", "gui") From c166fa6bf5049b05a70a224fb1ca5774761dd19e Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sun, 2 Oct 2016 22:08:58 +0500 Subject: [PATCH 06/76] service/network: revert to simple ProxyHandler with login:password@host:port format previous sh@t with password managers and proxy basic auth handlers did not work for me :( this way is simpler AND working. Also explicitly use the default urllib2 opener if proxy is disabled (bug fix) --- service/network.py | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/service/network.py b/service/network.py index be0380e82..3279b0769 100644 --- a/service/network.py +++ b/service/network.py @@ -43,6 +43,7 @@ class ServerError(StandardError): class TimeoutError(StandardError): pass + class Network(): # Request constants - every request must supply this, as it is checked if # enabled or not via settings @@ -71,28 +72,29 @@ class Network(): # Set up some things for the request versionString = "{0} {1} - {2} {3}".format(config.version, config.tag, config.expansionName, config.expansionVersion) - headers={"User-Agent" : "pyfa {0} (Python-urllib2)".format(versionString)} + headers = {"User-Agent" : "pyfa {0} (Python-urllib2)".format(versionString)} proxy = NetworkSettings.getInstance().getProxySettings() if proxy is not None: # proxy is tuple of (host, port): (u'192.168.20.1', 3128) + # build default proxy handler proxy_handler = urllib2.ProxyHandler({'https': "{0}:{1}".format(proxy[0], proxy[1])}) proxy_auth = NetworkSettings.getInstance().getProxyAuthDetails() if proxy_auth is not None: - # if we have proxy login/pass configured, construct a different opener, - # which uses both proxy handler *and* proxy auth handler - password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm() - # A realm of None is considered a catch-all realm, which is searched if no other realm fits. - password_mgr.add_password(realm=None, - uri='https://{0}:{1}'.format(proxy[0], proxy[1]), # TODO: is uri correct? - user=proxy_auth[0], - passwd=proxy_auth[1]) - proxy_auth_handler = urllib2.ProxyBasicAuthHandler(password_mgr) - opener = urllib2.build_opener(proxy_handler, proxy_auth_handler) - else: - # With no proxy login/pass provided, use opener with the only proxy handler - opener = urllib2.build_opener(proxy_handler) + # add login:password@ in front of proxy address + new_proxy_address = '{0}:{1}@{2}:{3}'.format(proxy_auth[0], proxy_auth[1], proxy[0], proxy[1]) + proxy_handler = urllib2.ProxyHandler({'https': new_proxy_address}) + opener = urllib2.build_opener(proxy_handler) urllib2.install_opener(opener) + else: + # This is a bug fix, explicitly disable possibly previously installed + # opener with proxy, by urllib2.install_opener() a few lines above in code. + # Now this explicitly disables proxy handler, "uninstalling" opener. + # This is used in case when user had proxy enabled, so proxy_handler was already + # installed globally, and then user had disabled the proxy, so we should clear that opener + urllib2.install_opener(None) + # another option could be installing a default opener: + # urllib2.install_opener(urllib2.build_opener()) request = urllib2.Request(url, headers=headers, data=urllib.urlencode(data) if data else None) try: From 2a9a4fbdff21fe61d1155f1f7ca85ccbff334aa2 Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sun, 9 Oct 2016 13:05:39 +0500 Subject: [PATCH 07/76] service/settings: make getProxyAuthDetails() return None again --- service/settings.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/service/settings.py b/service/settings.py index a1fe77572..a1607d150 100644 --- a/service/settings.py +++ b/service/settings.py @@ -218,9 +218,9 @@ class NetworkSettings(): def getProxyAuthDetails(self): if self.getMode() == self.PROXY_MODE_NONE: - return ("", "") # never return none, return tuple with empty strings + return None if (self.serviceNetworkSettings["login"] is None) or (self.serviceNetworkSettings["password"] is None): - return ("", "") # never return none, return tuple with empty strings + return None # in all other cases, return tuple of (login, password) return (self.serviceNetworkSettings["login"], self.serviceNetworkSettings["password"]) From 1e9f911385e341f639374f06d40c0a2072eab2db Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sun, 9 Oct 2016 13:07:13 +0500 Subject: [PATCH 08/76] service/settings: setProxyAuthDetails(): empty string as login means no password too --- service/settings.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/service/settings.py b/service/settings.py index a1607d150..d88354f12 100644 --- a/service/settings.py +++ b/service/settings.py @@ -229,6 +229,10 @@ class NetworkSettings(): self.serviceNetworkSettings["login"] = None self.serviceNetworkSettings["password"] = None return + if login == "": # empty login unsets proxy auth info + self.serviceNetworkSettings["login"] = None + self.serviceNetworkSettings["password"] = None + return self.serviceNetworkSettings["login"] = login self.serviceNetworkSettings["password"] = password From 2b5535c5d1a1fb23f59718ca99f74fafcf5c6ff1 Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sun, 9 Oct 2016 13:14:37 +0500 Subject: [PATCH 09/76] service/network: change "if" condition as suggested by @blitzmann --- service/network.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/service/network.py b/service/network.py index 3279b0769..f7383e03d 100644 --- a/service/network.py +++ b/service/network.py @@ -76,14 +76,16 @@ class Network(): proxy = NetworkSettings.getInstance().getProxySettings() if proxy is not None: - # proxy is tuple of (host, port): (u'192.168.20.1', 3128) - # build default proxy handler - proxy_handler = urllib2.ProxyHandler({'https': "{0}:{1}".format(proxy[0], proxy[1])}) + # proxy is a tuple of (host, port): (u'192.168.20.1', 3128) proxy_auth = NetworkSettings.getInstance().getProxyAuthDetails() + # proxy_auth is a tuple of (login, password) or None if proxy_auth is not None: # add login:password@ in front of proxy address - new_proxy_address = '{0}:{1}@{2}:{3}'.format(proxy_auth[0], proxy_auth[1], proxy[0], proxy[1]) - proxy_handler = urllib2.ProxyHandler({'https': new_proxy_address}) + proxy_handler = urllib2.ProxyHandler({'https': '{0}:{1}@{2}:{3}'.format( + proxy_auth[0], proxy_auth[1], proxy[0], proxy[1])}) + else: + # build proxy handler with no login/pass info + proxy_handler = urllib2.ProxyHandler({'https': "{0}:{1}".format(proxy[0], proxy[1])}) opener = urllib2.build_opener(proxy_handler) urllib2.install_opener(opener) else: From 160de64135ea3d1bd2bbd8f95f65e4dc535ff426 Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sun, 9 Oct 2016 13:16:38 +0500 Subject: [PATCH 10/76] Network settings GUI: be prepared for None return from getProxyAuthDetails() --- gui/builtinPreferenceViews/pyfaNetworkPreferences.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gui/builtinPreferenceViews/pyfaNetworkPreferences.py b/gui/builtinPreferenceViews/pyfaNetworkPreferences.py index c2767ca31..042237214 100644 --- a/gui/builtinPreferenceViews/pyfaNetworkPreferences.py +++ b/gui/builtinPreferenceViews/pyfaNetworkPreferences.py @@ -70,6 +70,8 @@ class PFNetworkPref ( PreferenceView): self.nPort = self.settings.getPort() self.nType = self.settings.getType() self.nAuth = self.settings.getProxyAuthDetails() # tuple of (login, password) + if self.nAuth is None: + self.nAuth = ("", "") # we don't want None here, it should be a tuple ptypeSizer = wx.BoxSizer( wx.HORIZONTAL ) From a06810c7c8dfe4462bfd70000866e7d3d3d66fcf Mon Sep 17 00:00:00 2001 From: Alexey Min Date: Sun, 9 Oct 2016 13:20:20 +0500 Subject: [PATCH 11/76] Network settings GUI: Use "Username:" and "Password:" for labels, as you wish --- gui/builtinPreferenceViews/pyfaNetworkPreferences.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gui/builtinPreferenceViews/pyfaNetworkPreferences.py b/gui/builtinPreferenceViews/pyfaNetworkPreferences.py index 042237214..bd79dd88c 100644 --- a/gui/builtinPreferenceViews/pyfaNetworkPreferences.py +++ b/gui/builtinPreferenceViews/pyfaNetworkPreferences.py @@ -115,10 +115,10 @@ class PFNetworkPref ( PreferenceView): mainSizer.Add( fgAddrSizer, 0, wx.EXPAND, 5) # proxy auth information: login and pass - self.stPSetLogin = wx.StaticText(panel, wx.ID_ANY, u"Proxy login:", wx.DefaultPosition, wx.DefaultSize, 0) + self.stPSetLogin = wx.StaticText(panel, wx.ID_ANY, u"Username:", wx.DefaultPosition, wx.DefaultSize, 0) self.stPSetLogin.Wrap(-1) self.editProxySettingsLogin = wx.TextCtrl(panel, wx.ID_ANY, self.nAuth[0], wx.DefaultPosition, wx.DefaultSize, 0) - self.stPSetPassword = wx.StaticText(panel, wx.ID_ANY, u"pass:", wx.DefaultPosition, wx.DefaultSize, 0) + self.stPSetPassword = wx.StaticText(panel, wx.ID_ANY, u"Password:", wx.DefaultPosition, wx.DefaultSize, 0) self.stPSetPassword.Wrap(-1) self.editProxySettingsPassword = wx.TextCtrl(panel, wx.ID_ANY, self.nAuth[1], wx.DefaultPosition, wx.DefaultSize, wx.TE_PASSWORD) From 9be9a21b22ff3c357e3db8c9351d03ad293bf4a3 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Sun, 16 Oct 2016 15:09:17 -0700 Subject: [PATCH 12/76] Applied Mining Crystal Bonus to modules Previously the mining crystal bonus was not applied to modules, so adding a crystal didn't change the amount mined at all. This now applies. Left the old application in place, so it still applies to a nonsense `specialtyMiningAmount` stat if you want to see that seperated out for some weird reason. --- eos/effects/mininginfomultiplier.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eos/effects/mininginfomultiplier.py b/eos/effects/mininginfomultiplier.py index 10ecb4eef..26e31b783 100644 --- a/eos/effects/mininginfomultiplier.py +++ b/eos/effects/mininginfomultiplier.py @@ -6,3 +6,5 @@ type = "passive" def handler(fit, module, context): module.multiplyItemAttr("specialtyMiningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Mining"), + "miningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) From d3cb968c195731a31336ff5360b2c28865da9283 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Sun, 16 Oct 2016 21:44:11 -0700 Subject: [PATCH 13/76] Why the hacks, CCP? --- eos/effects/mininginfomultiplier.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/eos/effects/mininginfomultiplier.py b/eos/effects/mininginfomultiplier.py index 26e31b783..d6a961bd7 100644 --- a/eos/effects/mininginfomultiplier.py +++ b/eos/effects/mininginfomultiplier.py @@ -5,6 +5,5 @@ # Charges named like: Mining Crystal (32 of 32) type = "passive" def handler(fit, module, context): - module.multiplyItemAttr("specialtyMiningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) + #module.multiplyItemAttr("specialtyMiningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) + module.multiplyItemAttr("miningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) From f1771a61d0a599e63ba1cf696f43685a0a2c8e3e Mon Sep 17 00:00:00 2001 From: Ryan Holmes Date: Tue, 18 Oct 2016 11:31:41 -0400 Subject: [PATCH 14/76] We're now using Slack for communications \o/ --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7253781ce..91a915eb0 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # pyfa -[![Join the chat at https://gitter.im/pyfa-org/Pyfa](https://badges.gitter.im/pyfa-org/Pyfa.svg)](https://gitter.im/pyfa-org/Pyfa?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +[![Join us on Slack!](https://pyfainvite.azurewebsites.net/badge.svg)](https://pyfainvite.azurewebsites.net/) ![pyfa](https://cloud.githubusercontent.com/assets/3904767/10271512/af385ef2-6ade-11e5-8f67-52b8b1e4c797.PNG) From c7554ec400d31774933b119735f933b4d2732119 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:06:39 -0700 Subject: [PATCH 15/76] Removed reassigned var i was already declared by the parent loop, removed reassignment --- eos/saveddata/module.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 049e98939..7cc186c19 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -518,9 +518,10 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): g = eos.db.getGroup(int(itemChargeGroup), eager=("items.icon", "items.attributes")) if g is None: continue - for i in g.items: - if i.published and self.isValidCharge(i): - validCharges.add(i) + for singleItem in g.items: + if singleItem.published and self.isValidCharge(singleItem): + validCharges.add(singleItem) + return validCharges From c1dfd676e11ed74650759ac8bc11990b5a33efff Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:08:50 -0700 Subject: [PATCH 16/76] Simplified boolean check --- eos/saveddata/booster.py | 4 ++-- eos/saveddata/cargo.py | 2 +- eos/saveddata/character.py | 4 ++-- eos/saveddata/drone.py | 2 +- eos/saveddata/fighter.py | 2 +- eos/saveddata/fit.py | 2 +- eos/saveddata/fleet.py | 6 +++--- eos/saveddata/implant.py | 4 ++-- eos/saveddata/module.py | 2 +- eos/saveddata/user.py | 2 +- 10 files changed, 15 insertions(+), 15 deletions(-) diff --git a/eos/saveddata/booster.py b/eos/saveddata/booster.py index 9d0e98ae0..a8c496ae0 100644 --- a/eos/saveddata/booster.py +++ b/eos/saveddata/booster.py @@ -105,7 +105,7 @@ class Booster(HandledItem, ItemAttrShortcut): def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): if forceProjected: return - if self.active == False: return + if not self.active: return for effect in self.item.effects.itervalues(): if effect.runTime == runTime and effect.isType("passive"): effect.handler(fit, self, ("booster",)) @@ -122,7 +122,7 @@ class Booster(HandledItem, ItemAttrShortcut): "active" : lambda val: isinstance(val, bool), "slot" : lambda val: isinstance(val, int) and val >= 1 and val <= 3} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def __deepcopy__(self, memo): diff --git a/eos/saveddata/cargo.py b/eos/saveddata/cargo.py index 676b7cebf..ea90d6f8a 100644 --- a/eos/saveddata/cargo.py +++ b/eos/saveddata/cargo.py @@ -71,7 +71,7 @@ class Cargo(HandledItem, ItemAttrShortcut): map = {"fitID": lambda val: isinstance(val, int), "itemID" : lambda val: isinstance(val, int)} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def __deepcopy__(self, memo): diff --git a/eos/saveddata/character.py b/eos/saveddata/character.py index 1f5832ea2..a0b56c2f8 100644 --- a/eos/saveddata/character.py +++ b/eos/saveddata/character.py @@ -243,7 +243,7 @@ class Character(object): "apiKey" : lambda val: val is None or (isinstance(val, basestring) and len(val) > 0), "ownerID" : lambda val: isinstance(val, int) or val is None} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def __repr__(self): @@ -354,7 +354,7 @@ class Skill(HandledItem): map = {"characterID": lambda val: isinstance(val, int), "skillID" : lambda val: isinstance(val, int)} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def __deepcopy__(self, memo): diff --git a/eos/saveddata/drone.py b/eos/saveddata/drone.py index 8033384ab..29e05d41e 100644 --- a/eos/saveddata/drone.py +++ b/eos/saveddata/drone.py @@ -185,7 +185,7 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): "amount" : lambda val: isinstance(val, int) and val >= 0, "amountActive" : lambda val: isinstance(val, int) and val <= self.amount and val >= 0} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def clear(self): diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index bc96c5f10..5043f1ad6 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -219,7 +219,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): "amount" : lambda val: isinstance(val, int) and val >= -1, } - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def clear(self): diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index a3000267f..62064c0a7 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -364,7 +364,7 @@ class Fit(object): "ownerID" : lambda val: isinstance(val, int) or val is None, "shipID" : lambda val: isinstance(val, int) or val is None} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def clear(self, projected=False): diff --git a/eos/saveddata/fleet.py b/eos/saveddata/fleet.py index 12c1e78f1..780301968 100644 --- a/eos/saveddata/fleet.py +++ b/eos/saveddata/fleet.py @@ -41,7 +41,7 @@ class Fleet(object): self.broken = True #Now calculate our own if we aren't broken - if self.broken == False: + if not self.broken: #We only get our own bonuses *Sadface* store.apply(leader, "fleet") @@ -104,7 +104,7 @@ class Wing(object): self.broken = True #Check if we aren't broken, if we aren't, boost - if self.broken == False: + if not self.broken: store.apply(leader, "wing") else: #We broke, don't go up @@ -165,7 +165,7 @@ class Squad(object): if len(self.members) <= 0 or leader is None or leader.character is None or leader.character.getSkill("Leadership").level * 2 < len(self.members): self.broken = True - if self.broken == False: + if not self.broken: for member in self.members: store.apply(member, "squad") else: diff --git a/eos/saveddata/implant.py b/eos/saveddata/implant.py index a4a6de74d..a368e9714 100644 --- a/eos/saveddata/implant.py +++ b/eos/saveddata/implant.py @@ -86,7 +86,7 @@ class Implant(HandledItem, ItemAttrShortcut): def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): if forceProjected: return - if self.active == False: return + if not self.active: return for effect in self.item.effects.itervalues(): if effect.runTime == runTime and effect.isType("passive"): effect.handler(fit, self, ("implant",)) @@ -97,7 +97,7 @@ class Implant(HandledItem, ItemAttrShortcut): "itemID" : lambda val: isinstance(val, int), "active": lambda val: isinstance(val, bool)} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def __deepcopy__(self, memo): diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 7cc186c19..1384b4edf 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -561,7 +561,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): "itemID" : lambda val: val is None or isinstance(val, int), "ammoID" : lambda val: isinstance(val, int)} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val def clear(self): diff --git a/eos/saveddata/user.py b/eos/saveddata/user.py index 1baeb93ce..26144feb0 100644 --- a/eos/saveddata/user.py +++ b/eos/saveddata/user.py @@ -50,5 +50,5 @@ class User(object): "password" : lambda val: isinstance(val, basestring) and len(val) == 96, "admin" : lambda val: isinstance(val, bool)} - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val From 3187bab90a4382a30f4816f14e6f2747bb5d2f2b Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:11:20 -0700 Subject: [PATCH 17/76] Simplified Chained Comparison --- eos/saveddata/booster.py | 2 +- eos/saveddata/drone.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/eos/saveddata/booster.py b/eos/saveddata/booster.py index a8c496ae0..cfe9b5a72 100644 --- a/eos/saveddata/booster.py +++ b/eos/saveddata/booster.py @@ -120,7 +120,7 @@ class Booster(HandledItem, ItemAttrShortcut): "itemID" : lambda val: isinstance(val, int), "ammoID" : lambda val: isinstance(val, int), "active" : lambda val: isinstance(val, bool), - "slot" : lambda val: isinstance(val, int) and val >= 1 and val <= 3} + "slot" : lambda val: isinstance(val, int) and 1 <= val <= 3} if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val diff --git a/eos/saveddata/drone.py b/eos/saveddata/drone.py index 29e05d41e..750d0bf8e 100644 --- a/eos/saveddata/drone.py +++ b/eos/saveddata/drone.py @@ -183,7 +183,7 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): "itemID" : lambda val: isinstance(val, int), "chargeID" : lambda val: isinstance(val, int), "amount" : lambda val: isinstance(val, int) and val >= 0, - "amountActive" : lambda val: isinstance(val, int) and val <= self.amount and val >= 0} + "amountActive" : lambda val: isinstance(val, int) and self.amount >= val >= 0} if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) else: return val From 699276ca58167e284098db63eabfcc489cf862a2 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:15:36 -0700 Subject: [PATCH 18/76] Add __init__ to classes missing it Mostly just to shut pyCharm up, but it's good practice. --- eos/db/saveddata/loadDefaultDatabaseValues.py | 3 +++ eos/enum.py | 3 +++ eos/modifiedAttributeDict.py | 3 ++- eos/saveddata/fit.py | 3 +++ eos/saveddata/module.py | 9 +++++++++ 5 files changed, 20 insertions(+), 1 deletion(-) diff --git a/eos/db/saveddata/loadDefaultDatabaseValues.py b/eos/db/saveddata/loadDefaultDatabaseValues.py index 1d44f7076..696ea831f 100644 --- a/eos/db/saveddata/loadDefaultDatabaseValues.py +++ b/eos/db/saveddata/loadDefaultDatabaseValues.py @@ -24,6 +24,9 @@ class ImportError(Exception): pass class DefaultDatabaseValues(): + def __init__(self): + pass + instance = None @classmethod diff --git a/eos/enum.py b/eos/enum.py index e105d014c..e9fb20a0b 100644 --- a/eos/enum.py +++ b/eos/enum.py @@ -1,4 +1,7 @@ class Enum(): + def __init__(self): + pass + @classmethod def getTypes(cls): for stuff in cls.__dict__: diff --git a/eos/modifiedAttributeDict.py b/eos/modifiedAttributeDict.py index 0f366af6f..dd2abcf7a 100644 --- a/eos/modifiedAttributeDict.py +++ b/eos/modifiedAttributeDict.py @@ -42,7 +42,8 @@ class ModifiedAttributeDict(collections.MutableMapping): OVERRIDES = False class CalculationPlaceholder(): - pass + def __init__(self): + pass def __init__(self, fit=None, parent=None): self.parent = parent diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 62064c0a7..c69700e6e 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -44,6 +44,9 @@ except ImportError: from utils.compat import OrderedDict class ImplantLocation(Enum): + def __init__(self): + pass + FIT = 0 CHARACTER = 1 diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 1384b4edf..76680a2bb 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -30,12 +30,18 @@ import logging logger = logging.getLogger(__name__) class State(Enum): + def __init__(self): + pass + OFFLINE = -1 ONLINE = 0 ACTIVE = 1 OVERHEATED = 2 class Slot(Enum): + def __init__(self): + pass + # These are self-explanatory LOW = 1 MED = 2 @@ -55,6 +61,9 @@ class Slot(Enum): F_HEAVY = 12 class Hardpoint(Enum): + def __init__(self): + pass + NONE = 0 MISSILE = 1 TURRET = 2 From c73b4464829896ed4a337cabc626940ba697279e Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:17:34 -0700 Subject: [PATCH 19/76] Comparison with None performed iwth equality operators --- eos/db/util.py | 2 +- eos/saveddata/drone.py | 4 ++-- eos/saveddata/module.py | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eos/db/util.py b/eos/db/util.py index 47a950c80..fe7080123 100644 --- a/eos/db/util.py +++ b/eos/db/util.py @@ -32,7 +32,7 @@ replace = {"attributes": "_Item__attributes", "projectedFits": "_Fit__projectedFits"} def processEager(eager): - if eager == None: + if eager is None: return tuple() else: l = [] diff --git a/eos/saveddata/drone.py b/eos/saveddata/drone.py index 750d0bf8e..9a329e9f2 100644 --- a/eos/saveddata/drone.py +++ b/eos/saveddata/drone.py @@ -117,7 +117,7 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): return self.damageStats() def damageStats(self, targetResists = None): - if self.__dps == None: + if self.__dps is None: self.__volley = 0 self.__dps = 0 if self.dealsDamage is True and self.amountActive > 0: @@ -140,7 +140,7 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): @property def miningStats(self): - if self.__miningyield == None: + if self.__miningyield is None: if self.mines is True and self.amountActive > 0: attr = "duration" getter = self.getModifiedItemAttr diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 76680a2bb..be1aed929 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -311,7 +311,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): self.__itemModifiedAttributes.clear() def damageStats(self, targetResists): - if self.__dps == None: + if self.__dps is None: self.__dps = 0 self.__volley = 0 @@ -332,7 +332,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): @property def miningStats(self): - if self.__miningyield == None: + if self.__miningyield is None: if self.isEmpty: self.__miningyield = 0 else: From ccd8ee87f38dae823d3b14812664e40b366fea3f Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:18:47 -0700 Subject: [PATCH 20/76] Create dictionary directly --- eos/saveddata/fit.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index c69700e6e..733caabc6 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -808,10 +808,9 @@ class Fit(object): def calculateSustainableTank(self, effective=True): if self.__sustainableTank is None: if self.capStable: - sustainable = {} - sustainable["armorRepair"] = self.extraAttributes["armorRepair"] - sustainable["shieldRepair"] = self.extraAttributes["shieldRepair"] - sustainable["hullRepair"] = self.extraAttributes["hullRepair"] + sustainable = {"armorRepair": self.extraAttributes["armorRepair"], + "shieldRepair": self.extraAttributes["shieldRepair"], + "hullRepair": self.extraAttributes["hullRepair"]} else: sustainable = {} From 32068e8d8e56aa80924e3eef0c057f2ac3db8618 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:22:45 -0700 Subject: [PATCH 21/76] Create set directly --- eos/saveddata/drone.py | 5 ++++- eos/saveddata/fighter.py | 5 ++++- eos/saveddata/module.py | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/eos/saveddata/drone.py b/eos/saveddata/drone.py index 9a329e9f2..1ca07a784 100644 --- a/eos/saveddata/drone.py +++ b/eos/saveddata/drone.py @@ -201,7 +201,10 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): # Do not allow to apply offensive modules on ship with offensive module immunite, with few exceptions # (all effects which apply instant modification are exception, generally speaking) if item.offensive and projectedOnto.ship.getModifiedItemAttr("disallowOffensiveModifiers") == 1: - offensiveNonModifiers = set(("energyDestabilizationNew", "leech", "energyNosferatuFalloff", "energyNeutralizerFalloff")) + offensiveNonModifiers = {"energyDestabilizationNew", + "leech", + "energyNosferatuFalloff", + "energyNeutralizerFalloff"} if not offensiveNonModifiers.intersection(set(item.effects)): return False # If assistive modules are not allowed, do not let to apply these altogether diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index 5043f1ad6..e409b1578 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -236,7 +236,10 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): # Do not allow to apply offensive modules on ship with offensive module immunite, with few exceptions # (all effects which apply instant modification are exception, generally speaking) if item.offensive and projectedOnto.ship.getModifiedItemAttr("disallowOffensiveModifiers") == 1: - offensiveNonModifiers = set(("energyDestabilizationNew", "leech", "energyNosferatuFalloff", "energyNeutralizerFalloff")) + offensiveNonModifiers = {"energyDestabilizationNew", + "leech", + "energyNosferatuFalloff", + "energyNeutralizerFalloff"} if not offensiveNonModifiers.intersection(set(item.effects)): return False # If assistive modules are not allowed, do not let to apply these altogether diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index be1aed929..9ae63aafd 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -489,7 +489,10 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): # Do not allow to apply offensive modules on ship with offensive module immunite, with few exceptions # (all effects which apply instant modification are exception, generally speaking) if item.offensive and projectedOnto.ship.getModifiedItemAttr("disallowOffensiveModifiers") == 1: - offensiveNonModifiers = set(("energyDestabilizationNew", "leech", "energyNosferatuFalloff", "energyNeutralizerFalloff")) + offensiveNonModifiers = {"energyDestabilizationNew", + "leech", + "energyNosferatuFalloff", + "energyNeutralizerFalloff"} if not offensiveNonModifiers.intersection(set(item.effects)): return False # If assistive modules are not allowed, do not let to apply these altogether From 02c8b46b74ae3a65da0f173b7e8337c1c9fb8da5 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:26:18 -0700 Subject: [PATCH 22/76] Fixed formatting issues Mixed spaces/tabs. Also converted to using container instead of module. Reformatted file. --- eos/effects/fighterabilityevasivemaneuvers.py | 31 +++++++++++++------ 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/eos/effects/fighterabilityevasivemaneuvers.py b/eos/effects/fighterabilityevasivemaneuvers.py index 19af7030f..bf17edc92 100644 --- a/eos/effects/fighterabilityevasivemaneuvers.py +++ b/eos/effects/fighterabilityevasivemaneuvers.py @@ -13,12 +13,25 @@ grouped = True type = "active" runTime = "late" -def handler(fit, module, context): - module.boostItemAttr("maxVelocity", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversSpeedBonus")) - module.boostItemAttr("signatureRadius", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversSignatureRadiusBonus"), stackingPenalties = True) - - # These may not have stacking penalties, but there's nothing else that affects the attributes yet to check. - module.multiplyItemAttr("shieldEmDamageResonance", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversEmResonance"), stackingPenalties = True) - module.multiplyItemAttr("shieldThermalDamageResonance", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversThermResonance"), stackingPenalties = True) - module.multiplyItemAttr("shieldKineticDamageResonance", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversKinResonance"), stackingPenalties = True) - module.multiplyItemAttr("shieldExplosiveDamageResonance", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversExpResonance"), stackingPenalties = True) \ No newline at end of file + + +def handler(fit, container, context): + container.boostItemAttr("maxVelocity", + container.getModifiedItemAttr("fighterAbilityEvasiveManeuversSpeedBonus")) + container.boostItemAttr("signatureRadius", + container.getModifiedItemAttr("fighterAbilityEvasiveManeuversSignatureRadiusBonus"), + stackingPenalties=True) + + # These may not have stacking penalties, but there's nothing else that affects the attributes yet to check. + container.multiplyItemAttr("shieldEmDamageResonance", + container.getModifiedItemAttr("fighterAbilityEvasiveManeuversEmResonance"), + stackingPenalties=True) + container.multiplyItemAttr("shieldThermalDamageResonance", + container.getModifiedItemAttr("fighterAbilityEvasiveManeuversThermResonance"), + stackingPenalties=True) + container.multiplyItemAttr("shieldKineticDamageResonance", + container.getModifiedItemAttr("fighterAbilityEvasiveManeuversKinResonance"), + stackingPenalties=True) + container.multiplyItemAttr("shieldExplosiveDamageResonance", + container.getModifiedItemAttr("fighterAbilityEvasiveManeuversExpResonance"), + stackingPenalties=True) From 45f88a92dcab3734c1a11dd7429f5d824afd7bba Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:27:29 -0700 Subject: [PATCH 23/76] Use list literal --- eos/db/saveddata/loadDefaultDatabaseValues.py | 271 +++++++++--------- 1 file changed, 132 insertions(+), 139 deletions(-) diff --git a/eos/db/saveddata/loadDefaultDatabaseValues.py b/eos/db/saveddata/loadDefaultDatabaseValues.py index 696ea831f..42b0cd877 100644 --- a/eos/db/saveddata/loadDefaultDatabaseValues.py +++ b/eos/db/saveddata/loadDefaultDatabaseValues.py @@ -31,91 +31,86 @@ class DefaultDatabaseValues(): @classmethod def importDamageProfileDefaults(self): - damageProfileList = [] - damageProfileList.append(["Uniform", "25", "25", "25", "25"]) - damageProfileList.append(["[Generic]EM", "100", "0", "0", "0"]) - damageProfileList.append(["[Generic]Thermal", "0", "100", "0", "0"]) - damageProfileList.append(["[Generic]Kinetic", "0", "0", "100", "0"]) - damageProfileList.append(["[Generic]Explosive", "0", "0", "0", "100"]) - damageProfileList.append(["[NPC][Asteroid] Blood Raiders", "5067", "4214", "0", "0"]) - damageProfileList.append(["[Bombs]Concussion Bomb", "0", "0", "6400", "0"]) - damageProfileList.append(["[Bombs]Electron Bomb", "6400", "0", "0", "0"]) - damageProfileList.append(["[Bombs]Scorch Bomb", "0", "6400", "0", "0"]) - damageProfileList.append(["[Bombs]Shrapnel Bomb", "0", "0", "0", "6400"]) - damageProfileList.append(["[Frequency Crystals][T2] Gleam", "56", "56", "0", "0"]) - damageProfileList.append(["[Frequency Crystals][T2] Aurora", "40", "24", "0", "0"]) - damageProfileList.append(["[Frequency Crystals][T2] Scorch", "72", "16", "0", "0"]) - damageProfileList.append(["[Frequency Crystals][T2] Conflagration", "61.6", "61.6", "0", "0"]) - damageProfileList.append(["[Frequency Crystals]Gamma", "61.6", "35.2", "0", "0"]) - damageProfileList.append(["[Frequency Crystals]Infrared", "44", "17.6", "0", "0"]) - damageProfileList.append(["[Frequency Crystals]Microwave", "35.2", "17.6", "0", "0"]) - damageProfileList.append(["[Frequency Crystals]Multifrequency", "61.6", "44", "0", "0"]) - damageProfileList.append(["[Frequency Crystals]Radio", "44", "0", "0", "0"]) - damageProfileList.append(["[Frequency Crystals]Standard", "44", "26.4", "0", "0"]) - damageProfileList.append(["[Frequency Crystals]Ultraviolet", "52.8", "26.4", "0", "0"]) - damageProfileList.append(["[Frequency Crystals]Xray", "52.8", "35.2", "0", "0"]) - damageProfileList.append(["[Hybrid Charges][T2] Void", "0", "61.6", "61.6", "0"]) - damageProfileList.append(["[Hybrid Charges][T2] Null", "0", "48", "40", "0"]) - damageProfileList.append(["[Hybrid Charges][T2] Javelin", "0", "64", "48", "0"]) - damageProfileList.append(["[Hybrid Charges][T2] Spike", "0", "32", "32", "0"]) - damageProfileList.append(["[Hybrid Charges]Antimatter", "0", "48", "67.2", "0"]) - damageProfileList.append(["[Hybrid Charges]Iridium", "0", "28.8", "38.4", "0"]) - damageProfileList.append(["[Hybrid Charges]Iron", "0", "19.2", "28.8", "0"]) - damageProfileList.append(["[Hybrid Charges]Lead", "0", "28.8", "48", "0"]) - damageProfileList.append(["[Hybrid Charges]Plutonium", "0", "48", "57.6", "0"]) - damageProfileList.append(["[Hybrid Charges]Thorium", "0", "38.4", "48", "0"]) - damageProfileList.append(["[Hybrid Charges]Tungsten", "0", "19.2", "38.4", "0"]) - damageProfileList.append(["[Hybrid Charges]Uranium", "0", "38.4", "57.6", "0"]) - damageProfileList.append(["[Missiles]Mjolnir", "100", "0", "0", "0"]) - damageProfileList.append(["[Missiles]Inferno", "0", "100", "0", "0"]) - damageProfileList.append(["[Missiles]Scourge", "0", "0", "100", "0"]) - damageProfileList.append(["[Missiles]Nova", "0", "0", "0", "100"]) - damageProfileList.append(["[Missiles][Structure) Standup Missile", "100", "100", "100", "100"]) - damageProfileList.append(["[Projectile Ammo][T2] Tremor", "0", "0", "24", "40"]) - damageProfileList.append(["[Projectile Ammo][T2] Quake", "0", "0", "40", "72"]) - damageProfileList.append(["[Projectile Ammo][T2] Hail", "0", "0", "26.4", "96.8"]) - damageProfileList.append(["[Projectile Ammo][T2] Barrage", "0", "0", "40", "48"]) - damageProfileList.append(["[Projectile Ammo]Carbonized Lead", "0", "0", "35.2", "8.8"]) - damageProfileList.append(["[Projectile Ammo]Depleted Uranium", "0", "26.4", "17.6", "26.4"]) - damageProfileList.append(["[Projectile Ammo]EMP", "79.2", "0", "8.8", "17.6"]) - damageProfileList.append(["[Projectile Ammo]Fusion", "0", "0", "17.6", "88"]) - damageProfileList.append(["[Projectile Ammo]Nuclear", "0", "0", "8.8", "35.2"]) - damageProfileList.append(["[Projectile Ammo]Phased Plasma", "0", "88", "17.6", "0"]) - damageProfileList.append(["[Projectile Ammo]Proton", "26.4", "0", "17.6", "0"]) - damageProfileList.append(["[Projectile Ammo]Titanium Sabot", "0", "0", "52.8", "176"]) - damageProfileList.append(["[NPC][Burner] Cruor (Blood Raiders)", "90", "90", "0", "0"]) - damageProfileList.append(["[NPC][Burner] Dramiel (Angel)", "55", "0", "20", "96"]) - damageProfileList.append(["[NPC][Burner] Daredevil (Serpentis)", "0", "110", "154", "0"]) - damageProfileList.append(["[NPC][Burner] Succubus (Sanshas Nation)", "135", "30", "0", "0"]) - damageProfileList.append(["[NPC][Burner] Worm (Guristas)", "0", "0", "228", "0"]) - damageProfileList.append(["[NPC][Burner] Enyo", "0", "147", "147", "0"]) - damageProfileList.append(["[NPC][Burner] Hawk", "0", "0", "247", "0"]) - damageProfileList.append(["[NPC][Burner] Jaguar", "36", "0", "50", "182"]) - damageProfileList.append(["[NPC][Burner] Vengeance", "232", "0", "0", "0"]) - damageProfileList.append(["[NPC][Burner] Ashimmu (Blood Raiders)", "260", "100", "0", "0"]) - damageProfileList.append(["[NPC][Burner] Talos", "0", "413", "413", "0"]) - damageProfileList.append(["[NPC][Burner] Sentinel", "0", "75", "0", "90"]) - damageProfileList.append(["[NPC][Asteroid] Angel Cartel", "1838", "562", "2215", "3838"]) - damageProfileList.append(["[NPC][Deadspace] Angel Cartel", "369", "533", "1395", "3302"]) - damageProfileList.append(["[NPC][Deadspace] Blood Raiders", "6040", "5052", "10", "15"]) - damageProfileList.append(["[NPC][Asteroid] Guristas", "0", "1828", "7413", "0"]) - damageProfileList.append(["[NPC][Deadspace] Guristas", "0", "1531", "9680", "0"]) - damageProfileList.append(["[NPC][Asteroid] Rogue Drone", "394", "666", "1090", "1687"]) - damageProfileList.append(["[NPC][Deadspace] Rogue Drone", "276", "1071", "1069", "871"]) - damageProfileList.append(["[NPC][Asteroid] Sanshas Nation", "5586", "4112", "0", "0"]) - damageProfileList.append(["[NPC][Deadspace] Sanshas Nation", "3009", "2237", "0", "0"]) - damageProfileList.append(["[NPC][Asteroid] Serpentis", "0", "5373", "4813", "0"]) - damageProfileList.append(["[NPC][Deadspace] Serpentis", "0", "3110", "1929", "0"]) - damageProfileList.append(["[NPC][Mission] Amarr Empire", "4464", "3546", "97", "0"]) - damageProfileList.append(["[NPC][Mission] Caldari State", "0", "2139", "4867", "0"]) - damageProfileList.append(["[NPC][Mission] CONCORD", "336", "134", "212", "412"]) - damageProfileList.append(["[NPC][Mission] Gallente Federation", "9", "3712", "2758", "0"]) - damageProfileList.append(["[NPC][Mission] Khanid", "612", "483", "43", "6"]) - damageProfileList.append(["[NPC][Mission] Minmatar Republic", "1024", "388", "1655", "4285"]) - damageProfileList.append(["[NPC][Mission] Mordus Legion", "25", "262", "625", "0"]) - damageProfileList.append(["[NPC][Mission] Thukker", "0", "52", "10", "79"]) - damageProfileList.append(["[NPC][Other] Sleepers", "1472", "1472", "1384", "1384"]) - damageProfileList.append(["[NPC][Other] Sansha Incursion", "1682", "1347", "3678", "3678"]) + damageProfileList = [["Uniform", "25", "25", "25", "25"], ["[Generic]EM", "100", "0", "0", "0"], + ["[Generic]Thermal", "0", "100", "0", "0"], ["[Generic]Kinetic", "0", "0", "100", "0"], + ["[Generic]Explosive", "0", "0", "0", "100"], + ["[NPC][Asteroid] Blood Raiders", "5067", "4214", "0", "0"], + ["[Bombs]Concussion Bomb", "0", "0", "6400", "0"], + ["[Bombs]Electron Bomb", "6400", "0", "0", "0"], + ["[Bombs]Scorch Bomb", "0", "6400", "0", "0"], + ["[Bombs]Shrapnel Bomb", "0", "0", "0", "6400"], + ["[Frequency Crystals][T2] Gleam", "56", "56", "0", "0"], + ["[Frequency Crystals][T2] Aurora", "40", "24", "0", "0"], + ["[Frequency Crystals][T2] Scorch", "72", "16", "0", "0"], + ["[Frequency Crystals][T2] Conflagration", "61.6", "61.6", "0", "0"], + ["[Frequency Crystals]Gamma", "61.6", "35.2", "0", "0"], + ["[Frequency Crystals]Infrared", "44", "17.6", "0", "0"], + ["[Frequency Crystals]Microwave", "35.2", "17.6", "0", "0"], + ["[Frequency Crystals]Multifrequency", "61.6", "44", "0", "0"], + ["[Frequency Crystals]Radio", "44", "0", "0", "0"], + ["[Frequency Crystals]Standard", "44", "26.4", "0", "0"], + ["[Frequency Crystals]Ultraviolet", "52.8", "26.4", "0", "0"], + ["[Frequency Crystals]Xray", "52.8", "35.2", "0", "0"], + ["[Hybrid Charges][T2] Void", "0", "61.6", "61.6", "0"], + ["[Hybrid Charges][T2] Null", "0", "48", "40", "0"], + ["[Hybrid Charges][T2] Javelin", "0", "64", "48", "0"], + ["[Hybrid Charges][T2] Spike", "0", "32", "32", "0"], + ["[Hybrid Charges]Antimatter", "0", "48", "67.2", "0"], + ["[Hybrid Charges]Iridium", "0", "28.8", "38.4", "0"], + ["[Hybrid Charges]Iron", "0", "19.2", "28.8", "0"], + ["[Hybrid Charges]Lead", "0", "28.8", "48", "0"], + ["[Hybrid Charges]Plutonium", "0", "48", "57.6", "0"], + ["[Hybrid Charges]Thorium", "0", "38.4", "48", "0"], + ["[Hybrid Charges]Tungsten", "0", "19.2", "38.4", "0"], + ["[Hybrid Charges]Uranium", "0", "38.4", "57.6", "0"], + ["[Missiles]Mjolnir", "100", "0", "0", "0"], ["[Missiles]Inferno", "0", "100", "0", "0"], + ["[Missiles]Scourge", "0", "0", "100", "0"], ["[Missiles]Nova", "0", "0", "0", "100"], + ["[Missiles][Structure) Standup Missile", "100", "100", "100", "100"], + ["[Projectile Ammo][T2] Tremor", "0", "0", "24", "40"], + ["[Projectile Ammo][T2] Quake", "0", "0", "40", "72"], + ["[Projectile Ammo][T2] Hail", "0", "0", "26.4", "96.8"], + ["[Projectile Ammo][T2] Barrage", "0", "0", "40", "48"], + ["[Projectile Ammo]Carbonized Lead", "0", "0", "35.2", "8.8"], + ["[Projectile Ammo]Depleted Uranium", "0", "26.4", "17.6", "26.4"], + ["[Projectile Ammo]EMP", "79.2", "0", "8.8", "17.6"], + ["[Projectile Ammo]Fusion", "0", "0", "17.6", "88"], + ["[Projectile Ammo]Nuclear", "0", "0", "8.8", "35.2"], + ["[Projectile Ammo]Phased Plasma", "0", "88", "17.6", "0"], + ["[Projectile Ammo]Proton", "26.4", "0", "17.6", "0"], + ["[Projectile Ammo]Titanium Sabot", "0", "0", "52.8", "176"], + ["[NPC][Burner] Cruor (Blood Raiders)", "90", "90", "0", "0"], + ["[NPC][Burner] Dramiel (Angel)", "55", "0", "20", "96"], + ["[NPC][Burner] Daredevil (Serpentis)", "0", "110", "154", "0"], + ["[NPC][Burner] Succubus (Sanshas Nation)", "135", "30", "0", "0"], + ["[NPC][Burner] Worm (Guristas)", "0", "0", "228", "0"], + ["[NPC][Burner] Enyo", "0", "147", "147", "0"], + ["[NPC][Burner] Hawk", "0", "0", "247", "0"], + ["[NPC][Burner] Jaguar", "36", "0", "50", "182"], + ["[NPC][Burner] Vengeance", "232", "0", "0", "0"], + ["[NPC][Burner] Ashimmu (Blood Raiders)", "260", "100", "0", "0"], + ["[NPC][Burner] Talos", "0", "413", "413", "0"], + ["[NPC][Burner] Sentinel", "0", "75", "0", "90"], + ["[NPC][Asteroid] Angel Cartel", "1838", "562", "2215", "3838"], + ["[NPC][Deadspace] Angel Cartel", "369", "533", "1395", "3302"], + ["[NPC][Deadspace] Blood Raiders", "6040", "5052", "10", "15"], + ["[NPC][Asteroid] Guristas", "0", "1828", "7413", "0"], + ["[NPC][Deadspace] Guristas", "0", "1531", "9680", "0"], + ["[NPC][Asteroid] Rogue Drone", "394", "666", "1090", "1687"], + ["[NPC][Deadspace] Rogue Drone", "276", "1071", "1069", "871"], + ["[NPC][Asteroid] Sanshas Nation", "5586", "4112", "0", "0"], + ["[NPC][Deadspace] Sanshas Nation", "3009", "2237", "0", "0"], + ["[NPC][Asteroid] Serpentis", "0", "5373", "4813", "0"], + ["[NPC][Deadspace] Serpentis", "0", "3110", "1929", "0"], + ["[NPC][Mission] Amarr Empire", "4464", "3546", "97", "0"], + ["[NPC][Mission] Caldari State", "0", "2139", "4867", "0"], + ["[NPC][Mission] CONCORD", "336", "134", "212", "412"], + ["[NPC][Mission] Gallente Federation", "9", "3712", "2758", "0"], + ["[NPC][Mission] Khanid", "612", "483", "43", "6"], + ["[NPC][Mission] Minmatar Republic", "1024", "388", "1655", "4285"], + ["[NPC][Mission] Mordus Legion", "25", "262", "625", "0"], + ["[NPC][Mission] Thukker", "0", "52", "10", "79"], + ["[NPC][Other] Sleepers", "1472", "1472", "1384", "1384"], + ["[NPC][Other] Sansha Incursion", "1682", "1347", "3678", "3678"]] for damageProfileRow in damageProfileList: name, em, therm, kin, exp = damageProfileRow @@ -127,58 +122,57 @@ class DefaultDatabaseValues(): @classmethod def importResistProfileDefaults(self): - targetResistProfileList = [] - targetResistProfileList.append(["Uniform (25%)", "0.25", "0.25", "0.25", "0.25"]) - targetResistProfileList.append(["Uniform (50%)", "0.50", "0.50", "0.50", "0.50"]) - targetResistProfileList.append(["Uniform (75%)", "0.75", "0.75", "0.75", "0.75"]) - targetResistProfileList.append(["Uniform (90%)", "0.90", "0.90", "0.90", "0.90"]) - targetResistProfileList.append(["[T1 Resist]Shield", "0.0", "0.20", "0.40", "0.50"]) - targetResistProfileList.append(["[T1 Resist]Armor", "0.50", "0.45", "0.25", "0.10"]) - targetResistProfileList.append(["[T1 Resist]Hull", "0.33", "0.33", "0.33", "0.33"]) - targetResistProfileList.append(["[T1 Resist]Shield (+T2 DCU)", "0.125", "0.30", "0.475", "0.562"]) - targetResistProfileList.append(["[T1 Resist]Armor (+T2 DCU)", "0.575", "0.532", "0.363", "0.235"]) - targetResistProfileList.append(["[T1 Resist]Hull (+T2 DCU)", "0.598", "0.598", "0.598", "0.598"]) - targetResistProfileList.append(["[T2 Resist]Amarr (Shield)", "0.0", "0.20", "0.70", "0.875"]) - targetResistProfileList.append(["[T2 Resist]Amarr (Armor)", "0.50", "0.35", "0.625", "0.80"]) - targetResistProfileList.append(["[T2 Resist]Caldari (Shield)", "0.20", "0.84", "0.76", "0.60"]) - targetResistProfileList.append(["[T2 Resist]Caldari (Armor)", "0.50", "0.8625", "0.625", "0.10"]) - targetResistProfileList.append(["[T2 Resist]Gallente (Shield)", "0.0", "0.60", "0.85", "0.50"]) - targetResistProfileList.append(["[T2 Resist]Gallente (Armor)", "0.50", "0.675", "0.8375", "0.10"]) - targetResistProfileList.append(["[T2 Resist]Minmatar (Shield)", "0.75", "0.60", "0.40", "0.50"]) - targetResistProfileList.append(["[T2 Resist]Minmatar (Armor)", "0.90", "0.675", "0.25", "0.10"]) - targetResistProfileList.append(["[NPC][Asteroid] Angel Cartel", "0.54", "0.42", "0.37", "0.32"]) - targetResistProfileList.append(["[NPC][Asteroid] Blood Raiders", "0.34", "0.39", "0.45", "0.52"]) - targetResistProfileList.append(["[NPC][Asteroid] Guristas", "0.55", "0.35", "0.3", "0.48"]) - targetResistProfileList.append(["[NPC][Asteroid] Rogue Drones", "0.35", "0.38", "0.44", "0.49"]) - targetResistProfileList.append(["[NPC][Asteroid] Sanshas Nation", "0.35", "0.4", "0.47", "0.53"]) - targetResistProfileList.append(["[NPC][Asteroid] Serpentis", "0.49", "0.38", "0.29", "0.51"]) - targetResistProfileList.append(["[NPC][Deadspace] Angel Cartel", "0.59", "0.48", "0.4", "0.32"]) - targetResistProfileList.append(["[NPC][Deadspace] Blood Raiders", "0.31", "0.39", "0.47", "0.56"]) - targetResistProfileList.append(["[NPC][Deadspace] Guristas", "0.57", "0.39", "0.31", "0.5"]) - targetResistProfileList.append(["[NPC][Deadspace] Rogue Drones", "0.42", "0.42", "0.47", "0.49"]) - targetResistProfileList.append(["[NPC][Deadspace] Sanshas Nation", "0.31", "0.39", "0.47", "0.56"]) - targetResistProfileList.append(["[NPC][Deadspace] Serpentis", "0.49", "0.38", "0.29", "0.56"]) - targetResistProfileList.append(["[NPC][Mission] Amarr Empire", "0.34", "0.38", "0.42", "0.46"]) - targetResistProfileList.append(["[NPC][Mission] Caldari State", "0.51", "0.38", "0.3", "0.51"]) - targetResistProfileList.append(["[NPC][Mission] CONCORD", "0.47", "0.46", "0.47", "0.47"]) - targetResistProfileList.append(["[NPC][Mission] Gallente Federation", "0.51", "0.38", "0.31", "0.52"]) - targetResistProfileList.append(["[NPC][Mission] Khanid", "0.51", "0.42", "0.36", "0.4"]) - targetResistProfileList.append(["[NPC][Mission] Minmatar Republic", "0.51", "0.46", "0.41", "0.35"]) - targetResistProfileList.append(["[NPC][Mission] Mordus Legion", "0.32", "0.48", "0.4", "0.62"]) - targetResistProfileList.append(["[NPC][Other] Sleeper", "0.61", "0.61", "0.61", "0.61"]) - targetResistProfileList.append(["[NPC][Other] Sansha Incursion", "0.65", "0.63", "0.64", "0.65"]) - targetResistProfileList.append(["[NPC][Burner] Cruor (Blood Raiders)", "0.8", "0.73", "0.69", "0.67"]) - targetResistProfileList.append(["[NPC][Burner] Dramiel (Angel)", "0.35", "0.48", "0.61", "0.68"]) - targetResistProfileList.append(["[NPC][Burner] Daredevil (Serpentis)", "0.69", "0.59", "0.59", "0.43"]) - targetResistProfileList.append(["[NPC][Burner] Succubus (Sanshas Nation)", "0.35", "0.48", "0.61", "0.68"]) - targetResistProfileList.append(["[NPC][Burner] Worm (Guristas)", "0.48", "0.58", "0.69", "0.74"]) - targetResistProfileList.append(["[NPC][Burner] Enyo", "0.58", "0.72", "0.86", "0.24"]) - targetResistProfileList.append(["[NPC][Burner] Hawk", "0.3", "0.86", "0.79", "0.65"]) - targetResistProfileList.append(["[NPC][Burner] Jaguar", "0.78", "0.65", "0.48", "0.56"]) - targetResistProfileList.append(["[NPC][Burner] Vengeance", "0.66", "0.56", "0.75", "0.86"]) - targetResistProfileList.append(["[NPC][Burner] Ashimmu (Blood Raiders)", "0.8", "0.76", "0.68", "0.7"]) - targetResistProfileList.append(["[NPC][Burner] Talos", "0.68", "0.59", "0.59", "0.43"]) - targetResistProfileList.append(["[NPC][Burner] Sentinel", "0.58", "0.45", "0.52", "0.66"]) + targetResistProfileList = [["Uniform (25%)", "0.25", "0.25", "0.25", "0.25"], + ["Uniform (50%)", "0.50", "0.50", "0.50", "0.50"], + ["Uniform (75%)", "0.75", "0.75", "0.75", "0.75"], + ["Uniform (90%)", "0.90", "0.90", "0.90", "0.90"], + ["[T1 Resist]Shield", "0.0", "0.20", "0.40", "0.50"], + ["[T1 Resist]Armor", "0.50", "0.45", "0.25", "0.10"], + ["[T1 Resist]Hull", "0.33", "0.33", "0.33", "0.33"], + ["[T1 Resist]Shield (+T2 DCU)", "0.125", "0.30", "0.475", "0.562"], + ["[T1 Resist]Armor (+T2 DCU)", "0.575", "0.532", "0.363", "0.235"], + ["[T1 Resist]Hull (+T2 DCU)", "0.598", "0.598", "0.598", "0.598"], + ["[T2 Resist]Amarr (Shield)", "0.0", "0.20", "0.70", "0.875"], + ["[T2 Resist]Amarr (Armor)", "0.50", "0.35", "0.625", "0.80"], + ["[T2 Resist]Caldari (Shield)", "0.20", "0.84", "0.76", "0.60"], + ["[T2 Resist]Caldari (Armor)", "0.50", "0.8625", "0.625", "0.10"], + ["[T2 Resist]Gallente (Shield)", "0.0", "0.60", "0.85", "0.50"], + ["[T2 Resist]Gallente (Armor)", "0.50", "0.675", "0.8375", "0.10"], + ["[T2 Resist]Minmatar (Shield)", "0.75", "0.60", "0.40", "0.50"], + ["[T2 Resist]Minmatar (Armor)", "0.90", "0.675", "0.25", "0.10"], + ["[NPC][Asteroid] Angel Cartel", "0.54", "0.42", "0.37", "0.32"], + ["[NPC][Asteroid] Blood Raiders", "0.34", "0.39", "0.45", "0.52"], + ["[NPC][Asteroid] Guristas", "0.55", "0.35", "0.3", "0.48"], + ["[NPC][Asteroid] Rogue Drones", "0.35", "0.38", "0.44", "0.49"], + ["[NPC][Asteroid] Sanshas Nation", "0.35", "0.4", "0.47", "0.53"], + ["[NPC][Asteroid] Serpentis", "0.49", "0.38", "0.29", "0.51"], + ["[NPC][Deadspace] Angel Cartel", "0.59", "0.48", "0.4", "0.32"], + ["[NPC][Deadspace] Blood Raiders", "0.31", "0.39", "0.47", "0.56"], + ["[NPC][Deadspace] Guristas", "0.57", "0.39", "0.31", "0.5"], + ["[NPC][Deadspace] Rogue Drones", "0.42", "0.42", "0.47", "0.49"], + ["[NPC][Deadspace] Sanshas Nation", "0.31", "0.39", "0.47", "0.56"], + ["[NPC][Deadspace] Serpentis", "0.49", "0.38", "0.29", "0.56"], + ["[NPC][Mission] Amarr Empire", "0.34", "0.38", "0.42", "0.46"], + ["[NPC][Mission] Caldari State", "0.51", "0.38", "0.3", "0.51"], + ["[NPC][Mission] CONCORD", "0.47", "0.46", "0.47", "0.47"], + ["[NPC][Mission] Gallente Federation", "0.51", "0.38", "0.31", "0.52"], + ["[NPC][Mission] Khanid", "0.51", "0.42", "0.36", "0.4"], + ["[NPC][Mission] Minmatar Republic", "0.51", "0.46", "0.41", "0.35"], + ["[NPC][Mission] Mordus Legion", "0.32", "0.48", "0.4", "0.62"], + ["[NPC][Other] Sleeper", "0.61", "0.61", "0.61", "0.61"], + ["[NPC][Other] Sansha Incursion", "0.65", "0.63", "0.64", "0.65"], + ["[NPC][Burner] Cruor (Blood Raiders)", "0.8", "0.73", "0.69", "0.67"], + ["[NPC][Burner] Dramiel (Angel)", "0.35", "0.48", "0.61", "0.68"], + ["[NPC][Burner] Daredevil (Serpentis)", "0.69", "0.59", "0.59", "0.43"], + ["[NPC][Burner] Succubus (Sanshas Nation)", "0.35", "0.48", "0.61", "0.68"], + ["[NPC][Burner] Worm (Guristas)", "0.48", "0.58", "0.69", "0.74"], + ["[NPC][Burner] Enyo", "0.58", "0.72", "0.86", "0.24"], + ["[NPC][Burner] Hawk", "0.3", "0.86", "0.79", "0.65"], + ["[NPC][Burner] Jaguar", "0.78", "0.65", "0.48", "0.56"], + ["[NPC][Burner] Vengeance", "0.66", "0.56", "0.75", "0.86"], + ["[NPC][Burner] Ashimmu (Blood Raiders)", "0.8", "0.76", "0.68", "0.7"], + ["[NPC][Burner] Talos", "0.68", "0.59", "0.59", "0.43"], + ["[NPC][Burner] Sentinel", "0.58", "0.45", "0.52", "0.66"]] for targetResistProfileRow in targetResistProfileList: name, em, therm, kin, exp = targetResistProfileRow @@ -190,8 +184,7 @@ class DefaultDatabaseValues(): @classmethod def importRequiredDefaults(self): - damageProfileList = [] - damageProfileList.append(["Uniform", "25", "25", "25", "25"]) + damageProfileList = [["Uniform", "25", "25", "25", "25"]] for damageProfileRow in damageProfileList: name, em, therm, kin, exp = damageProfileRow From ef9bd3edc8af18cccd6b8bc6b14168304dcc4b26 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:33:28 -0700 Subject: [PATCH 24/76] Change class method from self to cls Better match coding standards --- eos/db/saveddata/loadDefaultDatabaseValues.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eos/db/saveddata/loadDefaultDatabaseValues.py b/eos/db/saveddata/loadDefaultDatabaseValues.py index 42b0cd877..eff116933 100644 --- a/eos/db/saveddata/loadDefaultDatabaseValues.py +++ b/eos/db/saveddata/loadDefaultDatabaseValues.py @@ -30,7 +30,7 @@ class DefaultDatabaseValues(): instance = None @classmethod - def importDamageProfileDefaults(self): + def importDamageProfileDefaults(cls): damageProfileList = [["Uniform", "25", "25", "25", "25"], ["[Generic]EM", "100", "0", "0", "0"], ["[Generic]Thermal", "0", "100", "0", "0"], ["[Generic]Kinetic", "0", "0", "100", "0"], ["[Generic]Explosive", "0", "0", "0", "100"], @@ -121,7 +121,7 @@ class DefaultDatabaseValues(): eos.db.save(damageProfile) @classmethod - def importResistProfileDefaults(self): + def importResistProfileDefaults(cls): targetResistProfileList = [["Uniform (25%)", "0.25", "0.25", "0.25", "0.25"], ["Uniform (50%)", "0.50", "0.50", "0.50", "0.50"], ["Uniform (75%)", "0.75", "0.75", "0.75", "0.75"], @@ -183,7 +183,7 @@ class DefaultDatabaseValues(): eos.db.save(resistsProfile) @classmethod - def importRequiredDefaults(self): + def importRequiredDefaults(cls): damageProfileList = [["Uniform", "25", "25", "25", "25"]] for damageProfileRow in damageProfileList: From 68f769aac2f9b9d4a358b47e8d126e6d8f28e465 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:37:07 -0700 Subject: [PATCH 25/76] Remove redundent parentheses --- eos/effects/shipbonusiceharvesterdurationore3.py | 2 +- eos/effects/shipbonusminingdurationore3.py | 2 +- eos/effects/shipbonusminingiceharvestingrangeore2.py | 2 +- eos/effects/shipbonusoreholdore2.py | 2 +- eos/effects/shipbonusshieldcapacityore2.py | 2 +- eos/saveddata/fighter.py | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eos/effects/shipbonusiceharvesterdurationore3.py b/eos/effects/shipbonusiceharvesterdurationore3.py index f984510d0..c9353b36c 100644 --- a/eos/effects/shipbonusiceharvesterdurationore3.py +++ b/eos/effects/shipbonusiceharvesterdurationore3.py @@ -6,4 +6,4 @@ type = "passive" def handler(fit, container, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "duration", container.getModifiedItemAttr("shipBonusORE3"), skill=("Mining Barge")) \ No newline at end of file + "duration", container.getModifiedItemAttr("shipBonusORE3"), skill="Mining Barge") \ No newline at end of file diff --git a/eos/effects/shipbonusminingdurationore3.py b/eos/effects/shipbonusminingdurationore3.py index b2c69f664..5bc0565cd 100644 --- a/eos/effects/shipbonusminingdurationore3.py +++ b/eos/effects/shipbonusminingdurationore3.py @@ -6,4 +6,4 @@ type = "passive" def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "duration", ship.getModifiedItemAttr("shipBonusORE3"), skill=("Mining Barge")) + "duration", ship.getModifiedItemAttr("shipBonusORE3"), skill="Mining Barge") diff --git a/eos/effects/shipbonusminingiceharvestingrangeore2.py b/eos/effects/shipbonusminingiceharvestingrangeore2.py index 288aeb4e4..0f58c1536 100644 --- a/eos/effects/shipbonusminingiceharvestingrangeore2.py +++ b/eos/effects/shipbonusminingiceharvestingrangeore2.py @@ -5,4 +5,4 @@ type = "passive" def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining") or mod.item.requiresSkill("Ice Harvesting"), - "maxRange", ship.getModifiedItemAttr("shipBonusORE2"), skill=("Mining Barge")) + "maxRange", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") diff --git a/eos/effects/shipbonusoreholdore2.py b/eos/effects/shipbonusoreholdore2.py index e55e55ea2..1117ca5c3 100644 --- a/eos/effects/shipbonusoreholdore2.py +++ b/eos/effects/shipbonusoreholdore2.py @@ -4,4 +4,4 @@ # Variations of ship: Retriever (2 of 2) type = "passive" def handler(fit, ship, context): - fit.ship.boostItemAttr("specialOreHoldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill=("Mining Barge")) \ No newline at end of file + fit.ship.boostItemAttr("specialOreHoldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") \ No newline at end of file diff --git a/eos/effects/shipbonusshieldcapacityore2.py b/eos/effects/shipbonusshieldcapacityore2.py index 497f29f57..e4037f542 100644 --- a/eos/effects/shipbonusshieldcapacityore2.py +++ b/eos/effects/shipbonusshieldcapacityore2.py @@ -4,4 +4,4 @@ # Variations of ship: Procurer (2 of 2) type = "passive" def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill=("Mining Barge")) + fit.ship.boostItemAttr("shieldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index e409b1578..6275c3abc 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -180,7 +180,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): activeTimes.append(ability.numShots * ability.cycleTime) reloadTimes.append(ability.reloadTime) - if(len(activeTimes) > 0): + if len(activeTimes) > 0: shortestActive = sorted(activeTimes)[0] longestReload = sorted(reloadTimes, reverse=True)[0] self.__dps = max(constantDps, self.__dps * shortestActive / (shortestActive + longestReload)) From 57bbbfcc3b8964ced7476be04bfa6d5e9c3351f7 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:39:12 -0700 Subject: [PATCH 26/76] Convert triple single quote docstring to triple double quote docstring For better consistency --- eos/gamedata.py | 32 ++++++++++++++++---------------- eos/saveddata/fighterAbility.py | 2 +- eos/saveddata/module.py | 4 ++-- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/eos/gamedata.py b/eos/gamedata.py index 5f3f62bb3..fd2a15f70 100644 --- a/eos/gamedata.py +++ b/eos/gamedata.py @@ -32,7 +32,7 @@ except ImportError: from utils.compat import OrderedDict class Effect(EqBase): - ''' + """ The effect handling class, it is used to proxy and load effect handler code, as well as a container for extra information regarding effects coming from the gamedata db. @@ -41,26 +41,26 @@ class Effect(EqBase): @ivar name: The name of this effect @ivar description: The description of this effect, this is usualy pretty useless @ivar published: Wether this effect is published or not, unpublished effects are typicaly unused. - ''' + """ #Filter to change names of effects to valid python method names nameFilter = re.compile("[^A-Za-z0-9]") @reconstructor def init(self): - ''' + """ Reconstructor, composes the object as we grab it from the database - ''' + """ self.__generated = False self.__effectModule = None self.handlerName = re.sub(self.nameFilter, "", self.name).lower() @property def handler(self): - ''' + """ The handler for the effect, It is automaticly fetched from effects/.py if the file exists the first time this property is accessed. - ''' + """ if not self.__generated: self.__generateHandler() @@ -68,7 +68,7 @@ class Effect(EqBase): @property def runTime(self): - ''' + """ The runTime that this effect should be run at. This property is also automaticly fetched from effects/.py if the file exists. the possible values are: @@ -77,7 +77,7 @@ class Effect(EqBase): effects with an early runTime will be ran first when things are calculated, followed by effects with a normal runTime and as last effects with a late runTime are ran. - ''' + """ if not self.__generated: self.__generateHandler() @@ -85,7 +85,7 @@ class Effect(EqBase): @property def type(self): - ''' + """ The type of the effect, automaticly fetched from effects/.py if the file exists. Valid values are: @@ -95,7 +95,7 @@ class Effect(EqBase): the effect is. passive vs active gives eos clues about wether to module is activatable or not (duh!) and projected and gang each tell eos that the module can be projected onto other fits, or used as a gang booster module respectivly - ''' + """ if not self.__generated: self.__generateHandler() @@ -103,23 +103,23 @@ class Effect(EqBase): @property def isImplemented(self): - ''' + """ Wether this effect is implemented in code or not, unimplemented effects simply do nothing at all when run - ''' + """ return self.handler != effectDummy def isType(self, type): - ''' + """ Check if this effect is of the passed type - ''' + """ return self.type is not None and type in self.type def __generateHandler(self): - ''' + """ Grab the handler, type and runTime from the effect code if it exists, if it doesn't, set dummy values and add a dummy handler - ''' + """ try: self.__effectModule = effectModule = __import__('eos.effects.' + self.handlerName, fromlist=True) try: diff --git a/eos/saveddata/fighterAbility.py b/eos/saveddata/fighterAbility.py index 64b5dee2c..c5b9aa1f5 100644 --- a/eos/saveddata/fighterAbility.py +++ b/eos/saveddata/fighterAbility.py @@ -52,7 +52,7 @@ class FighterAbility(object): @reconstructor def init(self): - '''Initialize from the database''' + """Initialize from the database""" self.__effect = None if self.effectID: diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 9ae63aafd..855d2c572 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -683,8 +683,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): return "EmptyModule() at {}".format(hex(id(self))) class Rack(Module): - ''' + """ This is simply the Module class named something else to differentiate it for app logic. This class does not do anything special - ''' + """ pass From 4036ac8cd22bde8f288b85179c2aa34995572ae5 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:53:11 -0700 Subject: [PATCH 27/76] Move projectionInfo so it can't be referenced without being assigned --- eos/saveddata/fit.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 733caabc6..309cdbe35 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -461,11 +461,16 @@ class Fit(object): timer = Timer(u'Fit: {}, {}'.format(self.ID, self.name), logger) logger.debug("Starting fit calculation on: %r, withBoosters: %s", self, withBoosters) + try: + projectionInfo = self.getProjectionInfo(targetFit.ID) + except: + pass + else: + logger.debug("ProjectionInfo: %s", projectionInfo) + shadow = False if targetFit: logger.debug("Applying projections to target: %r", targetFit) - projectionInfo = self.getProjectionInfo(targetFit.ID) - logger.debug("ProjectionInfo: %s", projectionInfo) if self == targetFit: copied = self # original fit shadow = True From a8061c9276550b0bdcabb04c40dafb7a47e5f68f Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 08:58:19 -0700 Subject: [PATCH 28/76] Remove unnecessary backslash and a bit of reformatting --- eos/effects/structureenergyneutralizerfalloff.py | 11 +++++++---- eos/saveddata/drone.py | 4 ++-- eos/saveddata/module.py | 10 +++++----- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/eos/effects/structureenergyneutralizerfalloff.py b/eos/effects/structureenergyneutralizerfalloff.py index 1281e1995..63cb38251 100644 --- a/eos/effects/structureenergyneutralizerfalloff.py +++ b/eos/effects/structureenergyneutralizerfalloff.py @@ -1,9 +1,12 @@ # Not used by any item from eos.types import State + type = "active", "projected" + + def handler(fit, container, context): - if "projected" in context and ((hasattr(container, "state") \ - and container.state >= State.ACTIVE) or hasattr(container, "amountActive")): + if "projected" in context and ((hasattr(container, "state") + and container.state >= State.ACTIVE) or hasattr(container, "amountActive")): amount = container.getModifiedItemAttr("energyNeutralizerAmount") - time = container.getModifiedItemAttr("duration") - fit.addDrain(time, amount, 0) + time = container.getModifiedItemAttr("duration") + fit.addDrain(time, amount, 0) diff --git a/eos/saveddata/drone.py b/eos/saveddata/drone.py index 1ca07a784..4b7abd4eb 100644 --- a/eos/saveddata/drone.py +++ b/eos/saveddata/drone.py @@ -223,8 +223,8 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): for effect in self.item.effects.itervalues(): if effect.runTime == runTime and \ - ((projected == True and effect.isType("projected")) or \ - projected == False and effect.isType("passive")): + ((projected == True and effect.isType("projected")) or + projected == False and effect.isType("passive")): # See GH issue #765 if effect.getattr('grouped'): effect.handler(fit, self, context) diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 855d2c572..7ce55d331 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -620,11 +620,11 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): for effect in self.item.effects.itervalues(): if effect.runTime == runTime and \ - (effect.isType("offline") or - (effect.isType("passive") and self.state >= State.ONLINE) or \ - (effect.isType("active") and self.state >= State.ACTIVE)) and \ - ((projected and effect.isType("projected")) or not projected): - effect.handler(fit, self, context) + (effect.isType("offline") or + (effect.isType("passive") and self.state >= State.ONLINE) or + (effect.isType("active") and self.state >= State.ACTIVE)) and \ + ((projected and effect.isType("projected")) or not projected): + effect.handler(fit, self, context) @property def cycleTime(self): From 49851d1131f9be91938be3d3956a62a4c93d0d37 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 10:37:59 -0700 Subject: [PATCH 29/76] Removed unnecessary assignment (variable assigned later) --- eos/capSim.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eos/capSim.py b/eos/capSim.py index a5ed4a8d1..c0211dde9 100644 --- a/eos/capSim.py +++ b/eos/capSim.py @@ -141,7 +141,7 @@ class CapSimulator(object): cap = capCapacity # current cap value t_wrap = self.period # point in time of next period - t_now = t_last = 0 + t_last = 0 t_max = self.t_max while 1: From e818ce62c8e2af0cb427c784a42e6e4a09c472e5 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 10:54:47 -0700 Subject: [PATCH 30/76] Removed line from legacy implementation --- eos/saveddata/fit.py | 1 - 1 file changed, 1 deletion(-) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 309cdbe35..611944748 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -900,7 +900,6 @@ class Fit(object): def addDrain(self, src, cycleTime, capNeed, clipSize=0): """ Used for both cap drains and cap fills (fills have negative capNeed) """ - rigSize = self.ship.getModifiedItemAttr("rigSize") energyNeutralizerSignatureResolution = src.getModifiedItemAttr("energyNeutralizerSignatureResolution") signatureRadius = self.ship.getModifiedItemAttr("signatureRadius") From 2ac66d87afe77a50a301d49a205a4d39cc06c0fd Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 10:54:59 -0700 Subject: [PATCH 31/76] commented out reload as not used --- eos/saveddata/fighterAbility.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/eos/saveddata/fighterAbility.py b/eos/saveddata/fighterAbility.py index c5b9aa1f5..0c830bc40 100644 --- a/eos/saveddata/fighterAbility.py +++ b/eos/saveddata/fighterAbility.py @@ -103,12 +103,16 @@ class FighterAbility(object): @property def cycleTime(self): speed = self.fighter.getModifiedItemAttr("{}Duration".format(self.attrPrefix)) + + # Factor in reload + ''' reload = self.reloadTime - #if self.fighter.owner.factorReload: - # numShots = self.numShots - # # Speed here already takes into consideration reactivation time - # speed = (speed * numShots + reload) / numShots if numShots > 0 else speed + if self.fighter.owner.factorReload: + numShots = self.numShots + # Speed here already takes into consideration reactivation time + speed = (speed * numShots + reload) / numShots if numShots > 0 else speed + ''' return speed From 481619101b4ff0a642b73603ddeb911719c1ca19 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:09:13 -0700 Subject: [PATCH 32/76] Reformatting for PEP8 standards --- eos/db/__init__.py | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/eos/db/__init__.py b/eos/db/__init__.py index 7aef55fd7..c3b28e664 100644 --- a/eos/db/__init__.py +++ b/eos/db/__init__.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== import threading @@ -27,14 +27,16 @@ from sqlalchemy import pool from eos import config import migration + class ReadOnlyException(Exception): pass + gamedata_connectionstring = config.gamedata_connectionstring if callable(gamedata_connectionstring): - gamedata_engine = create_engine("sqlite://", creator=gamedata_connectionstring, echo = config.debug) + gamedata_engine = create_engine("sqlite://", creator=gamedata_connectionstring, echo=config.debug) else: - gamedata_engine = create_engine(gamedata_connectionstring, echo = config.debug) + gamedata_engine = create_engine(gamedata_connectionstring, echo=config.debug) gamedata_meta = MetaData() gamedata_meta.bind = gamedata_engine @@ -44,8 +46,8 @@ gamedata_session = sessionmaker(bind=gamedata_engine, autoflush=False, expire_on # game db because we haven't reached gamedata_meta.create_all() try: config.gamedata_version = gamedata_session.execute( - "SELECT `field_value` FROM `metadata` WHERE `field_name` LIKE 'client_build'" - ).fetchone()[0] + "SELECT `field_value` FROM `metadata` WHERE `field_name` LIKE 'client_build'" + ).fetchone()[0] except: config.gamedata_version = None @@ -63,19 +65,19 @@ if saveddata_connectionstring is not None: # Lock controlling any changes introduced to session sd_lock = threading.Lock() -#Import all the definitions for all our database stuff +# Import all the definitions for all our database stuff from eos.db.gamedata import * from eos.db.saveddata import * -#Import queries +# Import queries from eos.db.gamedata.queries import * from eos.db.saveddata.queries import * -#If using in memory saveddata, you'll want to reflect it so the data structure is good. +# If using in memory saveddata, you'll want to reflect it so the data structure is good. if config.saveddata_connectionstring == "sqlite:///:memory:": saveddata_meta.create_all() + def rollback(): with sd_lock: saveddata_session.rollback() - From 3e842f30f1debc29b11a2b2c73c2e3829f99002f Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:16:32 -0700 Subject: [PATCH 33/76] Reformatting all effect files for readability and better PEP8 compliance --- eos/effects/__init__.py | 4 +- ...pacitorneedlocationshipgroupafterburner.py | 2 + .../accerationcontrolskillabmwdspeedboost.py | 2 + ...speedfactorlocationshipgroupafterburner.py | 2 + ...ficultybonusmodifierrequiringarchaelogy.py | 2 + ...difficultybonusmodifierrequiringhacking.py | 6 ++- eos/effects/addtosignatureradius2.py | 4 +- ...eddroneinterfacingmaxgroupdcuskilllevel.py | 2 + ...locationshipmodulesrequiringafterburner.py | 4 +- eos/effects/agilitymultipliereffect.py | 4 +- eos/effects/agilitymultipliereffectpassive.py | 4 +- eos/effects/ammofallofmultiplier.py | 2 + eos/effects/ammoinfluencecapneed.py | 2 + eos/effects/ammoinfluencerange.py | 4 +- eos/effects/ammospeedmultiplier.py | 2 + eos/effects/ammotrackingmultiplier.py | 4 +- eos/effects/angelsetbonus.py | 7 ++- eos/effects/antiwarpscramblingpassive.py | 4 +- eos/effects/archaeologyskillvirusbonus.py | 2 + ...armorallrepairsystemsamountbonuspassive.py | 7 ++- ...rdamageamountbonuscapitalarmorrepairers.py | 2 + eos/effects/armoredsquadroncommand.py | 2 + eos/effects/armoredwarfaremindlink.py | 4 +- eos/effects/armorhpbonusadd.py | 4 +- eos/effects/armorhpbonusaddpassive.py | 2 + eos/effects/armorhpmultiply.py | 4 +- eos/effects/armorreinforcermassadd.py | 4 +- eos/effects/armorrepair.py | 4 +- eos/effects/armorrepairamountbonussubcap.py | 2 + .../armorrepairprojectorfalloffbonus.py | 8 ++- .../armorrepairprojectormaxrangebonus.py | 8 ++- eos/effects/armortankinggang.py | 2 + .../armorupgradesmasspenaltyreductionbonus.py | 2 + eos/effects/armorwarfarearmorhpreplacer.py | 2 + ...mountlocationshipmodulesrequiringmining.py | 2 + ...xscandeviationmodifiermoduleonline2none.py | 5 +- ...ndeviationmodifierrequiringastrometrics.py | 5 +- .../basesensorstrengthmodifiermodule.py | 2 + ...orstrengthmodifierrequiringastrometrics.py | 2 + eos/effects/battlecruiserdronespeed.py | 2 + eos/effects/battlecruisermetrange.py | 2 + eos/effects/battlecruisermhtrange.py | 2 + eos/effects/battlecruisermissilerange.py | 2 + eos/effects/battlecruisermptrange.py | 2 + .../bclargeenergyturretcapacitorneedbonus.py | 2 + .../bclargeenergyturretcpuneedbonus.py | 2 + .../bclargeenergyturretpowerneedbonus.py | 2 + .../bclargehybridturretcapacitorneedbonus.py | 2 + .../bclargehybridturretcpuneedbonus.py | 2 + .../bclargehybridturretpowerneedbonus.py | 2 + .../bclargeprojectileturretcpuneedbonus.py | 2 + .../bclargeprojectileturretpowerneedbonus.py | 2 + eos/effects/biologytimebonusfixed.py | 5 +- .../blockaderunnercloakcpupercentbonus.py | 5 +- eos/effects/boosterarmorhppenalty.py | 2 + .../boosterarmorrepairamountpenalty.py | 2 + .../boostercapacitorcapacitypenalty.py | 2 + eos/effects/boostermaxvelocitypenalty.py | 2 + ...oostermissileexplosioncloudpenaltyfixed.py | 2 + .../boostermissileexplosionvelocitypenalty.py | 2 + eos/effects/boostermissilevelocitypenalty.py | 2 + .../boostermodifyboosterarmorpenalties.py | 2 + ...fyboostermaxvelocityandcapacitorpenalty.py | 2 + .../boostermodifyboostermissilepenalty.py | 2 + .../boostermodifyboostershieldpenalty.py | 2 + .../boostermodifyboosterturretpenalty.py | 2 + eos/effects/boostershieldcapacitypenalty.py | 2 + eos/effects/boosterturretfalloffpenalty.py | 2 + .../boosterturretoptimalrangepenalty.py | 2 + eos/effects/boosterturrettrackingpenalty.py | 2 + eos/effects/caldarisetbonus3.py | 5 +- eos/effects/caldarisetlgbonus.py | 5 +- .../caldarishipecmburstoptimalrangecb3.py | 2 + eos/effects/caldarishipewcapacitorneedcc.py | 2 + eos/effects/caldarishipewcapacitorneedcf2.py | 2 + eos/effects/caldarishipewfalloffrangecb3.py | 5 +- eos/effects/caldarishipewfalloffrangecc2.py | 5 +- eos/effects/caldarishipewoptimalrangecb3.py | 2 + eos/effects/caldarishipewoptimalrangecc2.py | 2 + eos/effects/caldarishipewstrengthcb.py | 2 + eos/effects/capacitorcapacityaddpassive.py | 2 + eos/effects/capacitorcapacitybonus.py | 4 +- eos/effects/capacitorcapacitymultiply.py | 2 + eos/effects/capacitoremissionsystemskill.py | 2 + eos/effects/capacityaddpassive.py | 2 + .../capitallauncherskillcitadelemdamage.py | 2 + ...itallauncherskillcitadelexplosivedamage.py | 2 + ...apitallauncherskillcitadelkineticdamage.py | 2 + ...apitallauncherskillcitadelthermaldamage.py | 2 + ...itallauncherskillcruisecitadelemdamage1.py | 2 + ...ncherskillcruisecitadelexplosivedamage1.py | 2 + ...auncherskillcruisecitadelkineticdamage1.py | 2 + ...auncherskillcruisecitadelthermaldamage1.py | 2 + ...talremotearmorrepairercapneedbonusskill.py | 2 + ...alremoteenergytransfercapneedbonusskill.py | 4 +- ...alremoteshieldtransfercapneedbonusskill.py | 2 + .../capitalrepairsystemsskilldurationbonus.py | 4 +- ...lshieldoperationskillcapacitorneedbonus.py | 2 + eos/effects/capitalturretskillhybriddamage.py | 4 +- eos/effects/capitalturretskilllaserdamage.py | 4 +- .../capitalturretskillprojectiledamage.py | 4 +- eos/effects/capneedbonuseffecthybrids.py | 4 +- eos/effects/capneedbonuseffectlasers.py | 2 + eos/effects/cargocapacitymultiply.py | 2 + .../carrieramarrarmorenergytransferrange3.py | 2 + eos/effects/carrieramarrarmorresist2.py | 2 + .../carrieramarrarmortransferfalloff3.py | 6 ++- eos/effects/carrieramarrdronemax1.py | 5 +- .../carrieramarrfighterbombermaxvelocity2.py | 2 + .../carrieramarrfightermaxvelocity2.py | 2 + .../carrieramarrleadershipmaxgroupactive4.py | 5 +- eos/effects/carriercaldaridronemax1.py | 5 +- .../carriercaldarifightersandbomberssig1.py | 7 ++- ...carriercaldarileadershipmaxgroupactive4.py | 5 +- ...arriercaldarishieldenergytransferrange3.py | 2 + eos/effects/carriercaldarishieldresist2.py | 2 + .../carriercaldarishieldtransferfalloff3.py | 6 ++- .../carrierfightercontrolrangebonus.py | 2 + ...riergallentearmorshieldtransferfalloff3.py | 7 ++- ...arriergallentearmorshieldtransferrange3.py | 8 ++- .../carriergallentebomberdroneowndmg2.py | 5 +- eos/effects/carriergallentedronemax1.py | 5 +- eos/effects/carriergallentedroneowndmg2.py | 5 +- ...arriergallenteleadershipmaxgroupactive4.py | 5 +- .../carrierminmatararmorshieldamount.py | 8 ++- ...rierminmatararmorshieldtransferfalloff3.py | 7 ++- ...arrierminmatararmorshieldtransferrange3.py | 8 ++- eos/effects/carrierminmatardronemax1.py | 5 +- ...arrierminmatarleadershipmaxgroupactive4.py | 5 +- eos/effects/cloaking.py | 4 +- eos/effects/cloakingprototype.py | 4 +- .../cloakingscanresolutionmultiplier.py | 4 +- ...gtargetingdelaybonuslrsmcloakingpassive.py | 2 + ...laybonusforshipmodulesrequiringcloaking.py | 4 +- eos/effects/cloakingwarpsafe.py | 4 +- .../clonevatmaxjumpclonebonusskillnew.py | 2 + ...dbonusecmmultiplywithcommandbonushidden.py | 4 +- ...dbonusrsdmultiplywithcommandbonushidden.py | 2 + ...ndbonustdmultiplywithcommandbonushidden.py | 16 +++--- ...ndbonustpmultiplywithcommandbonushidden.py | 4 +- eos/effects/commandshipmultirelayeffect.py | 2 + ...needlocationshipmodulesrequiringgunnery.py | 2 + eos/effects/covertcloakcpuaddition.py | 2 + eos/effects/covertcynocpupenalty.py | 3 +- ...vertopsandreconopscloakmoduledelaybonus.py | 5 +- eos/effects/covertopscloakcpupenalty.py | 3 +- eos/effects/covertopscloakcpupercentbonus1.py | 2 + ...ertopscloakcpupercentbonuspiratefaction.py | 2 + eos/effects/covertopscpubonus1.py | 2 + ...bombersiegemissilelauncerpowerneedbonus.py | 2 + ...ertopsstealthbombertargettingdelaybonus.py | 5 +- eos/effects/covertwarfaremindlink.py | 2 + .../cpumultiplierpostmulcpuoutputship.py | 4 +- eos/effects/cpuneedbonuseffecthybrid.py | 4 +- eos/effects/cpuneedbonuseffectlasers.py | 4 +- eos/effects/cpuoutputaddcpuoutputpassive.py | 2 + eos/effects/crystalminingamountinfo2.py | 2 + eos/effects/cynosuraldurationbonus.py | 2 + eos/effects/cynosuralgeneration.py | 2 + .../cynosuraltheoryconsumptionbonus.py | 5 +- eos/effects/damagecontrol.py | 2 + .../dataminermoduledurationreduction.py | 4 +- ...ostaccessdifficultybonusabsolutepercent.py | 2 + eos/effects/decreasetargetspeed.py | 4 +- eos/effects/dohacking.py | 4 +- eos/effects/drawbackarmorhp.py | 4 +- eos/effects/drawbackcapreppgneed.py | 2 + eos/effects/drawbackcargocapacity.py | 2 + eos/effects/drawbackcpuneedlaunchers.py | 2 + eos/effects/drawbackcpuoutput.py | 4 +- eos/effects/drawbackmaxvelocity.py | 4 +- eos/effects/drawbackpowerneedhybrids.py | 4 +- eos/effects/drawbackpowerneedlasers.py | 4 +- eos/effects/drawbackpowerneedprojectiles.py | 4 +- eos/effects/drawbackrepairsystemspgneed.py | 4 +- eos/effects/drawbackshieldcapacity.py | 2 + eos/effects/drawbacksigrad.py | 4 +- eos/effects/drawbackwarpspeed.py | 2 + eos/effects/dreadnoughtmd1projdmgbonus.py | 5 +- eos/effects/dreadnoughtmd3projrofbonus.py | 5 +- .../dreadnoughtshipbonushybriddmgg1.py | 5 +- .../dreadnoughtshipbonushybridrofg2.py | 5 +- .../dreadnoughtshipbonuslasercapneeda1.py | 5 +- eos/effects/dreadnoughtshipbonuslaserrofa2.py | 5 +- ...dreadnoughtshipbonusshieldresistancesc2.py | 2 + eos/effects/dronearmordamagebonuseffect.py | 2 + eos/effects/dronebandwidthaddpassive.py | 2 + .../dronecapacityadddronecapacitypassive.py | 2 + eos/effects/dronedamagebonusonline.py | 4 +- eos/effects/dronedamagebonusrequringdrones.py | 2 + eos/effects/dronedmgbonus.py | 2 + eos/effects/dronedurabilityarmorhpbonus.py | 4 +- eos/effects/dronedurabilityarmorhpbonus2.py | 4 +- eos/effects/dronedurabilityhpbonus.py | 2 + eos/effects/dronedurabilityshieldcapbonus.py | 4 +- eos/effects/dronedurabilityshieldcapbonus2.py | 4 +- eos/effects/dronehullrepairbonuseffect.py | 5 +- eos/effects/dronemaxrangebonus.py | 4 +- eos/effects/dronemaxvelocitybonus.py | 2 + eos/effects/dronemwdspeedbonus.py | 4 +- eos/effects/dronerangebonusadd.py | 2 + .../dronerigstasiswebspeedfactorbonus.py | 4 +- eos/effects/dronesalvagebonus.py | 5 +- eos/effects/droneshieldbonusbonuseffect.py | 2 + ...axactivedronebonusmodaddmaxactiveactive.py | 2 + .../dronesskillboostmaxactivedronebonus.py | 2 + eos/effects/dronetrackingcomputerbonus.py | 3 +- eos/effects/dronetrackingenhancerbonus.py | 8 +-- .../durationbonusforgroupafterburner.py | 2 + eos/effects/ecmburst.py | 4 +- eos/effects/ecmburstjammer.py | 6 ++- .../ecmgravimetricstrengthbonuspercent.py | 4 +- eos/effects/ecmladarstrengthbonuspercent.py | 4 +- .../ecmmagnetometricstrengthbonuspercent.py | 7 ++- eos/effects/ecmradarstrengthbonuspercent.py | 4 +- eos/effects/ecmrangebonusmoduleeffect.py | 4 +- .../electronicattributemodifyonline.py | 2 + ...rcentcpuoutputlocationshipgroupcomputer.py | 2 + ...ebargebonusiceharvestingcycletimebarge3.py | 2 + .../elitebargebonusminingdurationbarge2.py | 2 + eos/effects/elitebargeshieldresistance1.py | 2 + .../elitebonusassaultshiplightmissilerof.py | 2 + .../elitebonusassaultshipmissilevelocity1.py | 5 +- eos/effects/elitebonusassaultshiprocketrof.py | 2 + eos/effects/elitebonusblackopsagiliy1.py | 4 +- .../elitebonusblackopscloakvelocity2.py | 2 + ...secmburstgravandladarandmagnetoandradar.py | 5 +- ...dladarandmagnetometricandradarstrength1.py | 2 + ...bonusblackopslargeenergyturrettracking1.py | 2 + eos/effects/elitebonusblackopsmaxvelocity1.py | 4 +- .../elitebonuscommanddestroyerarmored1.py | 5 +- .../elitebonuscommanddestroyerinfo1.py | 5 +- .../elitebonuscommanddestroyerinfohidden1.py | 6 ++- .../elitebonuscommanddestroyermjfgspool2.py | 5 +- ...elitebonuscommanddestroyermwdsigradius3.py | 5 +- .../elitebonuscommanddestroyersiege1.py | 5 +- .../elitebonuscommanddestroyerskirmish1.py | 5 +- .../elitebonuscommandshiparmoredcs3.py | 5 +- eos/effects/elitebonuscommandshiparmorhp1.py | 4 +- eos/effects/elitebonuscommandshiphamrofcs1.py | 2 + ...commandshipheavyassaultmissiledamagecs2.py | 5 +- ...tebonuscommandshipheavydronetrackingcs2.py | 5 +- ...tebonuscommandshipheavydronevelocitycs2.py | 5 +- ...tebonuscommandshipheavymissiledamagecs2.py | 5 +- eos/effects/elitebonuscommandshiphmrofcs1.py | 2 + .../elitebonuscommandshiphybridfalloffcs2.py | 2 + .../elitebonuscommandshiphybridoptimalcs1.py | 5 +- .../elitebonuscommandshipinformationcs3.py | 5 +- ...itebonuscommandshipinformationhiddencs3.py | 5 +- .../elitebonuscommandshiplaserdamagecs1.py | 5 +- .../elitebonuscommandshiplaserrofcs2.py | 2 + ...tebonuscommandshipmediumhybriddamagecs2.py | 5 +- ...elitebonuscommandshipmediumhybridrofcs1.py | 2 + ...bonuscommandshipmediumhybridtrackingcs1.py | 5 +- ...litebonuscommandshipprojectiledamagecs1.py | 5 +- ...itebonuscommandshipprojectilefalloffcs2.py | 2 + ...psheavyassaultmissileexplosionradiuscs2.py | 5 +- ...heavyassaultmissileexplosionvelocitycs2.py | 5 +- ...mandshipsheavymissileexplosionradiuscs2.py | 5 +- ...ndshipsheavymissileexplosionvelocitycs2.py | 5 +- eos/effects/elitebonuscommandshipsiegecs3.py | 5 +- .../elitebonuscommandshipskirmishcs3.py | 5 +- eos/effects/elitebonuscoveropsbombemdmg1.py | 2 + .../elitebonuscoveropsbombexplosivedmg1.py | 5 +- .../elitebonuscoveropsbombkineticdmg1.py | 5 +- .../elitebonuscoveropsbombthermaldmg1.py | 5 +- .../elitebonuscoveropsscanprobestrength2.py | 5 +- ...selectronicattackshipcapacitorcapacity2.py | 5 +- ...nuselectronicattackshipecmoptimalrange1.py | 5 +- ...ebonuselectronicattackshiprechargerate2.py | 5 +- ...nuselectronicattackshipsignatureradius2.py | 5 +- ...selectronicattackshipstasiswebmaxrange1.py | 5 +- ...ectronicattackshipwarpscramblercapneed2.py | 5 +- ...ctronicattackshipwarpscramblermaxrange1.py | 5 +- eos/effects/elitebonusexpeditionmining1.py | 5 +- eos/effects/elitebonusexpeditionsigradius2.py | 5 +- .../elitebonusgunshiparmoremresistance1.py | 5 +- ...tebonusgunshiparmorexplosiveresistance1.py | 5 +- ...litebonusgunshiparmorkineticresistance1.py | 5 +- ...litebonusgunshiparmorthermalresistance1.py | 5 +- eos/effects/elitebonusgunshipcaprecharge2.py | 4 +- .../elitebonusgunshipdronecapacity2.py | 4 +- eos/effects/elitebonusgunshiphybriddmg2.py | 5 +- .../elitebonusgunshiphybridoptimal1.py | 4 +- .../elitebonusgunshiphybridtracking2.py | 5 +- eos/effects/elitebonusgunshiplaserdamage2.py | 5 +- eos/effects/elitebonusgunshiplaseroptimal1.py | 4 +- .../elitebonusgunshipprojectiledamage1.py | 5 +- .../elitebonusgunshipprojectiledamage2.py | 5 +- .../elitebonusgunshipprojectilefalloff2.py | 4 +- .../elitebonusgunshipprojectileoptimal1.py | 4 +- eos/effects/elitebonusgunshipshieldboost2.py | 5 +- ...usheavygunshipassaultmissileflighttime1.py | 5 +- ...sheavygunshipassaultmissilelaunhcerrof2.py | 5 +- ...litebonusheavygunshipdronecontrolrange1.py | 5 +- ...eavyassaultandassaultmissilelauncherrof.py | 5 +- ...ygunshipheavyassaultmissilelaunhcerrof2.py | 5 +- ...onusheavygunshipheavymissileflighttime1.py | 5 +- ...nusheavygunshipheavymissilelaunhcerrof2.py | 5 +- .../elitebonusheavygunshiphybriddmg2.py | 5 +- .../elitebonusheavygunshiphybridfalloff1.py | 5 +- .../elitebonusheavygunshiphybridoptimal1.py | 5 +- .../elitebonusheavygunshiplaserdmg2.py | 5 +- .../elitebonusheavygunshiplaseroptimal1.py | 5 +- ...onusheavygunshiplightmissileflighttime1.py | 5 +- .../elitebonusheavygunshipprojectiledmg2.py | 5 +- ...litebonusheavygunshipprojectilefalloff1.py | 5 +- ...litebonusheavygunshipprojectileoptimal1.py | 5 +- ...itebonusheavygunshipprojectiletracking2.py | 5 +- ...rdictorheavyassaultmissilevelocitybonus.py | 5 +- ...vyinterdictorheavymissilevelocitybonus1.py | 5 +- ...avyinterdictorlightmissilevelocitybonus.py | 5 +- ...itebonusheavyinterdictorshybridoptimal1.py | 5 +- .../elitebonusheavyinterdictorsmetoptimal.py | 5 +- ...onusheavyinterdictorsprojectilefalloff1.py | 5 +- ...disruptfieldgeneratorwarpscramblerange2.py | 5 +- .../elitebonusinterdictorsarmorresist1.py | 2 + ...ebonusinterdictorsmissilekineticdamage1.py | 7 ++- .../elitebonusinterdictorsmwdsigradius2.py | 5 +- ...litebonusinterdictorsprojectilefalloff1.py | 2 + eos/effects/elitebonusinterdictorsshtrof1.py | 4 +- .../elitebonusjumpfreighterarmorhp1.py | 2 + eos/effects/elitebonusjumpfreighterhullhp1.py | 2 + ...umpfreighterjumpdriveconsumptionamount2.py | 5 +- .../elitebonusjumpfreightershieldhp1.py | 5 +- eos/effects/elitebonuslogifrigarmorhp2.py | 2 + .../elitebonuslogifrigarmorrepspeedcap1.py | 8 ++- eos/effects/elitebonuslogifrigshieldhp2.py | 2 + .../elitebonuslogifrigshieldrepspeedcap1.py | 8 ++- eos/effects/elitebonuslogifrigsignature2.py | 5 +- ...litebonuslogisticenergytransfercapneed1.py | 5 +- ...litebonuslogisticenergytransfercapneed2.py | 5 +- ...ebonuslogisticremotearmorrepaircapneed1.py | 5 +- ...ebonuslogisticremotearmorrepaircapneed2.py | 5 +- ...litebonuslogisticshieldtransfercapneed1.py | 5 +- ...litebonuslogisticshieldtransfercapneed2.py | 5 +- ...bonuslogisticstrackinglinkfalloffbonus1.py | 5 +- ...bonuslogisticstrackinglinkfalloffbonus2.py | 5 +- ...onuslogisticstrackinglinkmaxrangebonus1.py | 5 +- ...onuslogisticstrackinglinkmaxrangebonus2.py | 5 +- ...ogisticstrackinglinktrackingspeedbonus1.py | 5 +- ...ogisticstrackinglinktrackingspeedbonus2.py | 5 +- ...nusmarauderscruiseandtorpedodamagerole1.py | 7 ++- ...bonusmaraudersheavymissiledamageemrole1.py | 2 + ...onusmaraudersheavymissiledamageexprole1.py | 2 + ...onusmaraudersheavymissiledamagekinrole1.py | 2 + ...usmaraudersheavymissiledamagethermrole1.py | 2 + .../elitebonusmaraudershieldbonus2a.py | 2 + eos/effects/elitebonusvampiredrainamount2.py | 5 +- .../elitebonusviolatorsewtargetpainting1.py | 5 +- ...ebonusviolatorslargeenergyturretdamage1.py | 5 +- ...usviolatorslargeenergyturretdamagerole1.py | 2 + ...usviolatorslargehybridturretdamagerole1.py | 4 +- ...onusviolatorslargehybridturrettracking1.py | 2 + ...olatorslargeprojectileturretdamagerole1.py | 2 + ...violatorslargeprojectileturrettracking1.py | 2 + ...iolatorsrepairsystemsarmordamageamount2.py | 5 +- ...ebonusviolatorstractorbeammaxrangerole2.py | 2 + ...atorstractorbeammaxtractorvelocityrole3.py | 2 + eos/effects/eliteindustrialabheatbonus.py | 2 + .../eliteindustrialarmorhardenerheatbonus.py | 2 + .../eliteindustrialarmorrepairheatbonus.py | 2 + eos/effects/eliteindustrialarmorresists2.py | 2 + eos/effects/eliteindustrialfleetcapacity1.py | 5 +- eos/effects/eliteindustrialmwdheatbonus.py | 2 + ...ndustrialreactivearmorhardenerheatbonus.py | 2 + .../eliteindustrialshieldboosterheatbonus.py | 2 + .../eliteindustrialshieldhardenerheatbonus.py | 2 + eos/effects/eliteindustrialshieldresists2.py | 2 + eos/effects/eliteindustrialwarpspeedbonus1.py | 5 +- .../elitereconbonusenergyneutamount2.py | 5 +- .../elitereconbonusgravimetricstrength2.py | 5 +- ...tereconbonusheavyassaultmissilevelocity.py | 5 +- .../elitereconbonusheavymissilevelocity.py | 5 +- eos/effects/elitereconbonusladarstrength2.py | 5 +- .../elitereconbonusmagnetometricstrength2.py | 5 +- .../elitereconbonusmhtoptimalrange1.py | 2 + eos/effects/elitereconbonusmptdamage1.py | 5 +- eos/effects/elitereconbonusradarstrength2.py | 5 +- .../elitereconjumpscramblerrangebonus2.py | 2 + eos/effects/elitereconstasiswebbonus2.py | 2 + ...ensationhardeningbonusgrouparmorcoating.py | 2 + ...ompensationhardeningbonusgroupenergized.py | 2 + eos/effects/empwave.py | 2 + ...ompensationhardeningbonusgroupshieldamp.py | 4 +- eos/effects/energydestabilizationnew.py | 6 ++- ...nshipmodulesrequiringenergygridupgrades.py | 2 + ...locationshipgroupcapacitorcapacitybonus.py | 2 + eos/effects/energyneutralizerentity.py | 4 +- eos/effects/energyneutralizerfalloff.py | 4 +- eos/effects/energynosferatufalloff.py | 2 +- ...nshipmodulesrequiringenergypulseweapons.py | 4 +- ...trechargeratelocationshipgroupcapacitor.py | 2 + eos/effects/energytransfer.py | 2 + .../energytransferarraymaxrangebonus.py | 2 + .../energytransferarraytransferamountbonus.py | 2 + eos/effects/energyweapondamagemultiply.py | 4 +- .../energyweapondamagemultiplypassive.py | 4 +- eos/effects/energyweaponspeedmultiply.py | 4 +- .../energyweaponspeedmultiplypassive.py | 4 +- ...ntpoweroutputlocationshipgrouppowercore.py | 2 + eos/effects/entityecmfalloff.py | 4 +- eos/effects/entityenergyneutralizerfalloff.py | 4 +- eos/effects/entosiscpuaddition.py | 3 +- eos/effects/entosiscpupenalty.py | 2 + eos/effects/entosisdurationmultiply.py | 2 + eos/effects/entosislink.py | 2 + ...eringagilitybonuspostpercentagilityship.py | 4 +- eos/effects/ewgroupecmburstmaxrangebonus.py | 4 +- eos/effects/ewgrouprsdmaxrangebonus.py | 4 +- eos/effects/ewgrouptdmaxrangebonus.py | 4 +- eos/effects/ewgrouptpmaxrangebonus.py | 4 +- eos/effects/ewskillecmburstcapneedbonus.py | 2 + eos/effects/ewskillecmburstrangebonus.py | 4 +- eos/effects/ewskillewcapneedskilllevel.py | 2 + eos/effects/ewskillewfalloffbonus.py | 2 + eos/effects/ewskillewmaxrangebonus.py | 4 +- eos/effects/ewskillguidancedisruptionbonus.py | 12 +++-- .../ewskillrsdcapneedbonusskilllevel.py | 2 + eos/effects/ewskillrsdfalloffbonus.py | 2 + eos/effects/ewskillrsdmaxrangebonus.py | 4 +- eos/effects/ewskillscanstrengthbonus.py | 7 ++- ...illsignalsuppressionmaxtargetrangebonus.py | 5 +- ...illsignalsuppressionscanresolutionbonus.py | 5 +- .../ewskilltargetpaintingstrengthbonus.py | 5 +- .../ewskilltdcapneedbonusskilllevel.py | 2 + eos/effects/ewskilltdfalloffbonus.py | 2 + eos/effects/ewskilltdmaxrangebonus.py | 4 +- .../ewskilltpcapneedbonusskilllevel.py | 2 + eos/effects/ewskilltpfalloffbonus.py | 2 + eos/effects/ewskilltpmaxrangebonus.py | 4 +- ...ltrackingdisruptionrangedisruptionbonus.py | 2 + ...illtrackingdisruptiontrackingspeedbonus.py | 5 +- eos/effects/ewtargetpaint.py | 4 +- eos/effects/ewtesteffectjam.py | 4 +- ...tionfrigatebonusiceharvestingcycletime2.py | 5 +- .../expeditionfrigateshieldresistance1.py | 14 ++++-- ...ensationhardeningbonusgrouparmorcoating.py | 5 +- ...ompensationhardeningbonusgroupenergized.py | 5 +- ...ompensationhardeningbonusgroupshieldamp.py | 5 +- eos/effects/falloffbonuseffecthybrids.py | 4 +- eos/effects/falloffbonuseffectlasers.py | 4 +- eos/effects/falloffbonuseffectprojectiles.py | 4 +- eos/effects/federationsetbonus3.py | 5 +- eos/effects/federationsetlgbonus.py | 5 +- eos/effects/fighterabilityattackm.py | 3 +- eos/effects/fighterabilityecm.py | 5 +- .../fighterabilityenergyneutralizer.py | 2 +- eos/effects/fighterabilitylaunchbomb.py | 3 +- eos/effects/fighterabilitymicrowarpdrive.py | 6 ++- eos/effects/fighterabilitymissiles.py | 3 +- eos/effects/fighterabilitystasiswebifier.py | 2 +- eos/effects/fighterabilitywarpdisruption.py | 4 +- eos/effects/fightersdmgbonusskills.py | 4 +- eos/effects/flagshipmultirelayeffect.py | 10 ++-- eos/effects/freighteragilitybonus2o2.py | 5 +- eos/effects/freighteragilitybonusa1.py | 2 + eos/effects/freighteragilitybonusc1.py | 2 + eos/effects/freighteragilitybonusg1.py | 2 + eos/effects/freighteragilitybonusm1.py | 2 + eos/effects/freightercargobonusa2.py | 2 + eos/effects/freightercargobonusc2.py | 2 + eos/effects/freightercargobonusg2.py | 2 + eos/effects/freightercargobonusm2.py | 2 + eos/effects/freightermaxvelocitybonusa1.py | 2 + eos/effects/freightermaxvelocitybonusc1.py | 2 + eos/effects/freightermaxvelocitybonusg1.py | 2 + eos/effects/freightermaxvelocitybonusm1.py | 2 + eos/effects/freightersmacapacitybonuso1.py | 4 +- .../frequencymininglasermaxrangebonus.py | 2 + ...locationshipmodulesrequiringafterburner.py | 2 + eos/effects/fueledarmorrepair.py | 4 +- eos/effects/fueledshieldboosting.py | 2 + eos/effects/gangabmwdfactorboost.py | 2 + eos/effects/gangarmorhardening.py | 4 +- ...ngarmorrepaircapreducerselfandprojected.py | 7 ++- ...morrepairspeedamplifierselfandprojected.py | 7 ++- eos/effects/gangbonussignature.py | 4 +- ...diceharvesterandmininglasercapneedbonus.py | 4 +- ...iceharvesterandmininglaserdurationbonus.py | 4 +- ...nformationwarfarerangebonuswithecmburst.py | 4 +- .../ganginformationwarfaresuperiorityall2.py | 4 +- ...rgasharvestersurveyscannermaxrangebonus.py | 7 ++- eos/effects/gangpropulsionjammingboost.py | 6 ++- eos/effects/gangsensorintegrity.py | 6 ++- ...shieldboosteandtransportercapacitorneed.py | 7 ++- .../gangshieldboosterandtransporterspeed.py | 7 ++- eos/effects/gangshieldhardening.py | 4 +- .../gascloudharvestingmaxgroupskilllevel.py | 4 +- eos/effects/gasharvestermaxrangebonus.py | 4 +- ...etimemodulesrequiringgascloudharvesting.py | 2 + eos/effects/gchyieldmultiplypassive.py | 2 + eos/effects/gunneryfalloffbonusonline.py | 4 +- eos/effects/gunnerymaxrangebonusonline.py | 4 +- ...unnerymaxrangefallofftrackingspeedbonus.py | 4 +- .../gunnerytrackingspeedbonusonline.py | 4 +- ...peedlocationshipmodulesrequiringgunnery.py | 2 + eos/effects/hackingskillvirusbonus.py | 2 + eos/effects/hardpointmodifiereffect.py | 4 +- eos/effects/heatdamagebonus.py | 2 + ...shipmodulesrequiringhighspeedmanuvering.py | 2 + ...esarmorhpbonuspostpercenthplocationship.py | 2 + eos/effects/hybridweapondamagemultiply.py | 6 ++- .../hybridweapondamagemultiplypassive.py | 4 +- eos/effects/hybridweaponspeedmultiply.py | 4 +- .../hybridweaponspeedmultiplypassive.py | 4 +- ...tcycletimemodulesrequiringiceharvesting.py | 2 + ...timemodulesrequiringiceharvestingonline.py | 4 +- .../iceharvestercapacitorneedmultiplier.py | 2 + eos/effects/iceharvesterdurationmultiplier.py | 2 + eos/effects/iceminercpuusagepercent.py | 4 +- eos/effects/ignorecloakvelocitypenalty.py | 2 + eos/effects/imperialsetbonus3.py | 5 +- eos/effects/imperialsetlgbonus.py | 5 +- eos/effects/implantarmorhpbonus2.py | 4 +- .../implanthardwiringabcapacitorneed.py | 2 + eos/effects/implantsetwarpspeed.py | 4 +- eos/effects/implantvelocitybonus.py | 4 +- eos/effects/implantvelocitybonus2.py | 4 +- eos/effects/increasesignatureradiusonline.py | 4 +- eos/effects/industrialcoreeffect2.py | 2 + eos/effects/informationsquadroncommand.py | 2 + .../informationsquadroncommandhidden.py | 2 + .../informationwarfaremaxtargetrangebonus.py | 2 + .../informationwarfaremindlinkhidden.py | 2 + eos/effects/interceptor2hybridtracking.py | 5 +- eos/effects/interceptor2lasertracking.py | 5 +- eos/effects/interceptor2projectiledamage.py | 5 +- eos/effects/interceptor2shieldresist.py | 5 +- eos/effects/interceptor2warpscramblerange.py | 4 +- .../interceptormwdsignatureradiusbonus.py | 5 +- .../jumpdriveskillscapacitorneedbonus.py | 5 +- eos/effects/jumpdriveskillsrangebonus.py | 4 +- .../jumpportalconsumptionbonuspercentskill.py | 2 + ...ensationhardeningbonusgrouparmorcoating.py | 4 +- ...ompensationhardeningbonusgroupenergized.py | 5 +- ...ompensationhardeningbonusgroupshieldamp.py | 4 +- ...onshipmodulesrequiringlargeenergyturret.py | 2 + ...onshipmodulesrequiringlargehybridturret.py | 2 + ...ipmodulesrequiringlargeprojectileturret.py | 2 + eos/effects/leadershipeffect.py | 4 +- eos/effects/lightningweapon.py | 2 + ...xtargetrangelocationshipgroupelectronic.py | 2 + eos/effects/maraudermodeeffect26.py | 28 ++++++----- eos/effects/massaddpassive.py | 2 + eos/effects/massreductionbonuspassive.py | 2 + eos/effects/maxrangebonuseffecthybrids.py | 4 +- eos/effects/maxrangebonuseffectlasers.py | 4 +- eos/effects/maxrangebonuseffectprojectiles.py | 4 +- ...axtargetingrangebonuspostpercentpassive.py | 4 +- eos/effects/maxtargetrangeaddpassive.py | 4 +- eos/effects/maxtargetrangebonus.py | 4 +- eos/effects/maxvelocityaddpassive.py | 4 +- .../mechanichullhpbonuspostpercenthpship.py | 2 + ...nshipmodulesrequiringmediumenergyturret.py | 2 + ...nshipmodulesrequiringmediumhybridturret.py | 2 + ...pmodulesrequiringmediumprojectileturret.py | 2 + eos/effects/mercoxitcrystalbonus.py | 7 ++- eos/effects/microjumpdrive.py | 4 +- eos/effects/minercpuusagemultiplypercent2.py | 4 +- eos/effects/minigamevirusstrengthbonus.py | 7 ++- eos/effects/mining.py | 3 +- eos/effects/miningclouds.py | 2 + ...iningdirectorbonuscommandbonuseffective.py | 2 + ...postpercentminingdroneamountpercentchar.py | 2 + eos/effects/miningforemanmindlink.py | 4 +- ...oremanmindlinkminingamountbonusreplacer.py | 2 + ...ningfrigatebonusiceharvestingcycletime2.py | 5 +- eos/effects/mininginfomultiplier.py | 5 +- eos/effects/mininglaser.py | 2 + eos/effects/mininglaserrangebonus.py | 4 +- eos/effects/miningsquadroncommand.py | 2 + ...ionmodulesrequiringminingupgradepercent.py | 5 +- eos/effects/miningyieldgangbonusfixed.py | 2 + eos/effects/miningyieldmultiplypassive.py | 4 +- eos/effects/miningyieldmultiplypercent.py | 4 +- eos/effects/minmatarshipewtargetpaintermc1.py | 5 +- eos/effects/minmatarshipewtargetpaintermc2.py | 5 +- eos/effects/minmatarshipewtargetpaintermf2.py | 5 +- .../minmatarshipewtargetpainterrookie.py | 2 + eos/effects/missileaoecloudsizebonusonline.py | 2 + eos/effects/missileaoevelocitybonusonline.py | 2 + ...odulesrequiringmissilelauncheroperation.py | 2 + eos/effects/missiledmgbonus.py | 7 ++- eos/effects/missiledmgbonuspassive.py | 7 ++- eos/effects/missileemdmgbonus.py | 2 + eos/effects/missileemdmgbonuscruise3.py | 2 + eos/effects/missileemdmgbonusham.py | 2 + eos/effects/missileemdmgbonusheavy.py | 2 + eos/effects/missileemdmgbonusrocket.py | 2 + eos/effects/missileemdmgbonusstandard.py | 2 + eos/effects/missileemdmgbonustorpedo.py | 2 + .../missileexplosiondelaybonusonline.py | 2 + eos/effects/missileexplosivedmgbonus.py | 2 + .../missileexplosivedmgbonuscruise3.py | 4 +- eos/effects/missileexplosivedmgbonusham.py | 2 + eos/effects/missileexplosivedmgbonusheavy.py | 2 + eos/effects/missileexplosivedmgbonusrocket.py | 2 + .../missileexplosivedmgbonusstandard.py | 2 + .../missileexplosivedmgbonustorpedo.py | 2 + eos/effects/missileguidancecomputerbonus4.py | 10 ++-- eos/effects/missilekineticdmgbonus2.py | 2 + eos/effects/missilekineticdmgbonuscruise3.py | 2 + eos/effects/missilekineticdmgbonusham.py | 2 + eos/effects/missilekineticdmgbonusheavy.py | 2 + eos/effects/missilekineticdmgbonusrocket.py | 2 + eos/effects/missilekineticdmgbonusstandard.py | 2 + eos/effects/missilekineticdmgbonustorpedo.py | 2 + eos/effects/missilelauncherspeedmultiplier.py | 4 +- .../missilelauncherspeedmultiplierpassive.py | 4 +- eos/effects/missileskillaoecloudsizebonus.py | 2 + ...llaoecloudsizebonusallincludingcapitals.py | 2 + eos/effects/missileskillaoevelocitybonus.py | 2 + .../missileskillfofaoecloudsizebonus.py | 2 + ...sileskillmissileprojectilevelocitybonus.py | 2 + eos/effects/missileskillrapidlauncherrof.py | 4 +- ...issileskillwarheadupgradesemdamagebonus.py | 4 +- ...killwarheadupgradesexplosivedamagebonus.py | 4 +- ...eskillwarheadupgradeskineticdamagebonus.py | 4 +- ...eskillwarheadupgradesthermaldamagebonus.py | 4 +- eos/effects/missilethermaldmgbonus.py | 2 + eos/effects/missilethermaldmgbonuscruise3.py | 2 + eos/effects/missilethermaldmgbonusham.py | 2 + eos/effects/missilethermaldmgbonusheavy.py | 2 + eos/effects/missilethermaldmgbonusrocket.py | 2 + eos/effects/missilethermaldmgbonusstandard.py | 2 + eos/effects/missilethermaldmgbonustorpedo.py | 2 + eos/effects/missilevelocitybonusdefender.py | 2 + eos/effects/missilevelocitybonusonline.py | 2 + eos/effects/modeagilitypostdiv.py | 2 + eos/effects/modearmorrepdurationpostdiv.py | 2 + eos/effects/modearmorresonancepostdiv.py | 10 ++-- eos/effects/modehullresonancepostdiv.py | 10 ++-- eos/effects/modemwdboostpostdiv.py | 2 + eos/effects/modemwdcappostdiv.py | 2 + eos/effects/modemwdsigradiuspostdiv.py | 2 + eos/effects/modeshieldresonancepostdiv.py | 10 ++-- eos/effects/modesigradiuspostdiv.py | 2 + eos/effects/modevelocitypostdiv.py | 2 + .../modifyactivearmorresonancepostpercent.py | 2 + .../modifyactiveshieldresonancepostpercent.py | 2 + ...odifyarmorresonancepassivepreassignment.py | 5 +- .../modifyarmorresonancepostpercent.py | 4 +- .../modifyarmorresonancepostpercentpassive.py | 4 +- ...chancewithboosterchancebonuspostpercent.py | 4 +- eos/effects/modifyenergywarfareresistance.py | 6 ++- eos/effects/modifymaxvelocityofshippassive.py | 4 +- eos/effects/modifypowerrechargerate.py | 4 +- eos/effects/modifyshieldrechargerate.py | 2 + .../modifyshieldrechargeratepassive.py | 2 + ...difyshieldresonancepassivepreassignment.py | 5 +- .../modifyshieldresonancepostpercent.py | 4 +- ...modifyshieldresonancepostpercentpassive.py | 4 +- .../modifyshipagilitypassivepreassignment.py | 2 + ...modulebonusancillaryremotearmorrepairer.py | 4 +- ...modulebonusancillaryremoteshieldbooster.py | 4 +- ...ulebonusarmoredwarfarelinkdamagecontrol.py | 9 ++-- ...lebonusarmoredwarfarelinkpassivedefense.py | 6 ++- ...odulebonusarmoredwarfarelinkrapidrepair.py | 9 ++-- eos/effects/modulebonusbastionmodule.py | 17 ++++--- ...dulebonuscapitaldronedurabilityenhancer.py | 14 ++++-- .../modulebonuscapitaldronescopechip.py | 16 ++++-- .../modulebonuscapitaldronespeedaugmentor.py | 8 ++- .../modulebonusdronedamageamplifier.py | 17 +++++-- .../modulebonusdronenavigationcomputer.py | 8 ++- eos/effects/modulebonusfightersupportunit.py | 21 +++++--- ...rmationwarfarelinkelectronicsuperiority.py | 1 + ...nusinformationwarfarelinkreconoperation.py | 6 ++- ...usinformationwarfarelinksensorintegrity.py | 8 +-- ...foremanlinkharvestercapacitorefficiency.py | 4 +- ...bonusminingforemanlinklaseroptimization.py | 4 +- ...gforemanlinkmininglaserfieldenhancement.py | 7 ++- .../modulebonusnetworkedsensorarray.py | 7 ++- ...ulebonusomnidirectionaltrackingenhancer.py | 50 ++++++++++++++----- .../modulebonusomnidirectionaltrackinglink.py | 50 ++++++++++++++----- ...onusomnidirectionaltrackinglinkoverload.py | 4 +- eos/effects/modulebonussiegemodule.py | 28 ++++++----- ...ulebonussiegewarfarelinkactiveshielding.py | 9 ++-- ...lebonussiegewarfarelinkshieldefficiency.py | 9 ++-- ...ebonussiegewarfarelinkshieldharmonizing.py | 6 ++- ...onusskirmishwarfarelinkevasivemaneuvers.py | 6 ++- ...kirmishwarfarelinkinterdictionmaneuvers.py | 6 ++- ...bonusskirmishwarfarelinkrapiddeployment.py | 4 +- eos/effects/modulebonustriagemodule.py | 39 +++++++++------ eos/effects/mwdsignatureradiusrolebonus.py | 2 + ...bonuspostpercentmaxvelocitylocationship.py | 4 +- ...velocitybonuspostpercentmaxvelocityship.py | 4 +- eos/effects/offensivedefensivereduction.py | 8 ++- ...mpdriveconsumptionamountbonuspercentage.py | 5 +- .../orecapitalshipshieldtransferfalloff.py | 6 ++- .../orecapitalshipshieldtransferrange.py | 5 +- eos/effects/overloadrofbonus.py | 2 + ...rloadselfarmordamageamountdurationbonus.py | 5 +- eos/effects/overloadselfdamagebonus.py | 4 +- eos/effects/overloadselfdurationbonus.py | 2 + eos/effects/overloadselfecmstrenghtbonus.py | 4 +- eos/effects/overloadselfemhardeningbonus.py | 4 +- .../overloadselfexplosivehardeningbonus.py | 4 +- ...erloadselfhardeninginvulnerabilitybonus.py | 2 + .../overloadselfkinetichardeningbonus.py | 4 +- .../overloadselfmissileguidancebonus5.py | 12 +++-- .../overloadselfmissileguidancemodulebonus.py | 12 +++-- eos/effects/overloadselfpainterbonus.py | 2 + eos/effects/overloadselfrangebonus.py | 4 +- eos/effects/overloadselfsensormodulebonus.py | 2 + .../overloadselfshieldbonusdurationbonus.py | 2 + eos/effects/overloadselfspeedbonus.py | 2 + .../overloadselfthermalhardeningbonus.py | 4 +- .../overloadselftrackingmodulebonus.py | 2 + eos/effects/passivespeedlimit.py | 2 + eos/effects/pointdefense.py | 2 + eos/effects/powerbooster.py | 2 + eos/effects/powerincrease.py | 4 +- eos/effects/poweroutputaddpassive.py | 2 + eos/effects/poweroutputmultiply.py | 4 +- ...aunchercpupercentbonustacticaldestroyer.py | 4 +- eos/effects/projectilefired.py | 2 + eos/effects/projectileweapondamagemultiply.py | 6 ++- .../projectileweapondamagemultiplypassive.py | 6 ++- eos/effects/projectileweaponspeedmultiply.py | 4 +- .../projectileweaponspeedmultiplypassive.py | 4 +- .../propulsionskillcapneedbonusskilllevel.py | 2 + ...peedlocationshipmodulesrequiringgunnery.py | 4 +- eos/effects/rechargerateaddpassive.py | 4 +- ...bonuspostpercentmaxtargetrangegangships.py | 4 +- eos/effects/reconshipcloakcpubonus1.py | 2 + .../remotearmorpowerneedbonuseffect.py | 5 +- eos/effects/remotearmorrepairentity.py | 2 + eos/effects/remotearmorrepairfalloff.py | 2 + ...nshipmodulesrequiringremotearmorsystems.py | 2 + ...apacitortransmitterpowerneedbonuseffect.py | 2 + eos/effects/remoteecmburst.py | 2 + eos/effects/remoteecmfalloff.py | 4 +- eos/effects/remoteenergytransferfalloff.py | 2 + eos/effects/remoteguidancedisruptfalloff.py | 13 ++--- eos/effects/remotehullrepair.py | 2 + eos/effects/remotehullrepairentity.py | 2 + eos/effects/remotehullrepairfalloff.py | 2 + eos/effects/remotesensorboostfalloff.py | 8 +-- eos/effects/remotesensordampentity.py | 8 +-- eos/effects/remotesensordampfalloff.py | 8 +-- eos/effects/remoteshieldtransferentity.py | 2 + eos/effects/remoteshieldtransferfalloff.py | 2 + eos/effects/remotetargetpaintentity.py | 4 +- eos/effects/remotetargetpaintfalloff.py | 4 +- eos/effects/remotetrackingassistfalloff.py | 10 ++-- eos/effects/remotetrackingdisruptfalloff.py | 10 ++-- eos/effects/remoteweapondisruptentity.py | 10 ++-- eos/effects/remotewebifierentity.py | 4 +- eos/effects/remotewebifierfalloff.py | 4 +- .../repairdronearmordamageamountbonus.py | 4 +- eos/effects/repairdronehullbonusbonus.py | 2 + eos/effects/repairdroneshieldbonusbonus.py | 2 + ...cationshipmodulesrequiringrepairsystems.py | 2 + eos/effects/republicsetbonus3.py | 5 +- eos/effects/republicsetlgbonus.py | 5 +- eos/effects/resistancekillerhullall.py | 2 + eos/effects/resistancekillershieldarmorall.py | 2 + eos/effects/rigdrawbackbonuseffect.py | 3 +- eos/effects/rigdrawbackreductionarmor.py | 8 ++- .../rigdrawbackreductionastronautics.py | 8 ++- eos/effects/rigdrawbackreductiondrones.py | 5 +- eos/effects/rigdrawbackreductionelectronic.py | 11 ++-- .../rigdrawbackreductionenergyweapon.py | 5 +- eos/effects/rigdrawbackreductionhybrid.py | 5 +- eos/effects/rigdrawbackreductionlauncher.py | 5 +- eos/effects/rigdrawbackreductionprojectile.py | 5 +- eos/effects/rigdrawbackreductionshield.py | 5 +- eos/effects/rolebonusbulkheadcpu.py | 2 + eos/effects/rolebonuscdlinkspgreduction.py | 5 +- eos/effects/rolebonusecmcapcpu.py | 5 +- eos/effects/rolebonusecmrange.py | 8 ++- .../rolebonusiceoreminingdurationcap.py | 14 ++++-- eos/effects/rolebonusjustscramblerstrength.py | 4 +- ...bonusmaraudermjdrreactivationdelaybonus.py | 2 + eos/effects/rolebonusstasisrange.py | 5 +- eos/effects/rolebonuswdcapcpu.py | 8 ++- eos/effects/rolebonuswdrange.py | 8 ++- eos/effects/rorqualcargoscanrangebonus.py | 2 + eos/effects/rorqualsurveyscannerrangebonus.py | 2 + .../salvagermoduledurationreduction.py | 2 + eos/effects/salvaging.py | 4 +- ...agingaccessdifficultybonuseffectpassive.py | 5 +- .../scangravimetricstrengthmodifiereffect.py | 4 +- .../scanladarstrengthmodifiereffect.py | 4 +- ...scanmagnetometricstrengthmodifiereffect.py | 5 +- .../scanradarstrengthmodifiereffect.py | 4 +- eos/effects/scanresolutionaddpassive.py | 2 + eos/effects/scanresolutionmultiplieronline.py | 4 +- eos/effects/scanstrengthaddpassive.py | 2 + .../scanstrengthbonuspercentactivate.py | 2 + eos/effects/scanstrengthbonuspercentonline.py | 4 +- .../scanstrengthbonuspercentpassive.py | 2 + ...angebonusmodadddronecontroldistancechar.py | 2 + eos/effects/scriptdurationbonus.py | 2 + eos/effects/scriptmassbonuspercentagebonus.py | 2 + ...eguidancecomputeraoecloudsizebonusbonus.py | 2 + ...leguidancecomputeraoevelocitybonusbonus.py | 2 + ...uidancecomputerexplosiondelaybonusbonus.py | 2 + ...idancecomputermissilevelocitybonusbonus.py | 2 + eos/effects/scriptresistancebonusbonus.py | 5 +- ...ptsensorboostermaxtargetrangebonusbonus.py | 4 +- ...ptsensorboosterscanresolutionbonusbonus.py | 4 +- ...ptsensorboostersensorstrengthbonusbonus.py | 5 +- .../scriptsignatureradiusbonusbonus.py | 2 + .../scriptspeedboostfactorbonusbonus.py | 2 + eos/effects/scriptspeedfactorbonusbonus.py | 2 + ...scripttrackingcomputerfalloffbonusbonus.py | 2 + ...cripttrackingcomputermaxrangebonusbonus.py | 2 + ...trackingcomputertrackingspeedbonusbonus.py | 2 + ...nfieldgeneratorsetdisallowinempirespace.py | 2 + eos/effects/scriptwarpscramblerangebonus.py | 2 + eos/effects/selfrof.py | 4 +- .../selft2largehybridblasterdamagebonus.py | 4 +- .../selft2largehybridraildamagebonus.py | 4 +- .../selft2largelaserbeamdamagebonus.py | 4 +- .../selft2largelaserpulsedamagebonus.py | 4 +- .../selft2largeprojectileacdamagebonus.py | 4 +- .../selft2largeprojectileartydamagebonus.py | 4 +- .../selft2mediumhybridblasterdamagebonus.py | 4 +- .../selft2mediumhybridraildamagebonus.py | 4 +- .../selft2mediumlaserbeamdamagebonus.py | 4 +- .../selft2mediumlaserpulsedamagebonus.py | 4 +- .../selft2mediumprojectileacdamagebonus.py | 4 +- .../selft2mediumprojectileartydamagebonus.py | 4 +- .../selft2smallhybridblasterdamagebonus.py | 4 +- .../selft2smallhybridraildamagebonus.py | 4 +- .../selft2smalllaserbeamdamagebonus.py | 4 +- .../selft2smalllaserpulsedamagebonus.py | 4 +- .../selft2smallprojectileacdamagebonus.py | 4 +- .../selft2smallprojectileartydamagebonus.py | 4 +- eos/effects/sensorboosteractivepercentage.py | 6 ++- eos/effects/sensorboosttargetedhostile.py | 6 ++- ...pensationsensorstrengthbonusgravimetric.py | 5 +- ...sorcompensationsensorstrengthbonusladar.py | 2 + ...nsationsensorstrengthbonusmagnetometric.py | 5 +- ...sorcompensationsensorstrengthbonusradar.py | 2 + ...ationshipmodulesrequiringsensorupgrades.py | 2 + eos/effects/sentrydronedamagebonus.py | 4 +- eos/effects/setbonusasklepian.py | 2 + eos/effects/setbonusbloodraider.py | 4 +- eos/effects/setbonusbloodraidernosferatu.py | 2 + eos/effects/setbonuschristmasagilitybonus.py | 4 +- eos/effects/setbonuschristmasarmorhpbonus2.py | 4 +- eos/effects/setbonuschristmasbonusvelocity.py | 4 +- .../setbonuschristmascapacitorcapacity.py | 5 +- .../setbonuschristmascapacitorrecharge2.py | 4 +- eos/effects/setbonuschristmascpuoutput.py | 4 +- eos/effects/setbonuschristmaspowergrid.py | 5 +- .../setbonuschristmasshieldcapacitybonus.py | 4 +- eos/effects/setbonusguristas.py | 4 +- eos/effects/setbonusmordus.py | 4 +- eos/effects/setbonusore.py | 4 +- eos/effects/setbonussansha.py | 4 +- eos/effects/setbonusserpentis.py | 4 +- eos/effects/setbonussisters.py | 4 +- eos/effects/setbonussyndicate.py | 5 +- eos/effects/setbonusthukker.py | 4 +- ...angelocationshipmodulesrequiringgunnery.py | 2 + eos/effects/shieldboostamplifier.py | 9 ++-- eos/effects/shieldboostamplifierpassive.py | 2 + .../shieldboostamplifierpassivebooster.py | 7 ++- .../shieldboosterdurationbonusshieldskills.py | 7 ++- eos/effects/shieldboosting.py | 4 +- eos/effects/shieldcapacityaddpassive.py | 2 + eos/effects/shieldcapacitybonusonline.py | 4 +- eos/effects/shieldcapacitymultiply.py | 4 +- ...bonuspostpercentshieldcapacitygangships.py | 2 + ...ipmodulesrequiringshieldemmisionsystems.py | 2 + ...tpercentcapacitylocationshipgroupshield.py | 2 + ...ationrechargeratebonuspostpercentonline.py | 2 + ...centrechargeratelocationshipgroupshield.py | 2 + ...ldoperationskillboostcapacitorneedbonus.py | 2 + eos/effects/shieldrechargerateaddpassive.py | 2 + eos/effects/shieldtransfer.py | 2 + .../shieldtransportcpuneedbonuseffect.py | 5 +- eos/effects/shieldtransporterfalloffbonus.py | 8 ++- eos/effects/shieldtransportermaxrangebonus.py | 8 ++- ...ationshipmodulesrequiringshieldupgrades.py | 2 + ...hipadvancedspaceshipcommandagilitybonus.py | 2 + ...parmoremandexpandkinandthmresistanceac2.py | 5 +- eos/effects/shiparmoremresistance1abc1.py | 5 +- eos/effects/shiparmoremresistanceac2.py | 2 + eos/effects/shiparmoremresistanceaf1.py | 2 + eos/effects/shiparmoremresistancemc2.py | 2 + eos/effects/shiparmoremresistancerookie.py | 2 + .../shiparmorexplosiveresistance1abc1.py | 5 +- .../shiparmorexplosiveresistanceac2.py | 5 +- .../shiparmorexplosiveresistancemc2.py | 5 +- eos/effects/shiparmorexresistanceaf1.py | 5 +- eos/effects/shiparmorexresistancerookie.py | 2 + eos/effects/shiparmorhpac2.py | 2 + .../shiparmorkineticresistance1abc1.py | 5 +- eos/effects/shiparmorkineticresistanceac2.py | 5 +- eos/effects/shiparmorkineticresistancemc2.py | 5 +- eos/effects/shiparmorknresistanceaf1.py | 5 +- eos/effects/shiparmorknresistancerookie.py | 2 + eos/effects/shiparmorrepairing1gbc2.py | 5 +- eos/effects/shiparmorrepairinggf2.py | 5 +- eos/effects/shiparmorrepairingrookie.py | 2 + eos/effects/shiparmorresistanceaf1.py | 5 +- eos/effects/shiparmorthermalresistanceac2.py | 5 +- eos/effects/shiparmorthermalresistancemc2.py | 5 +- eos/effects/shiparmorthermresistance1abc1.py | 5 +- eos/effects/shiparmorthresistanceaf1.py | 5 +- eos/effects/shiparmorthresistancerookie.py | 2 + .../shipbonusaf1torpedoexplosionvelocity.py | 2 + eos/effects/shipbonusaf1torpedoflighttime.py | 2 + eos/effects/shipbonusafterburnercapneedatf.py | 2 + .../shipbonusafterburnerspeedfactor2cb.py | 2 + .../shipbonusafterburnerspeedfactorcc2.py | 2 + .../shipbonusafterburnerspeedfactorcf2.py | 2 + eos/effects/shipbonusagilityai2.py | 2 + eos/effects/shipbonusagilityci2.py | 2 + eos/effects/shipbonusagilitygi2.py | 2 + eos/effects/shipbonusagilitymi2.py | 2 + eos/effects/shipbonusammobaymi2.py | 5 +- ...shipbonusaoevelocitycruiseandtorpedocb2.py | 7 ++- .../shipbonusaoevelocitycruisemissilesmb2.py | 5 +- eos/effects/shipbonusaoevelocityrocketscd2.py | 2 + eos/effects/shipbonusaoevelocityrocketsmf.py | 5 +- ...shipbonusaoevelocitystandardmissilescd2.py | 2 + eos/effects/shipbonusarmorrepairai2.py | 5 +- eos/effects/shipbonusarmorrepairgi2.py | 5 +- eos/effects/shipbonusarmorrepamountgc2.py | 5 +- eos/effects/shipbonusarmorresistab.py | 5 +- eos/effects/shipbonuscapcapab.py | 2 + eos/effects/shipbonuscargo2gi.py | 2 + eos/effects/shipbonuscargoci.py | 2 + eos/effects/shipbonuscargomi.py | 2 + eos/effects/shipbonuscarriera1armorresists.py | 14 ++++-- .../shipbonuscarriera2supportfighterbonus.py | 9 +++- .../shipbonuscarriera4warfarelinksbonus.py | 8 ++- .../shipbonuscarrierc1shieldresists.py | 14 ++++-- .../shipbonuscarrierc2supportfighterbonus.py | 9 +++- .../shipbonuscarrierc4warfarelinksbonus.py | 8 ++- .../shipbonuscarrierg1fighterdamage.py | 14 ++++-- ...bonuscarrierg1fighterdamageandhitpoints.py | 17 +++++-- .../shipbonuscarrierg2supportfighterbonus.py | 9 +++- .../shipbonuscarrierg3fighterhitpoints.py | 5 +- .../shipbonuscarrierg4warfarelinksbonus.py | 8 ++- .../shipbonuscarrierm1fighterdamage.py | 14 ++++-- ...pbonuscarrierm1fighterdamageandvelocity.py | 17 +++++-- .../shipbonuscarrierm2supportfighterbonus.py | 9 +++- .../shipbonuscarrierm3fightervelocity.py | 5 +- .../shipbonuscarrierm4warfarelinksbonus.py | 8 ++- .../shipbonuscarrierrole1numwarfarelinks.py | 5 +- .../shipbonuscf1torpedoexplosionvelocity.py | 2 + eos/effects/shipbonuscf1torpedoflighttime.py | 2 + eos/effects/shipbonuscruisemissileemdmgmb.py | 2 + .../shipbonuscruisemissileexplodmgmb.py | 5 +- .../shipbonuscruisemissilekineticdmgmb.py | 5 +- .../shipbonuscruisemissilethermdmgmb.py | 5 +- eos/effects/shipbonuscruiserofmb.py | 2 + .../shipbonusdreadcitadelcruiserofc1.py | 5 +- eos/effects/shipbonusdreadcitadeltorprofc1.py | 5 +- .../shipbonusdreadnoughta1damagebonus.py | 5 +- .../shipbonusdreadnoughta2armorresists.py | 14 ++++-- eos/effects/shipbonusdreadnoughta3capneed.py | 5 +- .../shipbonusdreadnoughtc1damagebonus.py | 38 +++++++++----- .../shipbonusdreadnoughtc2shieldresists.py | 14 ++++-- .../shipbonusdreadnoughtc3reloadbonus.py | 5 +- .../shipbonusdreadnoughtg1damagebonus.py | 5 +- eos/effects/shipbonusdreadnoughtg2rofbonus.py | 5 +- .../shipbonusdreadnoughtg3repairtime.py | 5 +- .../shipbonusdreadnoughtm1damagebonus.py | 5 +- eos/effects/shipbonusdreadnoughtm1webbonus.py | 5 +- eos/effects/shipbonusdreadnoughtm2rofbonus.py | 5 +- .../shipbonusdreadnoughtm3repairtime.py | 5 +- .../shipbonusdreadnoughtrole1damagebonus.py | 3 +- eos/effects/shipbonusdronearmorhitpointsab.py | 2 + .../shipbonusdronearmorhitpointsgf2.py | 2 + eos/effects/shipbonusdronedamagegf2.py | 2 + .../shipbonusdronedamagemultiplierab.py | 2 + .../shipbonusdronedamagemultiplierabc2.py | 5 +- .../shipbonusdronedamagemultiplierac2.py | 2 + .../shipbonusdronedamagemultiplierad1.py | 5 +- .../shipbonusdronedamagemultipliergb2.py | 5 +- .../shipbonusdronedamagemultipliergbc1.py | 5 +- .../shipbonusdronedamagemultipliergc2.py | 2 + .../shipbonusdronedamagemultipliergd1.py | 5 +- .../shipbonusdronedamagemultiplierrookie.py | 2 + eos/effects/shipbonusdronehitpointsabc2.py | 2 + eos/effects/shipbonusdronehitpointsad1.py | 11 ++-- .../shipbonusdronehitpointsfixedac2.py | 2 + eos/effects/shipbonusdronehitpointsgb2.py | 2 + eos/effects/shipbonusdronehitpointsgbc1.py | 2 + eos/effects/shipbonusdronehitpointsgc2.py | 2 + eos/effects/shipbonusdronehitpointsgd1.py | 11 ++-- eos/effects/shipbonusdronehitpointsgf.py | 2 + eos/effects/shipbonusdronehitpointsgf2.py | 2 + eos/effects/shipbonusdronehitpointsrookie.py | 4 +- eos/effects/shipbonusdroneminingamountac2.py | 2 + eos/effects/shipbonusdroneminingamountgc2.py | 2 + eos/effects/shipbonusdronemwdboostgc.py | 2 + eos/effects/shipbonusdronemwdboostrole.py | 2 + eos/effects/shipbonusdroneoptimalrangegb.py | 2 + .../shipbonusdroneshieldhitpointsab.py | 2 + .../shipbonusdroneshieldhitpointsgf2.py | 2 + .../shipbonusdronestructurehitpointsab.py | 2 + eos/effects/shipbonusdronetrackinggb.py | 2 + eos/effects/shipbonusdronetrackinggc.py | 2 + eos/effects/shipbonusdronetrackinggf.py | 2 + eos/effects/shipbonusecmstrengthbonuscc.py | 5 +- .../shipbonuselitecover2torpedoemdamage.py | 2 + ...pbonuselitecover2torpedoexplosivedamage.py | 5 +- ...hipbonuselitecover2torpedokineticdamage.py | 5 +- ...hipbonuselitecover2torpedothermaldamage.py | 5 +- eos/effects/shipbonusemarmorresistancead2.py | 2 + eos/effects/shipbonusemarmorresistancegd2.py | 5 +- eos/effects/shipbonusemmissiledamagecd1.py | 5 +- eos/effects/shipbonusemmissiledmgmd1.py | 5 +- eos/effects/shipbonusemshieldresistancecb2.py | 5 +- eos/effects/shipbonusemshieldresistancemd2.py | 5 +- eos/effects/shipbonusenergyneutfalloffab2.py | 5 +- eos/effects/shipbonusenergyneutfalloffac3.py | 5 +- eos/effects/shipbonusenergyneutfalloffad1.py | 5 +- eos/effects/shipbonusenergyneutfalloffaf3.py | 5 +- eos/effects/shipbonusenergyneutfalloffeaf3.py | 6 ++- eos/effects/shipbonusenergyneutfalloffrs2.py | 5 +- eos/effects/shipbonusenergyneutfalloffrs3.py | 5 +- eos/effects/shipbonusenergyneutoptimalab.py | 5 +- eos/effects/shipbonusenergyneutoptimalac1.py | 5 +- eos/effects/shipbonusenergyneutoptimalad2.py | 5 +- eos/effects/shipbonusenergyneutoptimalaf2.py | 5 +- eos/effects/shipbonusenergyneutoptimaleaf1.py | 6 ++- eos/effects/shipbonusenergyneutoptimalrs1.py | 5 +- eos/effects/shipbonusenergyneutoptimalrs3.py | 5 +- eos/effects/shipbonusenergynosfalloffab2.py | 5 +- eos/effects/shipbonusenergynosfalloffac3.py | 5 +- eos/effects/shipbonusenergynosfalloffad1.py | 5 +- eos/effects/shipbonusenergynosfalloffaf3.py | 5 +- eos/effects/shipbonusenergynosfalloffeaf3.py | 6 ++- eos/effects/shipbonusenergynosfalloffrs2.py | 5 +- eos/effects/shipbonusenergynosfalloffrs3.py | 5 +- eos/effects/shipbonusenergynosoptimalab.py | 5 +- eos/effects/shipbonusenergynosoptimalac1.py | 5 +- eos/effects/shipbonusenergynosoptimalad2.py | 5 +- eos/effects/shipbonusenergynosoptimalaf2.py | 5 +- eos/effects/shipbonusenergynosoptimaleaf1.py | 6 ++- eos/effects/shipbonusenergynosoptimalrs1.py | 5 +- eos/effects/shipbonusenergynosoptimalrs3.py | 5 +- eos/effects/shipbonusenergyvampirerangead2.py | 2 + ...usewremotesensordampenerfalloffbonusgc1.py | 5 +- ...otesensordampenermaxtargetrangebonusgc2.py | 5 +- ...otesensordampenermaxtargetrangebonusgf2.py | 5 +- ...sensordampenermaxtargetrangebonusrookie.py | 2 + ...usewremotesensordampeneroptimalbonusgc1.py | 2 + ...otesensordampenerscanresolutionbonusgc2.py | 5 +- ...otesensordampenerscanresolutionbonusgf2.py | 5 +- ...sensordampenerscanresolutionbonusrookie.py | 2 + ...ewweapondisruptionrangedisruptionrookie.py | 2 + .../shipbonusewweapondisruptionstrengthac1.py | 23 ++++++--- .../shipbonusewweapondisruptionstrengthaf2.py | 23 ++++++--- .../shipbonusexplosivearmorresistancead2.py | 5 +- .../shipbonusexplosivearmorresistancegd2.py | 5 +- .../shipbonusexplosivemissiledamagecd1.py | 6 ++- .../shipbonusexplosivemissiledmgmd1.py | 6 ++- .../shipbonusexplosiveshieldresistancecb2.py | 5 +- .../shipbonusexplosiveshieldresistancemd2.py | 5 +- ...orceauxiliarya1remoterepairandcapamount.py | 8 ++- .../shipbonusforceauxiliarya2armorresists.py | 14 ++++-- .../shipbonusforceauxiliarya3capcapacity.py | 5 +- ...pbonusforceauxiliarya4warfarelinksbonus.py | 8 ++- ...forceauxiliaryc1remoteboostandcapamount.py | 8 ++- .../shipbonusforceauxiliaryc2shieldresists.py | 14 ++++-- .../shipbonusforceauxiliaryc3capcapacity.py | 5 +- ...pbonusforceauxiliaryc4warfarelinksbonus.py | 8 ++- ...hipbonusforceauxiliaryg1remotecycletime.py | 8 ++- ...pbonusforceauxiliaryg2localrepairamount.py | 8 ++- ...bonusforceauxiliaryg3capboosterstrength.py | 5 +- ...pbonusforceauxiliaryg4warfarelinksbonus.py | 8 ++- ...hipbonusforceauxiliarym1remotecycletime.py | 8 ++- ...ipbonusforceauxiliarym2localboostamount.py | 8 ++- ...bonusforceauxiliarym3capboosterstrength.py | 5 +- ...pbonusforceauxiliarym4warfarelinksbonus.py | 8 ++- .../shipbonusforceauxiliaryrole1cpubonus.py | 5 +- ...usforceauxiliaryrole2logisticdronebonus.py | 11 ++-- ...bonusforceauxiliaryrole3numwarfarelinks.py | 5 +- ...gatesizedlightmissileexplosivedamagemd1.py | 5 +- ...onusfrigatesizedmissilekineticdamagecd1.py | 5 +- eos/effects/shipbonusgf1torpedoflighttime.py | 2 + .../shipbonusgftorpedoexplosionvelocity.py | 4 +- ...bonushamvelocityelitebonusheavygunship1.py | 5 +- eos/effects/shipbonusheatdamageatf1.py | 2 + ...hipbonusheavyassaultmissilealldamagemc2.py | 5 +- ...nusheavyassaultmissilekineticdamagecbc1.py | 5 +- ...bonusheavyassaultmissilelauncherrofmbc2.py | 2 + eos/effects/shipbonusheavydronearmorhpgc2.py | 2 + ...shipbonusheavydronearmorhppiratefaction.py | 2 + .../shipbonusheavydronedamagemultipliergc2.py | 2 + ...heavydronedamagemultiplierpiratefaction.py | 2 + eos/effects/shipbonusheavydronehpgc2.py | 2 + .../shipbonusheavydronehppiratefaction.py | 2 + eos/effects/shipbonusheavydroneshieldhpgc2.py | 2 + ...hipbonusheavydroneshieldhppiratefaction.py | 2 + eos/effects/shipbonusheavydronespeedgc.py | 2 + eos/effects/shipbonusheavydronetrackinggc.py | 2 + .../shipbonusheavymissilealldamagemc2.py | 5 +- eos/effects/shipbonusheavymissileemdmgmb.py | 2 + .../shipbonusheavymissileexplodmgmb.py | 5 +- .../shipbonusheavymissilekineticdamagecbc1.py | 5 +- .../shipbonusheavymissilekineticdmgmb.py | 5 +- .../shipbonusheavymissilelauncherrofmbc2.py | 2 + .../shipbonusheavymissilethermdmgmb.py | 5 +- eos/effects/shipbonushmlemdamageac.py | 2 + eos/effects/shipbonushmlexplodamageac.py | 2 + eos/effects/shipbonushmlkineticdamageac.py | 2 + eos/effects/shipbonushmlthermdamageac.py | 2 + ...bonushmlvelocityelitebonusheavygunship1.py | 5 +- eos/effects/shipbonushtfalloffgb2.py | 2 + eos/effects/shipbonushybridfalloffatc2.py | 2 + eos/effects/shipbonushybridoptimalcb.py | 2 + eos/effects/shipbonushybridtrackingatc2.py | 2 + eos/effects/shipbonushybridtrackinggf2.py | 4 +- .../shipbonusiceharvesterdurationore3.py | 4 +- eos/effects/shipbonusjustscramblerrangegf2.py | 5 +- .../shipbonuskineticarmorresistancead2.py | 5 +- .../shipbonuskineticarmorresistancegd2.py | 5 +- .../shipbonuskineticmissiledamagecd1.py | 5 +- .../shipbonuskineticmissiledamagegb2.py | 5 +- .../shipbonuskineticmissiledamagegc2.py | 2 + .../shipbonuskineticmissiledamagegf.py | 2 + eos/effects/shipbonuskineticmissiledmgmd1.py | 5 +- .../shipbonuskineticshieldresistancecb2.py | 5 +- .../shipbonuskineticshieldresistancemd2.py | 5 +- .../shipbonuslargeenergyturretmaxrangeab.py | 2 + .../shipbonuslargeenergyturretmaxrangeab2.py | 2 + .../shipbonuslargeenergyturrettrackingab.py | 2 + .../shipbonuslargeenergyweapondamageab2.py | 5 +- .../shipbonusletoptimalrangepiratefaction.py | 2 + eos/effects/shipbonuslightdronearmorhpgc2.py | 4 +- ...shipbonuslightdronearmorhppiratefaction.py | 2 + .../shipbonuslightdronedamagemultipliergc2.py | 2 + ...lightdronedamagemultiplierpiratefaction.py | 2 + eos/effects/shipbonuslightdronehpgc2.py | 2 + .../shipbonuslightdronehppiratefaction.py | 2 + eos/effects/shipbonuslightdroneshieldhpgc2.py | 2 + ...hipbonuslightdroneshieldhppiratefaction.py | 2 + .../shipbonuslightmissilealldamagemc2.py | 5 +- eos/effects/shipbonusmediumdronearmorhpgc2.py | 2 + ...hipbonusmediumdronearmorhppiratefaction.py | 2 + ...shipbonusmediumdronedamagemultipliergc2.py | 2 + ...ediumdronedamagemultiplierpiratefaction.py | 2 + eos/effects/shipbonusmediumdronehpgc2.py | 2 + .../shipbonusmediumdronehppiratefaction.py | 2 + .../shipbonusmediumdroneshieldhpgc2.py | 2 + ...ipbonusmediumdroneshieldhppiratefaction.py | 2 + ...usmediumenergyturretdamagepiratefaction.py | 2 + .../shipbonusmediumenergyturrettrackingac2.py | 2 + eos/effects/shipbonusmediumhybriddmgcc2.py | 2 + eos/effects/shipbonusmetoptimalac2.py | 2 + .../shipbonusmetoptimalrangepiratefaction.py | 2 + .../shipbonusmf1torpedoexplosionvelocity.py | 4 +- eos/effects/shipbonusmf1torpedoflighttime.py | 2 + eos/effects/shipbonusmineralbaygi2.py | 5 +- ...shipbonusminingdroneamountpercentrookie.py | 2 + eos/effects/shipbonusminingdurationore3.py | 2 + .../shipbonusminingiceharvestingrangeore2.py | 7 ++- eos/effects/shipbonusmissileaoevelocitymb2.py | 5 +- ...onusmissileexplosiondelaypiratefaction2.py | 2 + eos/effects/shipbonusmissilekineticlatf2.py | 2 + .../shipbonusmissilelauncherassaultrofatc1.py | 2 + ...bonusmissilelauncherheavyassaultrofatc1.py | 2 + .../shipbonusmissilelauncherheavyrofatc1.py | 2 + eos/effects/shipbonusmissilevelocityad2.py | 2 + eos/effects/shipbonusmissilevelocitycc2.py | 2 + eos/effects/shipbonusmwdsignatureradiusmd2.py | 5 +- eos/effects/shipbonusnoctissalvagecycle.py | 5 +- eos/effects/shipbonusnoctistractorcycle.py | 5 +- eos/effects/shipbonusnoctistractorrange.py | 5 +- eos/effects/shipbonusnoctistractorvelocity.py | 5 +- eos/effects/shipbonusorecapacitygi2.py | 5 +- ...apshipdronearmorhpandshieldhpandhpbonus.py | 5 +- .../shipbonusorecapshipdronedmgbonus.py | 5 +- eos/effects/shipbonusoreholdore2.py | 4 +- eos/effects/shipbonuspicommoditiesholdgi2.py | 5 +- .../shipbonuspiratefrigateprojdamage.py | 2 + eos/effects/shipbonuspiratesmallhybriddmg.py | 2 + eos/effects/shipbonusprojectiledamagembc1.py | 5 +- eos/effects/shipbonusprojectiledamagembc2.py | 5 +- .../shipbonusprojectiletrackingmbc2.py | 5 +- eos/effects/shipbonusprojectiletrackingmc2.py | 2 + eos/effects/shipbonusptfalloffmb1.py | 2 + .../shipbonusremotearmorrepairamount2af.py | 5 +- .../shipbonusremotearmorrepairamountac2.py | 5 +- .../shipbonusremotearmorrepairamountgc2.py | 6 ++- .../shipbonusremotearmorrepairamountgf2.py | 6 ++- .../shipbonusremotearmorrepaircapneedac1.py | 5 +- .../shipbonusremotearmorrepaircapneedaf.py | 5 +- .../shipbonusremotearmorrepaircapneedgc1.py | 5 +- .../shipbonusremotearmorrepaircapneedgf.py | 5 +- ...hipbonusremoterepairamountpiratefaction.py | 2 + ...hipbonusremoterepairrangepiratefaction2.py | 4 +- ...ipbonusremotetrackingcomputerfalloffgc2.py | 5 +- ...hipbonusremotetrackingcomputerfalloffmc.py | 5 +- ...pbonusrepairsystemsarmorrepairamountgb2.py | 5 +- .../shipbonusrepairsystemsbonusatc2.py | 2 + eos/effects/shipbonusrhmlrof2cb.py | 2 + eos/effects/shipbonusrhmlrofcb.py | 2 + eos/effects/shipbonusrhmlrofmb.py | 2 + eos/effects/shipbonussalvagecycleaf.py | 2 + eos/effects/shipbonussalvagecyclecf.py | 2 + eos/effects/shipbonussalvagecyclegf.py | 2 + eos/effects/shipbonussalvagecyclemf.py | 2 + eos/effects/shipbonusscanprobestrength2af.py | 5 +- eos/effects/shipbonusscanprobestrengthcf.py | 5 +- eos/effects/shipbonusscanprobestrengthgf.py | 5 +- eos/effects/shipbonusscanprobestrengthmf.py | 5 +- eos/effects/shipbonussentryarmorhpgc3.py | 2 + .../shipbonussentrydamagemultipliergc3.py | 2 + ...hipbonussentrydronearmorhppiratefaction.py | 2 + ...entrydronedamagemultiplierpiratefaction.py | 2 + .../shipbonussentrydronehppiratefaction.py | 2 + ...roneoptimalrangeelitebonusheavygunship2.py | 5 +- ...ipbonussentrydroneshieldhppiratefaction.py | 2 + ...trydronetrackingelitebonusheavygunship2.py | 5 +- eos/effects/shipbonussentryhpgc3.py | 2 + eos/effects/shipbonussentryshieldhpgc3.py | 2 + eos/effects/shipbonusshieldboostamountmc2.py | 2 + eos/effects/shipbonusshieldboostci2.py | 2 + eos/effects/shipbonusshieldboostermb1a.py | 2 + eos/effects/shipbonusshieldboostmi2.py | 2 + eos/effects/shipbonusshieldcapacityore2.py | 2 + eos/effects/shipbonusshieldemresistancecd2.py | 5 +- .../shipbonusshieldexplosiveresistancecd2.py | 5 +- .../shipbonusshieldkineticresistancecd2.py | 5 +- .../shipbonusshieldthermalresistancecd2.py | 5 +- .../shipbonusshieldtransferboostamountcc2.py | 2 + .../shipbonusshieldtransferboostamountcf2.py | 2 + .../shipbonusshieldtransferboostamountmc2.py | 2 + .../shipbonusshieldtransferboostamountmf2.py | 2 + .../shipbonusshieldtransfercapneed1.py | 5 +- .../shipbonusshieldtransfercapneedcf.py | 2 + .../shipbonusshieldtransfercapneedmc1.py | 2 + .../shipbonusshieldtransfercapneedmf.py | 2 + .../shipbonussmallenergyturretdamageatf1.py | 2 + ...nussmallenergyturretdamagepiratefaction.py | 2 + .../shipbonussmallenergyturrettracking2af.py | 2 + ...pbonussmallenergyweaponoptimalrangeatf2.py | 2 + .../shipbonussmallhybridmaxrangeatf2.py | 2 + .../shipbonussmallhybridtrackingspeedatf2.py | 2 + ...shipbonussmallmissileexplosionradiuscd2.py | 7 ++- ...shipbonussmallmissileexplosionradiuscf2.py | 7 ++- eos/effects/shipbonussptfalloffmf2.py | 2 + eos/effects/shipbonusstasismf2.py | 2 + .../shipbonusstasiswebspeedfactormb.py | 2 + ...hipbonusstrategiccruiseramarrheatdamage.py | 5 +- ...pbonusstrategiccruisercaldariheatdamage.py | 5 +- ...bonusstrategiccruisergallenteheatdamage.py | 5 +- ...bonusstrategiccruiserminmatarheatdamage.py | 5 +- .../shipbonussupercarriera1fighterdamage.py | 14 ++++-- .../shipbonussupercarriera2armorresists.py | 14 ++++-- ...ussupercarriera2fighterapplicationbonus.py | 10 +++- .../shipbonussupercarriera3warpstrength.py | 5 +- ...pbonussupercarriera4burstprojectorbonus.py | 6 ++- ...ussupercarriera4fighterapplicationbonus.py | 10 +++- ...hipbonussupercarriera5warfarelinksbonus.py | 8 ++- .../shipbonussupercarrierc1fighterdamage.py | 14 ++++-- ...shipbonussupercarrierc2afterburnerbonus.py | 5 +- .../shipbonussupercarrierc2shieldresists.py | 14 ++++-- .../shipbonussupercarrierc3warpstrength.py | 5 +- ...pbonussupercarrierc4burstprojectorbonus.py | 6 ++- ...hipbonussupercarrierc5warfarelinksbonus.py | 8 ++- .../shipbonussupercarrierg1fighterdamage.py | 14 ++++-- ...shipbonussupercarrierg2fighterhitpoints.py | 5 +- .../shipbonussupercarrierg3warpstrength.py | 5 +- ...pbonussupercarrierg4burstprojectorbonus.py | 6 ++- ...hipbonussupercarrierg5warfarelinksbonus.py | 8 ++- ...nussupercarrierm1burstprojectorwebbonus.py | 5 +- .../shipbonussupercarrierm1fighterdamage.py | 14 ++++-- .../shipbonussupercarrierm2fightervelocity.py | 5 +- .../shipbonussupercarrierm3warpstrength.py | 5 +- ...pbonussupercarrierm4burstprojectorbonus.py | 6 ++- ...hipbonussupercarrierm5warfarelinksbonus.py | 8 ++- ...ipbonussupercarrierrole1numwarfarelinks.py | 5 +- ...supercarrierrole2armorshieldmodulebonus.py | 8 ++- ...robeexplosiondelayskillsurveycovertops3.py | 5 +- .../shipbonustargetpainteroptimalmf1.py | 2 + eos/effects/shipbonustdoptimalbonusaf1.py | 2 + .../shipbonusthermalarmorresistancead2.py | 5 +- .../shipbonusthermalarmorresistancegd2.py | 5 +- .../shipbonusthermalmissiledamagecd1.py | 5 +- .../shipbonusthermalmissiledamagegb2.py | 5 +- .../shipbonusthermalmissiledamagegc2.py | 2 + .../shipbonusthermalmissiledamagegf.py | 2 + .../shipbonusthermalshieldresistancemd2.py | 5 +- .../shipbonusthermicshieldresistancecb2.py | 5 +- eos/effects/shipbonusthermmissiledmgmd1.py | 5 +- eos/effects/shipbonustitana1damagebonus.py | 5 +- eos/effects/shipbonustitana2capneed.py | 5 +- eos/effects/shipbonustitana3warpstrength.py | 2 + eos/effects/shipbonustitana4fleetbonus.py | 5 +- eos/effects/shipbonustitanc1kindamagebonus.py | 11 ++-- eos/effects/shipbonustitanc2rofbonus.py | 11 ++-- eos/effects/shipbonustitanc3warpstrength.py | 2 + eos/effects/shipbonustitanc4fleetbonus.py | 5 +- eos/effects/shipbonustitanc5alldamagebonus.py | 29 +++++++---- eos/effects/shipbonustitang1damagebonus.py | 5 +- eos/effects/shipbonustitang2rofbonus.py | 5 +- eos/effects/shipbonustitang3warpstrength.py | 2 + eos/effects/shipbonustitang4fleetbonus.py | 5 +- eos/effects/shipbonustitanm1damagebonus.py | 5 +- eos/effects/shipbonustitanm1webbonus.py | 5 +- eos/effects/shipbonustitanm2rofbonus.py | 5 +- eos/effects/shipbonustitanm3warpstrength.py | 2 + eos/effects/shipbonustitanm4fleetbonus.py | 5 +- .../shipbonustitanrole1numwarfarelinks.py | 5 +- ...ipbonustitanrole2armorshieldmodulebonus.py | 8 ++- eos/effects/shipbonustitanrole3damagebonus.py | 5 +- ...shipbonustitanrole3torpdeovelocitybonus.py | 5 +- eos/effects/shipbonustorpedomissileemdmgmb.py | 2 + .../shipbonustorpedomissileexplodmgmb.py | 5 +- .../shipbonustorpedomissilekineticdmgmb.py | 5 +- .../shipbonustorpedomissilethermdmgmb.py | 5 +- eos/effects/shipbonustorpedorofmb.py | 2 + eos/effects/shipbonustorpedovelocity2af.py | 2 + eos/effects/shipbonustorpedovelocitycf2.py | 2 + eos/effects/shipbonustorpedovelocitygf2.py | 2 + eos/effects/shipbonustorpedovelocitymf2.py | 2 + eos/effects/shipbonusvelocityci.py | 2 + eos/effects/shipbonusvelocitygi.py | 2 + .../shipbonuswarpscramblemaxrangegb.py | 2 + .../shipbonuswarpscramblermaxrangegc2.py | 2 + .../shipbonuswarpscramblermaxrangegf2.py | 2 + eos/effects/shipbonuswdfgnullpenalties.py | 2 + eos/effects/shipcapitalagilitybonus.py | 2 + eos/effects/shipcapneedbonusab.py | 2 + eos/effects/shipcappropulsionjamming.py | 2 + eos/effects/shipcaprecharge2af.py | 2 + eos/effects/shipcargobonusai.py | 2 + ...mandbonuseffectivemultiplierorecapital2.py | 5 +- ...nusindustrialreconfigurationorecapital1.py | 5 +- .../shipcruiseandsiegelauncherrofbonus2cb.py | 2 + .../shipcruiseandtorpedovelocitybonuscb3.py | 7 ++- eos/effects/shipcruiselauncherrofbonus2cb.py | 2 + .../shipcruisemissileaoecloudsize1cb.py | 2 + eos/effects/shipcruisemissilerofcb.py | 2 + .../shipcruisemissilevelocitybonuscb3.py | 2 + eos/effects/shipdronemwdspeedbonusrookie.py | 2 + eos/effects/shipdronescoutthermaldamagegf2.py | 2 + eos/effects/shipdronesmaxgc2.py | 2 + eos/effects/shipecmscanstrengthbonuscf.py | 2 + eos/effects/shipecmscanstrengthbonusrookie.py | 2 + eos/effects/shipenergydrainamountaf1.py | 2 + ...penergyneutralizertransferamountbonusab.py | 5 +- ...penergyneutralizertransferamountbonusac.py | 5 +- ...penergyneutralizertransferamountbonusaf.py | 5 +- ...energyneutralizertransferamountbonusaf2.py | 5 +- eos/effects/shipenergytcapneedbonusaf.py | 2 + eos/effects/shipenergytcapneedbonusrookie.py | 2 + eos/effects/shipenergytrackingabc1.py | 5 +- eos/effects/shipenergytransferrange1.py | 2 + eos/effects/shipenergytransferrange2.py | 2 + .../shipenergyvampireamountbonusfixedaf2.py | 5 +- .../shipenergyvampiretransferamountbonusab.py | 5 +- .../shipenergyvampiretransferamountbonusac.py | 2 + eos/effects/shipetdamageaf.py | 5 +- eos/effects/shipetoptimalrange2af.py | 4 +- eos/effects/shipetspeedbonusab2.py | 4 +- eos/effects/shipfalloffbonusgf.py | 2 + eos/effects/shipfalloffbonusmf.py | 2 + ...ipfighterbomberdamagepiratesupercarrier.py | 2 + ...ighterbomberhitpointspiratesupercarrier.py | 2 + .../shipfighterdamagepiratesupercarrier.py | 2 + .../shipfighterhitpointspiratesupercarrier.py | 2 + eos/effects/shipgchyieldbonusorefrig2.py | 2 + .../shipheatdamageamarrtacticaldestroyer3.py | 5 +- ...shipheatdamagecaldaritacticaldestroyer3.py | 5 +- ...hipheatdamagegallentetacticaldestroyer3.py | 5 +- ...hipheatdamageminmatartacticaldestroyer3.py | 5 +- ...shipheavyassaultmissileaoecloudsizecbc1.py | 5 +- .../shipheavyassaultmissileaoecloudsizecc2.py | 2 + ...ssaultmissileemandexpandkinandthmdmgac1.py | 5 +- ...ipheavyassaultmissileemdmgpiratecruiser.py | 2 + ...pheavyassaultmissileexpdmgpiratecruiser.py | 2 + ...pheavyassaultmissilekindmgpiratecruiser.py | 2 + ...eavyassaultmissilethermdmgpiratecruiser.py | 2 + .../shipheavymissileaoecloudsizecbc1.py | 5 +- .../shipheavymissileaoecloudsizecc2.py | 2 + .../shipheavymissileemdmgpiratecruiser.py | 2 + .../shipheavymissileexpdmgpiratecruiser.py | 2 + .../shipheavymissilekindmgpiratecruiser.py | 2 + .../shipheavymissilethermdmgpiratecruiser.py | 2 + eos/effects/shiphrangebonuscc.py | 2 + eos/effects/shiphtdamagebonuscc.py | 2 + eos/effects/shiphtdmgbonusfixedgc.py | 2 + eos/effects/shiphtdmgbonusgb.py | 5 +- eos/effects/shiphttrackingbonusgb.py | 2 + eos/effects/shiphttrackingbonusgb2.py | 5 +- eos/effects/shiphturretfalloffbonusgc.py | 2 + eos/effects/shiphybriddamagebonuscbc2.py | 5 +- eos/effects/shiphybriddamagebonuscf.py | 4 +- eos/effects/shiphybriddamagebonuscf2.py | 2 + eos/effects/shiphybriddamagebonusgbc2.py | 5 +- eos/effects/shiphybriddmg1cbc2.py | 5 +- eos/effects/shiphybriddmg1gbc1.py | 5 +- eos/effects/shiphybriddmgpiratebattleship.py | 2 + eos/effects/shiphybriddmgpiratecruiser.py | 2 + eos/effects/shiphybridfalloff1gd1.py | 2 + eos/effects/shiphybridoptimal1cbc1.py | 2 + eos/effects/shiphybridoptimalgd1.py | 2 + eos/effects/shiphybridrange1cd1.py | 2 + eos/effects/shiphybridrangebonuscbc1.py | 2 + eos/effects/shiphybridrangebonuscf2.py | 4 +- eos/effects/shiphybridrangebonusrookie.py | 4 +- eos/effects/shiphybridtracking1gd2.py | 2 + eos/effects/shiphybridtrackingcd2.py | 2 + eos/effects/shiphybridtrackinggbc2.py | 5 +- eos/effects/shiphybridtrackinggc.py | 2 + eos/effects/shiphybridtrackinggc2.py | 2 + eos/effects/shiphybridturretrofbonusgc2.py | 2 + .../shiplargehybridtrackingbonusgbc1.py | 5 +- eos/effects/shiplargehybridturretrofgb.py | 2 + eos/effects/shiplargelasercapabc1.py | 5 +- eos/effects/shiplargelaserdamagebonusabc2.py | 5 +- eos/effects/shiplasercap1abc2.py | 5 +- eos/effects/shiplasercapabc1.py | 5 +- eos/effects/shiplasercapneed2ad1.py | 2 + eos/effects/shiplaserdamagebonusabc2.py | 5 +- .../shiplaserdamagepiratebattleship.py | 2 + eos/effects/shiplaserrofac2.py | 2 + eos/effects/shiplasertracking2ad2.py | 2 + .../shiplightmissilemaxvelocitybonusrookie.py | 2 + .../shipmaxlockedtargetsbonusaddonline.py | 2 + eos/effects/shipmaxtargetrangebonusonline.py | 4 +- eos/effects/shipmetcdamagebonusac.py | 2 + eos/effects/shipmetdamagebonusac2.py | 2 + eos/effects/shipminingbonusorefrig1.py | 5 +- ...ipmissileassaultmissilevelocitybonuscc2.py | 2 + eos/effects/shipmissileemdamagecb.py | 2 + eos/effects/shipmissileemdamagecc.py | 2 + eos/effects/shipmissileemdamagecf2.py | 2 + eos/effects/shipmissileexpdamagecc.py | 2 + eos/effects/shipmissileexplodamagecb.py | 5 +- eos/effects/shipmissileexplosivedamagecf2.py | 5 +- .../shipmissileheavyassaultvelocityabc2.py | 5 +- eos/effects/shipmissileheavyvelocityabc2.py | 5 +- .../shipmissileheavyvelocitybonuscc2.py | 2 + eos/effects/shipmissilekindamagecb.py | 5 +- eos/effects/shipmissilekindamagecc2.py | 2 + eos/effects/shipmissilekindamagecc3.py | 5 +- eos/effects/shipmissilekineticdamagecc.py | 2 + eos/effects/shipmissilekineticdamagecf.py | 2 + eos/effects/shipmissilekineticdamagecf2.py | 2 + eos/effects/shipmissilekineticdamagerookie.py | 2 + eos/effects/shipmissilelauncherrofad1fixed.py | 4 +- eos/effects/shipmissilelauncherrofcc2.py | 2 + .../shipmissilelauncherspeedbonusmc2.py | 2 + .../shipmissilelightvelocitybonuscc2.py | 2 + ...silereloadtimecaldaritacticaldestroyer2.py | 5 +- ...shipmissilerofcaldaritacticaldestroyer1.py | 7 +-- eos/effects/shipmissilerofcc.py | 2 + eos/effects/shipmissilerofmf2.py | 4 +- eos/effects/shipmissilespeedbonusaf.py | 2 + eos/effects/shipmissilespeedbonuscf.py | 2 + eos/effects/shipmissilethermaldamagecf2.py | 2 + eos/effects/shipmissilethermdamagecb.py | 5 +- eos/effects/shipmissilethermdamagecc.py | 2 + eos/effects/shipmissilevelocitycd1.py | 2 + eos/effects/shipmissilevelocitycf.py | 2 + ...shipmissilevelocitypiratefactionfrigate.py | 2 + .../shipmissilevelocitypiratefactionlight.py | 2 + .../shipmissilevelocitypiratefactionrocket.py | 2 + eos/effects/shipmodemaxtargetrangepostdiv.py | 2 + eos/effects/shipmodemissilevelocitypostdiv.py | 2 + eos/effects/shipmodescanrespostdiv.py | 2 + eos/effects/shipmodescanstrengthpostdiv.py | 2 + eos/effects/shipmodesetoptimalrangepostdiv.py | 2 + eos/effects/shipmodeshtoptimalrangepostdiv.py | 2 + eos/effects/shipmodespttrackingpostdiv.py | 2 + eos/effects/shipmtfalloffbonusatc.py | 2 + eos/effects/shipmtfalloffbonusatf.py | 4 +- eos/effects/shipmtmaxrangebonusatc.py | 2 + eos/effects/shipmtmaxrangebonusatf.py | 2 + ...hipneutdestabilizationamountbonusrookie.py | 2 + .../shipnostransferamountbonusrookie.py | 2 + eos/effects/shippdmgbonusmf.py | 2 + eos/effects/shipprojectiledamagemd1.py | 5 +- eos/effects/shipprojectiledmgmc.py | 2 + eos/effects/shipprojectiledmgmc2.py | 5 +- eos/effects/shipprojectiledmgpiratecruiser.py | 2 + eos/effects/shipprojectilefalloffbonusmbc2.py | 2 + eos/effects/shipprojectileoptimalbonusemf2.py | 2 + eos/effects/shipprojectilerof1mbc2.py | 2 + eos/effects/shipprojectilerofbonusmbc1.py | 2 + .../shipprojectilerofpiratebattleship.py | 2 + eos/effects/shipprojectilerofpiratecruiser.py | 2 + eos/effects/shipprojectiletracking1md2.py | 2 + eos/effects/shipprojectiletrackinggf.py | 2 + eos/effects/shipprojectiletrackingmf2.py | 2 + eos/effects/shipptdmgbonusmb.py | 5 +- eos/effects/shipptspeedbonusmb2.py | 2 + eos/effects/shippturretfalloffbonusgb.py | 2 + eos/effects/shippturretfalloffbonusgc.py | 2 + eos/effects/shippturretfalloffbonusmc2.py | 2 + eos/effects/shippturretspeedbonusmc.py | 2 + eos/effects/shipremotearmorfalloffac2.py | 6 ++- eos/effects/shipremotearmorfalloffgc1.py | 6 ++- eos/effects/shipremotearmorrange1.py | 4 +- eos/effects/shipremotearmorrange2.py | 2 + eos/effects/shipremotearmorrangeac2.py | 5 +- eos/effects/shipremotearmorrangegc1.py | 5 +- .../shipremotesensordampenercapneedgf.py | 2 + eos/effects/shiprocketemdmgaf.py | 2 + eos/effects/shiprocketemthermkindmgmf2.py | 11 ++-- eos/effects/shiprocketexpdmgmf3.py | 5 +- eos/effects/shiprocketexplosivedmgaf.py | 2 + eos/effects/shiprocketexplosivedmgmd1.py | 5 +- eos/effects/shiprocketkineticdmgaf.py | 2 + eos/effects/shiprocketkineticdmgcd1.py | 5 +- .../shiprocketmaxvelocitybonusrookie.py | 2 + eos/effects/shiprocketrofbonusaf2.py | 2 + eos/effects/shiprocketthermaldmgaf.py | 2 + ...shipscanprobestrengthbonuspiratecruiser.py | 2 + ...shipscanprobestrengthbonuspiratefaction.py | 2 + eos/effects/shipscanresolutionbonusonline.py | 4 +- .../shipsetcapneedamarrtacticaldestroyer2.py | 5 +- .../shipsetdamageamarrtacticaldestroyer1.py | 5 +- eos/effects/shipsetdmgbonusaf.py | 2 + eos/effects/shipsetdmgbonusrookie.py | 2 + eos/effects/shipsetoptimalbonusrookie.py | 2 + eos/effects/shipsettrackingbonusaf.py | 2 + eos/effects/shipsettrackingbonusrookie.py | 2 + eos/effects/shipshieldboost1mbc1.py | 5 +- eos/effects/shipshieldboostmf.py | 2 + eos/effects/shipshieldboostrookie.py | 2 + eos/effects/shipshieldemresistance1cbc2.py | 5 +- eos/effects/shipshieldemresistancecc2.py | 2 + eos/effects/shipshieldemresistancecf2.py | 2 + eos/effects/shipshieldemresistancerookie.py | 2 + .../shipshieldexplosiveresistance1cbc2.py | 5 +- .../shipshieldexplosiveresistancecc2.py | 5 +- .../shipshieldexplosiveresistancecf2.py | 5 +- .../shipshieldexplosiveresistancerookie.py | 2 + .../shipshieldkineticresistance1cbc2.py | 5 +- eos/effects/shipshieldkineticresistancecc2.py | 5 +- eos/effects/shipshieldkineticresistancecf2.py | 5 +- .../shipshieldkineticresistancerookie.py | 2 + .../shipshieldthermalresistance1cbc2.py | 5 +- eos/effects/shipshieldthermalresistancecc2.py | 5 +- eos/effects/shipshieldthermalresistancecf2.py | 5 +- .../shipshieldthermalresistancerookie.py | 2 + eos/effects/shipshieldtransferfalloffcc1.py | 5 +- eos/effects/shipshieldtransferfalloffmc2.py | 5 +- eos/effects/shipshieldtransferrange1.py | 5 +- eos/effects/shipshieldtransferrange2.py | 5 +- eos/effects/shipshieldtransferrangecc1.py | 5 +- eos/effects/shipshieldtransferrangemc2.py | 5 +- eos/effects/shipshtdmgbonusgf.py | 2 + eos/effects/shipshtdmgbonusrookie.py | 2 + eos/effects/shipshtfalloffbonusrookie.py | 2 + eos/effects/shipshtoptimalbonusgf.py | 2 + .../shipshtrofgallentetacticaldestroyer1.py | 5 +- ...ipshttrackinggallentetacticaldestroyer2.py | 5 +- .../shipshttrackingspeedbonusrookie.py | 2 + eos/effects/shipsiegelauncherrofbonus2cb.py | 2 + .../shipsmallmissiledmgpiratefaction.py | 7 ++- eos/effects/shipsmallmissileemdmgcf2.py | 7 ++- eos/effects/shipsmallmissileexpdmgcf2.py | 7 ++- eos/effects/shipsmallmissilekindmgcf2.py | 7 ++- eos/effects/shipsmallmissilekindmgcf3.py | 6 ++- eos/effects/shipsmallmissilethermdmgcf2.py | 7 ++- ...shipsptdamageminmatartacticaldestroyer1.py | 5 +- eos/effects/shipsptdmgbonusrookie.py | 2 + eos/effects/shipsptfalloffbonusrookie.py | 2 + eos/effects/shipsptoptimalbonusmf.py | 2 + ...hipsptoptimalminmatartacticaldestroyer2.py | 5 +- eos/effects/shipsptoptimalrangebonusrookie.py | 2 + .../shipspttrackingspeedbonusrookie.py | 2 + eos/effects/shipstasiswebrangebonusmb.py | 2 + eos/effects/shipstasiswebrangebonusmc2.py | 2 + eos/effects/shipstasiswebstrengthbonusmc2.py | 2 + eos/effects/shipstasiswebstrengthbonusmf2.py | 2 + eos/effects/shiptcapneedbonusac.py | 2 + eos/effects/shiptorpedoaoecloudsize1cb.py | 2 + eos/effects/shiptorpedorofcb.py | 2 + eos/effects/shiptorpedosvelocitybonuscb3.py | 2 + eos/effects/shiptrackingbonusab.py | 2 + eos/effects/shiptrackinglinkrange1fixed.py | 2 + eos/effects/shiptrackinglinkrange2group.py | 2 + eos/effects/shipvelocitybonusai.py | 2 + eos/effects/shipvelocitybonusatc1.py | 2 + eos/effects/shipvelocitybonusmi.py | 2 + eos/effects/shipvelocitybonusrookie.py | 2 + eos/effects/shipwebvelocitybonusrookie.py | 2 + eos/effects/shipxlprojectiledamagerole.py | 2 + eos/effects/shirmishwarfaremindlink.py | 2 + eos/effects/siegemodeeffect6.py | 32 ++++++------ eos/effects/siegesquadroncommand.py | 2 + eos/effects/siegewarfaremindlink.py | 2 + ...siegewarfareshieldcapacitybonusreplacer.py | 2 + ...utionbonuspostpercentscanresolutionship.py | 2 + eos/effects/signatureradiuspreassignment.py | 2 + ...illadvancedweaponupgradespowerneedbonus.py | 7 ++- ...aponupgradespowerneedbonusbomblaunchers.py | 2 + ...bdeploymentmodulereactivationdelaybonus.py | 2 + ...killbonuscapitalartilleryspecialization.py | 5 +- ...illbonuscapitalautocannonspecialization.py | 5 +- ...killbonuscapitalbeamlaserspecialization.py | 5 +- .../skillbonuscapitalblasterspecialization.py | 5 +- ...illbonuscapitalpulselaserspecialization.py | 5 +- .../skillbonuscapitalrailgunspecialization.py | 5 +- eos/effects/skillbonusdoomsdayrapidfiring.py | 5 +- eos/effects/skillbonusdronedurability.py | 14 ++++-- eos/effects/skillbonusdroneinterfacing.py | 20 ++++++-- eos/effects/skillbonusdronenavigation.py | 8 ++- eos/effects/skillbonusdronesharpshooting.py | 16 ++++-- .../skillbonusfighterhangarmanagement.py | 2 + eos/effects/skillbonusfighters.py | 14 ++++-- eos/effects/skillbonusfightersdamage.py | 14 ++++-- eos/effects/skillbonusheavyfighters.py | 14 ++++-- eos/effects/skillbonusheavyfightersdamage.py | 14 ++++-- eos/effects/skillbonuslightfighters.py | 5 +- .../skillbonuslightfightersvelocity.py | 5 +- .../skillbonussupportfightersshield.py | 5 +- ...skillbonusxlcruisemissilespecialization.py | 5 +- .../skillbonusxltorpedospecialization.py | 5 +- ...italremotehullrepairsystemscapneedbonus.py | 2 + .../skillcapitalshipsadvancedagility.py | 2 + eos/effects/skillfighterbombersdmgbonus.py | 2 + eos/effects/skillfreightbonus.py | 2 + ...reconfigurationconsumptionquantitybonus.py | 2 + ...mpdriveconsumptionamountbonuspercentage.py | 5 +- eos/effects/skillmjddurationbonus.py | 2 + .../skillreactivearmorhardenercapneedbonus.py | 8 ++- ...skillreactivearmorhardenerdurationbonus.py | 8 ++- eos/effects/skillremoteecmdurationbonus.py | 2 + ...killremotehullrepairsystemscapneedbonus.py | 2 + ...killsiegemoduleconsumptionquantitybonus.py | 2 + .../skillstructuredoomsdaydurationbonus.py | 5 +- ...lstructureelectronicsystemscapneedbonus.py | 5 +- ...structureengineeringsystemscapneedbonus.py | 5 +- .../skillstructuremissiledamagebonus.py | 5 +- eos/effects/skillsuperweapondmgbonus.py | 7 ++- .../skilltargetbreakercapneedbonus2.py | 2 + .../skilltargetbreakerdurationbonus2.py | 2 + ...illtriagemoduleconsumptionquantitybonus.py | 2 + eos/effects/skirmishsquadroncommand.py | 2 + eos/effects/skirmishwarfareagilitybonus.py | 4 +- .../skirmishwarfareagilitybonusreplacer.py | 2 + eos/effects/slotmodifier.py | 2 + eos/effects/smallenergymaxrangebonus.py | 2 + ...onshipmodulesrequiringsmallenergyturret.py | 2 + eos/effects/smallhybridmaxrangebonus.py | 4 +- ...onshipmodulesrequiringsmallhybridturret.py | 2 + eos/effects/smallprojectilemaxrangebonus.py | 2 + ...ipmodulesrequiringsmallprojectileturret.py | 2 + eos/effects/speedboostmassaddition.py | 2 + eos/effects/speedboostmasssigrad.py | 5 +- eos/effects/squadroncommand.py | 2 + eos/effects/squadroncommandhidden.py | 2 + ...dmissilesskillboostmissilevelocitybonus.py | 4 +- eos/effects/stripminermaxrangebonus.py | 2 + eos/effects/structuralanalysiseffect.py | 2 + .../structureMissileGuidanceEnhancer.py | 4 +- .../structureballisticcontrolsystem.py | 7 ++- eos/effects/structurehpmultiply.py | 4 +- eos/effects/structurehpmultiplypassive.py | 4 +- eos/effects/structuremoduleeffectecm.py | 4 +- ...ructuremoduleeffectremotesensordampener.py | 8 +-- .../structuremoduleeffectstasiswebifier.py | 4 +- .../structuremoduleeffecttargetpainter.py | 4 +- .../structuremoduleeffectweapondisruption.py | 19 +++---- eos/effects/structurerepair.py | 4 +- ...rigaoevelocitybonussingletargetmissiles.py | 6 ++- eos/effects/structurerigdoomsdaydamageloss.py | 5 +- .../structurerigdoomsdaytargetamountbonus.py | 5 +- eos/effects/structurerigewcapacitorneed.py | 6 ++- eos/effects/structurerigewmaxrangefalloff.py | 14 +++--- ...cturerigexplosionradiusbonusaoemissiles.py | 6 ++- eos/effects/structurerigmaxtargets.py | 2 + .../structurerigneutralizercapacitorneed.py | 6 ++- ...neutralizermaxrangefalloffeffectiveness.py | 10 ++-- eos/effects/structurerigpdbcapacitorneed.py | 6 ++- eos/effects/structurerigpdbmaxrange.py | 6 ++- eos/effects/structurerigsensorresolution.py | 5 +- .../structurerigvelocitybonusaoemissiles.py | 6 ++- ...urerigvelocitybonussingletargetmissiles.py | 6 ++- ...structurestealthemitterarraysigdecrease.py | 2 + ...ucturewarpscrambleblockmwdwithnpceffect.py | 1 + ...samarrdefensive2remotearmorrepairamount.py | 5 +- ...systembonusamarrdefensivearmoredwarfare.py | 5 +- .../subsystembonusamarrdefensivearmorhp.py | 5 +- ...tembonusamarrdefensivearmorrepairamount.py | 5 +- ...ystembonusamarrdefensivearmorresistance.py | 6 ++- ...embonusamarrdefensiveinformationwarfare.py | 5 +- ...samarrdefensiveinformationwarfarehidden.py | 5 +- ...ystembonusamarrdefensiveskirmishwarfare.py | 5 +- ...mbonusamarrelectronic2maxtargetingrange.py | 5 +- ...stembonusamarrelectronic2scanresolution.py | 5 +- ...embonusamarrelectronic2tractorbeamrange.py | 5 +- ...onusamarrelectronic2tractorbeamvelocity.py | 5 +- ...amarrelectronicenergydestabilizeramount.py | 6 ++- ...bonusamarrelectronicenergyvampireamount.py | 5 +- ...embonusamarrelectronicscanprobestrength.py | 5 +- ...embonusamarrelectronicscanstrengthradar.py | 5 +- ...mbonusamarrengineeringcapacitorcapacity.py | 5 +- ...mbonusamarrengineeringcapacitorrecharge.py | 5 +- ...onusamarrengineeringheatdamagereduction.py | 5 +- ...bsystembonusamarrengineeringpoweroutput.py | 5 +- ...marroffensive2energyweaponcapacitorneed.py | 5 +- ...ubsystembonusamarroffensive2hamemdamage.py | 5 +- ...mbonusamarroffensive2hamexplosivedamage.py | 5 +- ...tembonusamarroffensive2hamkineticdamage.py | 5 +- ...tembonusamarroffensive2hamthermaldamage.py | 5 +- .../subsystembonusamarroffensive3dronehp.py | 5 +- ...onusamarroffensive3energyweaponmaxrange.py | 5 +- ...amarroffensiveassaultmissilelauncherrof.py | 5 +- ...onusamarroffensivedronedamagemultiplier.py | 5 +- ...amarroffensiveenergyweaponcapacitorneed.py | 5 +- ...rroffensiveenergyweapondamagemultiplier.py | 5 +- ...offensiveheavyassaultmissilelauncherrof.py | 5 +- ...usamarroffensiveheavymissilelauncherrof.py | 5 +- ...usamarrpropulsionafterburnerspeedfactor.py | 5 +- .../subsystembonusamarrpropulsionagility.py | 5 +- ...ubsystembonusamarrpropulsionmaxvelocity.py | 5 +- ...subsystembonusamarrpropulsionmwdpenalty.py | 5 +- ...defensive2remoteshieldtransporteramount.py | 5 +- ...bonuscaldaridefensiveinformationwarfare.py | 5 +- ...aldaridefensiveinformationwarfarehidden.py | 5 +- ...mbonuscaldaridefensiveshieldboostamount.py | 5 +- .../subsystembonuscaldaridefensiveshieldhp.py | 5 +- ...bonuscaldaridefensiveshieldrechargerate.py | 5 +- ...embonuscaldaridefensiveshieldresistance.py | 6 ++- ...systembonuscaldaridefensivesiegewarfare.py | 5 +- ...tembonuscaldaridefensiveskirmishwarfare.py | 5 +- ...onuscaldarielectronic2maxtargetingrange.py | 5 +- ...bonuscaldarielectronic2tractorbeamrange.py | 5 +- ...uscaldarielectronic2tractorbeamvelocity.py | 5 +- .../subsystembonuscaldarielectroniccpu.py | 5 +- ...subsystembonuscaldarielectronicecmrange.py | 5 +- ...bonuscaldarielectronicscanprobestrength.py | 5 +- ...aldarielectronicscanstrengthgravimetric.py | 5 +- ...onuscaldariengineeringcapacitorcapacity.py | 5 +- ...onuscaldariengineeringcapacitorrecharge.py | 5 +- ...uscaldariengineeringheatdamagereduction.py | 5 +- ...ystembonuscaldariengineeringpoweroutput.py | 5 +- ...ioffensive2hybridweapondamagemultiplier.py | 5 +- ...ioffensive2missilelauncherkineticdamage.py | 5 +- ...tembonuscaldarioffensive3ewstrengthgrav.py | 6 ++- ...embonuscaldarioffensive3ewstrengthladar.py | 6 ++- ...tembonuscaldarioffensive3ewstrengthmagn.py | 6 ++- ...embonuscaldarioffensive3ewstrengthradar.py | 6 ++- ...rioffensive3heavyassaultmissilevelocity.py | 5 +- ...uscaldarioffensive3heavymissilevelocity.py | 5 +- ...ldarioffensiveassaultmissilelauncherrof.py | 5 +- ...offensiveheavyassaultmissilelauncherrof.py | 5 +- ...caldarioffensiveheavymissilelauncherrof.py | 5 +- ...nuscaldarioffensivehybridweaponmaxrange.py | 5 +- ...embonuscaldaripropulsion2warpcapacitor2.py | 5 +- ...caldaripropulsionafterburnerspeedfactor.py | 5 +- .../subsystembonuscaldaripropulsionagility.py | 5 +- ...ubsystembonuscaldaripropulsionwarpspeed.py | 5 +- ...llentedefensive2remotearmorrepairamount.py | 5 +- ...tembonusgallentedefensivearmoredwarfare.py | 5 +- .../subsystembonusgallentedefensivearmorhp.py | 5 +- ...bonusgallentedefensivearmorrepairamount.py | 5 +- ...embonusgallentedefensivearmorresistance.py | 5 +- ...onusgallentedefensiveinformationwarfare.py | 5 +- ...llentedefensiveinformationwarfarehidden.py | 5 +- ...embonusgallentedefensiveskirmishwarfare.py | 5 +- ...nusgallenteelectronic2maxtargetingrange.py | 5 +- ...onusgallenteelectronic2tractorbeamrange.py | 5 +- ...sgallenteelectronic2tractorbeamvelocity.py | 5 +- .../subsystembonusgallenteelectroniccpu.py | 5 +- ...onusgallenteelectronicscanprobestrength.py | 6 ++- ...enteelectronicscanstrengthmagnetometric.py | 5 +- ...onusgallenteelectronicwarpscramblerange.py | 5 +- ...systembonusgallenteengineering2dronemwd.py | 5 +- ...nusgallenteengineeringcapacitorrecharge.py | 5 +- ...ubsystembonusgallenteengineeringdronehp.py | 5 +- ...sgallenteengineeringheatdamagereduction.py | 5 +- ...stembonusgallenteengineeringpoweroutput.py | 5 +- ...eoffensive2hybridweapondamagemultiplier.py | 5 +- ...gallenteoffensive3dronedamagemultiplier.py | 5 +- ...embonusgallenteoffensive3turrettracking.py | 5 +- .../subsystembonusgallenteoffensivedronehp.py | 5 +- ...teoffensivehybridweapondamagemultiplier.py | 5 +- ...nusgallenteoffensivehybridweaponfalloff.py | 5 +- ...embonusgallentepropulsion2warpcapacitor.py | 5 +- ...stembonusgallentepropulsionabmwdcapneed.py | 5 +- ...subsystembonusgallentepropulsionagility.py | 5 +- ...systembonusgallentepropulsionmwdpenalty.py | 6 ++- ...bsystembonusgallentepropulsionwarpspeed.py | 5 +- ...defensive2remoteshieldtransporteramount.py | 5 +- ...tembonusminmatardefensivearmoredwarfare.py | 5 +- ...embonusminmatardefensivearmorresistance.py | 5 +- ...mbonusminmatardefensiveshieldresistance.py | 6 ++- ...ystembonusminmatardefensivesiegewarfare.py | 5 +- ...embonusminmatardefensivesignatureradius.py | 5 +- ...embonusminmatardefensiveskirmishwarfare.py | 5 +- ...nusminmatarelectronic2maxtargetingrange.py | 5 +- ...mbonusminmatarelectronic2scanresolution.py | 5 +- ...onusminmatarelectronic2tractorbeamrange.py | 5 +- ...sminmatarelectronic2tractorbeamvelocity.py | 5 +- ...onusminmatarelectronicscanprobestrength.py | 6 ++- ...onusminmatarelectronicscanstrengthladar.py | 5 +- ...usminmatarelectronicstasiswebifierrange.py | 5 +- ...nusminmatarengineeringcapacitorcapacity.py | 5 +- ...nusminmatarengineeringcapacitorrecharge.py | 5 +- ...sminmatarengineeringheatdamagereduction.py | 5 +- ...stembonusminmatarengineeringpoweroutput.py | 5 +- ...ensive2projectileweapondamagemultiplier.py | 5 +- ...usminmataroffensive2projectileweaponrof.py | 5 +- ...embonusminmataroffensive3turrettracking.py | 5 +- ...mataroffensiveassaultmissilelauncherrof.py | 5 +- ...offensiveheavyassaultmissilelauncherrof.py | 5 +- ...inmataroffensiveheavymissilelauncherrof.py | 5 +- ...inmataroffensiveprojectileweaponfalloff.py | 5 +- ...nmataroffensiveprojectileweaponmaxrange.py | 5 +- ...nusminmataroffensiveprojectileweaponrof.py | 5 +- ...inmatarpropulsionafterburnerspeedfactor.py | 5 +- ...subsystembonusminmatarpropulsionagility.py | 5 +- ...ystembonusminmatarpropulsionmaxvelocity.py | 5 +- .../subsystembonusoffensivejumpharmonics.py | 2 + .../subsystembonusscanprobelaunchercpu.py | 2 + eos/effects/subsystembonuswarpbubbleimmune.py | 2 + eos/effects/superweaponamarr.py | 2 + eos/effects/superweaponcaldari.py | 2 + eos/effects/superweapongallente.py | 2 + eos/effects/superweaponminmatar.py | 2 + ...multiplierlocationshipgroupenergyweapon.py | 2 + ...multiplierlocationshipgrouphybridweapon.py | 2 + ...iplierlocationshipgroupprojectileweapon.py | 2 + ...lierlocationshipmodulesrequiringgunnery.py | 2 + ...lofflocationshipmodulesrequiringgunnery.py | 2 + ...locationshipmodulesrequiringelectronics.py | 2 + eos/effects/systemagility.py | 2 + eos/effects/systemaoecloudsize.py | 4 +- eos/effects/systemaoevelocity.py | 2 + eos/effects/systemarmoremresistance.py | 2 + eos/effects/systemarmorexplosiveresistance.py | 5 +- eos/effects/systemarmorhp.py | 2 + eos/effects/systemarmorkineticresistance.py | 5 +- eos/effects/systemarmorremoterepairamount.py | 5 +- eos/effects/systemarmorrepairamount.py | 4 +- eos/effects/systemarmorthermalresistance.py | 5 +- eos/effects/systemcapacitorcapacity.py | 2 + eos/effects/systemcapacitorrecharge.py | 2 + eos/effects/systemdamagedrones.py | 2 + eos/effects/systemdamageembombs.py | 6 ++- eos/effects/systemdamageemmissiles.py | 2 + eos/effects/systemdamageexplosivebombs.py | 2 + eos/effects/systemdamageexplosivemissiles.py | 2 + eos/effects/systemdamagefighters.py | 2 + eos/effects/systemdamagekineticbombs.py | 2 + eos/effects/systemdamagekineticmissiles.py | 2 + eos/effects/systemdamagemultipliergunnery.py | 2 + eos/effects/systemdamagethermalbombs.py | 6 ++- eos/effects/systemdamagethermalmissiles.py | 2 + eos/effects/systemdronetracking.py | 2 + eos/effects/systemenergyneutmultiplier.py | 5 +- eos/effects/systemenergyvampiremultiplier.py | 5 +- eos/effects/systemgravimetricecmbomb.py | 7 ++- eos/effects/systemheatdamage.py | 2 + eos/effects/systemladarecmbomb.py | 7 ++- eos/effects/systemmagnetrometricecmbomb.py | 7 ++- eos/effects/systemmaxvelocity.py | 5 +- eos/effects/systemmaxvelocitypercentage.py | 2 + eos/effects/systemmissilevelocity.py | 2 + eos/effects/systemneutbombs.py | 5 +- eos/effects/systemoverloadarmor.py | 2 + eos/effects/systemoverloaddamagemodifier.py | 2 + eos/effects/systemoverloaddurationbonus.py | 2 + eos/effects/systemoverloadeccmstrength.py | 2 + eos/effects/systemoverloadecmstrength.py | 2 + eos/effects/systemoverloadhardening.py | 2 + eos/effects/systemoverloadrange.py | 2 + eos/effects/systemoverloadrof.py | 2 + eos/effects/systemoverloadselfduration.py | 2 + eos/effects/systemoverloadshieldbonus.py | 2 + eos/effects/systemoverloadspeedfactor.py | 2 + eos/effects/systemradarecmbomb.py | 5 +- .../systemremotecaptransmitteramount.py | 2 + eos/effects/systemrocketemdamage.py | 2 + eos/effects/systemrocketexplosivedamage.py | 2 + eos/effects/systemrocketkineticdamage.py | 2 + eos/effects/systemrocketthermaldamage.py | 2 + .../systemscandurationmodulemodifier.py | 2 + .../systemscandurationskillastrometrics.py | 2 + eos/effects/systemshieldemresistance.py | 2 + .../systemshieldexplosiveresistance.py | 5 +- eos/effects/systemshieldhp.py | 2 + eos/effects/systemshieldkineticresistance.py | 5 +- eos/effects/systemshieldremoterepairamount.py | 2 + .../systemshieldrepairamountshieldskills.py | 4 +- eos/effects/systemshieldthermalresistance.py | 5 +- eos/effects/systemsignatureradius.py | 2 + eos/effects/systemsmallenergydamage.py | 2 + eos/effects/systemsmallhybriddamage.py | 2 + eos/effects/systemsmallprojectiledamage.py | 2 + eos/effects/systemsmartbombemdamage.py | 2 + eos/effects/systemsmartbombexplosivedamage.py | 2 + eos/effects/systemsmartbombkineticdamage.py | 2 + eos/effects/systemsmartbombrange.py | 2 + eos/effects/systemsmartbombthermaldamage.py | 2 + eos/effects/systemstandardmissileemdamage.py | 2 + .../systemstandardmissileexplosivedamage.py | 2 + .../systemstandardmissilekineticdamage.py | 2 + .../systemstandardmissilethermaldamage.py | 2 + eos/effects/systemtargetingrange.py | 2 + eos/effects/systemtargetpaintermultiplier.py | 5 +- eos/effects/systemtracking.py | 2 + .../systemwebifierstrengthmultiplier.py | 2 + ...ldmanipulationskillboostuniformitybonus.py | 2 + eos/effects/targetarmorrepair.py | 2 + eos/effects/targetattack.py | 2 + eos/effects/targetbreaker.py | 2 + eos/effects/targethostiles.py | 2 + ...bonusmodaddmaxlockedtargetslocationchar.py | 2 + ...ompensationhardeningbonusgroupshieldamp.py | 5 +- ...ensationhardeningbonusgrouparmorcoating.py | 5 +- ...ompensationhardeningbonusgroupenergized.py | 5 +- eos/effects/thermodynamicsskilldamagebonus.py | 2 + eos/effects/titanamarrgangcaprecharge2.py | 2 + eos/effects/titanamarrlaserdmg3.py | 2 + .../titanamarrleadershipmoduleamount4.py | 5 +- eos/effects/titanamarrskilllevel2.py | 2 + eos/effects/titancaldarigangshieldhp2.py | 2 + .../titancaldarileadershipmoduleamount4.py | 5 +- eos/effects/titancaldarimissilekineticdmg2.py | 2 + eos/effects/titancaldariskilllevel2.py | 2 + eos/effects/titangallentegangarmorhp2.py | 2 + eos/effects/titangallentehybriddamage1.py | 5 +- .../titangallenteleadershipmoduleamount4.py | 5 +- eos/effects/titangallenteskilllevel2.py | 2 + eos/effects/titanminmatargangsigradius2.py | 2 + .../titanminmatarleadershipmoduleamount4.py | 5 +- eos/effects/titanminmatarprojectiledmg3.py | 5 +- eos/effects/titanminmatarskilllevel2.py | 2 + eos/effects/titanturretdamagescaling.py | 2 + .../trackingspeedbonuseffecthybrids.py | 4 +- eos/effects/trackingspeedbonuseffectlasers.py | 4 +- .../trackingspeedbonuseffectprojectiles.py | 4 +- ...ssiverequiringgunnerytrackingspeedbonus.py | 2 + eos/effects/tractorbeamcan.py | 4 +- eos/effects/triagemodeeffect3.py | 2 + eos/effects/triagemodeeffect7.py | 2 + ...llofftrackingspeedmultiplytargethostile.py | 8 +-- eos/effects/usemissiles.py | 2 + eos/effects/velocitybonusonline.py | 4 +- eos/effects/velocitybonuspassive.py | 4 +- eos/effects/warfarelinkcpuaddition.py | 2 + eos/effects/warfarelinkcpupenalty.py | 3 +- eos/effects/warpdisruptsphere.py | 2 + ...ostpercentwarpcapacitorneedlocationship.py | 2 + ...apacitorneedlocationshipgrouppropulsion.py | 4 +- eos/effects/warpscramble.py | 4 +- .../warpscrambleblockmwdwithnpceffect.py | 1 + eos/effects/warpskillspeed.py | 2 + eos/effects/warpspeedaddition.py | 2 + ...ocationshipmodulesrequiringbomblauncher.py | 4 +- ...nshipmodulesrequiringenergypulseweapons.py | 4 +- ...tcpulocationshipmodulesrequiringgunnery.py | 2 + ...odulesrequiringmissilelauncheroperation.py | 2 + eos/effects/zcolinorcacargobonus.py | 5 +- eos/effects/zcolinorcaforemanmodbonus.py | 5 +- eos/effects/zcolinorcasurveyscannerbonus.py | 2 + eos/effects/zcolinorcatractorrangebonus.py | 2 + eos/effects/zcolinorcatractorvelocitybonus.py | 2 + 1961 files changed, 6494 insertions(+), 1520 deletions(-) diff --git a/eos/effects/__init__.py b/eos/effects/__init__.py index a0c0db761..daa8ffc73 100644 --- a/eos/effects/__init__.py +++ b/eos/effects/__init__.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # 2010 Anton Vorobyov # @@ -16,4 +16,4 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== diff --git a/eos/effects/accerationcontrolcapneedbonuspostpercentcapacitorneedlocationshipgroupafterburner.py b/eos/effects/accerationcontrolcapneedbonuspostpercentcapacitorneedlocationshipgroupafterburner.py index d50c48704..acf8b25e3 100644 --- a/eos/effects/accerationcontrolcapneedbonuspostpercentcapacitorneedlocationshipgroupafterburner.py +++ b/eos/effects/accerationcontrolcapneedbonuspostpercentcapacitorneedlocationshipgroupafterburner.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Dynamic Fuel Valve (8 of 8) type = "passive" + + def handler(fit, container, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", "capacitorNeed", container.getModifiedItemAttr("capNeedBonus")) diff --git a/eos/effects/accerationcontrolskillabmwdspeedboost.py b/eos/effects/accerationcontrolskillabmwdspeedboost.py index 31ad6f368..ef24601d2 100644 --- a/eos/effects/accerationcontrolskillabmwdspeedboost.py +++ b/eos/effects/accerationcontrolskillabmwdspeedboost.py @@ -4,6 +4,8 @@ # Implant: Zor's Custom Navigation Hyper-Link # Skill: Acceleration Control type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", diff --git a/eos/effects/accerationcontrolspeedfbonuspostpercentspeedfactorlocationshipgroupafterburner.py b/eos/effects/accerationcontrolspeedfbonuspostpercentspeedfactorlocationshipgroupafterburner.py index 2babbbb08..dc38ae5f8 100644 --- a/eos/effects/accerationcontrolspeedfbonuspostpercentspeedfactorlocationshipgroupafterburner.py +++ b/eos/effects/accerationcontrolspeedfbonuspostpercentspeedfactorlocationshipgroupafterburner.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Eifyr and Co. 'Rogue' Acceleration Control AC (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", "speedFactor", implant.getModifiedItemAttr("speedFBonus")) diff --git a/eos/effects/accessdifficultybonusmodifierrequiringarchaelogy.py b/eos/effects/accessdifficultybonusmodifierrequiringarchaelogy.py index 7416d1b96..3fb468dea 100644 --- a/eos/effects/accessdifficultybonusmodifierrequiringarchaelogy.py +++ b/eos/effects/accessdifficultybonusmodifierrequiringarchaelogy.py @@ -5,6 +5,8 @@ # Implant: Poteque 'Prospector' Archaeology AC-905 # Implant: Poteque 'Prospector' Environmental Analysis EY-1005 type = "passive" + + def handler(fit, container, context): fit.modules.filteredItemIncrease(lambda module: module.item.requiresSkill("Archaeology"), "accessDifficultyBonus", diff --git a/eos/effects/accessdifficultybonusmodifierrequiringhacking.py b/eos/effects/accessdifficultybonusmodifierrequiringhacking.py index 9a44b14b8..6bb5ffdd7 100644 --- a/eos/effects/accessdifficultybonusmodifierrequiringhacking.py +++ b/eos/effects/accessdifficultybonusmodifierrequiringhacking.py @@ -5,7 +5,9 @@ # Implant: Poteque 'Prospector' Environmental Analysis EY-1005 # Implant: Poteque 'Prospector' Hacking HC-905 type = "passive" + + def handler(fit, container, context): fit.modules.filteredItemIncrease(lambda c: c.item.requiresSkill("Hacking"), - "accessDifficultyBonus", - container.getModifiedItemAttr("accessDifficultyBonusModifier"), position="post") + "accessDifficultyBonus", + container.getModifiedItemAttr("accessDifficultyBonusModifier"), position="post") diff --git a/eos/effects/addtosignatureradius2.py b/eos/effects/addtosignatureradius2.py index 797729dff..550357bfc 100644 --- a/eos/effects/addtosignatureradius2.py +++ b/eos/effects/addtosignatureradius2.py @@ -4,5 +4,7 @@ # Modules from group: Missile Launcher Bomb (2 of 2) # Modules from group: Shield Extender (33 of 33) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusAdd")) \ No newline at end of file + fit.ship.increaseItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusAdd")) diff --git a/eos/effects/advanceddroneinterfacingmaxgroupdcuskilllevel.py b/eos/effects/advanceddroneinterfacingmaxgroupdcuskilllevel.py index be2201717..48340f414 100644 --- a/eos/effects/advanceddroneinterfacingmaxgroupdcuskilllevel.py +++ b/eos/effects/advanceddroneinterfacingmaxgroupdcuskilllevel.py @@ -3,6 +3,8 @@ # Used by: # Skill: Advanced Drone Interfacing type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Fighter Support Unit", "maxGroupActive", skill.level) diff --git a/eos/effects/afterburnerdurationbonuspostpercentdurationlocationshipmodulesrequiringafterburner.py b/eos/effects/afterburnerdurationbonuspostpercentdurationlocationshipmodulesrequiringafterburner.py index 128811884..1d1b9c309 100644 --- a/eos/effects/afterburnerdurationbonuspostpercentdurationlocationshipmodulesrequiringafterburner.py +++ b/eos/effects/afterburnerdurationbonuspostpercentdurationlocationshipmodulesrequiringafterburner.py @@ -5,7 +5,9 @@ # Implant: Zor's Custom Navigation Link # Skill: Afterburner type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "duration", container.getModifiedItemAttr("durationBonus") * level) + "duration", container.getModifiedItemAttr("durationBonus") * level) diff --git a/eos/effects/agilitymultipliereffect.py b/eos/effects/agilitymultipliereffect.py index 11306be36..fe8b37aa4 100644 --- a/eos/effects/agilitymultipliereffect.py +++ b/eos/effects/agilitymultipliereffect.py @@ -5,7 +5,9 @@ # Modules from group: Nanofiber Internal Structure (7 of 7) # Modules from group: Reinforced Bulkhead (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("agilityMultiplier"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/agilitymultipliereffectpassive.py b/eos/effects/agilitymultipliereffectpassive.py index bded76718..affa839e8 100644 --- a/eos/effects/agilitymultipliereffectpassive.py +++ b/eos/effects/agilitymultipliereffectpassive.py @@ -3,5 +3,7 @@ # Used by: # Modules named like: Polycarbon Engine Housing (8 of 8) type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("agilityMultiplier"), stackingPenalties = True) + fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("agilityMultiplier"), stackingPenalties=True) diff --git a/eos/effects/ammofallofmultiplier.py b/eos/effects/ammofallofmultiplier.py index fb82e7f87..4f4f5e86f 100644 --- a/eos/effects/ammofallofmultiplier.py +++ b/eos/effects/ammofallofmultiplier.py @@ -8,5 +8,7 @@ # Charges from group: Advanced Pulse Laser Crystal (8 of 8) # Charges from group: Advanced Railgun Charge (8 of 8) type = "passive" + + def handler(fit, module, context): module.multiplyItemAttr("falloff", module.getModifiedChargeAttr("fallofMultiplier") or 1) diff --git a/eos/effects/ammoinfluencecapneed.py b/eos/effects/ammoinfluencecapneed.py index ee58865b7..817f1d7db 100644 --- a/eos/effects/ammoinfluencecapneed.py +++ b/eos/effects/ammoinfluencecapneed.py @@ -3,6 +3,8 @@ # Used by: # Items from category: Charge (465 of 884) type = "passive" + + def handler(fit, module, context): # Dirty hack to work around cap charges setting cap booster # injection amount to zero diff --git a/eos/effects/ammoinfluencerange.py b/eos/effects/ammoinfluencerange.py index 36a9494de..6e7792274 100644 --- a/eos/effects/ammoinfluencerange.py +++ b/eos/effects/ammoinfluencerange.py @@ -3,5 +3,7 @@ # Used by: # Items from category: Charge (571 of 884) type = "passive" + + def handler(fit, module, context): - module.multiplyItemAttr("maxRange", module.getModifiedChargeAttr("weaponRangeMultiplier")) \ No newline at end of file + module.multiplyItemAttr("maxRange", module.getModifiedChargeAttr("weaponRangeMultiplier")) diff --git a/eos/effects/ammospeedmultiplier.py b/eos/effects/ammospeedmultiplier.py index 30438b3f0..140baef43 100644 --- a/eos/effects/ammospeedmultiplier.py +++ b/eos/effects/ammospeedmultiplier.py @@ -5,5 +5,7 @@ # Charges from group: Interdiction Probe (2 of 2) # Charges from group: Survey Probe (3 of 3) type = "passive" + + def handler(fit, module, context): module.multiplyItemAttr("speed", module.getModifiedChargeAttr("speedMultiplier") or 1) diff --git a/eos/effects/ammotrackingmultiplier.py b/eos/effects/ammotrackingmultiplier.py index 6dc7ab4bf..0169f33d0 100644 --- a/eos/effects/ammotrackingmultiplier.py +++ b/eos/effects/ammotrackingmultiplier.py @@ -9,5 +9,7 @@ # Charges from group: Advanced Railgun Charge (8 of 8) # Charges from group: Projectile Ammo (129 of 129) type = "passive" + + def handler(fit, module, context): - module.multiplyItemAttr("trackingSpeed", module.getModifiedChargeAttr("trackingSpeedMultiplier")) \ No newline at end of file + module.multiplyItemAttr("trackingSpeed", module.getModifiedChargeAttr("trackingSpeedMultiplier")) diff --git a/eos/effects/angelsetbonus.py b/eos/effects/angelsetbonus.py index 711d99c9d..9057b5876 100644 --- a/eos/effects/angelsetbonus.py +++ b/eos/effects/angelsetbonus.py @@ -4,8 +4,11 @@ # Implants named like: grade Halo (18 of 18) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply( - lambda implant: "signatureRadiusBonus" in implant.itemModifiedAttributes and "implantSetAngel" in implant.itemModifiedAttributes, + lambda + implant: "signatureRadiusBonus" in implant.itemModifiedAttributes and "implantSetAngel" in implant.itemModifiedAttributes, "signatureRadiusBonus", - implant.getModifiedItemAttr("implantSetAngel")) \ No newline at end of file + implant.getModifiedItemAttr("implantSetAngel")) diff --git a/eos/effects/antiwarpscramblingpassive.py b/eos/effects/antiwarpscramblingpassive.py index 3318e1359..b6181e9a3 100644 --- a/eos/effects/antiwarpscramblingpassive.py +++ b/eos/effects/antiwarpscramblingpassive.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Warp Core Stabilizer (8 of 8) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("warmScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) \ No newline at end of file + fit.ship.increaseItemAttr("warmScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) diff --git a/eos/effects/archaeologyskillvirusbonus.py b/eos/effects/archaeologyskillvirusbonus.py index 3b4bf5a5d..9e383ba0a 100644 --- a/eos/effects/archaeologyskillvirusbonus.py +++ b/eos/effects/archaeologyskillvirusbonus.py @@ -6,6 +6,8 @@ # Implant: Poteque 'Prospector' Environmental Analysis EY-1005 # Skill: Archaeology type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Archaeology"), diff --git a/eos/effects/armorallrepairsystemsamountbonuspassive.py b/eos/effects/armorallrepairsystemsamountbonuspassive.py index 18623844f..c5162f3e0 100644 --- a/eos/effects/armorallrepairsystemsamountbonuspassive.py +++ b/eos/effects/armorallrepairsystemsamountbonuspassive.py @@ -4,6 +4,9 @@ # Implants named like: Exile Booster (4 of 4) # Implant: Antipharmakon Kosybo type = "passive" + + def handler(fit, booster, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Capital Repair Systems"), - "armorDamageAmount", booster.getModifiedItemAttr("armorDamageAmountBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Capital Repair Systems"), + "armorDamageAmount", booster.getModifiedItemAttr("armorDamageAmountBonus")) diff --git a/eos/effects/armordamageamountbonuscapitalarmorrepairers.py b/eos/effects/armordamageamountbonuscapitalarmorrepairers.py index f3a23f96f..49def1be7 100644 --- a/eos/effects/armordamageamountbonuscapitalarmorrepairers.py +++ b/eos/effects/armordamageamountbonuscapitalarmorrepairers.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Auxiliary Nano Pump (8 of 8) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "armorDamageAmount", implant.getModifiedItemAttr("repairBonus"), diff --git a/eos/effects/armoredsquadroncommand.py b/eos/effects/armoredsquadroncommand.py index ff55a0ff9..607009eb4 100644 --- a/eos/effects/armoredsquadroncommand.py +++ b/eos/effects/armoredsquadroncommand.py @@ -4,6 +4,8 @@ # Skill: Armored Warfare Specialist runTime = "early" type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", skill.getModifiedItemAttr("squadronCommandBonus") * skill.level) diff --git a/eos/effects/armoredwarfaremindlink.py b/eos/effects/armoredwarfaremindlink.py index bf0bdae83..78aed2b1d 100644 --- a/eos/effects/armoredwarfaremindlink.py +++ b/eos/effects/armoredwarfaremindlink.py @@ -5,6 +5,8 @@ # Implant: Federation Navy Warfare Mindlink # Implant: Imperial Navy Warfare Mindlink type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), - "commandBonus", implant.getModifiedItemAttr("mindlinkBonus")) \ No newline at end of file + "commandBonus", implant.getModifiedItemAttr("mindlinkBonus")) diff --git a/eos/effects/armorhpbonusadd.py b/eos/effects/armorhpbonusadd.py index 51cbd8825..591e1cc58 100644 --- a/eos/effects/armorhpbonusadd.py +++ b/eos/effects/armorhpbonusadd.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Armor Reinforcer (48 of 48) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("armorHP", module.getModifiedItemAttr("armorHPBonusAdd")) \ No newline at end of file + fit.ship.increaseItemAttr("armorHP", module.getModifiedItemAttr("armorHPBonusAdd")) diff --git a/eos/effects/armorhpbonusaddpassive.py b/eos/effects/armorhpbonusaddpassive.py index d33d79e85..0cce8f46a 100644 --- a/eos/effects/armorhpbonusaddpassive.py +++ b/eos/effects/armorhpbonusaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Subsystems from group: Defensive Systems (16 of 16) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("armorHP", module.getModifiedItemAttr("armorHPBonusAdd")) diff --git a/eos/effects/armorhpmultiply.py b/eos/effects/armorhpmultiply.py index 01aa23613..d9326eb73 100644 --- a/eos/effects/armorhpmultiply.py +++ b/eos/effects/armorhpmultiply.py @@ -5,5 +5,7 @@ # Modules from group: Armor Plating Energized (187 of 187) # Modules named like: QA Multiship Module Players (4 of 4) type = "passive" + + def handler(fit, module, context): - fit.ship.multiplyItemAttr("armorHP", module.getModifiedItemAttr("armorHPMultiplier")) \ No newline at end of file + fit.ship.multiplyItemAttr("armorHP", module.getModifiedItemAttr("armorHPMultiplier")) diff --git a/eos/effects/armorreinforcermassadd.py b/eos/effects/armorreinforcermassadd.py index 797901683..d61b0224c 100644 --- a/eos/effects/armorreinforcermassadd.py +++ b/eos/effects/armorreinforcermassadd.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Armor Reinforcer (48 of 48) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("massAddition")) \ No newline at end of file + fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("massAddition")) diff --git a/eos/effects/armorrepair.py b/eos/effects/armorrepair.py index 02239d859..8555baec0 100644 --- a/eos/effects/armorrepair.py +++ b/eos/effects/armorrepair.py @@ -4,7 +4,9 @@ # Modules from group: Armor Repair Unit (105 of 105) runTime = "late" type = "active" + + def handler(fit, module, context): amount = module.getModifiedItemAttr("armorDamageAmount") speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("armorRepair", amount / speed) \ No newline at end of file + fit.extraAttributes.increase("armorRepair", amount / speed) diff --git a/eos/effects/armorrepairamountbonussubcap.py b/eos/effects/armorrepairamountbonussubcap.py index 789904788..e50b74ab9 100644 --- a/eos/effects/armorrepairamountbonussubcap.py +++ b/eos/effects/armorrepairamountbonussubcap.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Grade Asklepian (15 of 16) type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "armorDamageAmount", src.getModifiedItemAttr("armorRepairBonus")) diff --git a/eos/effects/armorrepairprojectorfalloffbonus.py b/eos/effects/armorrepairprojectorfalloffbonus.py index b3cfc417d..6fe69d3b4 100644 --- a/eos/effects/armorrepairprojectorfalloffbonus.py +++ b/eos/effects/armorrepairprojectorfalloffbonus.py @@ -7,6 +7,10 @@ # Ship: Exequror # Ship: Inquisitor type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", "falloffEffectiveness", src.getModifiedItemAttr("falloffBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Armor Repairer", "falloffEffectiveness", src.getModifiedItemAttr("falloffBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", "falloffEffectiveness", + src.getModifiedItemAttr("falloffBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Armor Repairer", + "falloffEffectiveness", src.getModifiedItemAttr("falloffBonus")) diff --git a/eos/effects/armorrepairprojectormaxrangebonus.py b/eos/effects/armorrepairprojectormaxrangebonus.py index c0629f282..60f66763c 100644 --- a/eos/effects/armorrepairprojectormaxrangebonus.py +++ b/eos/effects/armorrepairprojectormaxrangebonus.py @@ -7,6 +7,10 @@ # Ship: Exequror # Ship: Inquisitor type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", "maxRange", src.getModifiedItemAttr("maxRangeBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Armor Repairer", "maxRange", src.getModifiedItemAttr("maxRangeBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", "maxRange", + src.getModifiedItemAttr("maxRangeBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Armor Repairer", "maxRange", + src.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/armortankinggang.py b/eos/effects/armortankinggang.py index 02a22b2a5..8258d46ea 100644 --- a/eos/effects/armortankinggang.py +++ b/eos/effects/armortankinggang.py @@ -5,5 +5,7 @@ type = "gang" gangBoost = "armorHP" gangBonus = "armorHpBonus" + + def handler(fit, skill, context): fit.ship.boostItemAttr(gangBoost, skill.getModifiedItemAttr(gangBonus) * skill.level) diff --git a/eos/effects/armorupgradesmasspenaltyreductionbonus.py b/eos/effects/armorupgradesmasspenaltyreductionbonus.py index 4f040c14f..f7bfd67ee 100644 --- a/eos/effects/armorupgradesmasspenaltyreductionbonus.py +++ b/eos/effects/armorupgradesmasspenaltyreductionbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Armor Layering type = "passive" + + def handler(fit, container, context): level = container.level fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Reinforcer", diff --git a/eos/effects/armorwarfarearmorhpreplacer.py b/eos/effects/armorwarfarearmorhpreplacer.py index ffcf0efec..ded78d742 100644 --- a/eos/effects/armorwarfarearmorhpreplacer.py +++ b/eos/effects/armorwarfarearmorhpreplacer.py @@ -7,6 +7,8 @@ type = "gang", "active" gangBonus = "armorHpBonus2" gangBoost = "armorHP" + + def handler(fit, module, context): if "gang" not in context: return fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("armorHpBonus2")) diff --git a/eos/effects/astrogeologyminingamountbonuspostpercentminingamountlocationshipmodulesrequiringmining.py b/eos/effects/astrogeologyminingamountbonuspostpercentminingamountlocationshipmodulesrequiringmining.py index a9c185dc7..965ade57d 100644 --- a/eos/effects/astrogeologyminingamountbonuspostpercentminingamountlocationshipmodulesrequiringmining.py +++ b/eos/effects/astrogeologyminingamountbonuspostpercentminingamountlocationshipmodulesrequiringmining.py @@ -6,6 +6,8 @@ # Skill: Astrogeology # Skill: Mining type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), diff --git a/eos/effects/basemaxscandeviationmodifiermoduleonline2none.py b/eos/effects/basemaxscandeviationmodifiermoduleonline2none.py index 054c9296d..3169597ef 100644 --- a/eos/effects/basemaxscandeviationmodifiermoduleonline2none.py +++ b/eos/effects/basemaxscandeviationmodifiermoduleonline2none.py @@ -3,7 +3,10 @@ # Used by: # Variations of module: Scan Pinpointing Array I (2 of 2) type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseMaxScanDeviation", module.getModifiedItemAttr("maxScanDeviationModifierModule"), + "baseMaxScanDeviation", + module.getModifiedItemAttr("maxScanDeviationModifierModule"), stackingPenalties=True) diff --git a/eos/effects/basemaxscandeviationmodifierrequiringastrometrics.py b/eos/effects/basemaxscandeviationmodifierrequiringastrometrics.py index 2b7ce7514..81724b690 100644 --- a/eos/effects/basemaxscandeviationmodifierrequiringastrometrics.py +++ b/eos/effects/basemaxscandeviationmodifierrequiringastrometrics.py @@ -5,7 +5,10 @@ # Skill: Astrometric Pinpointing # Skill: Astrometrics type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseMaxScanDeviation", container.getModifiedItemAttr("maxScanDeviationModifier") * level) + "baseMaxScanDeviation", + container.getModifiedItemAttr("maxScanDeviationModifier") * level) diff --git a/eos/effects/basesensorstrengthmodifiermodule.py b/eos/effects/basesensorstrengthmodifiermodule.py index 501a9f24b..5d64ab13a 100644 --- a/eos/effects/basesensorstrengthmodifiermodule.py +++ b/eos/effects/basesensorstrengthmodifiermodule.py @@ -3,6 +3,8 @@ # Used by: # Variations of module: Scan Rangefinding Array I (2 of 2) type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), "baseSensorStrength", module.getModifiedItemAttr("scanStrengthBonusModule"), diff --git a/eos/effects/basesensorstrengthmodifierrequiringastrometrics.py b/eos/effects/basesensorstrengthmodifierrequiringastrometrics.py index ae7682346..1c302d261 100644 --- a/eos/effects/basesensorstrengthmodifierrequiringastrometrics.py +++ b/eos/effects/basesensorstrengthmodifierrequiringastrometrics.py @@ -8,6 +8,8 @@ # Skill: Astrometric Rangefinding # Skill: Astrometrics type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 penalized = False if "skill" in context or "implant" in context else True diff --git a/eos/effects/battlecruiserdronespeed.py b/eos/effects/battlecruiserdronespeed.py index 2ce3247ea..5d666f43a 100644 --- a/eos/effects/battlecruiserdronespeed.py +++ b/eos/effects/battlecruiserdronespeed.py @@ -4,6 +4,8 @@ # Ship: Myrmidon # Ship: Prophecy type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxVelocity", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/battlecruisermetrange.py b/eos/effects/battlecruisermetrange.py index ca3ec3e7c..3d0e9e2aa 100644 --- a/eos/effects/battlecruisermetrange.py +++ b/eos/effects/battlecruisermetrange.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Harbinger (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "maxRange", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/battlecruisermhtrange.py b/eos/effects/battlecruisermhtrange.py index 6501a2405..268704d82 100644 --- a/eos/effects/battlecruisermhtrange.py +++ b/eos/effects/battlecruisermhtrange.py @@ -4,6 +4,8 @@ # Ships named like: Brutix (2 of 2) # Ship: Ferox type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/battlecruisermissilerange.py b/eos/effects/battlecruisermissilerange.py index 153f1bf2d..a095cac39 100644 --- a/eos/effects/battlecruisermissilerange.py +++ b/eos/effects/battlecruisermissilerange.py @@ -4,6 +4,8 @@ # Ships named like: Drake (2 of 2) # Ship: Cyclone type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", skill.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/battlecruisermptrange.py b/eos/effects/battlecruisermptrange.py index 45c16ccd9..57f8ebe4a 100644 --- a/eos/effects/battlecruisermptrange.py +++ b/eos/effects/battlecruisermptrange.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Hurricane (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "maxRange", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/bclargeenergyturretcapacitorneedbonus.py b/eos/effects/bclargeenergyturretcapacitorneedbonus.py index 749c35b3d..a4e3036f3 100644 --- a/eos/effects/bclargeenergyturretcapacitorneedbonus.py +++ b/eos/effects/bclargeenergyturretcapacitorneedbonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Oracle type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "capacitorNeed", ship.getModifiedItemAttr("bcLargeTurretCap")) diff --git a/eos/effects/bclargeenergyturretcpuneedbonus.py b/eos/effects/bclargeenergyturretcpuneedbonus.py index 3857a0099..a59ed687e 100644 --- a/eos/effects/bclargeenergyturretcpuneedbonus.py +++ b/eos/effects/bclargeenergyturretcpuneedbonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Oracle type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "cpu", ship.getModifiedItemAttr("bcLargeTurretCPU")) diff --git a/eos/effects/bclargeenergyturretpowerneedbonus.py b/eos/effects/bclargeenergyturretpowerneedbonus.py index 654595288..9bed34c1d 100644 --- a/eos/effects/bclargeenergyturretpowerneedbonus.py +++ b/eos/effects/bclargeenergyturretpowerneedbonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Oracle type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "power", ship.getModifiedItemAttr("bcLargeTurretPower")) diff --git a/eos/effects/bclargehybridturretcapacitorneedbonus.py b/eos/effects/bclargehybridturretcapacitorneedbonus.py index b90fc0ca6..04ea48c8f 100644 --- a/eos/effects/bclargehybridturretcapacitorneedbonus.py +++ b/eos/effects/bclargehybridturretcapacitorneedbonus.py @@ -4,6 +4,8 @@ # Ship: Naga # Ship: Talos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "capacitorNeed", ship.getModifiedItemAttr("bcLargeTurretCap")) diff --git a/eos/effects/bclargehybridturretcpuneedbonus.py b/eos/effects/bclargehybridturretcpuneedbonus.py index f1974efcb..299c31845 100644 --- a/eos/effects/bclargehybridturretcpuneedbonus.py +++ b/eos/effects/bclargehybridturretcpuneedbonus.py @@ -4,6 +4,8 @@ # Ship: Naga # Ship: Talos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "cpu", ship.getModifiedItemAttr("bcLargeTurretCPU")) diff --git a/eos/effects/bclargehybridturretpowerneedbonus.py b/eos/effects/bclargehybridturretpowerneedbonus.py index 0f739843a..c35072878 100644 --- a/eos/effects/bclargehybridturretpowerneedbonus.py +++ b/eos/effects/bclargehybridturretpowerneedbonus.py @@ -4,6 +4,8 @@ # Ship: Naga # Ship: Talos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "power", ship.getModifiedItemAttr("bcLargeTurretPower")) diff --git a/eos/effects/bclargeprojectileturretcpuneedbonus.py b/eos/effects/bclargeprojectileturretcpuneedbonus.py index e5d2db9de..fc0dfc50a 100644 --- a/eos/effects/bclargeprojectileturretcpuneedbonus.py +++ b/eos/effects/bclargeprojectileturretcpuneedbonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Tornado type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "cpu", ship.getModifiedItemAttr("bcLargeTurretCPU")) diff --git a/eos/effects/bclargeprojectileturretpowerneedbonus.py b/eos/effects/bclargeprojectileturretpowerneedbonus.py index 134e76390..c37e55b8f 100644 --- a/eos/effects/bclargeprojectileturretpowerneedbonus.py +++ b/eos/effects/bclargeprojectileturretpowerneedbonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Tornado type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "power", ship.getModifiedItemAttr("bcLargeTurretPower")) diff --git a/eos/effects/biologytimebonusfixed.py b/eos/effects/biologytimebonusfixed.py index 3e4b77217..b0e63322a 100644 --- a/eos/effects/biologytimebonusfixed.py +++ b/eos/effects/biologytimebonusfixed.py @@ -4,6 +4,9 @@ # Implants named like: Eifyr and Co. 'Alchemist' Biology BY (2 of 2) # Skill: Biology type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 - fit.boosters.filteredItemBoost(lambda bst: True, "boosterDuration", container.getModifiedItemAttr("durationBonus") * level) + fit.boosters.filteredItemBoost(lambda bst: True, "boosterDuration", + container.getModifiedItemAttr("durationBonus") * level) diff --git a/eos/effects/blockaderunnercloakcpupercentbonus.py b/eos/effects/blockaderunnercloakcpupercentbonus.py index aaca38f6a..b153efbc3 100644 --- a/eos/effects/blockaderunnercloakcpupercentbonus.py +++ b/eos/effects/blockaderunnercloakcpupercentbonus.py @@ -4,6 +4,9 @@ # Ships from group: Blockade Runner (4 of 4) type = "passive" runTime = "early" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cloaking Device", - "cpu", ship.getModifiedItemAttr("eliteIndustrialCovertCloakBonus"), skill="Transport Ships") + "cpu", ship.getModifiedItemAttr("eliteIndustrialCovertCloakBonus"), + skill="Transport Ships") diff --git a/eos/effects/boosterarmorhppenalty.py b/eos/effects/boosterarmorhppenalty.py index 247ecae3e..a77a9991d 100644 --- a/eos/effects/boosterarmorhppenalty.py +++ b/eos/effects/boosterarmorhppenalty.py @@ -3,5 +3,7 @@ # Used by: # Implants from group: Booster (12 of 45) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.ship.boostItemAttr("armorHP", booster.getModifiedItemAttr("boosterArmorHPPenalty")) diff --git a/eos/effects/boosterarmorrepairamountpenalty.py b/eos/effects/boosterarmorrepairamountpenalty.py index eaf28ae3e..fc7efa1ee 100644 --- a/eos/effects/boosterarmorrepairamountpenalty.py +++ b/eos/effects/boosterarmorrepairamountpenalty.py @@ -5,6 +5,8 @@ # Implants named like: Mindflood Booster (3 of 4) # Implants named like: Sooth Sayer Booster (3 of 4) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Repair Unit", "armorDamageAmount", booster.getModifiedItemAttr("boosterArmorRepairAmountPenalty")) diff --git a/eos/effects/boostercapacitorcapacitypenalty.py b/eos/effects/boostercapacitorcapacitypenalty.py index f48bce938..a14324482 100644 --- a/eos/effects/boostercapacitorcapacitypenalty.py +++ b/eos/effects/boostercapacitorcapacitypenalty.py @@ -4,5 +4,7 @@ # Implants named like: Blue Pill Booster (3 of 5) # Implants named like: Exile Booster (3 of 4) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.ship.boostItemAttr("capacitorCapacity", booster.getModifiedItemAttr("boosterCapacitorCapacityPenalty")) diff --git a/eos/effects/boostermaxvelocitypenalty.py b/eos/effects/boostermaxvelocitypenalty.py index 410f89c53..8de23ee0f 100644 --- a/eos/effects/boostermaxvelocitypenalty.py +++ b/eos/effects/boostermaxvelocitypenalty.py @@ -3,5 +3,7 @@ # Used by: # Implants from group: Booster (12 of 45) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.ship.boostItemAttr("maxVelocity", booster.getModifiedItemAttr("boosterMaxVelocityPenalty")) diff --git a/eos/effects/boostermissileexplosioncloudpenaltyfixed.py b/eos/effects/boostermissileexplosioncloudpenaltyfixed.py index be70ee93d..5c3758ccf 100644 --- a/eos/effects/boostermissileexplosioncloudpenaltyfixed.py +++ b/eos/effects/boostermissileexplosioncloudpenaltyfixed.py @@ -4,6 +4,8 @@ # Implants named like: Exile Booster (3 of 4) # Implants named like: Mindflood Booster (3 of 4) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "aoeCloudSize", booster.getModifiedItemAttr("boosterMissileAOECloudPenalty")) diff --git a/eos/effects/boostermissileexplosionvelocitypenalty.py b/eos/effects/boostermissileexplosionvelocitypenalty.py index d61092b1a..62a5d9d0a 100644 --- a/eos/effects/boostermissileexplosionvelocitypenalty.py +++ b/eos/effects/boostermissileexplosionvelocitypenalty.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Blue Pill Booster (3 of 5) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "aoeVelocity", booster.getModifiedItemAttr("boosterAOEVelocityPenalty")) diff --git a/eos/effects/boostermissilevelocitypenalty.py b/eos/effects/boostermissilevelocitypenalty.py index c3fc28fe7..0fbb3ec22 100644 --- a/eos/effects/boostermissilevelocitypenalty.py +++ b/eos/effects/boostermissilevelocitypenalty.py @@ -4,6 +4,8 @@ # Implants named like: Crash Booster (3 of 4) # Implants named like: X Instinct Booster (3 of 4) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", "boosterMissileVelocityPenalty") diff --git a/eos/effects/boostermodifyboosterarmorpenalties.py b/eos/effects/boostermodifyboosterarmorpenalties.py index a5c0653ca..a8b30251b 100644 --- a/eos/effects/boostermodifyboosterarmorpenalties.py +++ b/eos/effects/boostermodifyboosterarmorpenalties.py @@ -5,6 +5,8 @@ # Implants named like: grade Edge (10 of 12) # Skill: Neurotoxin Control type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 attrs = ("boosterArmorHPPenalty", "boosterArmorRepairAmountPenalty") diff --git a/eos/effects/boostermodifyboostermaxvelocityandcapacitorpenalty.py b/eos/effects/boostermodifyboostermaxvelocityandcapacitorpenalty.py index 702557a97..348cd192b 100644 --- a/eos/effects/boostermodifyboostermaxvelocityandcapacitorpenalty.py +++ b/eos/effects/boostermodifyboostermaxvelocityandcapacitorpenalty.py @@ -5,6 +5,8 @@ # Implants named like: grade Edge (10 of 12) # Skill: Neurotoxin Control type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 attrs = ("boosterCapacitorCapacityPenalty", "boosterMaxVelocityPenalty") diff --git a/eos/effects/boostermodifyboostermissilepenalty.py b/eos/effects/boostermodifyboostermissilepenalty.py index 2dbb030bb..0c247422d 100644 --- a/eos/effects/boostermodifyboostermissilepenalty.py +++ b/eos/effects/boostermodifyboostermissilepenalty.py @@ -5,6 +5,8 @@ # Implants named like: grade Edge (10 of 12) # Skill: Neurotoxin Control type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 attrs = ("boosterAOEVelocityPenalty", "boosterMissileAOECloudPenalty", "boosterMissileVelocityPenalty") diff --git a/eos/effects/boostermodifyboostershieldpenalty.py b/eos/effects/boostermodifyboostershieldpenalty.py index cbbfe8b6e..9e05f2cb0 100644 --- a/eos/effects/boostermodifyboostershieldpenalty.py +++ b/eos/effects/boostermodifyboostershieldpenalty.py @@ -5,6 +5,8 @@ # Implants named like: grade Edge (10 of 12) # Skill: Neurotoxin Control type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 attrs = ("boosterShieldBoostAmountPenalty", "boosterShieldCapacityPenalty", "shieldBoostMultiplier") diff --git a/eos/effects/boostermodifyboosterturretpenalty.py b/eos/effects/boostermodifyboosterturretpenalty.py index b0303b63e..c855a84e4 100644 --- a/eos/effects/boostermodifyboosterturretpenalty.py +++ b/eos/effects/boostermodifyboosterturretpenalty.py @@ -5,6 +5,8 @@ # Implants named like: grade Edge (10 of 12) # Skill: Neurotoxin Control type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 attrs = ("boosterTurretFalloffPenalty", "boosterTurretOptimalRange", "boosterTurretTrackingPenalty") diff --git a/eos/effects/boostershieldcapacitypenalty.py b/eos/effects/boostershieldcapacitypenalty.py index 690ec5b82..2e6f05731 100644 --- a/eos/effects/boostershieldcapacitypenalty.py +++ b/eos/effects/boostershieldcapacitypenalty.py @@ -3,5 +3,7 @@ # Used by: # Implants from group: Booster (12 of 45) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.ship.boostItemAttr("shieldCapacity", booster.getModifiedItemAttr("boosterShieldCapacityPenalty")) diff --git a/eos/effects/boosterturretfalloffpenalty.py b/eos/effects/boosterturretfalloffpenalty.py index 3a57f1f6e..44576795b 100644 --- a/eos/effects/boosterturretfalloffpenalty.py +++ b/eos/effects/boosterturretfalloffpenalty.py @@ -4,6 +4,8 @@ # Implants named like: Drop Booster (3 of 4) # Implants named like: X Instinct Booster (3 of 4) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "falloff", booster.getModifiedItemAttr("boosterTurretFalloffPenalty")) diff --git a/eos/effects/boosterturretoptimalrangepenalty.py b/eos/effects/boosterturretoptimalrangepenalty.py index cc9fd9224..216f2d44f 100644 --- a/eos/effects/boosterturretoptimalrangepenalty.py +++ b/eos/effects/boosterturretoptimalrangepenalty.py @@ -5,6 +5,8 @@ # Implants named like: Mindflood Booster (3 of 4) # Implants named like: Sooth Sayer Booster (3 of 4) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "maxRange", booster.getModifiedItemAttr("boosterTurretOptimalRange")) diff --git a/eos/effects/boosterturrettrackingpenalty.py b/eos/effects/boosterturrettrackingpenalty.py index dc7b852b3..71f0627ff 100644 --- a/eos/effects/boosterturrettrackingpenalty.py +++ b/eos/effects/boosterturrettrackingpenalty.py @@ -4,6 +4,8 @@ # Implants named like: Exile Booster (3 of 4) # Implants named like: Frentix Booster (3 of 4) type = "boosterSideEffect" + + def handler(fit, booster, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "trackingSpeed", booster.getModifiedItemAttr("boosterTurretTrackingPenalty")) diff --git a/eos/effects/caldarisetbonus3.py b/eos/effects/caldarisetbonus3.py index a31e831e6..ee4d55f4b 100644 --- a/eos/effects/caldarisetbonus3.py +++ b/eos/effects/caldarisetbonus3.py @@ -4,6 +4,9 @@ # Implants named like: High grade Talon (6 of 6) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanGravimetricStrengthPercent", implant.getModifiedItemAttr("implantSetCaldariNavy")) + "scanGravimetricStrengthPercent", + implant.getModifiedItemAttr("implantSetCaldariNavy")) diff --git a/eos/effects/caldarisetlgbonus.py b/eos/effects/caldarisetlgbonus.py index 04d1c6f74..ed684aa94 100644 --- a/eos/effects/caldarisetlgbonus.py +++ b/eos/effects/caldarisetlgbonus.py @@ -4,6 +4,9 @@ # Implants named like: Low grade Talon (6 of 6) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanGravimetricStrengthModifier", implant.getModifiedItemAttr("implantSetLGCaldariNavy")) + "scanGravimetricStrengthModifier", + implant.getModifiedItemAttr("implantSetLGCaldariNavy")) diff --git a/eos/effects/caldarishipecmburstoptimalrangecb3.py b/eos/effects/caldarishipecmburstoptimalrangecb3.py index 5025deba5..cc2d38e7a 100644 --- a/eos/effects/caldarishipecmburstoptimalrangecb3.py +++ b/eos/effects/caldarishipecmburstoptimalrangecb3.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scorpion type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", "ecmBurstRange", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/caldarishipewcapacitorneedcc.py b/eos/effects/caldarishipewcapacitorneedcc.py index 9224e2728..05a33ec43 100644 --- a/eos/effects/caldarishipewcapacitorneedcc.py +++ b/eos/effects/caldarishipewcapacitorneedcc.py @@ -5,6 +5,8 @@ # Ship: Falcon # Ship: Rook type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "capacitorNeed", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/caldarishipewcapacitorneedcf2.py b/eos/effects/caldarishipewcapacitorneedcf2.py index 4f90135ab..3a63615dd 100644 --- a/eos/effects/caldarishipewcapacitorneedcf2.py +++ b/eos/effects/caldarishipewcapacitorneedcf2.py @@ -4,6 +4,8 @@ # Ship: Griffin # Ship: Kitsune type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "capacitorNeed", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/caldarishipewfalloffrangecb3.py b/eos/effects/caldarishipewfalloffrangecb3.py index 53a325271..6e17fdbe1 100644 --- a/eos/effects/caldarishipewfalloffrangecb3.py +++ b/eos/effects/caldarishipewfalloffrangecb3.py @@ -3,6 +3,9 @@ # Used by: # Ship: Scorpion type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") + "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusCB3"), + skill="Caldari Battleship") diff --git a/eos/effects/caldarishipewfalloffrangecc2.py b/eos/effects/caldarishipewfalloffrangecc2.py index 33edac024..d046a9c67 100644 --- a/eos/effects/caldarishipewfalloffrangecc2.py +++ b/eos/effects/caldarishipewfalloffrangecc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Blackbird type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") + "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusCC2"), + skill="Caldari Cruiser") diff --git a/eos/effects/caldarishipewoptimalrangecb3.py b/eos/effects/caldarishipewoptimalrangecb3.py index 53794d267..f595eed45 100644 --- a/eos/effects/caldarishipewoptimalrangecb3.py +++ b/eos/effects/caldarishipewoptimalrangecb3.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scorpion type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "maxRange", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/caldarishipewoptimalrangecc2.py b/eos/effects/caldarishipewoptimalrangecc2.py index d6e8b850e..0c0362a85 100644 --- a/eos/effects/caldarishipewoptimalrangecc2.py +++ b/eos/effects/caldarishipewoptimalrangecc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Blackbird type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "maxRange", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/caldarishipewstrengthcb.py b/eos/effects/caldarishipewstrengthcb.py index 1ac5a01c0..491ab38f7 100644 --- a/eos/effects/caldarishipewstrengthcb.py +++ b/eos/effects/caldarishipewstrengthcb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scorpion type = "passive" + + def handler(fit, ship, context): for sensorType in ("Gravimetric", "Ladar", "Magnetometric", "Radar"): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", diff --git a/eos/effects/capacitorcapacityaddpassive.py b/eos/effects/capacitorcapacityaddpassive.py index 0a311520f..6f19332e7 100644 --- a/eos/effects/capacitorcapacityaddpassive.py +++ b/eos/effects/capacitorcapacityaddpassive.py @@ -4,6 +4,8 @@ # Subsystems from group: Engineering Systems (16 of 16) # Subsystem: Tengu Offensive - Magnetic Infusion Basin type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("capacitorCapacity", module.getModifiedItemAttr("capacitorCapacity")) diff --git a/eos/effects/capacitorcapacitybonus.py b/eos/effects/capacitorcapacitybonus.py index 69fd71ab7..f2c0632da 100644 --- a/eos/effects/capacitorcapacitybonus.py +++ b/eos/effects/capacitorcapacitybonus.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Capacitor Battery (27 of 27) type = "passive" + + def handler(fit, ship, context): - fit.ship.increaseItemAttr("capacitorCapacity", ship.getModifiedItemAttr("capacitorBonus")) \ No newline at end of file + fit.ship.increaseItemAttr("capacitorCapacity", ship.getModifiedItemAttr("capacitorBonus")) diff --git a/eos/effects/capacitorcapacitymultiply.py b/eos/effects/capacitorcapacitymultiply.py index 415fe4abe..e01baf760 100644 --- a/eos/effects/capacitorcapacitymultiply.py +++ b/eos/effects/capacitorcapacitymultiply.py @@ -7,5 +7,7 @@ # Modules from group: Propulsion Module (127 of 127) # Modules from group: Reactor Control Unit (22 of 22) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr("capacitorCapacity", module.getModifiedItemAttr("capacitorCapacityMultiplier")) diff --git a/eos/effects/capacitoremissionsystemskill.py b/eos/effects/capacitoremissionsystemskill.py index ba10bac90..c792ef48c 100644 --- a/eos/effects/capacitoremissionsystemskill.py +++ b/eos/effects/capacitoremissionsystemskill.py @@ -5,6 +5,8 @@ # Modules named like: Egress Port Maximizer (8 of 8) # Skill: Capacitor Emission Systems type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems"), diff --git a/eos/effects/capacityaddpassive.py b/eos/effects/capacityaddpassive.py index 307866460..01d74f113 100644 --- a/eos/effects/capacityaddpassive.py +++ b/eos/effects/capacityaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Subsystems from group: Defensive Systems (16 of 16) type = "passive" + + def handler(fit, subsystem, context): fit.ship.increaseItemAttr("capacity", subsystem.getModifiedItemAttr("capacity") or 0) diff --git a/eos/effects/capitallauncherskillcitadelemdamage.py b/eos/effects/capitallauncherskillcitadelemdamage.py index d36dc2786..253fbd818 100644 --- a/eos/effects/capitallauncherskillcitadelemdamage.py +++ b/eos/effects/capitallauncherskillcitadelemdamage.py @@ -4,6 +4,8 @@ # Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) # Skill: XL Torpedoes type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), diff --git a/eos/effects/capitallauncherskillcitadelexplosivedamage.py b/eos/effects/capitallauncherskillcitadelexplosivedamage.py index 42afaf2c3..1ce75bd0b 100644 --- a/eos/effects/capitallauncherskillcitadelexplosivedamage.py +++ b/eos/effects/capitallauncherskillcitadelexplosivedamage.py @@ -4,6 +4,8 @@ # Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) # Skill: XL Torpedoes type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), diff --git a/eos/effects/capitallauncherskillcitadelkineticdamage.py b/eos/effects/capitallauncherskillcitadelkineticdamage.py index cffdb9adf..9e59f3aea 100644 --- a/eos/effects/capitallauncherskillcitadelkineticdamage.py +++ b/eos/effects/capitallauncherskillcitadelkineticdamage.py @@ -4,6 +4,8 @@ # Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) # Skill: XL Torpedoes type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), diff --git a/eos/effects/capitallauncherskillcitadelthermaldamage.py b/eos/effects/capitallauncherskillcitadelthermaldamage.py index eb288a00b..044c7a844 100644 --- a/eos/effects/capitallauncherskillcitadelthermaldamage.py +++ b/eos/effects/capitallauncherskillcitadelthermaldamage.py @@ -4,6 +4,8 @@ # Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) # Skill: XL Torpedoes type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), diff --git a/eos/effects/capitallauncherskillcruisecitadelemdamage1.py b/eos/effects/capitallauncherskillcruisecitadelemdamage1.py index de758b0f0..2c847d0c1 100644 --- a/eos/effects/capitallauncherskillcruisecitadelemdamage1.py +++ b/eos/effects/capitallauncherskillcruisecitadelemdamage1.py @@ -3,6 +3,8 @@ # Used by: # Skill: XL Cruise Missiles type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "emDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitallauncherskillcruisecitadelexplosivedamage1.py b/eos/effects/capitallauncherskillcruisecitadelexplosivedamage1.py index e11517a1b..2b52bfcb3 100644 --- a/eos/effects/capitallauncherskillcruisecitadelexplosivedamage1.py +++ b/eos/effects/capitallauncherskillcruisecitadelexplosivedamage1.py @@ -3,6 +3,8 @@ # Used by: # Skill: XL Cruise Missiles type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "explosiveDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitallauncherskillcruisecitadelkineticdamage1.py b/eos/effects/capitallauncherskillcruisecitadelkineticdamage1.py index f5c8f193c..e51cad250 100644 --- a/eos/effects/capitallauncherskillcruisecitadelkineticdamage1.py +++ b/eos/effects/capitallauncherskillcruisecitadelkineticdamage1.py @@ -3,6 +3,8 @@ # Used by: # Skill: XL Cruise Missiles type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "kineticDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitallauncherskillcruisecitadelthermaldamage1.py b/eos/effects/capitallauncherskillcruisecitadelthermaldamage1.py index c0795f587..097a6d2b2 100644 --- a/eos/effects/capitallauncherskillcruisecitadelthermaldamage1.py +++ b/eos/effects/capitallauncherskillcruisecitadelthermaldamage1.py @@ -3,6 +3,8 @@ # Used by: # Skill: XL Cruise Missiles type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "thermalDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitalremotearmorrepairercapneedbonusskill.py b/eos/effects/capitalremotearmorrepairercapneedbonusskill.py index a3b227d9e..502143ed2 100644 --- a/eos/effects/capitalremotearmorrepairercapneedbonusskill.py +++ b/eos/effects/capitalremotearmorrepairercapneedbonusskill.py @@ -4,6 +4,8 @@ # Variations of module: Capital Remote Repair Augmentor I (2 of 2) # Skill: Capital Remote Armor Repair Systems type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), diff --git a/eos/effects/capitalremoteenergytransfercapneedbonusskill.py b/eos/effects/capitalremoteenergytransfercapneedbonusskill.py index ecbc402ae..a33d1250d 100644 --- a/eos/effects/capitalremoteenergytransfercapneedbonusskill.py +++ b/eos/effects/capitalremoteenergytransfercapneedbonusskill.py @@ -3,6 +3,8 @@ # Used by: # Skill: Capital Capacitor Emission Systems type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Capacitor Emission Systems"), - "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) \ No newline at end of file + "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/capitalremoteshieldtransfercapneedbonusskill.py b/eos/effects/capitalremoteshieldtransfercapneedbonusskill.py index 440a9afff..7ae9b3710 100644 --- a/eos/effects/capitalremoteshieldtransfercapneedbonusskill.py +++ b/eos/effects/capitalremoteshieldtransfercapneedbonusskill.py @@ -3,6 +3,8 @@ # Used by: # Skill: Capital Shield Emission Systems type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), diff --git a/eos/effects/capitalrepairsystemsskilldurationbonus.py b/eos/effects/capitalrepairsystemsskilldurationbonus.py index 4106b9e54..9ccf42487 100644 --- a/eos/effects/capitalrepairsystemsskilldurationbonus.py +++ b/eos/effects/capitalrepairsystemsskilldurationbonus.py @@ -4,8 +4,10 @@ # Modules named like: Nanobot Accelerator (8 of 8) # Skill: Capital Repair Systems type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "duration", container.getModifiedItemAttr("durationSkillBonus") * level, - stackingPenalties = "skill" not in context) + stackingPenalties="skill" not in context) diff --git a/eos/effects/capitalshieldoperationskillcapacitorneedbonus.py b/eos/effects/capitalshieldoperationskillcapacitorneedbonus.py index f40570511..82b5f1cde 100644 --- a/eos/effects/capitalshieldoperationskillcapacitorneedbonus.py +++ b/eos/effects/capitalshieldoperationskillcapacitorneedbonus.py @@ -4,6 +4,8 @@ # Modules named like: Core Defense Capacitor Safeguard (8 of 8) # Skill: Capital Shield Operation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), diff --git a/eos/effects/capitalturretskillhybriddamage.py b/eos/effects/capitalturretskillhybriddamage.py index d4775be0c..dac86333a 100644 --- a/eos/effects/capitalturretskillhybriddamage.py +++ b/eos/effects/capitalturretskillhybriddamage.py @@ -3,6 +3,8 @@ # Used by: # Skill: Capital Hybrid Turret type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitalturretskilllaserdamage.py b/eos/effects/capitalturretskilllaserdamage.py index dfe0f6b23..e1668e7c8 100644 --- a/eos/effects/capitalturretskilllaserdamage.py +++ b/eos/effects/capitalturretskilllaserdamage.py @@ -3,6 +3,8 @@ # Used by: # Skill: Capital Energy Turret type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitalturretskillprojectiledamage.py b/eos/effects/capitalturretskillprojectiledamage.py index 15f0e4b7d..ac4b49115 100644 --- a/eos/effects/capitalturretskillprojectiledamage.py +++ b/eos/effects/capitalturretskillprojectiledamage.py @@ -3,6 +3,8 @@ # Used by: # Skill: Capital Projectile Turret type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capneedbonuseffecthybrids.py b/eos/effects/capneedbonuseffecthybrids.py index 870621220..8f1cad753 100644 --- a/eos/effects/capneedbonuseffecthybrids.py +++ b/eos/effects/capneedbonuseffecthybrids.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Hybrid Discharge Elutriation (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "capacitorNeed", module.getModifiedItemAttr("capNeedBonus")) \ No newline at end of file + "capacitorNeed", module.getModifiedItemAttr("capNeedBonus")) diff --git a/eos/effects/capneedbonuseffectlasers.py b/eos/effects/capneedbonuseffectlasers.py index ba8a8e47e..e37290e63 100644 --- a/eos/effects/capneedbonuseffectlasers.py +++ b/eos/effects/capneedbonuseffectlasers.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Energy Discharge Elutriation (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", "capacitorNeed", module.getModifiedItemAttr("capNeedBonus")) diff --git a/eos/effects/cargocapacitymultiply.py b/eos/effects/cargocapacitymultiply.py index c476f9b79..860f4c413 100644 --- a/eos/effects/cargocapacitymultiply.py +++ b/eos/effects/cargocapacitymultiply.py @@ -5,5 +5,7 @@ # Modules from group: Overdrive Injector System (7 of 7) # Modules from group: Reinforced Bulkhead (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr("capacity", module.getModifiedItemAttr("cargoCapacityMultiplier")) diff --git a/eos/effects/carrieramarrarmorenergytransferrange3.py b/eos/effects/carrieramarrarmorenergytransferrange3.py index f6d2b174a..a7d18a697 100644 --- a/eos/effects/carrieramarrarmorenergytransferrange3.py +++ b/eos/effects/carrieramarrarmorenergytransferrange3.py @@ -4,6 +4,8 @@ # Ship: Aeon # Ship: Archon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), "maxRange", ship.getModifiedItemAttr("carrierAmarrBonus3"), skill="Amarr Carrier") diff --git a/eos/effects/carrieramarrarmorresist2.py b/eos/effects/carrieramarrarmorresist2.py index c4ff2e9dd..c6b8781f9 100644 --- a/eos/effects/carrieramarrarmorresist2.py +++ b/eos/effects/carrieramarrarmorresist2.py @@ -4,6 +4,8 @@ # Ship: Aeon # Ship: Archon type = "passive" + + def handler(fit, ship, context): for resType in ("Em", "Explosive", "Kinetic", "Thermal"): fit.ship.boostItemAttr("armor{0}DamageResonance".format(resType), diff --git a/eos/effects/carrieramarrarmortransferfalloff3.py b/eos/effects/carrieramarrarmortransferfalloff3.py index 577fc749b..86308a94a 100644 --- a/eos/effects/carrieramarrarmortransferfalloff3.py +++ b/eos/effects/carrieramarrarmortransferfalloff3.py @@ -4,5 +4,9 @@ # Ship: Aeon # Ship: Archon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), "falloffEffectiveness", src.getModifiedItemAttr("carrierAmarrBonus3"), skill="Amarr Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), + "falloffEffectiveness", src.getModifiedItemAttr("carrierAmarrBonus3"), + skill="Amarr Carrier") diff --git a/eos/effects/carrieramarrdronemax1.py b/eos/effects/carrieramarrdronemax1.py index 0908e0cf6..a47aeb095 100644 --- a/eos/effects/carrieramarrdronemax1.py +++ b/eos/effects/carrieramarrdronemax1.py @@ -4,5 +4,8 @@ # Ship: Aeon # Ship: Archon type = "passive" + + def handler(fit, ship, context): - fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("carrierAmarrBonus1"), skill="Amarr Carrier") + fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("carrierAmarrBonus1"), + skill="Amarr Carrier") diff --git a/eos/effects/carrieramarrfighterbombermaxvelocity2.py b/eos/effects/carrieramarrfighterbombermaxvelocity2.py index 8a3a49b7a..1670bdff4 100644 --- a/eos/effects/carrieramarrfighterbombermaxvelocity2.py +++ b/eos/effects/carrieramarrfighterbombermaxvelocity2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Revenant type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighter Bombers"), "maxVelocity", ship.getModifiedItemAttr("carrierAmarrBonus2"), skill="Amarr Carrier") diff --git a/eos/effects/carrieramarrfightermaxvelocity2.py b/eos/effects/carrieramarrfightermaxvelocity2.py index 085ddf508..4553a26a8 100644 --- a/eos/effects/carrieramarrfightermaxvelocity2.py +++ b/eos/effects/carrieramarrfightermaxvelocity2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Revenant type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighters"), "maxVelocity", ship.getModifiedItemAttr("carrierAmarrBonus2"), skill="Amarr Carrier") diff --git a/eos/effects/carrieramarrleadershipmaxgroupactive4.py b/eos/effects/carrieramarrleadershipmaxgroupactive4.py index 6b46d82a5..4695fa56c 100644 --- a/eos/effects/carrieramarrleadershipmaxgroupactive4.py +++ b/eos/effects/carrieramarrleadershipmaxgroupactive4.py @@ -4,6 +4,9 @@ # Ship: Aeon # Ship: Revenant type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", - "maxGroupActive", ship.getModifiedItemAttr("carrierAmarrBonus4"), skill="Amarr Carrier") + "maxGroupActive", ship.getModifiedItemAttr("carrierAmarrBonus4"), + skill="Amarr Carrier") diff --git a/eos/effects/carriercaldaridronemax1.py b/eos/effects/carriercaldaridronemax1.py index aa9f9f69a..cf0bbc674 100644 --- a/eos/effects/carriercaldaridronemax1.py +++ b/eos/effects/carriercaldaridronemax1.py @@ -4,5 +4,8 @@ # Ship: Chimera # Ship: Wyvern type = "passive" + + def handler(fit, ship, context): - fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("carrierCaldariBonus1"), skill="Caldari Carrier") + fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("carrierCaldariBonus1"), + skill="Caldari Carrier") diff --git a/eos/effects/carriercaldarifightersandbomberssig1.py b/eos/effects/carriercaldarifightersandbomberssig1.py index 3602e72e7..3aaba55fd 100644 --- a/eos/effects/carriercaldarifightersandbomberssig1.py +++ b/eos/effects/carriercaldarifightersandbomberssig1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Revenant type = "passive" + + def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighters") or drone.item.requiresSkill("Fighter Bombers"), - "signatureRadius", ship.getModifiedItemAttr("carrierCaldariBonus1"), skill="Caldari Carrier") + fit.drones.filteredItemBoost( + lambda drone: drone.item.requiresSkill("Fighters") or drone.item.requiresSkill("Fighter Bombers"), + "signatureRadius", ship.getModifiedItemAttr("carrierCaldariBonus1"), skill="Caldari Carrier") diff --git a/eos/effects/carriercaldarileadershipmaxgroupactive4.py b/eos/effects/carriercaldarileadershipmaxgroupactive4.py index 118bef11d..ec353fc85 100644 --- a/eos/effects/carriercaldarileadershipmaxgroupactive4.py +++ b/eos/effects/carriercaldarileadershipmaxgroupactive4.py @@ -3,6 +3,9 @@ # Used by: # Ship: Wyvern type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", - "maxGroupActive", ship.getModifiedItemAttr("carrierCaldariBonus4"), skill="Caldari Carrier") + "maxGroupActive", ship.getModifiedItemAttr("carrierCaldariBonus4"), + skill="Caldari Carrier") diff --git a/eos/effects/carriercaldarishieldenergytransferrange3.py b/eos/effects/carriercaldarishieldenergytransferrange3.py index 129c92916..760ab1a9c 100644 --- a/eos/effects/carriercaldarishieldenergytransferrange3.py +++ b/eos/effects/carriercaldarishieldenergytransferrange3.py @@ -5,6 +5,8 @@ # Ship: Revenant # Ship: Wyvern type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), "maxRange", ship.getModifiedItemAttr("carrierCaldariBonus3"), skill="Caldari Carrier") diff --git a/eos/effects/carriercaldarishieldresist2.py b/eos/effects/carriercaldarishieldresist2.py index 29e4de20a..3faa2cdf4 100644 --- a/eos/effects/carriercaldarishieldresist2.py +++ b/eos/effects/carriercaldarishieldresist2.py @@ -4,6 +4,8 @@ # Ship: Chimera # Ship: Wyvern type = "passive" + + def handler(fit, ship, context): for resType in ("Em", "Explosive", "Kinetic", "Thermal"): fit.ship.boostItemAttr("shield{0}DamageResonance".format(resType), diff --git a/eos/effects/carriercaldarishieldtransferfalloff3.py b/eos/effects/carriercaldarishieldtransferfalloff3.py index 301407707..0574cc1ca 100644 --- a/eos/effects/carriercaldarishieldtransferfalloff3.py +++ b/eos/effects/carriercaldarishieldtransferfalloff3.py @@ -5,5 +5,9 @@ # Ship: Revenant # Ship: Wyvern type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), "falloffEffectiveness", src.getModifiedItemAttr("carrierCaldariBonus3"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), + "falloffEffectiveness", src.getModifiedItemAttr("carrierCaldariBonus3"), + skill="Caldari Carrier") diff --git a/eos/effects/carrierfightercontrolrangebonus.py b/eos/effects/carrierfightercontrolrangebonus.py index 1dd44673d..1981c1f0f 100644 --- a/eos/effects/carrierfightercontrolrangebonus.py +++ b/eos/effects/carrierfightercontrolrangebonus.py @@ -4,6 +4,8 @@ # Ships from group: Carrier (4 of 4) # Ships from group: Supercarrier (5 of 5) type = "passive" + + def handler(fit, ship, context): # The fighter control range bonus only affects fighters. # Until we can calculate and display control range on a per-drone level, diff --git a/eos/effects/carriergallentearmorshieldtransferfalloff3.py b/eos/effects/carriergallentearmorshieldtransferfalloff3.py index 2f3a5fd55..170ab6cdf 100644 --- a/eos/effects/carriergallentearmorshieldtransferfalloff3.py +++ b/eos/effects/carriergallentearmorshieldtransferfalloff3.py @@ -4,5 +4,10 @@ # Ship: Nyx # Ship: Thanatos type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems") or mod.item.requiresSkill("Capital Remote Armor Repair Systems"), "falloffEffectiveness", src.getModifiedItemAttr("carrierGallenteBonus3"), skill="Gallente Carrier") \ No newline at end of file + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems") or mod.item.requiresSkill( + "Capital Remote Armor Repair Systems"), "falloffEffectiveness", + src.getModifiedItemAttr("carrierGallenteBonus3"), skill="Gallente Carrier") diff --git a/eos/effects/carriergallentearmorshieldtransferrange3.py b/eos/effects/carriergallentearmorshieldtransferrange3.py index 62cae37b7..d07cbaa9f 100644 --- a/eos/effects/carriergallentearmorshieldtransferrange3.py +++ b/eos/effects/carriergallentearmorshieldtransferrange3.py @@ -4,8 +4,12 @@ # Ship: Nyx # Ship: Thanatos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), - "maxRange", ship.getModifiedItemAttr("carrierGallenteBonus3"), skill="Gallente Carrier") + "maxRange", ship.getModifiedItemAttr("carrierGallenteBonus3"), + skill="Gallente Carrier") fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "maxRange", ship.getModifiedItemAttr("carrierGallenteBonus3"), skill="Gallente Carrier") + "maxRange", ship.getModifiedItemAttr("carrierGallenteBonus3"), + skill="Gallente Carrier") diff --git a/eos/effects/carriergallentebomberdroneowndmg2.py b/eos/effects/carriergallentebomberdroneowndmg2.py index 3dafc54f8..bc6648e23 100644 --- a/eos/effects/carriergallentebomberdroneowndmg2.py +++ b/eos/effects/carriergallentebomberdroneowndmg2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Nyx type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighter Bombers"), - "damageMultiplier", ship.getModifiedItemAttr("carrierGallenteBonus2"), skill="Gallente Carrier") + "damageMultiplier", ship.getModifiedItemAttr("carrierGallenteBonus2"), + skill="Gallente Carrier") diff --git a/eos/effects/carriergallentedronemax1.py b/eos/effects/carriergallentedronemax1.py index 8f05ba0be..1b8249dcb 100644 --- a/eos/effects/carriergallentedronemax1.py +++ b/eos/effects/carriergallentedronemax1.py @@ -4,5 +4,8 @@ # Ship: Nyx # Ship: Thanatos type = "passive" + + def handler(fit, ship, context): - fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("carrierGallenteBonus1"), skill="Gallente Carrier") + fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("carrierGallenteBonus1"), + skill="Gallente Carrier") diff --git a/eos/effects/carriergallentedroneowndmg2.py b/eos/effects/carriergallentedroneowndmg2.py index a9fcc279b..09927080d 100644 --- a/eos/effects/carriergallentedroneowndmg2.py +++ b/eos/effects/carriergallentedroneowndmg2.py @@ -4,6 +4,9 @@ # Ship: Nyx # Ship: Thanatos type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighters"), - "damageMultiplier", ship.getModifiedItemAttr("carrierGallenteBonus2"), skill="Gallente Carrier") + "damageMultiplier", ship.getModifiedItemAttr("carrierGallenteBonus2"), + skill="Gallente Carrier") diff --git a/eos/effects/carriergallenteleadershipmaxgroupactive4.py b/eos/effects/carriergallenteleadershipmaxgroupactive4.py index a82ea857d..8ba75aaba 100644 --- a/eos/effects/carriergallenteleadershipmaxgroupactive4.py +++ b/eos/effects/carriergallenteleadershipmaxgroupactive4.py @@ -3,6 +3,9 @@ # Used by: # Ship: Nyx type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", - "maxGroupActive", ship.getModifiedItemAttr("carrierGallenteBonus4"), skill="Gallente Carrier") + "maxGroupActive", ship.getModifiedItemAttr("carrierGallenteBonus4"), + skill="Gallente Carrier") diff --git a/eos/effects/carrierminmatararmorshieldamount.py b/eos/effects/carrierminmatararmorshieldamount.py index b8a5fbfb3..27685714d 100644 --- a/eos/effects/carrierminmatararmorshieldamount.py +++ b/eos/effects/carrierminmatararmorshieldamount.py @@ -4,8 +4,12 @@ # Ship: Hel # Ship: Nidhoggur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", - "shieldBonus", ship.getModifiedItemAttr("carrierMinmatarBonus2"), skill="Minmatar Carrier") + "shieldBonus", ship.getModifiedItemAttr("carrierMinmatarBonus2"), + skill="Minmatar Carrier") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", - "armorDamageAmount", ship.getModifiedItemAttr("carrierMinmatarBonus2"), skill="Minmatar Carrier") + "armorDamageAmount", ship.getModifiedItemAttr("carrierMinmatarBonus2"), + skill="Minmatar Carrier") diff --git a/eos/effects/carrierminmatararmorshieldtransferfalloff3.py b/eos/effects/carrierminmatararmorshieldtransferfalloff3.py index 27eb623c1..6aaaaa1bd 100644 --- a/eos/effects/carrierminmatararmorshieldtransferfalloff3.py +++ b/eos/effects/carrierminmatararmorshieldtransferfalloff3.py @@ -4,5 +4,10 @@ # Ship: Hel # Ship: Nidhoggur type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems") or mod.item.requiresSkill("Capital Remote Armor Repair Systems"), "falloffEffectiveness", src.getModifiedItemAttr("carrierMinmatarBonus3"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems") or mod.item.requiresSkill( + "Capital Remote Armor Repair Systems"), "falloffEffectiveness", + src.getModifiedItemAttr("carrierMinmatarBonus3"), skill="Minmatar Carrier") diff --git a/eos/effects/carrierminmatararmorshieldtransferrange3.py b/eos/effects/carrierminmatararmorshieldtransferrange3.py index bb394afbb..7b96affe5 100644 --- a/eos/effects/carrierminmatararmorshieldtransferrange3.py +++ b/eos/effects/carrierminmatararmorshieldtransferrange3.py @@ -4,8 +4,12 @@ # Ship: Hel # Ship: Nidhoggur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), - "maxRange", ship.getModifiedItemAttr("carrierMinmatarBonus3"), skill="Minmatar Carrier") + "maxRange", ship.getModifiedItemAttr("carrierMinmatarBonus3"), + skill="Minmatar Carrier") fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "maxRange", ship.getModifiedItemAttr("carrierMinmatarBonus3"), skill="Minmatar Carrier") + "maxRange", ship.getModifiedItemAttr("carrierMinmatarBonus3"), + skill="Minmatar Carrier") diff --git a/eos/effects/carrierminmatardronemax1.py b/eos/effects/carrierminmatardronemax1.py index 58e3e6917..a8d9a65fa 100644 --- a/eos/effects/carrierminmatardronemax1.py +++ b/eos/effects/carrierminmatardronemax1.py @@ -4,5 +4,8 @@ # Ship: Hel # Ship: Nidhoggur type = "passive" + + def handler(fit, ship, context): - fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("carrierMinmatarBonus1"), skill="Minmatar Carrier") + fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("carrierMinmatarBonus1"), + skill="Minmatar Carrier") diff --git a/eos/effects/carrierminmatarleadershipmaxgroupactive4.py b/eos/effects/carrierminmatarleadershipmaxgroupactive4.py index 449cc1bd3..8f169906f 100644 --- a/eos/effects/carrierminmatarleadershipmaxgroupactive4.py +++ b/eos/effects/carrierminmatarleadershipmaxgroupactive4.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", - "maxGroupActive", ship.getModifiedItemAttr("carrierMinmatarBonus4"), skill="Minmatar Carrier") + "maxGroupActive", ship.getModifiedItemAttr("carrierMinmatarBonus4"), + skill="Minmatar Carrier") diff --git a/eos/effects/cloaking.py b/eos/effects/cloaking.py index e7789d64d..258dbc555 100644 --- a/eos/effects/cloaking.py +++ b/eos/effects/cloaking.py @@ -4,7 +4,9 @@ # Modules from group: Cloaking Device (10 of 14) type = "active" runTime = "early" -#TODO: Rewrite this effect + + +# TODO: Rewrite this effect def handler(fit, module, context): # Set flag which is used to determine if ship is cloaked or not # This is used to apply cloak-only bonuses, like Black Ops' speed bonus diff --git a/eos/effects/cloakingprototype.py b/eos/effects/cloakingprototype.py index 9e7c65c17..64993f9bb 100644 --- a/eos/effects/cloakingprototype.py +++ b/eos/effects/cloakingprototype.py @@ -4,7 +4,9 @@ # Modules named like: Prototype Cloaking Device I (2 of 2) type = "active" runTime = "early" -#TODO: Rewrite this effect + + +# TODO: Rewrite this effect def handler(fit, module, context): # Set flag which is used to determine if ship is cloaked or not # This is used to apply cloak-only bonuses, like Black Ops' speed bonus diff --git a/eos/effects/cloakingscanresolutionmultiplier.py b/eos/effects/cloakingscanresolutionmultiplier.py index b602d627d..38f073c5b 100644 --- a/eos/effects/cloakingscanresolutionmultiplier.py +++ b/eos/effects/cloakingscanresolutionmultiplier.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: Cloaking Device (12 of 14) type = "offline" + + def handler(fit, module, context): fit.ship.multiplyItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionMultiplier"), - stackingPenalties = True, penaltyGroup="cloakingScanResolutionMultiplier") + stackingPenalties=True, penaltyGroup="cloakingScanResolutionMultiplier") diff --git a/eos/effects/cloakingtargetingdelaybonuslrsmcloakingpassive.py b/eos/effects/cloakingtargetingdelaybonuslrsmcloakingpassive.py index 369ea858a..40d80376e 100644 --- a/eos/effects/cloakingtargetingdelaybonuslrsmcloakingpassive.py +++ b/eos/effects/cloakingtargetingdelaybonuslrsmcloakingpassive.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Targeting Systems Stabilizer (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda module: module.item.requiresSkill("Cloaking"), "cloakingTargetingDelay", module.getModifiedItemAttr("cloakingTargetingDelayBonus")) diff --git a/eos/effects/cloakingtargetingdelaybonuspostpercentcloakingtargetingdelaybonusforshipmodulesrequiringcloaking.py b/eos/effects/cloakingtargetingdelaybonuspostpercentcloakingtargetingdelaybonusforshipmodulesrequiringcloaking.py index 4ee8deb74..292926bdd 100644 --- a/eos/effects/cloakingtargetingdelaybonuspostpercentcloakingtargetingdelaybonusforshipmodulesrequiringcloaking.py +++ b/eos/effects/cloakingtargetingdelaybonuspostpercentcloakingtargetingdelaybonusforshipmodulesrequiringcloaking.py @@ -3,7 +3,9 @@ # Used by: # Skill: Cloaking type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Cloaking"), "cloakingTargetingDelay", - skill.getModifiedItemAttr("cloakingTargetingDelayBonus") * skill.level) \ No newline at end of file + skill.getModifiedItemAttr("cloakingTargetingDelayBonus") * skill.level) diff --git a/eos/effects/cloakingwarpsafe.py b/eos/effects/cloakingwarpsafe.py index 1af531b2c..6906118dc 100644 --- a/eos/effects/cloakingwarpsafe.py +++ b/eos/effects/cloakingwarpsafe.py @@ -4,6 +4,8 @@ # Modules named like: Covert Ops Cloaking Device II (2 of 2) type = "active" runTime = "early" + + def handler(fit, ship, context): fit.extraAttributes["cloaked"] = True - #TODO: Implement \ No newline at end of file + # TODO: Implement diff --git a/eos/effects/clonevatmaxjumpclonebonusskillnew.py b/eos/effects/clonevatmaxjumpclonebonusskillnew.py index 2131a71f3..0ab64f55e 100644 --- a/eos/effects/clonevatmaxjumpclonebonusskillnew.py +++ b/eos/effects/clonevatmaxjumpclonebonusskillnew.py @@ -3,5 +3,7 @@ # Used by: # Skill: Cloning Facility Operation type = "passive" + + def handler(fit, skill, context): fit.ship.boostItemAttr("maxJumpClones", skill.getModifiedItemAttr("maxJumpClonesBonus") * skill.level) diff --git a/eos/effects/commandbonusecmmultiplywithcommandbonushidden.py b/eos/effects/commandbonusecmmultiplywithcommandbonushidden.py index 0f0101a66..86cd051f8 100644 --- a/eos/effects/commandbonusecmmultiplywithcommandbonushidden.py +++ b/eos/effects/commandbonusecmmultiplywithcommandbonushidden.py @@ -5,10 +5,12 @@ gangBonus = "commandBonusECM" gangBoost = "ewarStrECM" type = "active", "gang" + + def handler(fit, module, context): if "gang" not in context: return for scanType in ("Magnetometric", "Radar", "Ladar", "Gravimetric"): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Electronic Warfare"), "scan%sStrengthBonus" % scanType, module.getModifiedItemAttr("commandBonusECM"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py b/eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py index 9080637fd..6aa6b166a 100644 --- a/eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py +++ b/eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py @@ -5,6 +5,8 @@ gangBonus = "commandBonusRSD" gangBoost = "ewarStrRSD" type = "active", "gang" + + def handler(fit, module, context): if "gang" not in context: return fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), diff --git a/eos/effects/commandbonustdmultiplywithcommandbonushidden.py b/eos/effects/commandbonustdmultiplywithcommandbonushidden.py index 11987a66b..35883e374 100644 --- a/eos/effects/commandbonustdmultiplywithcommandbonushidden.py +++ b/eos/effects/commandbonustdmultiplywithcommandbonushidden.py @@ -5,16 +5,18 @@ gangBonus = "commandBonusTD" gangBoost = "ewarStrTD" type = "active", "gang" + + def handler(fit, module, context): if "gang" not in context: return for bonus in ( - "missileVelocityBonus", - "explosionDelayBonus", - "aoeVelocityBonus", - "falloffBonus", - "maxRangeBonus", - "aoeCloudSizeBonus", - "trackingSpeedBonus" + "missileVelocityBonus", + "explosionDelayBonus", + "aoeVelocityBonus", + "falloffBonus", + "maxRangeBonus", + "aoeCloudSizeBonus", + "trackingSpeedBonus" ): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), bonus, module.getModifiedItemAttr("commandBonusTD")) diff --git a/eos/effects/commandbonustpmultiplywithcommandbonushidden.py b/eos/effects/commandbonustpmultiplywithcommandbonushidden.py index f3ae01698..e3d39bcfb 100644 --- a/eos/effects/commandbonustpmultiplywithcommandbonushidden.py +++ b/eos/effects/commandbonustpmultiplywithcommandbonushidden.py @@ -5,8 +5,10 @@ gangBonus = "commandBonusTP" gangBoost = "ewarStrTP" type = "active", "gang" + + def handler(fit, module, context): if "gang" not in context: return fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Target Painting"), "signatureRadiusBonus", module.getModifiedItemAttr("commandBonusTP"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/commandshipmultirelayeffect.py b/eos/effects/commandshipmultirelayeffect.py index 427bfe38e..e72671ddd 100644 --- a/eos/effects/commandshipmultirelayeffect.py +++ b/eos/effects/commandshipmultirelayeffect.py @@ -5,6 +5,8 @@ # Ship: Orca # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", "maxGroupActive", ship.getModifiedItemAttr("maxGangModules")) diff --git a/eos/effects/controlledburstscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringgunnery.py b/eos/effects/controlledburstscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringgunnery.py index 1796796d7..7c1cd7011 100644 --- a/eos/effects/controlledburstscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringgunnery.py +++ b/eos/effects/controlledburstscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringgunnery.py @@ -4,6 +4,8 @@ # Implants named like: Inherent Implants 'Lancer' Controlled Bursts CB (6 of 6) # Skill: Controlled Bursts type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), diff --git a/eos/effects/covertcloakcpuaddition.py b/eos/effects/covertcloakcpuaddition.py index b827d6183..c3aa76e17 100644 --- a/eos/effects/covertcloakcpuaddition.py +++ b/eos/effects/covertcloakcpuaddition.py @@ -4,5 +4,7 @@ # Modules named like: Covert Ops Cloaking Device II (2 of 2) # Module: Covert Cynosural Field Generator I type = "passive" + + def handler(fit, module, context): module.increaseItemAttr("cpu", module.getModifiedItemAttr("covertCloakCPUAdd") or 0) diff --git a/eos/effects/covertcynocpupenalty.py b/eos/effects/covertcynocpupenalty.py index 14fdcd33a..193ade4ea 100644 --- a/eos/effects/covertcynocpupenalty.py +++ b/eos/effects/covertcynocpupenalty.py @@ -3,7 +3,8 @@ # Used by: # Subsystems from group: Offensive Systems (12 of 16) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Cynosural Field Theory"), "covertCloakCPUAdd", module.getModifiedItemAttr("covertCloakCPUPenalty")) - diff --git a/eos/effects/covertopsandreconopscloakmoduledelaybonus.py b/eos/effects/covertopsandreconopscloakmoduledelaybonus.py index 9b293787d..3d583a770 100644 --- a/eos/effects/covertopsandreconopscloakmoduledelaybonus.py +++ b/eos/effects/covertopsandreconopscloakmoduledelaybonus.py @@ -11,6 +11,9 @@ # Subsystems named like: Offensive Covert Reconfiguration (4 of 4) # Ship: Astero type = "passive" + + def handler(fit, container, context): fit.modules.filteredItemForce(lambda mod: mod.item.requiresSkill("Cloaking"), - "moduleReactivationDelay", container.getModifiedItemAttr("covertOpsAndReconOpsCloakModuleDelay")) + "moduleReactivationDelay", + container.getModifiedItemAttr("covertOpsAndReconOpsCloakModuleDelay")) diff --git a/eos/effects/covertopscloakcpupenalty.py b/eos/effects/covertopscloakcpupenalty.py index 7b5ce919f..6ac6c81d3 100644 --- a/eos/effects/covertopscloakcpupenalty.py +++ b/eos/effects/covertopscloakcpupenalty.py @@ -3,7 +3,8 @@ # Used by: # Subsystems from group: Offensive Systems (12 of 16) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Cloaking"), "covertCloakCPUAdd", module.getModifiedItemAttr("covertCloakCPUPenalty")) - diff --git a/eos/effects/covertopscloakcpupercentbonus1.py b/eos/effects/covertopscloakcpupercentbonus1.py index 534a50a38..44b78ca68 100644 --- a/eos/effects/covertopscloakcpupercentbonus1.py +++ b/eos/effects/covertopscloakcpupercentbonus1.py @@ -4,6 +4,8 @@ # Ships from group: Covert Ops (5 of 5) type = "passive" runTime = "early" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Cloaking"), "cpu", ship.getModifiedItemAttr("eliteBonusCoverOps1"), skill="Covert Ops") diff --git a/eos/effects/covertopscloakcpupercentbonuspiratefaction.py b/eos/effects/covertopscloakcpupercentbonuspiratefaction.py index b4472ad84..6feae8252 100644 --- a/eos/effects/covertopscloakcpupercentbonuspiratefaction.py +++ b/eos/effects/covertopscloakcpupercentbonuspiratefaction.py @@ -6,6 +6,8 @@ # Ship: Victorieux Luxury Yacht type = "passive" runTime = "early" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Cloaking"), "cpu", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/covertopscpubonus1.py b/eos/effects/covertopscpubonus1.py index bf0ae980a..31b5c3fce 100644 --- a/eos/effects/covertopscpubonus1.py +++ b/eos/effects/covertopscpubonus1.py @@ -4,6 +4,8 @@ # Ships from group: Stealth Bomber (4 of 4) # Subsystems named like: Offensive Covert Reconfiguration (4 of 4) type = "passive" + + def handler(fit, container, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Cloaking Device", "cpu", container.getModifiedItemAttr("cloakingCpuNeedBonus")) diff --git a/eos/effects/covertopsstealthbombersiegemissilelauncerpowerneedbonus.py b/eos/effects/covertopsstealthbombersiegemissilelauncerpowerneedbonus.py index 9ceada617..9f65b698a 100644 --- a/eos/effects/covertopsstealthbombersiegemissilelauncerpowerneedbonus.py +++ b/eos/effects/covertopsstealthbombersiegemissilelauncerpowerneedbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Stealth Bomber (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", "power", ship.getModifiedItemAttr("stealthBomberLauncherPower")) diff --git a/eos/effects/covertopsstealthbombertargettingdelaybonus.py b/eos/effects/covertopsstealthbombertargettingdelaybonus.py index 04e246ac1..d24d88874 100644 --- a/eos/effects/covertopsstealthbombertargettingdelaybonus.py +++ b/eos/effects/covertopsstealthbombertargettingdelaybonus.py @@ -7,6 +7,9 @@ # Ship: Endurance # Ship: Etana type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemForce(lambda mod: mod.item.group.name == "Cloaking Device", - "cloakingTargetingDelay", ship.getModifiedItemAttr("covertOpsStealthBomberTargettingDelay")) + "cloakingTargetingDelay", + ship.getModifiedItemAttr("covertOpsStealthBomberTargettingDelay")) diff --git a/eos/effects/covertwarfaremindlink.py b/eos/effects/covertwarfaremindlink.py index 985db3a5a..7dbda034f 100644 --- a/eos/effects/covertwarfaremindlink.py +++ b/eos/effects/covertwarfaremindlink.py @@ -5,6 +5,8 @@ # Implant: Imperial Navy Warfare Mindlink # Implant: Information Warfare Mindlink type = "passive" + + def handler(fit, implant, context): fit.character.getSkill("Information Warfare").suppress() fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), diff --git a/eos/effects/cpumultiplierpostmulcpuoutputship.py b/eos/effects/cpumultiplierpostmulcpuoutputship.py index 10022fdd0..99f186ce7 100644 --- a/eos/effects/cpumultiplierpostmulcpuoutputship.py +++ b/eos/effects/cpumultiplierpostmulcpuoutputship.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: CPU Enhancer (19 of 19) type = "passive" + + def handler(fit, module, context): - fit.ship.multiplyItemAttr("cpuOutput", module.getModifiedItemAttr("cpuMultiplier")) \ No newline at end of file + fit.ship.multiplyItemAttr("cpuOutput", module.getModifiedItemAttr("cpuMultiplier")) diff --git a/eos/effects/cpuneedbonuseffecthybrid.py b/eos/effects/cpuneedbonuseffecthybrid.py index 36a3d0029..b3e7d6c75 100644 --- a/eos/effects/cpuneedbonuseffecthybrid.py +++ b/eos/effects/cpuneedbonuseffecthybrid.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Algid Hybrid Administrations Unit (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "cpu", module.getModifiedItemAttr("cpuNeedBonus")) \ No newline at end of file + "cpu", module.getModifiedItemAttr("cpuNeedBonus")) diff --git a/eos/effects/cpuneedbonuseffectlasers.py b/eos/effects/cpuneedbonuseffectlasers.py index 9c7d61965..689898682 100644 --- a/eos/effects/cpuneedbonuseffectlasers.py +++ b/eos/effects/cpuneedbonuseffectlasers.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Algid Energy Administrations Unit (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "cpu", module.getModifiedItemAttr("cpuNeedBonus")) \ No newline at end of file + "cpu", module.getModifiedItemAttr("cpuNeedBonus")) diff --git a/eos/effects/cpuoutputaddcpuoutputpassive.py b/eos/effects/cpuoutputaddcpuoutputpassive.py index a3ac265ef..10614e895 100644 --- a/eos/effects/cpuoutputaddcpuoutputpassive.py +++ b/eos/effects/cpuoutputaddcpuoutputpassive.py @@ -3,5 +3,7 @@ # Used by: # Items from category: Subsystem (40 of 80) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("cpuOutput", module.getModifiedItemAttr("cpuOutput")) diff --git a/eos/effects/crystalminingamountinfo2.py b/eos/effects/crystalminingamountinfo2.py index 18a059c95..5c7305860 100644 --- a/eos/effects/crystalminingamountinfo2.py +++ b/eos/effects/crystalminingamountinfo2.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Frequency Mining Laser (3 of 3) type = "passive" + + def handler(fit, module, context): module.preAssignItemAttr("specialtyMiningAmount", module.getModifiedItemAttr("miningAmount")) diff --git a/eos/effects/cynosuraldurationbonus.py b/eos/effects/cynosuraldurationbonus.py index 91eaf0bd5..743d13d9e 100644 --- a/eos/effects/cynosuraldurationbonus.py +++ b/eos/effects/cynosuraldurationbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Force Recon Ship (5 of 6) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cynosural Field", "duration", ship.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/cynosuralgeneration.py b/eos/effects/cynosuralgeneration.py index 4bbb9bea5..b99325c0f 100644 --- a/eos/effects/cynosuralgeneration.py +++ b/eos/effects/cynosuralgeneration.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Cynosural Field (2 of 2) type = "active" + + def handler(fit, module, context): fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor")) diff --git a/eos/effects/cynosuraltheoryconsumptionbonus.py b/eos/effects/cynosuraltheoryconsumptionbonus.py index 030229042..0f66b0152 100644 --- a/eos/effects/cynosuraltheoryconsumptionbonus.py +++ b/eos/effects/cynosuraltheoryconsumptionbonus.py @@ -4,7 +4,10 @@ # Ships from group: Force Recon Ship (5 of 6) # Skill: Cynosural Field Theory type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cynosural Field", - "consumptionQuantity", container.getModifiedItemAttr("consumptionQuantityBonusPercentage") * level) + "consumptionQuantity", + container.getModifiedItemAttr("consumptionQuantityBonusPercentage") * level) diff --git a/eos/effects/damagecontrol.py b/eos/effects/damagecontrol.py index 8ebdda53e..e047e6afa 100644 --- a/eos/effects/damagecontrol.py +++ b/eos/effects/damagecontrol.py @@ -4,6 +4,8 @@ # Variations of module: Damage Control I (16 of 16) # Module: Civilian Damage Control type = "passive" + + def handler(fit, module, context): for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): for damageType in ('Kinetic', 'Thermal', 'Explosive', 'Em'): diff --git a/eos/effects/dataminermoduledurationreduction.py b/eos/effects/dataminermoduledurationreduction.py index 11ce137a6..aaa6af58a 100644 --- a/eos/effects/dataminermoduledurationreduction.py +++ b/eos/effects/dataminermoduledurationreduction.py @@ -3,6 +3,8 @@ # Used by: # Implant: Poteque 'Prospector' Environmental Analysis EY-1005 type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Data Miners", - "duration", implant.getModifiedItemAttr("durationBonus")) \ No newline at end of file + "duration", implant.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/dataminingskillboostaccessdifficultybonusabsolutepercent.py b/eos/effects/dataminingskillboostaccessdifficultybonusabsolutepercent.py index 74986e3e5..376039994 100644 --- a/eos/effects/dataminingskillboostaccessdifficultybonusabsolutepercent.py +++ b/eos/effects/dataminingskillboostaccessdifficultybonusabsolutepercent.py @@ -5,6 +5,8 @@ # Skill: Hacking # Skill: Salvaging type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill(skill), "accessDifficultyBonus", skill.getModifiedItemAttr("accessDifficultyBonusAbsolutePercent") * skill.level) diff --git a/eos/effects/decreasetargetspeed.py b/eos/effects/decreasetargetspeed.py index 7a6fbf9b0..dd482175d 100644 --- a/eos/effects/decreasetargetspeed.py +++ b/eos/effects/decreasetargetspeed.py @@ -1,7 +1,9 @@ # Not used by any item type = "active", "projected" + + def handler(fit, module, context): if "projected" not in context: return fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/dohacking.py b/eos/effects/dohacking.py index 59b61ce7f..b41b91069 100644 --- a/eos/effects/dohacking.py +++ b/eos/effects/dohacking.py @@ -4,5 +4,7 @@ # Modules from group: Data Miners (15 of 16) # Module: QA Cross Protocol Analyzer type = "active" + + def handler(fit, module, context): - pass \ No newline at end of file + pass diff --git a/eos/effects/drawbackarmorhp.py b/eos/effects/drawbackarmorhp.py index 28d24015e..94c4fb0ff 100644 --- a/eos/effects/drawbackarmorhp.py +++ b/eos/effects/drawbackarmorhp.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Rig Navigation (48 of 64) type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("drawback")) \ No newline at end of file + fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackcapreppgneed.py b/eos/effects/drawbackcapreppgneed.py index e004a94b4..e5812f575 100644 --- a/eos/effects/drawbackcapreppgneed.py +++ b/eos/effects/drawbackcapreppgneed.py @@ -4,6 +4,8 @@ # Variations of module: Capital Auxiliary Nano Pump I (2 of 2) # Variations of module: Capital Nanobot Accelerator I (2 of 2) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackcargocapacity.py b/eos/effects/drawbackcargocapacity.py index 0168c002a..07f5bf171 100644 --- a/eos/effects/drawbackcargocapacity.py +++ b/eos/effects/drawbackcargocapacity.py @@ -3,5 +3,7 @@ # Used by: # Modules named like: Transverse Bulkhead (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("capacity", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackcpuneedlaunchers.py b/eos/effects/drawbackcpuneedlaunchers.py index 0b37c5b38..cb22a2523 100644 --- a/eos/effects/drawbackcpuneedlaunchers.py +++ b/eos/effects/drawbackcpuneedlaunchers.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Rig Launcher (48 of 48) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "cpu", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackcpuoutput.py b/eos/effects/drawbackcpuoutput.py index 9395d7848..659199ee1 100644 --- a/eos/effects/drawbackcpuoutput.py +++ b/eos/effects/drawbackcpuoutput.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Rig Drones (58 of 64) type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("cpuOutput", module.getModifiedItemAttr("drawback")) \ No newline at end of file + fit.ship.boostItemAttr("cpuOutput", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackmaxvelocity.py b/eos/effects/drawbackmaxvelocity.py index 69b7d225f..8bdd806ae 100644 --- a/eos/effects/drawbackmaxvelocity.py +++ b/eos/effects/drawbackmaxvelocity.py @@ -4,6 +4,8 @@ # Modules from group: Rig Armor (48 of 72) # Modules from group: Rig Resource Processing (8 of 10) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("drawback"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/drawbackpowerneedhybrids.py b/eos/effects/drawbackpowerneedhybrids.py index 8259352db..68a8c4233 100644 --- a/eos/effects/drawbackpowerneedhybrids.py +++ b/eos/effects/drawbackpowerneedhybrids.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Rig Hybrid Weapon (56 of 56) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "power", module.getModifiedItemAttr("drawback")) \ No newline at end of file + "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackpowerneedlasers.py b/eos/effects/drawbackpowerneedlasers.py index 2bf170f50..addcabb17 100644 --- a/eos/effects/drawbackpowerneedlasers.py +++ b/eos/effects/drawbackpowerneedlasers.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Rig Energy Weapon (56 of 56) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "power", module.getModifiedItemAttr("drawback")) \ No newline at end of file + "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackpowerneedprojectiles.py b/eos/effects/drawbackpowerneedprojectiles.py index f0de23408..0f8490bfd 100644 --- a/eos/effects/drawbackpowerneedprojectiles.py +++ b/eos/effects/drawbackpowerneedprojectiles.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Rig Projectile Weapon (40 of 40) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", - "power", module.getModifiedItemAttr("drawback")) \ No newline at end of file + "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackrepairsystemspgneed.py b/eos/effects/drawbackrepairsystemspgneed.py index fa5dd2c57..1eba7dc3c 100644 --- a/eos/effects/drawbackrepairsystemspgneed.py +++ b/eos/effects/drawbackrepairsystemspgneed.py @@ -4,6 +4,8 @@ # Modules named like: Auxiliary Nano Pump (6 of 8) # Modules named like: Nanobot Accelerator (6 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "power", module.getModifiedItemAttr("drawback")) \ No newline at end of file + "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackshieldcapacity.py b/eos/effects/drawbackshieldcapacity.py index cfcea10a9..84887a559 100644 --- a/eos/effects/drawbackshieldcapacity.py +++ b/eos/effects/drawbackshieldcapacity.py @@ -5,5 +5,7 @@ # Modules from group: Rig Targeting (16 of 16) # Modules named like: Signal Focusing Kit (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("shieldCapacity", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbacksigrad.py b/eos/effects/drawbacksigrad.py index 95ad15a9b..176bdd423 100644 --- a/eos/effects/drawbacksigrad.py +++ b/eos/effects/drawbacksigrad.py @@ -4,5 +4,7 @@ # Modules from group: Rig Shield (72 of 72) # Modules named like: Optimizer (16 of 16) type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("drawback"), stackingPenalties = True) + fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("drawback"), stackingPenalties=True) diff --git a/eos/effects/drawbackwarpspeed.py b/eos/effects/drawbackwarpspeed.py index 229a6cd14..a37a3e441 100644 --- a/eos/effects/drawbackwarpspeed.py +++ b/eos/effects/drawbackwarpspeed.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Rig Anchor (4 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("warpSpeedMultiplier", module.getModifiedItemAttr("drawback"), stackingPenalties=True) diff --git a/eos/effects/dreadnoughtmd1projdmgbonus.py b/eos/effects/dreadnoughtmd1projdmgbonus.py index 33115de5a..2d3ef6a03 100644 --- a/eos/effects/dreadnoughtmd1projdmgbonus.py +++ b/eos/effects/dreadnoughtmd1projdmgbonus.py @@ -3,6 +3,9 @@ # Used by: # Ship: Naglfar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("dreadnoughtShipBonusM1"), skill="Minmatar Dreadnought") + "damageMultiplier", ship.getModifiedItemAttr("dreadnoughtShipBonusM1"), + skill="Minmatar Dreadnought") diff --git a/eos/effects/dreadnoughtmd3projrofbonus.py b/eos/effects/dreadnoughtmd3projrofbonus.py index 1dd5f7096..7cd152f78 100644 --- a/eos/effects/dreadnoughtmd3projrofbonus.py +++ b/eos/effects/dreadnoughtmd3projrofbonus.py @@ -3,6 +3,9 @@ # Used by: # Ship: Naglfar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), - "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusM3"), skill="Minmatar Dreadnought") + "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusM3"), + skill="Minmatar Dreadnought") diff --git a/eos/effects/dreadnoughtshipbonushybriddmgg1.py b/eos/effects/dreadnoughtshipbonushybriddmgg1.py index 316e4b01f..61025aee3 100644 --- a/eos/effects/dreadnoughtshipbonushybriddmgg1.py +++ b/eos/effects/dreadnoughtshipbonushybriddmgg1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Moros type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("dreadnoughtShipBonusG1"), skill="Gallente Dreadnought") + "damageMultiplier", ship.getModifiedItemAttr("dreadnoughtShipBonusG1"), + skill="Gallente Dreadnought") diff --git a/eos/effects/dreadnoughtshipbonushybridrofg2.py b/eos/effects/dreadnoughtshipbonushybridrofg2.py index 251e7c408..0ff926ede 100644 --- a/eos/effects/dreadnoughtshipbonushybridrofg2.py +++ b/eos/effects/dreadnoughtshipbonushybridrofg2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Moros type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), - "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusG2"), skill="Gallente Dreadnought") + "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusG2"), + skill="Gallente Dreadnought") diff --git a/eos/effects/dreadnoughtshipbonuslasercapneeda1.py b/eos/effects/dreadnoughtshipbonuslasercapneeda1.py index f6d86d71b..3202050af 100644 --- a/eos/effects/dreadnoughtshipbonuslasercapneeda1.py +++ b/eos/effects/dreadnoughtshipbonuslasercapneeda1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Revelation type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("dreadnoughtShipBonusA1"), skill="Amarr Dreadnought") + "capacitorNeed", ship.getModifiedItemAttr("dreadnoughtShipBonusA1"), + skill="Amarr Dreadnought") diff --git a/eos/effects/dreadnoughtshipbonuslaserrofa2.py b/eos/effects/dreadnoughtshipbonuslaserrofa2.py index a1563282d..faa54edf5 100644 --- a/eos/effects/dreadnoughtshipbonuslaserrofa2.py +++ b/eos/effects/dreadnoughtshipbonuslaserrofa2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Revelation type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), - "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusA2"), skill="Amarr Dreadnought") + "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusA2"), + skill="Amarr Dreadnought") diff --git a/eos/effects/dreadnoughtshipbonusshieldresistancesc2.py b/eos/effects/dreadnoughtshipbonusshieldresistancesc2.py index 2d8266e69..0fca8e14e 100644 --- a/eos/effects/dreadnoughtshipbonusshieldresistancesc2.py +++ b/eos/effects/dreadnoughtshipbonusshieldresistancesc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Phoenix type = "passive" + + def handler(fit, ship, context): for damageType in ("em", "thermal", "explosive", "kinetic"): fit.ship.boostItemAttr("shield{}DamageResonance".format(damageType.capitalize()), diff --git a/eos/effects/dronearmordamagebonuseffect.py b/eos/effects/dronearmordamagebonuseffect.py index 4abe3984c..18acef2dc 100644 --- a/eos/effects/dronearmordamagebonuseffect.py +++ b/eos/effects/dronearmordamagebonuseffect.py @@ -5,6 +5,8 @@ # Ship: Exequror # Ship: Scythe type = "passive" + + def handler(fit, ship, context): # This is actually level-less bonus, anyway you have to train cruisers 5 # and will get 100% (20%/lvl as stated by description) diff --git a/eos/effects/dronebandwidthaddpassive.py b/eos/effects/dronebandwidthaddpassive.py index ed680c6c9..8dc986340 100644 --- a/eos/effects/dronebandwidthaddpassive.py +++ b/eos/effects/dronebandwidthaddpassive.py @@ -4,5 +4,7 @@ # Subsystems from group: Engineering Systems (13 of 16) # Subsystems from group: Offensive Systems (16 of 16) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("droneBandwidth", module.getModifiedItemAttr("droneBandwidth")) diff --git a/eos/effects/dronecapacityadddronecapacitypassive.py b/eos/effects/dronecapacityadddronecapacitypassive.py index 64d04743c..372e95c4b 100644 --- a/eos/effects/dronecapacityadddronecapacitypassive.py +++ b/eos/effects/dronecapacityadddronecapacitypassive.py @@ -3,5 +3,7 @@ # Used by: # Items from category: Subsystem (42 of 80) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("droneCapacity", module.getModifiedItemAttr("droneCapacity")) diff --git a/eos/effects/dronedamagebonusonline.py b/eos/effects/dronedamagebonusonline.py index 9c601f710..13ad14a45 100644 --- a/eos/effects/dronedamagebonusonline.py +++ b/eos/effects/dronedamagebonusonline.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: Drone Damage Modules (11 of 11) type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "damageMultiplier", module.getModifiedItemAttr("droneDamageBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/dronedamagebonusrequringdrones.py b/eos/effects/dronedamagebonusrequringdrones.py index 0baf75d99..5f3e13ea1 100644 --- a/eos/effects/dronedamagebonusrequringdrones.py +++ b/eos/effects/dronedamagebonusrequringdrones.py @@ -1,5 +1,7 @@ # Not used by any item type = "passive" + + def handler(fit, skill, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/dronedmgbonus.py b/eos/effects/dronedmgbonus.py index 3407e3d69..cf4d01efc 100644 --- a/eos/effects/dronedmgbonus.py +++ b/eos/effects/dronedmgbonus.py @@ -4,6 +4,8 @@ # Skills from group: Drones (8 of 23) # Skills named like: Drone Specialization (4 of 4) type = "passive" + + def handler(fit, skill, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill(skill), "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/dronedurabilityarmorhpbonus.py b/eos/effects/dronedurabilityarmorhpbonus.py index a11211e86..9f22fa762 100644 --- a/eos/effects/dronedurabilityarmorhpbonus.py +++ b/eos/effects/dronedurabilityarmorhpbonus.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Drone Durability Enhancer (6 of 8) type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "armorHP", module.getModifiedItemAttr("hullHpBonus")) + "armorHP", module.getModifiedItemAttr("hullHpBonus")) diff --git a/eos/effects/dronedurabilityarmorhpbonus2.py b/eos/effects/dronedurabilityarmorhpbonus2.py index 5267b02c1..11190a806 100644 --- a/eos/effects/dronedurabilityarmorhpbonus2.py +++ b/eos/effects/dronedurabilityarmorhpbonus2.py @@ -3,6 +3,8 @@ # Used by: # Skill: Drone Durability type = "passive" + + def handler(fit, skill, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "armorHP", skill.getModifiedItemAttr("armorHpBonus") * skill.level) \ No newline at end of file + "armorHP", skill.getModifiedItemAttr("armorHpBonus") * skill.level) diff --git a/eos/effects/dronedurabilityhpbonus.py b/eos/effects/dronedurabilityhpbonus.py index 617873d03..cbd2fb065 100644 --- a/eos/effects/dronedurabilityhpbonus.py +++ b/eos/effects/dronedurabilityhpbonus.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Drone Durability Enhancer (6 of 8) type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), diff --git a/eos/effects/dronedurabilityshieldcapbonus.py b/eos/effects/dronedurabilityshieldcapbonus.py index 1691d8f4b..75f7c1ca7 100644 --- a/eos/effects/dronedurabilityshieldcapbonus.py +++ b/eos/effects/dronedurabilityshieldcapbonus.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Drone Durability Enhancer (6 of 8) type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "shieldCapacity", module.getModifiedItemAttr("hullHpBonus")) + "shieldCapacity", module.getModifiedItemAttr("hullHpBonus")) diff --git a/eos/effects/dronedurabilityshieldcapbonus2.py b/eos/effects/dronedurabilityshieldcapbonus2.py index 628e2bff8..511e422a4 100644 --- a/eos/effects/dronedurabilityshieldcapbonus2.py +++ b/eos/effects/dronedurabilityshieldcapbonus2.py @@ -3,6 +3,8 @@ # Used by: # Skill: Drone Durability type = "passive" + + def handler(fit, skill, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "shieldCapacity", skill.getModifiedItemAttr("shieldCapacityBonus") * skill.level) + "shieldCapacity", skill.getModifiedItemAttr("shieldCapacityBonus") * skill.level) diff --git a/eos/effects/dronehullrepairbonuseffect.py b/eos/effects/dronehullrepairbonuseffect.py index b13fa4500..2cb510cd4 100644 --- a/eos/effects/dronehullrepairbonuseffect.py +++ b/eos/effects/dronehullrepairbonuseffect.py @@ -5,5 +5,8 @@ # Ship: Exequror # Ship: Scythe type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", "structureDamageAmount", src.getModifiedItemAttr("droneArmorDamageAmountBonus")) \ No newline at end of file + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", "structureDamageAmount", + src.getModifiedItemAttr("droneArmorDamageAmountBonus")) diff --git a/eos/effects/dronemaxrangebonus.py b/eos/effects/dronemaxrangebonus.py index be1ecde59..fba4a35bc 100644 --- a/eos/effects/dronemaxrangebonus.py +++ b/eos/effects/dronemaxrangebonus.py @@ -3,10 +3,12 @@ # Used by: # Modules named like: Drone Scope Chip (6 of 8) type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 stacking = False if "skill" in context else True fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties = stacking) + stackingPenalties=stacking) diff --git a/eos/effects/dronemaxvelocitybonus.py b/eos/effects/dronemaxvelocitybonus.py index 2e0f310bd..938b34fa0 100644 --- a/eos/effects/dronemaxvelocitybonus.py +++ b/eos/effects/dronemaxvelocitybonus.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Drone Speed Augmentor (6 of 8) type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), diff --git a/eos/effects/dronemwdspeedbonus.py b/eos/effects/dronemwdspeedbonus.py index a07ed7b0e..692959ae4 100644 --- a/eos/effects/dronemwdspeedbonus.py +++ b/eos/effects/dronemwdspeedbonus.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Drone Navigation Computer (8 of 8) type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxVelocity", - module.getModifiedItemAttr("speedFactor"), stackingPenalties = True) + module.getModifiedItemAttr("speedFactor"), stackingPenalties=True) diff --git a/eos/effects/dronerangebonusadd.py b/eos/effects/dronerangebonusadd.py index bb21bdfb6..790825723 100644 --- a/eos/effects/dronerangebonusadd.py +++ b/eos/effects/dronerangebonusadd.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Drone Control Range Module (7 of 7) type = "passive" + + def handler(fit, module, context): amount = module.getModifiedItemAttr("droneRangeBonus") fit.extraAttributes.increase("droneControlRange", amount) diff --git a/eos/effects/dronerigstasiswebspeedfactorbonus.py b/eos/effects/dronerigstasiswebspeedfactorbonus.py index b2add0ca8..7f060a291 100644 --- a/eos/effects/dronerigstasiswebspeedfactorbonus.py +++ b/eos/effects/dronerigstasiswebspeedfactorbonus.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Stasis Drone Augmentor (8 of 8) type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Stasis Webifying Drone", - "speedFactor", module.getModifiedItemAttr("webSpeedFactorBonus")) \ No newline at end of file + "speedFactor", module.getModifiedItemAttr("webSpeedFactorBonus")) diff --git a/eos/effects/dronesalvagebonus.py b/eos/effects/dronesalvagebonus.py index 4fcdadf7e..1e9deef53 100644 --- a/eos/effects/dronesalvagebonus.py +++ b/eos/effects/dronesalvagebonus.py @@ -3,6 +3,9 @@ # Used by: # Skill: Salvage Drone Operation type = "passive" + + def handler(fit, container, context): fit.drones.filteredItemIncrease(lambda drone: drone.item.requiresSkill("Salvage Drone Operation"), - "accessDifficultyBonus", container.getModifiedItemAttr("accessDifficultyBonus") * container.level) + "accessDifficultyBonus", + container.getModifiedItemAttr("accessDifficultyBonus") * container.level) diff --git a/eos/effects/droneshieldbonusbonuseffect.py b/eos/effects/droneshieldbonusbonuseffect.py index 7d6f083d4..816d1bc0a 100644 --- a/eos/effects/droneshieldbonusbonuseffect.py +++ b/eos/effects/droneshieldbonusbonuseffect.py @@ -5,6 +5,8 @@ # Ship: Exequror # Ship: Scythe type = "passive" + + def handler(fit, ship, context): # This is actually level-less bonus, anyway you have to train cruisers 5 # and will get 100% (20%/lvl as stated by description) diff --git a/eos/effects/dronesmaxactivedronebonusmodaddmaxactiveactive.py b/eos/effects/dronesmaxactivedronebonusmodaddmaxactiveactive.py index 729247c93..5bf55b8cc 100644 --- a/eos/effects/dronesmaxactivedronebonusmodaddmaxactiveactive.py +++ b/eos/effects/dronesmaxactivedronebonusmodaddmaxactiveactive.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Drone Control Unit (5 of 5) type = "active" + + def handler(fit, module, context): amount = module.getModifiedItemAttr("maxActiveDroneBonus") fit.extraAttributes.increase("maxActiveDrones", amount) diff --git a/eos/effects/dronesskillboostmaxactivedronebonus.py b/eos/effects/dronesskillboostmaxactivedronebonus.py index d90708b05..aae3f84a7 100644 --- a/eos/effects/dronesskillboostmaxactivedronebonus.py +++ b/eos/effects/dronesskillboostmaxactivedronebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Drones type = "passive" + + def handler(fit, skill, context): amount = skill.getModifiedItemAttr("maxActiveDroneBonus") * skill.level fit.extraAttributes.increase("maxActiveDrones", amount) diff --git a/eos/effects/dronetrackingcomputerbonus.py b/eos/effects/dronetrackingcomputerbonus.py index 95751303e..f33ab2600 100644 --- a/eos/effects/dronetrackingcomputerbonus.py +++ b/eos/effects/dronetrackingcomputerbonus.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Drone Tracking Modules (10 of 10) type = "active" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), @@ -13,4 +15,3 @@ def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - diff --git a/eos/effects/dronetrackingenhancerbonus.py b/eos/effects/dronetrackingenhancerbonus.py index 4d97c4fab..a9cc82a32 100644 --- a/eos/effects/dronetrackingenhancerbonus.py +++ b/eos/effects/dronetrackingenhancerbonus.py @@ -3,13 +3,15 @@ # Used by: # Modules from group: Drone Tracking Enhancer (10 of 10) type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True) + stackingPenalties=True) fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True) + stackingPenalties=True) fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/durationbonusforgroupafterburner.py b/eos/effects/durationbonusforgroupafterburner.py index 9ab34454a..d193ca6ef 100644 --- a/eos/effects/durationbonusforgroupafterburner.py +++ b/eos/effects/durationbonusforgroupafterburner.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Engine Thermal Shielding (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", "duration", module.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/ecmburst.py b/eos/effects/ecmburst.py index 050379d88..9b4ebf30e 100644 --- a/eos/effects/ecmburst.py +++ b/eos/effects/ecmburst.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Burst Jammer (11 of 11) type = "active" + + def handler(fit, module, context): - pass \ No newline at end of file + pass diff --git a/eos/effects/ecmburstjammer.py b/eos/effects/ecmburstjammer.py index aeba8cc53..1d733e650 100644 --- a/eos/effects/ecmburstjammer.py +++ b/eos/effects/ecmburstjammer.py @@ -3,9 +3,11 @@ # Used by: # Modules from group: Burst Jammer (11 of 11) type = "projected", "active" + + def handler(fit, module, context): if "projected" in context: # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType))/fit.scanStrength + strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength - fit.ecmProjectedStr *= strModifier \ No newline at end of file + fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/ecmgravimetricstrengthbonuspercent.py b/eos/effects/ecmgravimetricstrengthbonuspercent.py index 09c35314e..35bac7668 100644 --- a/eos/effects/ecmgravimetricstrengthbonuspercent.py +++ b/eos/effects/ecmgravimetricstrengthbonuspercent.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: ECM Stabilizer (6 of 6) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "scanGravimetricStrengthBonus", module.getModifiedItemAttr("ecmStrengthBonusPercent"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/ecmladarstrengthbonuspercent.py b/eos/effects/ecmladarstrengthbonuspercent.py index 89d2833dc..1ff5830a8 100644 --- a/eos/effects/ecmladarstrengthbonuspercent.py +++ b/eos/effects/ecmladarstrengthbonuspercent.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: ECM Stabilizer (6 of 6) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "scanLadarStrengthBonus", module.getModifiedItemAttr("ecmStrengthBonusPercent"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/ecmmagnetometricstrengthbonuspercent.py b/eos/effects/ecmmagnetometricstrengthbonuspercent.py index 4b0f71265..84eb6163d 100644 --- a/eos/effects/ecmmagnetometricstrengthbonuspercent.py +++ b/eos/effects/ecmmagnetometricstrengthbonuspercent.py @@ -3,7 +3,10 @@ # Used by: # Modules from group: ECM Stabilizer (6 of 6) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanMagnetometricStrengthBonus", module.getModifiedItemAttr("ecmStrengthBonusPercent"), - stackingPenalties = True) + "scanMagnetometricStrengthBonus", + module.getModifiedItemAttr("ecmStrengthBonusPercent"), + stackingPenalties=True) diff --git a/eos/effects/ecmradarstrengthbonuspercent.py b/eos/effects/ecmradarstrengthbonuspercent.py index 6bc8890a6..a70573cdc 100644 --- a/eos/effects/ecmradarstrengthbonuspercent.py +++ b/eos/effects/ecmradarstrengthbonuspercent.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: ECM Stabilizer (6 of 6) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "scanRadarStrengthBonus", module.getModifiedItemAttr("ecmStrengthBonusPercent"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/ecmrangebonusmoduleeffect.py b/eos/effects/ecmrangebonusmoduleeffect.py index 2958d18c0..5300152bc 100644 --- a/eos/effects/ecmrangebonusmoduleeffect.py +++ b/eos/effects/ecmrangebonusmoduleeffect.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: ECM Stabilizer (6 of 6) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "maxRange", module.getModifiedItemAttr("ecmRangeBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/electronicattributemodifyonline.py b/eos/effects/electronicattributemodifyonline.py index 13647558c..28197f971 100644 --- a/eos/effects/electronicattributemodifyonline.py +++ b/eos/effects/electronicattributemodifyonline.py @@ -4,5 +4,7 @@ # Modules from group: Automated Targeting System (6 of 6) # Module: QA Damage Module type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("maxLockedTargets", module.getModifiedItemAttr("maxLockedTargetsBonus")) diff --git a/eos/effects/electronicscpuoutputbonuspostpercentcpuoutputlocationshipgroupcomputer.py b/eos/effects/electronicscpuoutputbonuspostpercentcpuoutputlocationshipgroupcomputer.py index fab22b923..ca69bef68 100644 --- a/eos/effects/electronicscpuoutputbonuspostpercentcpuoutputlocationshipgroupcomputer.py +++ b/eos/effects/electronicscpuoutputbonuspostpercentcpuoutputlocationshipgroupcomputer.py @@ -6,6 +6,8 @@ # Implant: Genolution Core Augmentation CA-2 # Skill: CPU Management type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("cpuOutput", container.getModifiedItemAttr("cpuOutputBonus2") * level) diff --git a/eos/effects/elitebargebonusiceharvestingcycletimebarge3.py b/eos/effects/elitebargebonusiceharvestingcycletimebarge3.py index 0dcb9f4b7..0ae042d2d 100644 --- a/eos/effects/elitebargebonusiceharvestingcycletimebarge3.py +++ b/eos/effects/elitebargebonusiceharvestingcycletimebarge3.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Exhumer (3 of 3) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", ship.getModifiedItemAttr("eliteBonusBarge2"), skill="Exhumers") diff --git a/eos/effects/elitebargebonusminingdurationbarge2.py b/eos/effects/elitebargebonusminingdurationbarge2.py index d664e7b67..6009d9542 100644 --- a/eos/effects/elitebargebonusminingdurationbarge2.py +++ b/eos/effects/elitebargebonusminingdurationbarge2.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Exhumer (3 of 3) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), "duration", ship.getModifiedItemAttr("eliteBonusBarge2"), skill="Exhumers") diff --git a/eos/effects/elitebargeshieldresistance1.py b/eos/effects/elitebargeshieldresistance1.py index e9d1b0d2e..33f370af1 100644 --- a/eos/effects/elitebargeshieldresistance1.py +++ b/eos/effects/elitebargeshieldresistance1.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Exhumer (3 of 3) type = "passive" + + def handler(fit, ship, context): for damageType in ("em", "thermal", "explosive", "kinetic"): fit.ship.boostItemAttr("shield{}DamageResonance".format(damageType.capitalize()), diff --git a/eos/effects/elitebonusassaultshiplightmissilerof.py b/eos/effects/elitebonusassaultshiplightmissilerof.py index d85fb7b45..1f9169e7e 100644 --- a/eos/effects/elitebonusassaultshiplightmissilerof.py +++ b/eos/effects/elitebonusassaultshiplightmissilerof.py @@ -3,6 +3,8 @@ # Used by: # Ship: Cambion type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Light", "speed", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusassaultshipmissilevelocity1.py b/eos/effects/elitebonusassaultshipmissilevelocity1.py index 7cf9c2e73..2031a3db3 100644 --- a/eos/effects/elitebonusassaultshipmissilevelocity1.py +++ b/eos/effects/elitebonusassaultshipmissilevelocity1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") \ No newline at end of file + "maxVelocity", ship.getModifiedItemAttr("eliteBonusGunship1"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusassaultshiprocketrof.py b/eos/effects/elitebonusassaultshiprocketrof.py index 6964fa188..4d7622063 100644 --- a/eos/effects/elitebonusassaultshiprocketrof.py +++ b/eos/effects/elitebonusassaultshiprocketrof.py @@ -3,6 +3,8 @@ # Used by: # Ship: Cambion type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rocket", "speed", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusblackopsagiliy1.py b/eos/effects/elitebonusblackopsagiliy1.py index b71a30716..d5a92e778 100644 --- a/eos/effects/elitebonusblackopsagiliy1.py +++ b/eos/effects/elitebonusblackopsagiliy1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Sin type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") \ No newline at end of file + fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopscloakvelocity2.py b/eos/effects/elitebonusblackopscloakvelocity2.py index 557a23df9..170e15e6d 100644 --- a/eos/effects/elitebonusblackopscloakvelocity2.py +++ b/eos/effects/elitebonusblackopscloakvelocity2.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Black Ops (4 of 4) type = "passive" + + def handler(fit, ship, context): if fit.extraAttributes["cloaked"]: fit.ship.multiplyItemAttr("maxVelocity", ship.getModifiedItemAttr("eliteBonusBlackOps2"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopsecmburstgravandladarandmagnetoandradar.py b/eos/effects/elitebonusblackopsecmburstgravandladarandmagnetoandradar.py index e90117b2a..dc9741208 100644 --- a/eos/effects/elitebonusblackopsecmburstgravandladarandmagnetoandradar.py +++ b/eos/effects/elitebonusblackopsecmburstgravandladarandmagnetoandradar.py @@ -3,8 +3,11 @@ # Used by: # Ship: Widow type = "passive" + + def handler(fit, ship, context): sensorTypes = ("Gravimetric", "Ladar", "Magnetometric", "Radar") for type in sensorTypes: - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", "scan{0}StrengthBonus".format(type), + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", + "scan{0}StrengthBonus".format(type), ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopsecmgravandladarandmagnetometricandradarstrength1.py b/eos/effects/elitebonusblackopsecmgravandladarandmagnetometricandradarstrength1.py index d5251486b..6fb22fc13 100644 --- a/eos/effects/elitebonusblackopsecmgravandladarandmagnetometricandradarstrength1.py +++ b/eos/effects/elitebonusblackopsecmgravandladarandmagnetometricandradarstrength1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Widow type = "passive" + + def handler(fit, ship, context): sensorTypes = ("Gravimetric", "Ladar", "Magnetometric", "Radar") for type in sensorTypes: diff --git a/eos/effects/elitebonusblackopslargeenergyturrettracking1.py b/eos/effects/elitebonusblackopslargeenergyturrettracking1.py index 1cc54e482..0d20b2c44 100644 --- a/eos/effects/elitebonusblackopslargeenergyturrettracking1.py +++ b/eos/effects/elitebonusblackopslargeenergyturrettracking1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Redeemer type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "trackingSpeed", ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopsmaxvelocity1.py b/eos/effects/elitebonusblackopsmaxvelocity1.py index 98ff1dc28..8fe20233c 100644 --- a/eos/effects/elitebonusblackopsmaxvelocity1.py +++ b/eos/effects/elitebonusblackopsmaxvelocity1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Panther type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") \ No newline at end of file + fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonuscommanddestroyerarmored1.py b/eos/effects/elitebonuscommanddestroyerarmored1.py index 63a0674c5..f71c8c2aa 100644 --- a/eos/effects/elitebonuscommanddestroyerarmored1.py +++ b/eos/effects/elitebonuscommanddestroyerarmored1.py @@ -4,5 +4,8 @@ # Ship: Magus # Ship: Pontifex type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyerinfo1.py b/eos/effects/elitebonuscommanddestroyerinfo1.py index 097d72271..7cf94666a 100644 --- a/eos/effects/elitebonuscommanddestroyerinfo1.py +++ b/eos/effects/elitebonuscommanddestroyerinfo1.py @@ -4,5 +4,8 @@ # Ship: Pontifex # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyerinfohidden1.py b/eos/effects/elitebonuscommanddestroyerinfohidden1.py index 4704e5b86..ad84383f3 100644 --- a/eos/effects/elitebonuscommanddestroyerinfohidden1.py +++ b/eos/effects/elitebonuscommanddestroyerinfohidden1.py @@ -4,5 +4,9 @@ # Ship: Pontifex # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonusHidden", src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), + "commandBonusHidden", src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), + skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyermjfgspool2.py b/eos/effects/elitebonuscommanddestroyermjfgspool2.py index a2f7965a2..1b9aa7af9 100644 --- a/eos/effects/elitebonuscommanddestroyermjfgspool2.py +++ b/eos/effects/elitebonuscommanddestroyermjfgspool2.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Command Destroyer (4 of 4) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Micro Jump Drive Operation"), "duration", src.getModifiedItemAttr("eliteBonusCommandDestroyer2"), skill="Command Destroyers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Micro Jump Drive Operation"), "duration", + src.getModifiedItemAttr("eliteBonusCommandDestroyer2"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyermwdsigradius3.py b/eos/effects/elitebonuscommanddestroyermwdsigradius3.py index 330679036..f9c1fded2 100644 --- a/eos/effects/elitebonuscommanddestroyermwdsigradius3.py +++ b/eos/effects/elitebonuscommanddestroyermwdsigradius3.py @@ -1,4 +1,7 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), "signatureRadiusBonus", src.getModifiedItemAttr("eliteBonusCommandDestroyer3"), skill="Command Destroyers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), "signatureRadiusBonus", + src.getModifiedItemAttr("eliteBonusCommandDestroyer3"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyersiege1.py b/eos/effects/elitebonuscommanddestroyersiege1.py index 87bb35661..fffe54584 100644 --- a/eos/effects/elitebonuscommanddestroyersiege1.py +++ b/eos/effects/elitebonuscommanddestroyersiege1.py @@ -4,5 +4,8 @@ # Ship: Bifrost # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyerskirmish1.py b/eos/effects/elitebonuscommanddestroyerskirmish1.py index cd30425e6..a2cd64b25 100644 --- a/eos/effects/elitebonuscommanddestroyerskirmish1.py +++ b/eos/effects/elitebonuscommanddestroyerskirmish1.py @@ -4,5 +4,8 @@ # Ship: Bifrost # Ship: Magus type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommandshiparmoredcs3.py b/eos/effects/elitebonuscommandshiparmoredcs3.py index d801e659d..7161b1b1f 100644 --- a/eos/effects/elitebonuscommandshiparmoredcs3.py +++ b/eos/effects/elitebonuscommandshiparmoredcs3.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Command Ship (4 of 8) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), - "commandBonus", ship.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") + "commandBonus", ship.getModifiedItemAttr("eliteBonusCommandShips3"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiparmorhp1.py b/eos/effects/elitebonuscommandshiparmorhp1.py index 81ef932b1..c8492c130 100644 --- a/eos/effects/elitebonuscommandshiparmorhp1.py +++ b/eos/effects/elitebonuscommandshiparmorhp1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Damnation type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorHP", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") \ No newline at end of file + fit.ship.boostItemAttr("armorHP", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiphamrofcs1.py b/eos/effects/elitebonuscommandshiphamrofcs1.py index 63eaf51a9..d57f9df19 100644 --- a/eos/effects/elitebonuscommandshiphamrofcs1.py +++ b/eos/effects/elitebonuscommandshiphamrofcs1.py @@ -4,6 +4,8 @@ # Ship: Claymore # Ship: Nighthawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", "speed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipheavyassaultmissiledamagecs2.py b/eos/effects/elitebonuscommandshipheavyassaultmissiledamagecs2.py index 18aa69a30..866509be5 100644 --- a/eos/effects/elitebonuscommandshipheavyassaultmissiledamagecs2.py +++ b/eos/effects/elitebonuscommandshipheavyassaultmissiledamagecs2.py @@ -3,8 +3,11 @@ # Used by: # Ship: Damnation type = "passive" + + def handler(fit, ship, context): damageTypes = ("em", "explosive", "kinetic", "thermal") for damageType in damageTypes: fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "{0}Damage".format(damageType), + ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipheavydronetrackingcs2.py b/eos/effects/elitebonuscommandshipheavydronetrackingcs2.py index 1bcf86d54..7e359e3e0 100644 --- a/eos/effects/elitebonuscommandshipheavydronetrackingcs2.py +++ b/eos/effects/elitebonuscommandshipheavydronetrackingcs2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Eos type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "trackingSpeed", ship.getModifiedItemAttr("eliteBonusCommandShips2"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipheavydronevelocitycs2.py b/eos/effects/elitebonuscommandshipheavydronevelocitycs2.py index b71aab5bd..8b105c48a 100644 --- a/eos/effects/elitebonuscommandshipheavydronevelocitycs2.py +++ b/eos/effects/elitebonuscommandshipheavydronevelocitycs2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Eos type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "maxVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipheavymissiledamagecs2.py b/eos/effects/elitebonuscommandshipheavymissiledamagecs2.py index 0c77bf231..f6f10902c 100644 --- a/eos/effects/elitebonuscommandshipheavymissiledamagecs2.py +++ b/eos/effects/elitebonuscommandshipheavymissiledamagecs2.py @@ -3,8 +3,11 @@ # Used by: # Ship: Damnation type = "passive" + + def handler(fit, ship, context): damageTypes = ("em", "explosive", "kinetic", "thermal") for damageType in damageTypes: fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "{0}Damage".format(damageType), + ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiphmrofcs1.py b/eos/effects/elitebonuscommandshiphmrofcs1.py index cfb685d19..2907e0885 100644 --- a/eos/effects/elitebonuscommandshiphmrofcs1.py +++ b/eos/effects/elitebonuscommandshiphmrofcs1.py @@ -4,6 +4,8 @@ # Ship: Claymore # Ship: Nighthawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", "speed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiphybridfalloffcs2.py b/eos/effects/elitebonuscommandshiphybridfalloffcs2.py index 785a1e69a..a2a89d17d 100644 --- a/eos/effects/elitebonuscommandshiphybridfalloffcs2.py +++ b/eos/effects/elitebonuscommandshiphybridfalloffcs2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Astarte type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "falloff", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiphybridoptimalcs1.py b/eos/effects/elitebonuscommandshiphybridoptimalcs1.py index 706a6876f..c26d77ef6 100644 --- a/eos/effects/elitebonuscommandshiphybridoptimalcs1.py +++ b/eos/effects/elitebonuscommandshiphybridoptimalcs1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Vulture type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") + "maxRange", ship.getModifiedItemAttr("eliteBonusCommandShips1"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipinformationcs3.py b/eos/effects/elitebonuscommandshipinformationcs3.py index 0a982f2d1..d080aced4 100644 --- a/eos/effects/elitebonuscommandshipinformationcs3.py +++ b/eos/effects/elitebonuscommandshipinformationcs3.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Command Ship (4 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") + "commandBonus", module.getModifiedItemAttr("eliteBonusCommandShips3"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipinformationhiddencs3.py b/eos/effects/elitebonuscommandshipinformationhiddencs3.py index fee3ea437..1aeda4156 100644 --- a/eos/effects/elitebonuscommandshipinformationhiddencs3.py +++ b/eos/effects/elitebonuscommandshipinformationhiddencs3.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Command Ship (4 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), - "commandBonusHidden", module.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") + "commandBonusHidden", module.getModifiedItemAttr("eliteBonusCommandShips3"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiplaserdamagecs1.py b/eos/effects/elitebonuscommandshiplaserdamagecs1.py index 9dc55f3d4..a14f6cd70 100644 --- a/eos/effects/elitebonuscommandshiplaserdamagecs1.py +++ b/eos/effects/elitebonuscommandshiplaserdamagecs1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Absolution type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips1"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiplaserrofcs2.py b/eos/effects/elitebonuscommandshiplaserrofcs2.py index 0df96f5bf..50b0624e1 100644 --- a/eos/effects/elitebonuscommandshiplaserrofcs2.py +++ b/eos/effects/elitebonuscommandshiplaserrofcs2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Absolution type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "speed", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipmediumhybriddamagecs2.py b/eos/effects/elitebonuscommandshipmediumhybriddamagecs2.py index e5910f8f7..5f491a84b 100644 --- a/eos/effects/elitebonuscommandshipmediumhybriddamagecs2.py +++ b/eos/effects/elitebonuscommandshipmediumhybriddamagecs2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Vulture type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips2"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipmediumhybridrofcs1.py b/eos/effects/elitebonuscommandshipmediumhybridrofcs1.py index bd5344ef2..b7cec2d64 100644 --- a/eos/effects/elitebonuscommandshipmediumhybridrofcs1.py +++ b/eos/effects/elitebonuscommandshipmediumhybridrofcs1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Astarte type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "speed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipmediumhybridtrackingcs1.py b/eos/effects/elitebonuscommandshipmediumhybridtrackingcs1.py index b1662054e..5d855b11c 100644 --- a/eos/effects/elitebonuscommandshipmediumhybridtrackingcs1.py +++ b/eos/effects/elitebonuscommandshipmediumhybridtrackingcs1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Eos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") + "trackingSpeed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipprojectiledamagecs1.py b/eos/effects/elitebonuscommandshipprojectiledamagecs1.py index 6929f463d..c6fdde891 100644 --- a/eos/effects/elitebonuscommandshipprojectiledamagecs1.py +++ b/eos/effects/elitebonuscommandshipprojectiledamagecs1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Sleipnir type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips1"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipprojectilefalloffcs2.py b/eos/effects/elitebonuscommandshipprojectilefalloffcs2.py index 93833cb9a..074b7aaad 100644 --- a/eos/effects/elitebonuscommandshipprojectilefalloffcs2.py +++ b/eos/effects/elitebonuscommandshipprojectilefalloffcs2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Sleipnir type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "falloff", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionradiuscs2.py b/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionradiuscs2.py index fd81ed844..dc04674b7 100644 --- a/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionradiuscs2.py +++ b/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionradiuscs2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Nighthawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "aoeCloudSize", ship.getModifiedItemAttr("eliteBonusCommandShips2"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionvelocitycs2.py b/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionvelocitycs2.py index 0d6407019..45b63167c 100644 --- a/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionvelocitycs2.py +++ b/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionvelocitycs2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Claymore type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "aoeVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "aoeVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsheavymissileexplosionradiuscs2.py b/eos/effects/elitebonuscommandshipsheavymissileexplosionradiuscs2.py index 22c395a96..7200ea677 100644 --- a/eos/effects/elitebonuscommandshipsheavymissileexplosionradiuscs2.py +++ b/eos/effects/elitebonuscommandshipsheavymissileexplosionradiuscs2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Nighthawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "aoeCloudSize", ship.getModifiedItemAttr("eliteBonusCommandShips2"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsheavymissileexplosionvelocitycs2.py b/eos/effects/elitebonuscommandshipsheavymissileexplosionvelocitycs2.py index 626a5525c..af5122311 100644 --- a/eos/effects/elitebonuscommandshipsheavymissileexplosionvelocitycs2.py +++ b/eos/effects/elitebonuscommandshipsheavymissileexplosionvelocitycs2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Claymore type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "aoeVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") + "aoeVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsiegecs3.py b/eos/effects/elitebonuscommandshipsiegecs3.py index 879e87307..97938801c 100644 --- a/eos/effects/elitebonuscommandshipsiegecs3.py +++ b/eos/effects/elitebonuscommandshipsiegecs3.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Command Ship (4 of 8) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), - "commandBonus", ship.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") + "commandBonus", ship.getModifiedItemAttr("eliteBonusCommandShips3"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipskirmishcs3.py b/eos/effects/elitebonuscommandshipskirmishcs3.py index aa9c020b5..5153042db 100644 --- a/eos/effects/elitebonuscommandshipskirmishcs3.py +++ b/eos/effects/elitebonuscommandshipskirmishcs3.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Command Ship (4 of 8) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), - "commandBonus", ship.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") + "commandBonus", ship.getModifiedItemAttr("eliteBonusCommandShips3"), + skill="Command Ships") diff --git a/eos/effects/elitebonuscoveropsbombemdmg1.py b/eos/effects/elitebonuscoveropsbombemdmg1.py index 4c965a722..0c4adf51c 100644 --- a/eos/effects/elitebonuscoveropsbombemdmg1.py +++ b/eos/effects/elitebonuscoveropsbombemdmg1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Purifier type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), "emDamage", ship.getModifiedItemAttr("eliteBonusCoverOps1"), skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsbombexplosivedmg1.py b/eos/effects/elitebonuscoveropsbombexplosivedmg1.py index a9e0e2193..6bca48435 100644 --- a/eos/effects/elitebonuscoveropsbombexplosivedmg1.py +++ b/eos/effects/elitebonuscoveropsbombexplosivedmg1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hound type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "explosiveDamage", ship.getModifiedItemAttr("eliteBonusCoverOps1"), skill="Covert Ops") + "explosiveDamage", ship.getModifiedItemAttr("eliteBonusCoverOps1"), + skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsbombkineticdmg1.py b/eos/effects/elitebonuscoveropsbombkineticdmg1.py index 401d5ab4f..bbab8ded0 100644 --- a/eos/effects/elitebonuscoveropsbombkineticdmg1.py +++ b/eos/effects/elitebonuscoveropsbombkineticdmg1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Manticore type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "kineticDamage", ship.getModifiedItemAttr("eliteBonusCoverOps1"), skill="Covert Ops") + "kineticDamage", ship.getModifiedItemAttr("eliteBonusCoverOps1"), + skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsbombthermaldmg1.py b/eos/effects/elitebonuscoveropsbombthermaldmg1.py index 4859ab88c..13dd5af5a 100644 --- a/eos/effects/elitebonuscoveropsbombthermaldmg1.py +++ b/eos/effects/elitebonuscoveropsbombthermaldmg1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Nemesis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "thermalDamage", ship.getModifiedItemAttr("eliteBonusCoverOps1"), skill="Covert Ops") + "thermalDamage", ship.getModifiedItemAttr("eliteBonusCoverOps1"), + skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsscanprobestrength2.py b/eos/effects/elitebonuscoveropsscanprobestrength2.py index fd767798c..2c1af51b8 100644 --- a/eos/effects/elitebonuscoveropsscanprobestrength2.py +++ b/eos/effects/elitebonuscoveropsscanprobestrength2.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Covert Ops (5 of 5) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("eliteBonusCoverOps2"), skill="Covert Ops") + "baseSensorStrength", ship.getModifiedItemAttr("eliteBonusCoverOps2"), + skill="Covert Ops") diff --git a/eos/effects/elitebonuselectronicattackshipcapacitorcapacity2.py b/eos/effects/elitebonuselectronicattackshipcapacitorcapacity2.py index 3113f1b80..bb5fa326e 100644 --- a/eos/effects/elitebonuselectronicattackshipcapacitorcapacity2.py +++ b/eos/effects/elitebonuselectronicattackshipcapacitorcapacity2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Kitsune type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("capacitorCapacity", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), skill="Electronic Attack Ships") + fit.ship.boostItemAttr("capacitorCapacity", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), + skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipecmoptimalrange1.py b/eos/effects/elitebonuselectronicattackshipecmoptimalrange1.py index 8c0f338f1..4b5fdb0fd 100644 --- a/eos/effects/elitebonuselectronicattackshipecmoptimalrange1.py +++ b/eos/effects/elitebonuselectronicattackshipecmoptimalrange1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Kitsune type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), skill="Electronic Attack Ships") + "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), + skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshiprechargerate2.py b/eos/effects/elitebonuselectronicattackshiprechargerate2.py index 268ab1483..b9d5bbf34 100644 --- a/eos/effects/elitebonuselectronicattackshiprechargerate2.py +++ b/eos/effects/elitebonuselectronicattackshiprechargerate2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Sentinel type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), skill="Electronic Attack Ships") + fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), + skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipsignatureradius2.py b/eos/effects/elitebonuselectronicattackshipsignatureradius2.py index c484c89aa..29dfc8f55 100644 --- a/eos/effects/elitebonuselectronicattackshipsignatureradius2.py +++ b/eos/effects/elitebonuselectronicattackshipsignatureradius2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Hyena type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("signatureRadius", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), skill="Electronic Attack Ships") + fit.ship.boostItemAttr("signatureRadius", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), + skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipstasiswebmaxrange1.py b/eos/effects/elitebonuselectronicattackshipstasiswebmaxrange1.py index 9929787f3..929219c96 100644 --- a/eos/effects/elitebonuselectronicattackshipstasiswebmaxrange1.py +++ b/eos/effects/elitebonuselectronicattackshipstasiswebmaxrange1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hyena type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), skill="Electronic Attack Ships") + "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), + skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipwarpscramblercapneed2.py b/eos/effects/elitebonuselectronicattackshipwarpscramblercapneed2.py index 61d9a842b..63e03d14d 100644 --- a/eos/effects/elitebonuselectronicattackshipwarpscramblercapneed2.py +++ b/eos/effects/elitebonuselectronicattackshipwarpscramblercapneed2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Keres type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "capacitorNeed", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), skill="Electronic Attack Ships") + "capacitorNeed", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), + skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipwarpscramblermaxrange1.py b/eos/effects/elitebonuselectronicattackshipwarpscramblermaxrange1.py index bc32c8651..20e48def7 100644 --- a/eos/effects/elitebonuselectronicattackshipwarpscramblermaxrange1.py +++ b/eos/effects/elitebonuselectronicattackshipwarpscramblermaxrange1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Keres type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), skill="Electronic Attack Ships") + "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), + skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonusexpeditionmining1.py b/eos/effects/elitebonusexpeditionmining1.py index a2b899efb..5ca789728 100644 --- a/eos/effects/elitebonusexpeditionmining1.py +++ b/eos/effects/elitebonusexpeditionmining1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Prospect type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedItemAttr("eliteBonusExpedition1"), skill="Expedition Frigates") + "miningAmount", module.getModifiedItemAttr("eliteBonusExpedition1"), + skill="Expedition Frigates") diff --git a/eos/effects/elitebonusexpeditionsigradius2.py b/eos/effects/elitebonusexpeditionsigradius2.py index 323d167cd..711200e58 100644 --- a/eos/effects/elitebonusexpeditionsigradius2.py +++ b/eos/effects/elitebonusexpeditionsigradius2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Prospect type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("signatureRadius", ship.getModifiedItemAttr("eliteBonusExpedition2"), skill="Expedition Frigates") + fit.ship.boostItemAttr("signatureRadius", ship.getModifiedItemAttr("eliteBonusExpedition2"), + skill="Expedition Frigates") diff --git a/eos/effects/elitebonusgunshiparmoremresistance1.py b/eos/effects/elitebonusgunshiparmoremresistance1.py index 7bfc78fa6..d65a4a148 100644 --- a/eos/effects/elitebonusgunshiparmoremresistance1.py +++ b/eos/effects/elitebonusgunshiparmoremresistance1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") + fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiparmorexplosiveresistance1.py b/eos/effects/elitebonusgunshiparmorexplosiveresistance1.py index 1fbee4376..937dd7309 100644 --- a/eos/effects/elitebonusgunshiparmorexplosiveresistance1.py +++ b/eos/effects/elitebonusgunshiparmorexplosiveresistance1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") \ No newline at end of file + fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiparmorkineticresistance1.py b/eos/effects/elitebonusgunshiparmorkineticresistance1.py index 08bb87f3a..e9be2dd52 100644 --- a/eos/effects/elitebonusgunshiparmorkineticresistance1.py +++ b/eos/effects/elitebonusgunshiparmorkineticresistance1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") \ No newline at end of file + fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiparmorthermalresistance1.py b/eos/effects/elitebonusgunshiparmorthermalresistance1.py index b348472b7..ef7175b0b 100644 --- a/eos/effects/elitebonusgunshiparmorthermalresistance1.py +++ b/eos/effects/elitebonusgunshiparmorthermalresistance1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") \ No newline at end of file + fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipcaprecharge2.py b/eos/effects/elitebonusgunshipcaprecharge2.py index a53903eb0..ddce4507c 100644 --- a/eos/effects/elitebonusgunshipcaprecharge2.py +++ b/eos/effects/elitebonusgunshipcaprecharge2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") \ No newline at end of file + fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipdronecapacity2.py b/eos/effects/elitebonusgunshipdronecapacity2.py index 29763eb8c..47dc4249b 100644 --- a/eos/effects/elitebonusgunshipdronecapacity2.py +++ b/eos/effects/elitebonusgunshipdronecapacity2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Ishkur type = "passive" + + def handler(fit, ship, context): - fit.ship.increaseItemAttr("droneCapacity", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") \ No newline at end of file + fit.ship.increaseItemAttr("droneCapacity", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiphybriddmg2.py b/eos/effects/elitebonusgunshiphybriddmg2.py index 3ca3ec64a..2b5b31e5d 100644 --- a/eos/effects/elitebonusgunshiphybriddmg2.py +++ b/eos/effects/elitebonusgunshiphybriddmg2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Harpy type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") \ No newline at end of file + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiphybridoptimal1.py b/eos/effects/elitebonusgunshiphybridoptimal1.py index 0e39580e6..df9a7dbb0 100644 --- a/eos/effects/elitebonusgunshiphybridoptimal1.py +++ b/eos/effects/elitebonusgunshiphybridoptimal1.py @@ -5,6 +5,8 @@ # Ship: Harpy # Ship: Ishkur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiphybridtracking2.py b/eos/effects/elitebonusgunshiphybridtracking2.py index 816b2d8c3..9fc26ca51 100644 --- a/eos/effects/elitebonusgunshiphybridtracking2.py +++ b/eos/effects/elitebonusgunshiphybridtracking2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Enyo type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") \ No newline at end of file + "trackingSpeed", ship.getModifiedItemAttr("eliteBonusGunship2"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiplaserdamage2.py b/eos/effects/elitebonusgunshiplaserdamage2.py index 4f75755de..198854651 100644 --- a/eos/effects/elitebonusgunshiplaserdamage2.py +++ b/eos/effects/elitebonusgunshiplaserdamage2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Retribution type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") \ No newline at end of file + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiplaseroptimal1.py b/eos/effects/elitebonusgunshiplaseroptimal1.py index d9a7ffc33..ea410651b 100644 --- a/eos/effects/elitebonusgunshiplaseroptimal1.py +++ b/eos/effects/elitebonusgunshiplaseroptimal1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Retribution type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipprojectiledamage1.py b/eos/effects/elitebonusgunshipprojectiledamage1.py index 977f6fc9c..f0545ec68 100644 --- a/eos/effects/elitebonusgunshipprojectiledamage1.py +++ b/eos/effects/elitebonusgunshipprojectiledamage1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Wolf type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") \ No newline at end of file + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship1"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipprojectiledamage2.py b/eos/effects/elitebonusgunshipprojectiledamage2.py index a9819287f..09f2df3ad 100644 --- a/eos/effects/elitebonusgunshipprojectiledamage2.py +++ b/eos/effects/elitebonusgunshipprojectiledamage2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Jaguar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") \ No newline at end of file + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipprojectilefalloff2.py b/eos/effects/elitebonusgunshipprojectilefalloff2.py index 90e636405..df8ed9532 100644 --- a/eos/effects/elitebonusgunshipprojectilefalloff2.py +++ b/eos/effects/elitebonusgunshipprojectilefalloff2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Wolf type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") \ No newline at end of file + "falloff", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipprojectileoptimal1.py b/eos/effects/elitebonusgunshipprojectileoptimal1.py index 31fe35fbb..b1df7d247 100644 --- a/eos/effects/elitebonusgunshipprojectileoptimal1.py +++ b/eos/effects/elitebonusgunshipprojectileoptimal1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Jaguar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipshieldboost2.py b/eos/effects/elitebonusgunshipshieldboost2.py index b8ce48c2f..883b11110 100644 --- a/eos/effects/elitebonusgunshipshieldboost2.py +++ b/eos/effects/elitebonusgunshipshieldboost2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") + "shieldBonus", ship.getModifiedItemAttr("eliteBonusGunship2"), + skill="Assault Frigates") diff --git a/eos/effects/elitebonusheavygunshipassaultmissileflighttime1.py b/eos/effects/elitebonusheavygunshipassaultmissileflighttime1.py index 3c2d4208f..8ff8a12c9 100644 --- a/eos/effects/elitebonusheavygunshipassaultmissileflighttime1.py +++ b/eos/effects/elitebonusheavygunshipassaultmissileflighttime1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Cerberus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipassaultmissilelaunhcerrof2.py b/eos/effects/elitebonusheavygunshipassaultmissilelaunhcerrof2.py index c18d7932a..27b7cefba 100644 --- a/eos/effects/elitebonusheavygunshipassaultmissilelaunhcerrof2.py +++ b/eos/effects/elitebonusheavygunshipassaultmissilelaunhcerrof2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Cerberus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Light", - "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipdronecontrolrange1.py b/eos/effects/elitebonusheavygunshipdronecontrolrange1.py index b21e057b0..8c2a95017 100644 --- a/eos/effects/elitebonusheavygunshipdronecontrolrange1.py +++ b/eos/effects/elitebonusheavygunshipdronecontrolrange1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): - fit.extraAttributes.increase("droneControlRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + fit.extraAttributes.increase("droneControlRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipheavyandheavyassaultandassaultmissilelauncherrof.py b/eos/effects/elitebonusheavygunshipheavyandheavyassaultandassaultmissilelauncherrof.py index 479257643..e3aa5470f 100644 --- a/eos/effects/elitebonusheavygunshipheavyandheavyassaultandassaultmissilelauncherrof.py +++ b/eos/effects/elitebonusheavygunshipheavyandheavyassaultandassaultmissilelauncherrof.py @@ -3,7 +3,10 @@ # Used by: # Ship: Sacrilege type = "passive" + + def handler(fit, ship, context): groups = ("Missile Launcher Rapid Light", "Missile Launcher Heavy Assault", "Missile Launcher Heavy") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipheavyassaultmissilelaunhcerrof2.py b/eos/effects/elitebonusheavygunshipheavyassaultmissilelaunhcerrof2.py index 41c8274a9..c3de080b1 100644 --- a/eos/effects/elitebonusheavygunshipheavyassaultmissilelaunhcerrof2.py +++ b/eos/effects/elitebonusheavygunshipheavyassaultmissilelaunhcerrof2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Cerberus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", - "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipheavymissileflighttime1.py b/eos/effects/elitebonusheavygunshipheavymissileflighttime1.py index 5cf9a9298..3e2799483 100644 --- a/eos/effects/elitebonusheavygunshipheavymissileflighttime1.py +++ b/eos/effects/elitebonusheavygunshipheavymissileflighttime1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Cerberus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipheavymissilelaunhcerrof2.py b/eos/effects/elitebonusheavygunshipheavymissilelaunhcerrof2.py index c6e7fe20a..178f96aa9 100644 --- a/eos/effects/elitebonusheavygunshipheavymissilelaunhcerrof2.py +++ b/eos/effects/elitebonusheavygunshipheavymissilelaunhcerrof2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Cerberus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", - "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiphybriddmg2.py b/eos/effects/elitebonusheavygunshiphybriddmg2.py index 154fa6ea2..c2cfc53cb 100644 --- a/eos/effects/elitebonusheavygunshiphybriddmg2.py +++ b/eos/effects/elitebonusheavygunshiphybriddmg2.py @@ -4,6 +4,9 @@ # Ship: Deimos # Ship: Eagle type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiphybridfalloff1.py b/eos/effects/elitebonusheavygunshiphybridfalloff1.py index 3940ad2d8..11e858e78 100644 --- a/eos/effects/elitebonusheavygunshiphybridfalloff1.py +++ b/eos/effects/elitebonusheavygunshiphybridfalloff1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Deimos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "falloff", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiphybridoptimal1.py b/eos/effects/elitebonusheavygunshiphybridoptimal1.py index 8416942c7..1c697dcd9 100644 --- a/eos/effects/elitebonusheavygunshiphybridoptimal1.py +++ b/eos/effects/elitebonusheavygunshiphybridoptimal1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Eagle type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiplaserdmg2.py b/eos/effects/elitebonusheavygunshiplaserdmg2.py index fa06cd039..fb52f881d 100644 --- a/eos/effects/elitebonusheavygunshiplaserdmg2.py +++ b/eos/effects/elitebonusheavygunshiplaserdmg2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Zealot type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiplaseroptimal1.py b/eos/effects/elitebonusheavygunshiplaseroptimal1.py index 99fe315c4..8b292f824 100644 --- a/eos/effects/elitebonusheavygunshiplaseroptimal1.py +++ b/eos/effects/elitebonusheavygunshiplaseroptimal1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Zealot type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiplightmissileflighttime1.py b/eos/effects/elitebonusheavygunshiplightmissileflighttime1.py index a2b297914..c4244df02 100644 --- a/eos/effects/elitebonusheavygunshiplightmissileflighttime1.py +++ b/eos/effects/elitebonusheavygunshiplightmissileflighttime1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Cerberus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipprojectiledmg2.py b/eos/effects/elitebonusheavygunshipprojectiledmg2.py index b3c4bd1ed..92a9f9049 100644 --- a/eos/effects/elitebonusheavygunshipprojectiledmg2.py +++ b/eos/effects/elitebonusheavygunshipprojectiledmg2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Vagabond type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipprojectilefalloff1.py b/eos/effects/elitebonusheavygunshipprojectilefalloff1.py index 094d92c8e..310bc6bb1 100644 --- a/eos/effects/elitebonusheavygunshipprojectilefalloff1.py +++ b/eos/effects/elitebonusheavygunshipprojectilefalloff1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Vagabond type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "falloff", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipprojectileoptimal1.py b/eos/effects/elitebonusheavygunshipprojectileoptimal1.py index c03dd91c8..4d9a93161 100644 --- a/eos/effects/elitebonusheavygunshipprojectileoptimal1.py +++ b/eos/effects/elitebonusheavygunshipprojectileoptimal1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Muninn type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipprojectiletracking2.py b/eos/effects/elitebonusheavygunshipprojectiletracking2.py index 6d4f33703..a4f3e915b 100644 --- a/eos/effects/elitebonusheavygunshipprojectiletracking2.py +++ b/eos/effects/elitebonusheavygunshipprojectiletracking2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Muninn type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "trackingSpeed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorheavyassaultmissilevelocitybonus.py b/eos/effects/elitebonusheavyinterdictorheavyassaultmissilevelocitybonus.py index 8117c8686..ef0e91456 100644 --- a/eos/effects/elitebonusheavyinterdictorheavyassaultmissilevelocitybonus.py +++ b/eos/effects/elitebonusheavyinterdictorheavyassaultmissilevelocitybonus.py @@ -3,6 +3,9 @@ # Used by: # Ship: Onyx type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), skill="Heavy Interdiction Cruisers") + "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), + skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorheavymissilevelocitybonus1.py b/eos/effects/elitebonusheavyinterdictorheavymissilevelocitybonus1.py index e8a71bde1..6f5239340 100644 --- a/eos/effects/elitebonusheavyinterdictorheavymissilevelocitybonus1.py +++ b/eos/effects/elitebonusheavyinterdictorheavymissilevelocitybonus1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Onyx type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), skill="Heavy Interdiction Cruisers") + "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), + skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorlightmissilevelocitybonus.py b/eos/effects/elitebonusheavyinterdictorlightmissilevelocitybonus.py index a5e6173b2..aee02924c 100644 --- a/eos/effects/elitebonusheavyinterdictorlightmissilevelocitybonus.py +++ b/eos/effects/elitebonusheavyinterdictorlightmissilevelocitybonus.py @@ -3,6 +3,9 @@ # Used by: # Ship: Onyx type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), skill="Heavy Interdiction Cruisers") + "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), + skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorshybridoptimal1.py b/eos/effects/elitebonusheavyinterdictorshybridoptimal1.py index cd63ce6b3..a257bc062 100644 --- a/eos/effects/elitebonusheavyinterdictorshybridoptimal1.py +++ b/eos/effects/elitebonusheavyinterdictorshybridoptimal1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Phobos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), skill="Heavy Interdiction Cruisers") + "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), + skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorsmetoptimal.py b/eos/effects/elitebonusheavyinterdictorsmetoptimal.py index c6bace5fc..f671da4c6 100644 --- a/eos/effects/elitebonusheavyinterdictorsmetoptimal.py +++ b/eos/effects/elitebonusheavyinterdictorsmetoptimal.py @@ -3,6 +3,9 @@ # Used by: # Ship: Devoter type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), skill="Heavy Interdiction Cruisers") + "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), + skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorsprojectilefalloff1.py b/eos/effects/elitebonusheavyinterdictorsprojectilefalloff1.py index 745cc760d..b5d232374 100644 --- a/eos/effects/elitebonusheavyinterdictorsprojectilefalloff1.py +++ b/eos/effects/elitebonusheavyinterdictorsprojectilefalloff1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Broadsword type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), skill="Heavy Interdiction Cruisers") + "falloff", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), + skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorswarpdisruptfieldgeneratorwarpscramblerange2.py b/eos/effects/elitebonusheavyinterdictorswarpdisruptfieldgeneratorwarpscramblerange2.py index edf638622..20a47e364 100644 --- a/eos/effects/elitebonusheavyinterdictorswarpdisruptfieldgeneratorwarpscramblerange2.py +++ b/eos/effects/elitebonusheavyinterdictorswarpdisruptfieldgeneratorwarpscramblerange2.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Heavy Interdiction Cruiser (5 of 5) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Disrupt Field Generator", - "warpScrambleRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors2"), skill="Heavy Interdiction Cruisers") \ No newline at end of file + "warpScrambleRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors2"), + skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusinterdictorsarmorresist1.py b/eos/effects/elitebonusinterdictorsarmorresist1.py index 5fe8c4960..7a1492fc8 100644 --- a/eos/effects/elitebonusinterdictorsarmorresist1.py +++ b/eos/effects/elitebonusinterdictorsarmorresist1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Heretic type = "passive" + + def handler(fit, ship, context): for damageType in ("Em", "Thermal", "Explosive", "Kinetic"): fit.ship.boostItemAttr("armor%sDamageResonance" % damageType, diff --git a/eos/effects/elitebonusinterdictorsmissilekineticdamage1.py b/eos/effects/elitebonusinterdictorsmissilekineticdamage1.py index b8dd6e07f..310c19504 100644 --- a/eos/effects/elitebonusinterdictorsmissilekineticdamage1.py +++ b/eos/effects/elitebonusinterdictorsmissilekineticdamage1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Flycatcher type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles") or mod.charge.requiresSkill("Rockets"), - "kineticDamage", ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Light Missiles") or mod.charge.requiresSkill("Rockets"), + "kineticDamage", ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") diff --git a/eos/effects/elitebonusinterdictorsmwdsigradius2.py b/eos/effects/elitebonusinterdictorsmwdsigradius2.py index 2ced01dde..5107837b5 100644 --- a/eos/effects/elitebonusinterdictorsmwdsigradius2.py +++ b/eos/effects/elitebonusinterdictorsmwdsigradius2.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Interdictor (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusInterdictors2"), skill="Interdictors") + "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusInterdictors2"), + skill="Interdictors") diff --git a/eos/effects/elitebonusinterdictorsprojectilefalloff1.py b/eos/effects/elitebonusinterdictorsprojectilefalloff1.py index b23c1cddc..2b7450e2b 100644 --- a/eos/effects/elitebonusinterdictorsprojectilefalloff1.py +++ b/eos/effects/elitebonusinterdictorsprojectilefalloff1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Sabre type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "falloff", ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") diff --git a/eos/effects/elitebonusinterdictorsshtrof1.py b/eos/effects/elitebonusinterdictorsshtrof1.py index 4b9b2796c..a01812c19 100644 --- a/eos/effects/elitebonusinterdictorsshtrof1.py +++ b/eos/effects/elitebonusinterdictorsshtrof1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Eris type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "speed", ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") \ No newline at end of file + "speed", ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") diff --git a/eos/effects/elitebonusjumpfreighterarmorhp1.py b/eos/effects/elitebonusjumpfreighterarmorhp1.py index 97d53e9b7..ecfe3e25a 100644 --- a/eos/effects/elitebonusjumpfreighterarmorhp1.py +++ b/eos/effects/elitebonusjumpfreighterarmorhp1.py @@ -4,5 +4,7 @@ # Ship: Anshar # Ship: Ark type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorHP", ship.getModifiedItemAttr("eliteBonusJumpFreighter1"), skill="Jump Freighters") diff --git a/eos/effects/elitebonusjumpfreighterhullhp1.py b/eos/effects/elitebonusjumpfreighterhullhp1.py index db20223b0..df631889f 100644 --- a/eos/effects/elitebonusjumpfreighterhullhp1.py +++ b/eos/effects/elitebonusjumpfreighterhullhp1.py @@ -3,5 +3,7 @@ # Used by: # Ships from group: Jump Freighter (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("hp", ship.getModifiedItemAttr("eliteBonusJumpFreighter1"), skill="Jump Freighters") diff --git a/eos/effects/elitebonusjumpfreighterjumpdriveconsumptionamount2.py b/eos/effects/elitebonusjumpfreighterjumpdriveconsumptionamount2.py index 9d241d176..811dc7770 100644 --- a/eos/effects/elitebonusjumpfreighterjumpdriveconsumptionamount2.py +++ b/eos/effects/elitebonusjumpfreighterjumpdriveconsumptionamount2.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Jump Freighter (4 of 4) type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("jumpDriveConsumptionAmount", ship.getModifiedItemAttr("eliteBonusJumpFreighter2"), skill="Jump Freighters") + fit.ship.boostItemAttr("jumpDriveConsumptionAmount", ship.getModifiedItemAttr("eliteBonusJumpFreighter2"), + skill="Jump Freighters") diff --git a/eos/effects/elitebonusjumpfreightershieldhp1.py b/eos/effects/elitebonusjumpfreightershieldhp1.py index fc36cdd0d..7fa846975 100644 --- a/eos/effects/elitebonusjumpfreightershieldhp1.py +++ b/eos/effects/elitebonusjumpfreightershieldhp1.py @@ -4,5 +4,8 @@ # Ship: Nomad # Ship: Rhea type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldCapacity", ship.getModifiedItemAttr("eliteBonusJumpFreighter1"), skill="Jump Freighters") + fit.ship.boostItemAttr("shieldCapacity", ship.getModifiedItemAttr("eliteBonusJumpFreighter1"), + skill="Jump Freighters") diff --git a/eos/effects/elitebonuslogifrigarmorhp2.py b/eos/effects/elitebonuslogifrigarmorhp2.py index ec7b57121..99453cb57 100644 --- a/eos/effects/elitebonuslogifrigarmorhp2.py +++ b/eos/effects/elitebonuslogifrigarmorhp2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Deacon type = "passive" + + def handler(fit, src, context): fit.ship.boostItemAttr("armorHP", src.getModifiedItemAttr("eliteBonusLogiFrig2"), skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogifrigarmorrepspeedcap1.py b/eos/effects/elitebonuslogifrigarmorrepspeedcap1.py index b3511a413..ceb9a3d09 100644 --- a/eos/effects/elitebonuslogifrigarmorrepspeedcap1.py +++ b/eos/effects/elitebonuslogifrigarmorrepspeedcap1.py @@ -4,6 +4,10 @@ # Ship: Deacon # Ship: Thalia type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "duration", src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", + src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "duration", + src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogifrigshieldhp2.py b/eos/effects/elitebonuslogifrigshieldhp2.py index 860a8041f..b99cde37f 100644 --- a/eos/effects/elitebonuslogifrigshieldhp2.py +++ b/eos/effects/elitebonuslogifrigshieldhp2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Kirin type = "passive" + + def handler(fit, src, context): fit.ship.boostItemAttr("shieldCapacity", src.getModifiedItemAttr("eliteBonusLogiFrig2"), skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogifrigshieldrepspeedcap1.py b/eos/effects/elitebonuslogifrigshieldrepspeedcap1.py index 15ccd7096..8f2e8b53d 100644 --- a/eos/effects/elitebonuslogifrigshieldrepspeedcap1.py +++ b/eos/effects/elitebonuslogifrigshieldrepspeedcap1.py @@ -4,6 +4,10 @@ # Ship: Kirin # Ship: Scalpel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "duration", src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "duration", + src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", + src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogifrigsignature2.py b/eos/effects/elitebonuslogifrigsignature2.py index 9afe9b1f0..3f4de996a 100644 --- a/eos/effects/elitebonuslogifrigsignature2.py +++ b/eos/effects/elitebonuslogifrigsignature2.py @@ -4,5 +4,8 @@ # Ship: Scalpel # Ship: Thalia type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("signatureRadius", src.getModifiedItemAttr("eliteBonusLogiFrig2"), skill="Logistics Frigates") + fit.ship.boostItemAttr("signatureRadius", src.getModifiedItemAttr("eliteBonusLogiFrig2"), + skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogisticenergytransfercapneed1.py b/eos/effects/elitebonuslogisticenergytransfercapneed1.py index 88d7eabb4..14d95aae6 100644 --- a/eos/effects/elitebonuslogisticenergytransfercapneed1.py +++ b/eos/effects/elitebonuslogisticenergytransfercapneed1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Guardian type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "capacitorNeed", ship.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") + "capacitorNeed", ship.getModifiedItemAttr("eliteBonusLogistics1"), + skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticenergytransfercapneed2.py b/eos/effects/elitebonuslogisticenergytransfercapneed2.py index 1c0760ea6..a18cb0a34 100644 --- a/eos/effects/elitebonuslogisticenergytransfercapneed2.py +++ b/eos/effects/elitebonuslogisticenergytransfercapneed2.py @@ -4,6 +4,9 @@ # Ship: Basilisk # Ship: Etana type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "capacitorNeed", ship.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") + "capacitorNeed", ship.getModifiedItemAttr("eliteBonusLogistics2"), + skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticremotearmorrepaircapneed1.py b/eos/effects/elitebonuslogisticremotearmorrepaircapneed1.py index f92fc8c87..2c954a502 100644 --- a/eos/effects/elitebonuslogisticremotearmorrepaircapneed1.py +++ b/eos/effects/elitebonuslogisticremotearmorrepaircapneed1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", + src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticremotearmorrepaircapneed2.py b/eos/effects/elitebonuslogisticremotearmorrepaircapneed2.py index 283490e87..3cf00747a 100644 --- a/eos/effects/elitebonuslogisticremotearmorrepaircapneed2.py +++ b/eos/effects/elitebonuslogisticremotearmorrepaircapneed2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Guardian type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", + src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticshieldtransfercapneed1.py b/eos/effects/elitebonuslogisticshieldtransfercapneed1.py index d8bdb5441..3060ef3be 100644 --- a/eos/effects/elitebonuslogisticshieldtransfercapneed1.py +++ b/eos/effects/elitebonuslogisticshieldtransfercapneed1.py @@ -4,5 +4,8 @@ # Ship: Basilisk # Ship: Etana type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", + src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticshieldtransfercapneed2.py b/eos/effects/elitebonuslogisticshieldtransfercapneed2.py index 4acb6ef52..81b94ee96 100644 --- a/eos/effects/elitebonuslogisticshieldtransfercapneed2.py +++ b/eos/effects/elitebonuslogisticshieldtransfercapneed2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", + src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus1.py b/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus1.py index 55d0519ca..b1c5b908d 100644 --- a/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus1.py +++ b/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "falloffBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") + "falloffBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), + skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus2.py b/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus2.py index 108e1aa49..e13cef64b 100644 --- a/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus2.py +++ b/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "falloffBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") + "falloffBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), + skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus1.py b/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus1.py index df9ebe8e4..87225755e 100644 --- a/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus1.py +++ b/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "maxRangeBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") + "maxRangeBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), + skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus2.py b/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus2.py index 80434490a..f95e79062 100644 --- a/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus2.py +++ b/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "maxRangeBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") + "maxRangeBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), + skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus1.py b/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus1.py index 22a21a78f..dcb3c5d3a 100644 --- a/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus1.py +++ b/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "trackingSpeedBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") + "trackingSpeedBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), + skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus2.py b/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus2.py index 9b1c659b9..b79d6faf0 100644 --- a/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus2.py +++ b/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "trackingSpeedBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") + "trackingSpeedBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), + skill="Logistics Cruisers") diff --git a/eos/effects/elitebonusmarauderscruiseandtorpedodamagerole1.py b/eos/effects/elitebonusmarauderscruiseandtorpedodamagerole1.py index 16729828f..0541914fc 100644 --- a/eos/effects/elitebonusmarauderscruiseandtorpedodamagerole1.py +++ b/eos/effects/elitebonusmarauderscruiseandtorpedodamagerole1.py @@ -3,8 +3,11 @@ # Used by: # Ship: Golem type = "passive" + + def handler(fit, ship, context): damageTypes = ("em", "explosive", "kinetic", "thermal") for damageType in damageTypes: - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), + "{0}Damage".format(damageType), ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudersheavymissiledamageemrole1.py b/eos/effects/elitebonusmaraudersheavymissiledamageemrole1.py index 79a74f96e..81a99b02c 100644 --- a/eos/effects/elitebonusmaraudersheavymissiledamageemrole1.py +++ b/eos/effects/elitebonusmaraudersheavymissiledamageemrole1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Golem type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "emDamage", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudersheavymissiledamageexprole1.py b/eos/effects/elitebonusmaraudersheavymissiledamageexprole1.py index 0e928f96d..3bffe8e41 100644 --- a/eos/effects/elitebonusmaraudersheavymissiledamageexprole1.py +++ b/eos/effects/elitebonusmaraudersheavymissiledamageexprole1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Golem type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "explosiveDamage", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudersheavymissiledamagekinrole1.py b/eos/effects/elitebonusmaraudersheavymissiledamagekinrole1.py index 8b2a9949d..68646cd8d 100644 --- a/eos/effects/elitebonusmaraudersheavymissiledamagekinrole1.py +++ b/eos/effects/elitebonusmaraudersheavymissiledamagekinrole1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Golem type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "kineticDamage", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudersheavymissiledamagethermrole1.py b/eos/effects/elitebonusmaraudersheavymissiledamagethermrole1.py index cb5f31065..70abcb387 100644 --- a/eos/effects/elitebonusmaraudersheavymissiledamagethermrole1.py +++ b/eos/effects/elitebonusmaraudersheavymissiledamagethermrole1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Golem type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "thermalDamage", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudershieldbonus2a.py b/eos/effects/elitebonusmaraudershieldbonus2a.py index 5e14681d5..4856571cf 100644 --- a/eos/effects/elitebonusmaraudershieldbonus2a.py +++ b/eos/effects/elitebonusmaraudershieldbonus2a.py @@ -4,6 +4,8 @@ # Ship: Golem # Ship: Vargur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", ship.getModifiedItemAttr("eliteBonusViolators2"), skill="Marauders") diff --git a/eos/effects/elitebonusvampiredrainamount2.py b/eos/effects/elitebonusvampiredrainamount2.py index 267e5c7d7..8fb5bac49 100644 --- a/eos/effects/elitebonusvampiredrainamount2.py +++ b/eos/effects/elitebonusvampiredrainamount2.py @@ -4,6 +4,9 @@ # Ship: Curse # Ship: Pilgrim type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") + "powerTransferAmount", ship.getModifiedItemAttr("eliteBonusReconShip2"), + skill="Recon Ships") diff --git a/eos/effects/elitebonusviolatorsewtargetpainting1.py b/eos/effects/elitebonusviolatorsewtargetpainting1.py index a6ba7f86e..cf16508e5 100644 --- a/eos/effects/elitebonusviolatorsewtargetpainting1.py +++ b/eos/effects/elitebonusviolatorsewtargetpainting1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Golem type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusViolators1"), skill="Marauders") + "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusViolators1"), + skill="Marauders") diff --git a/eos/effects/elitebonusviolatorslargeenergyturretdamage1.py b/eos/effects/elitebonusviolatorslargeenergyturretdamage1.py index dc7c316ef..fd2aad0bb 100644 --- a/eos/effects/elitebonusviolatorslargeenergyturretdamage1.py +++ b/eos/effects/elitebonusviolatorslargeenergyturretdamage1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Paladin type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolators1"), skill="Marauders") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolators1"), + skill="Marauders") diff --git a/eos/effects/elitebonusviolatorslargeenergyturretdamagerole1.py b/eos/effects/elitebonusviolatorslargeenergyturretdamagerole1.py index cee1f5fe1..9b25bb56f 100644 --- a/eos/effects/elitebonusviolatorslargeenergyturretdamagerole1.py +++ b/eos/effects/elitebonusviolatorslargeenergyturretdamagerole1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Paladin type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusviolatorslargehybridturretdamagerole1.py b/eos/effects/elitebonusviolatorslargehybridturretdamagerole1.py index ade06d1a0..932faef41 100644 --- a/eos/effects/elitebonusviolatorslargehybridturretdamagerole1.py +++ b/eos/effects/elitebonusviolatorslargehybridturretdamagerole1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Kronos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) \ No newline at end of file + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusviolatorslargehybridturrettracking1.py b/eos/effects/elitebonusviolatorslargehybridturrettracking1.py index 2f0acdf46..da791d457 100644 --- a/eos/effects/elitebonusviolatorslargehybridturrettracking1.py +++ b/eos/effects/elitebonusviolatorslargehybridturrettracking1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Kronos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("eliteBonusViolators1"), skill="Marauders") diff --git a/eos/effects/elitebonusviolatorslargeprojectileturretdamagerole1.py b/eos/effects/elitebonusviolatorslargeprojectileturretdamagerole1.py index 79cf55663..b0166442e 100644 --- a/eos/effects/elitebonusviolatorslargeprojectileturretdamagerole1.py +++ b/eos/effects/elitebonusviolatorslargeprojectileturretdamagerole1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vargur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusviolatorslargeprojectileturrettracking1.py b/eos/effects/elitebonusviolatorslargeprojectileturrettracking1.py index 474e61091..708c6098c 100644 --- a/eos/effects/elitebonusviolatorslargeprojectileturrettracking1.py +++ b/eos/effects/elitebonusviolatorslargeprojectileturrettracking1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vargur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "trackingSpeed", ship.getModifiedItemAttr("eliteBonusViolators1"), skill="Marauders") diff --git a/eos/effects/elitebonusviolatorsrepairsystemsarmordamageamount2.py b/eos/effects/elitebonusviolatorsrepairsystemsarmordamageamount2.py index 4a82b6f14..648b65203 100644 --- a/eos/effects/elitebonusviolatorsrepairsystemsarmordamageamount2.py +++ b/eos/effects/elitebonusviolatorsrepairsystemsarmordamageamount2.py @@ -4,6 +4,9 @@ # Ship: Kronos # Ship: Paladin type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("eliteBonusViolators2"), skill="Marauders") + "armorDamageAmount", ship.getModifiedItemAttr("eliteBonusViolators2"), + skill="Marauders") diff --git a/eos/effects/elitebonusviolatorstractorbeammaxrangerole2.py b/eos/effects/elitebonusviolatorstractorbeammaxrangerole2.py index 724b59f75..e6e49cbd3 100644 --- a/eos/effects/elitebonusviolatorstractorbeammaxrangerole2.py +++ b/eos/effects/elitebonusviolatorstractorbeammaxrangerole2.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Marauder (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", "maxRange", ship.getModifiedItemAttr("eliteBonusViolatorsRole2")) diff --git a/eos/effects/elitebonusviolatorstractorbeammaxtractorvelocityrole3.py b/eos/effects/elitebonusviolatorstractorbeammaxtractorvelocityrole3.py index 6985e955e..747b01bb9 100644 --- a/eos/effects/elitebonusviolatorstractorbeammaxtractorvelocityrole3.py +++ b/eos/effects/elitebonusviolatorstractorbeammaxtractorvelocityrole3.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Marauder (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", "maxTractorVelocity", ship.getModifiedItemAttr("eliteBonusViolatorsRole3")) diff --git a/eos/effects/eliteindustrialabheatbonus.py b/eos/effects/eliteindustrialabheatbonus.py index b93a3bdd4..2bfd6fe21 100644 --- a/eos/effects/eliteindustrialabheatbonus.py +++ b/eos/effects/eliteindustrialabheatbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Deep Space Transport (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "overloadSpeedFactorBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialarmorhardenerheatbonus.py b/eos/effects/eliteindustrialarmorhardenerheatbonus.py index c74846779..c0e4dec0c 100644 --- a/eos/effects/eliteindustrialarmorhardenerheatbonus.py +++ b/eos/effects/eliteindustrialarmorhardenerheatbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Deep Space Transport (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "overloadHardeningBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialarmorrepairheatbonus.py b/eos/effects/eliteindustrialarmorrepairheatbonus.py index 9f9ef0327..5bb6ac8c6 100644 --- a/eos/effects/eliteindustrialarmorrepairheatbonus.py +++ b/eos/effects/eliteindustrialarmorrepairheatbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Deep Space Transport (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "overloadArmorDamageAmount", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialarmorresists2.py b/eos/effects/eliteindustrialarmorresists2.py index a2fd87a86..fc4298590 100644 --- a/eos/effects/eliteindustrialarmorresists2.py +++ b/eos/effects/eliteindustrialarmorresists2.py @@ -4,6 +4,8 @@ # Ship: Impel # Ship: Occator type = "passive" + + def handler(fit, ship, context): for damageType in ("em", "thermal", "explosive", "kinetic"): fit.ship.boostItemAttr("armor{}DamageResonance".format(damageType.capitalize()), diff --git a/eos/effects/eliteindustrialfleetcapacity1.py b/eos/effects/eliteindustrialfleetcapacity1.py index 717be0d22..1cc16aab2 100644 --- a/eos/effects/eliteindustrialfleetcapacity1.py +++ b/eos/effects/eliteindustrialfleetcapacity1.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Deep Space Transport (4 of 4) type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("fleetHangarCapacity", ship.getModifiedItemAttr("eliteBonusIndustrial1"), skill="Transport Ships") + fit.ship.boostItemAttr("fleetHangarCapacity", ship.getModifiedItemAttr("eliteBonusIndustrial1"), + skill="Transport Ships") diff --git a/eos/effects/eliteindustrialmwdheatbonus.py b/eos/effects/eliteindustrialmwdheatbonus.py index 8b839dd38..995b34fd8 100644 --- a/eos/effects/eliteindustrialmwdheatbonus.py +++ b/eos/effects/eliteindustrialmwdheatbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Deep Space Transport (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), "overloadSpeedFactorBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialreactivearmorhardenerheatbonus.py b/eos/effects/eliteindustrialreactivearmorhardenerheatbonus.py index a389cff45..7a7b3de70 100644 --- a/eos/effects/eliteindustrialreactivearmorhardenerheatbonus.py +++ b/eos/effects/eliteindustrialreactivearmorhardenerheatbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Deep Space Transport (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "overloadSelfDurationBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialshieldboosterheatbonus.py b/eos/effects/eliteindustrialshieldboosterheatbonus.py index db9f81b40..73766a8a8 100644 --- a/eos/effects/eliteindustrialshieldboosterheatbonus.py +++ b/eos/effects/eliteindustrialshieldboosterheatbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Deep Space Transport (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "overloadShieldBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialshieldhardenerheatbonus.py b/eos/effects/eliteindustrialshieldhardenerheatbonus.py index c9932bf63..a90f769ac 100644 --- a/eos/effects/eliteindustrialshieldhardenerheatbonus.py +++ b/eos/effects/eliteindustrialshieldhardenerheatbonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Deep Space Transport (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Tactical Shield Manipulation"), "overloadHardeningBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialshieldresists2.py b/eos/effects/eliteindustrialshieldresists2.py index 923855efe..c21754443 100644 --- a/eos/effects/eliteindustrialshieldresists2.py +++ b/eos/effects/eliteindustrialshieldresists2.py @@ -4,6 +4,8 @@ # Ship: Bustard # Ship: Mastodon type = "passive" + + def handler(fit, ship, context): for damageType in ("em", "thermal", "explosive", "kinetic"): fit.ship.boostItemAttr("shield{}DamageResonance".format(damageType.capitalize()), diff --git a/eos/effects/eliteindustrialwarpspeedbonus1.py b/eos/effects/eliteindustrialwarpspeedbonus1.py index e4e2456f4..826ff22ec 100644 --- a/eos/effects/eliteindustrialwarpspeedbonus1.py +++ b/eos/effects/eliteindustrialwarpspeedbonus1.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Blockade Runner (4 of 4) type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", ship.getModifiedItemAttr("eliteBonusIndustrial1"), skill="Transport Ships") + fit.ship.boostItemAttr("warpSpeedMultiplier", ship.getModifiedItemAttr("eliteBonusIndustrial1"), + skill="Transport Ships") diff --git a/eos/effects/elitereconbonusenergyneutamount2.py b/eos/effects/elitereconbonusenergyneutamount2.py index ddbf0af85..a7051eb62 100644 --- a/eos/effects/elitereconbonusenergyneutamount2.py +++ b/eos/effects/elitereconbonusenergyneutamount2.py @@ -4,6 +4,9 @@ # Ship: Curse # Ship: Pilgrim type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") + "energyNeutralizerAmount", ship.getModifiedItemAttr("eliteBonusReconShip2"), + skill="Recon Ships") diff --git a/eos/effects/elitereconbonusgravimetricstrength2.py b/eos/effects/elitereconbonusgravimetricstrength2.py index bd24450e9..a023201da 100644 --- a/eos/effects/elitereconbonusgravimetricstrength2.py +++ b/eos/effects/elitereconbonusgravimetricstrength2.py @@ -5,6 +5,9 @@ # Ship: Falcon # Ship: Rook type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanGravimetricStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") + "scanGravimetricStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), + skill="Recon Ships") diff --git a/eos/effects/elitereconbonusheavyassaultmissilevelocity.py b/eos/effects/elitereconbonusheavyassaultmissilevelocity.py index 539bc4995..fc223a167 100644 --- a/eos/effects/elitereconbonusheavyassaultmissilevelocity.py +++ b/eos/effects/elitereconbonusheavyassaultmissilevelocity.py @@ -3,6 +3,9 @@ # Used by: # Ship: Rook type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") + "maxVelocity", ship.getModifiedItemAttr("eliteBonusReconShip1"), + skill="Recon Ships") diff --git a/eos/effects/elitereconbonusheavymissilevelocity.py b/eos/effects/elitereconbonusheavymissilevelocity.py index 2d41b5569..8f73c136a 100644 --- a/eos/effects/elitereconbonusheavymissilevelocity.py +++ b/eos/effects/elitereconbonusheavymissilevelocity.py @@ -3,6 +3,9 @@ # Used by: # Ship: Rook type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") + "maxVelocity", ship.getModifiedItemAttr("eliteBonusReconShip1"), + skill="Recon Ships") diff --git a/eos/effects/elitereconbonusladarstrength2.py b/eos/effects/elitereconbonusladarstrength2.py index b530f6b7b..3bab26dfa 100644 --- a/eos/effects/elitereconbonusladarstrength2.py +++ b/eos/effects/elitereconbonusladarstrength2.py @@ -5,6 +5,9 @@ # Ship: Falcon # Ship: Rook type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanLadarStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") + "scanLadarStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), + skill="Recon Ships") diff --git a/eos/effects/elitereconbonusmagnetometricstrength2.py b/eos/effects/elitereconbonusmagnetometricstrength2.py index 5bedc1821..89baa4a80 100644 --- a/eos/effects/elitereconbonusmagnetometricstrength2.py +++ b/eos/effects/elitereconbonusmagnetometricstrength2.py @@ -5,6 +5,9 @@ # Ship: Falcon # Ship: Rook type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanMagnetometricStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") + "scanMagnetometricStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), + skill="Recon Ships") diff --git a/eos/effects/elitereconbonusmhtoptimalrange1.py b/eos/effects/elitereconbonusmhtoptimalrange1.py index 0d7d06391..921c8d7d2 100644 --- a/eos/effects/elitereconbonusmhtoptimalrange1.py +++ b/eos/effects/elitereconbonusmhtoptimalrange1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Lachesis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/elitereconbonusmptdamage1.py b/eos/effects/elitereconbonusmptdamage1.py index cf0909b32..7d66fc0c5 100644 --- a/eos/effects/elitereconbonusmptdamage1.py +++ b/eos/effects/elitereconbonusmptdamage1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Huginn type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusReconShip1"), + skill="Recon Ships") diff --git a/eos/effects/elitereconbonusradarstrength2.py b/eos/effects/elitereconbonusradarstrength2.py index 78566d3c2..fec2c9490 100644 --- a/eos/effects/elitereconbonusradarstrength2.py +++ b/eos/effects/elitereconbonusradarstrength2.py @@ -5,6 +5,9 @@ # Ship: Falcon # Ship: Rook type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanRadarStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") + "scanRadarStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), + skill="Recon Ships") diff --git a/eos/effects/elitereconjumpscramblerrangebonus2.py b/eos/effects/elitereconjumpscramblerrangebonus2.py index 760164db8..b9bebe9a9 100644 --- a/eos/effects/elitereconjumpscramblerrangebonus2.py +++ b/eos/effects/elitereconjumpscramblerrangebonus2.py @@ -4,6 +4,8 @@ # Ship: Arazu # Ship: Lachesis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", "maxRange", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/elitereconstasiswebbonus2.py b/eos/effects/elitereconstasiswebbonus2.py index a36bef9de..5cbfad54b 100644 --- a/eos/effects/elitereconstasiswebbonus2.py +++ b/eos/effects/elitereconstasiswebbonus2.py @@ -5,6 +5,8 @@ # Ship: Moracha # Ship: Rapier type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/emarmorcompensationhardeningbonusgrouparmorcoating.py b/eos/effects/emarmorcompensationhardeningbonusgrouparmorcoating.py index 148addf22..26e453172 100644 --- a/eos/effects/emarmorcompensationhardeningbonusgrouparmorcoating.py +++ b/eos/effects/emarmorcompensationhardeningbonusgrouparmorcoating.py @@ -3,6 +3,8 @@ # Used by: # Skill: EM Armor Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Coating", "emDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/emarmorcompensationhardeningbonusgroupenergized.py b/eos/effects/emarmorcompensationhardeningbonusgroupenergized.py index 4ebe41a20..837cf6912 100644 --- a/eos/effects/emarmorcompensationhardeningbonusgroupenergized.py +++ b/eos/effects/emarmorcompensationhardeningbonusgroupenergized.py @@ -3,6 +3,8 @@ # Used by: # Skill: EM Armor Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Plating Energized", "emDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/empwave.py b/eos/effects/empwave.py index 90c27e2de..898cd270f 100644 --- a/eos/effects/empwave.py +++ b/eos/effects/empwave.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Smart Bomb (118 of 118) type = "active" + + def handler(fit, module, context): pass diff --git a/eos/effects/emshieldcompensationhardeningbonusgroupshieldamp.py b/eos/effects/emshieldcompensationhardeningbonusgroupshieldamp.py index 61f79b11c..189738822 100644 --- a/eos/effects/emshieldcompensationhardeningbonusgroupshieldamp.py +++ b/eos/effects/emshieldcompensationhardeningbonusgroupshieldamp.py @@ -3,6 +3,8 @@ # Used by: # Skill: EM Shield Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Shield Resistance Amplifier", - "emDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + "emDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/energydestabilizationnew.py b/eos/effects/energydestabilizationnew.py index fdde53f92..ec5b63ef4 100644 --- a/eos/effects/energydestabilizationnew.py +++ b/eos/effects/energydestabilizationnew.py @@ -1,8 +1,12 @@ # Not used by any item from eos.types import State + type = "active", "projected" + + def handler(fit, src, context): - if "projected" in context and ((hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + if "projected" in context and ( + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): multiplier = src.amountActive if hasattr(src, "amountActive") else 1 amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/energygridupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergygridupgrades.py b/eos/effects/energygridupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergygridupgrades.py index c1466fb1e..46d6f847e 100644 --- a/eos/effects/energygridupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergygridupgrades.py +++ b/eos/effects/energygridupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergygridupgrades.py @@ -5,6 +5,8 @@ # Modules named like: Powergrid Subroutine Maximizer (8 of 8) # Skill: Energy Grid Upgrades type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Energy Grid Upgrades"), diff --git a/eos/effects/energymanagementcapacitorbonuspostpercentcapacitylocationshipgroupcapacitorcapacitybonus.py b/eos/effects/energymanagementcapacitorbonuspostpercentcapacitylocationshipgroupcapacitorcapacitybonus.py index b031f9de1..da1896d18 100644 --- a/eos/effects/energymanagementcapacitorbonuspostpercentcapacitylocationshipgroupcapacitorcapacitybonus.py +++ b/eos/effects/energymanagementcapacitorbonuspostpercentcapacitylocationshipgroupcapacitorcapacitybonus.py @@ -8,6 +8,8 @@ # Implant: Genolution Core Augmentation CA-1 # Skill: Capacitor Management type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("capacitorCapacity", container.getModifiedItemAttr("capacitorCapacityBonus") * level) diff --git a/eos/effects/energyneutralizerentity.py b/eos/effects/energyneutralizerentity.py index 37ab5ad05..a96bae5e5 100644 --- a/eos/effects/energyneutralizerentity.py +++ b/eos/effects/energyneutralizerentity.py @@ -3,11 +3,13 @@ # Used by: # Drones from group: Energy Neutralizer Drone (3 of 3) from eos.types import State + type = "active", "projected" def handler(fit, src, context): - if "projected" in context and ((hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + if "projected" in context and ( + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/energyneutralizerfalloff.py b/eos/effects/energyneutralizerfalloff.py index 5a58dce48..eb4d3be3f 100644 --- a/eos/effects/energyneutralizerfalloff.py +++ b/eos/effects/energyneutralizerfalloff.py @@ -3,11 +3,13 @@ # Used by: # Modules from group: Energy Neutralizer (51 of 51) from eos.types import State + type = "active", "projected" def handler(fit, src, context): - if "projected" in context and ((hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + if "projected" in context and ( + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/energynosferatufalloff.py b/eos/effects/energynosferatufalloff.py index a0a79273e..15c7d20ff 100644 --- a/eos/effects/energynosferatufalloff.py +++ b/eos/effects/energynosferatufalloff.py @@ -13,4 +13,4 @@ def handler(fit, src, context): if "projected" in context: fit.addDrain(src, time, amount, 0) elif "module" in context: - src.itemModifiedAttributes.force("capacitorNeed", -amount) \ No newline at end of file + src.itemModifiedAttributes.force("capacitorNeed", -amount) diff --git a/eos/effects/energypulseweaponsdurationbonuspostpercentdurationlocationshipmodulesrequiringenergypulseweapons.py b/eos/effects/energypulseweaponsdurationbonuspostpercentdurationlocationshipmodulesrequiringenergypulseweapons.py index 13e7a0eec..6db95e742 100644 --- a/eos/effects/energypulseweaponsdurationbonuspostpercentdurationlocationshipmodulesrequiringenergypulseweapons.py +++ b/eos/effects/energypulseweaponsdurationbonuspostpercentdurationlocationshipmodulesrequiringenergypulseweapons.py @@ -4,7 +4,9 @@ # Implants named like: Inherent Implants 'Squire' Energy Pulse Weapons EP (6 of 6) # Skill: Energy Pulse Weapons type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Energy Pulse Weapons"), - "duration", container.getModifiedItemAttr("durationBonus") * level) \ No newline at end of file + "duration", container.getModifiedItemAttr("durationBonus") * level) diff --git a/eos/effects/energysystemsoperationcaprechargebonuspostpercentrechargeratelocationshipgroupcapacitor.py b/eos/effects/energysystemsoperationcaprechargebonuspostpercentrechargeratelocationshipgroupcapacitor.py index b9a24d95f..991640a10 100644 --- a/eos/effects/energysystemsoperationcaprechargebonuspostpercentrechargeratelocationshipgroupcapacitor.py +++ b/eos/effects/energysystemsoperationcaprechargebonuspostpercentrechargeratelocationshipgroupcapacitor.py @@ -6,6 +6,8 @@ # Implant: Genolution Core Augmentation CA-2 # Skill: Capacitor Systems Operation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("rechargeRate", container.getModifiedItemAttr("capRechargeBonus") * level) diff --git a/eos/effects/energytransfer.py b/eos/effects/energytransfer.py index d004628bc..4a5ef6530 100644 --- a/eos/effects/energytransfer.py +++ b/eos/effects/energytransfer.py @@ -1,5 +1,7 @@ # Not used by any item type = "projected", "active" + + def handler(fit, src, context): if "projected" in context: amount = src.getModifiedItemAttr("powerTransferAmount") diff --git a/eos/effects/energytransferarraymaxrangebonus.py b/eos/effects/energytransferarraymaxrangebonus.py index 3f1f61456..cc26638ad 100644 --- a/eos/effects/energytransferarraymaxrangebonus.py +++ b/eos/effects/energytransferarraymaxrangebonus.py @@ -4,6 +4,8 @@ # Ship: Augoror # Ship: Osprey type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", "maxRange", ship.getModifiedItemAttr("maxRangeBonus2")) diff --git a/eos/effects/energytransferarraytransferamountbonus.py b/eos/effects/energytransferarraytransferamountbonus.py index 4a158ce44..b863b95ec 100644 --- a/eos/effects/energytransferarraytransferamountbonus.py +++ b/eos/effects/energytransferarraytransferamountbonus.py @@ -4,6 +4,8 @@ # Ship: Augoror # Ship: Osprey type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", "powerTransferAmount", ship.getModifiedItemAttr("energyTransferAmountBonus")) diff --git a/eos/effects/energyweapondamagemultiply.py b/eos/effects/energyweapondamagemultiply.py index 6e5c086eb..e1574c7fe 100644 --- a/eos/effects/energyweapondamagemultiply.py +++ b/eos/effects/energyweapondamagemultiply.py @@ -5,7 +5,9 @@ # Modules named like: QA Multiship Module Players (4 of 4) # Module: QA Damage Module type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Weapon", "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/energyweapondamagemultiplypassive.py b/eos/effects/energyweapondamagemultiplypassive.py index 69efbbe1f..5e4cad460 100644 --- a/eos/effects/energyweapondamagemultiplypassive.py +++ b/eos/effects/energyweapondamagemultiplypassive.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Energy Collision Accelerator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Weapon", "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/energyweaponspeedmultiply.py b/eos/effects/energyweaponspeedmultiply.py index b4cb22ae2..425fb1ee1 100644 --- a/eos/effects/energyweaponspeedmultiply.py +++ b/eos/effects/energyweaponspeedmultiply.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: Heat Sink (17 of 17) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Weapon", "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/energyweaponspeedmultiplypassive.py b/eos/effects/energyweaponspeedmultiplypassive.py index 06de0df69..bcee87d6b 100644 --- a/eos/effects/energyweaponspeedmultiplypassive.py +++ b/eos/effects/energyweaponspeedmultiplypassive.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Energy Burst Aerator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Weapon", "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/engineeringpowerengineeringoutputbonuspostpercentpoweroutputlocationshipgrouppowercore.py b/eos/effects/engineeringpowerengineeringoutputbonuspostpercentpoweroutputlocationshipgrouppowercore.py index 02163173d..b2767914b 100644 --- a/eos/effects/engineeringpowerengineeringoutputbonuspostpercentpoweroutputlocationshipgrouppowercore.py +++ b/eos/effects/engineeringpowerengineeringoutputbonuspostpercentpoweroutputlocationshipgrouppowercore.py @@ -6,6 +6,8 @@ # Implant: Genolution Core Augmentation CA-1 # Skill: Power Grid Management type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("powerOutput", container.getModifiedItemAttr("powerEngineeringOutputBonus") * level) diff --git a/eos/effects/entityecmfalloff.py b/eos/effects/entityecmfalloff.py index a5cdf9ad8..5d3ec62e9 100644 --- a/eos/effects/entityecmfalloff.py +++ b/eos/effects/entityecmfalloff.py @@ -3,9 +3,11 @@ # Used by: # Drones named like: EC (3 of 3) type = "projected", "active" + + def handler(fit, module, context): if "projected" in context: # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType))/fit.scanStrength + strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/entityenergyneutralizerfalloff.py b/eos/effects/entityenergyneutralizerfalloff.py index 342598ebf..14df191ad 100644 --- a/eos/effects/entityenergyneutralizerfalloff.py +++ b/eos/effects/entityenergyneutralizerfalloff.py @@ -3,11 +3,13 @@ # Used by: # Drones from group: Energy Neutralizer Drone (3 of 3) from eos.types import State + type = "active", "projected" def handler(fit, src, context): - if "projected" in context and ((hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + if "projected" in context and ( + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("energyNeutralizerDuration") diff --git a/eos/effects/entosiscpuaddition.py b/eos/effects/entosiscpuaddition.py index 335566d59..a29e38f85 100644 --- a/eos/effects/entosiscpuaddition.py +++ b/eos/effects/entosiscpuaddition.py @@ -3,6 +3,7 @@ # Used by: # Modules from group: Entosis Link (6 of 6) type = "passive" + + def handler(fit, module, context): module.increaseItemAttr("cpu", module.getModifiedItemAttr("entosisCPUAdd")) - diff --git a/eos/effects/entosiscpupenalty.py b/eos/effects/entosiscpupenalty.py index 61a6175b9..a382ed70a 100644 --- a/eos/effects/entosiscpupenalty.py +++ b/eos/effects/entosiscpupenalty.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Interceptor (10 of 10) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Infomorph Psychology"), "entosisCPUAdd", ship.getModifiedItemAttr("entosisCPUPenalty")) diff --git a/eos/effects/entosisdurationmultiply.py b/eos/effects/entosisdurationmultiply.py index a4262caa5..410ff6312 100644 --- a/eos/effects/entosisdurationmultiply.py +++ b/eos/effects/entosisdurationmultiply.py @@ -8,6 +8,8 @@ # Ships from group: Titan (5 of 5) # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Infomorph Psychology"), "duration", ship.getModifiedItemAttr("entosisDurationMultiplier") or 1) diff --git a/eos/effects/entosislink.py b/eos/effects/entosislink.py index c44f426bc..a28b8da2d 100644 --- a/eos/effects/entosislink.py +++ b/eos/effects/entosislink.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Entosis Link (6 of 6) type = "active" + + def handler(fit, module, context): fit.ship.forceItemAttr("disallowAssistance", module.getModifiedItemAttr("disallowAssistance")) diff --git a/eos/effects/evasivemaneuveringagilitybonuspostpercentagilityship.py b/eos/effects/evasivemaneuveringagilitybonuspostpercentagilityship.py index ebb16ac65..b2f81c56e 100644 --- a/eos/effects/evasivemaneuveringagilitybonuspostpercentagilityship.py +++ b/eos/effects/evasivemaneuveringagilitybonuspostpercentagilityship.py @@ -9,7 +9,9 @@ # Skill: Evasive Maneuvering # Skill: Spaceship Command type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("agility", container.getModifiedItemAttr("agilityBonus") * level, - stackingPenalties = "skill" not in context and "implant" not in context) + stackingPenalties="skill" not in context and "implant" not in context) diff --git a/eos/effects/ewgroupecmburstmaxrangebonus.py b/eos/effects/ewgroupecmburstmaxrangebonus.py index b41497d46..11c4f01cb 100644 --- a/eos/effects/ewgroupecmburstmaxrangebonus.py +++ b/eos/effects/ewgroupecmburstmaxrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Centurion (10 of 12) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Projectors", - "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) \ No newline at end of file + "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) diff --git a/eos/effects/ewgrouprsdmaxrangebonus.py b/eos/effects/ewgrouprsdmaxrangebonus.py index 88ab43551..cd2c3cf5e 100644 --- a/eos/effects/ewgrouprsdmaxrangebonus.py +++ b/eos/effects/ewgrouprsdmaxrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Centurion (10 of 12) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) \ No newline at end of file + "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) diff --git a/eos/effects/ewgrouptdmaxrangebonus.py b/eos/effects/ewgrouptdmaxrangebonus.py index e085e9f10..5fcc86c66 100644 --- a/eos/effects/ewgrouptdmaxrangebonus.py +++ b/eos/effects/ewgrouptdmaxrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Centurion (10 of 12) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", - "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) \ No newline at end of file + "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) diff --git a/eos/effects/ewgrouptpmaxrangebonus.py b/eos/effects/ewgrouptpmaxrangebonus.py index 6e116c87d..a764367c0 100644 --- a/eos/effects/ewgrouptpmaxrangebonus.py +++ b/eos/effects/ewgrouptpmaxrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Centurion (10 of 12) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) \ No newline at end of file + "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) diff --git a/eos/effects/ewskillecmburstcapneedbonus.py b/eos/effects/ewskillecmburstcapneedbonus.py index 590417e90..0e836193a 100644 --- a/eos/effects/ewskillecmburstcapneedbonus.py +++ b/eos/effects/ewskillecmburstcapneedbonus.py @@ -5,6 +5,8 @@ # Modules named like: Signal Disruption Amplifier (8 of 8) # Skill: Electronic Warfare type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", diff --git a/eos/effects/ewskillecmburstrangebonus.py b/eos/effects/ewskillecmburstrangebonus.py index e2d8b3987..1f257c03c 100644 --- a/eos/effects/ewskillecmburstrangebonus.py +++ b/eos/effects/ewskillecmburstrangebonus.py @@ -4,8 +4,10 @@ # Modules named like: Particle Dispersion Projector (8 of 8) # Skill: Long Distance Jamming type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", "ecmBurstRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties = False if "skill" in context else True) + stackingPenalties=False if "skill" in context else True) diff --git a/eos/effects/ewskillewcapneedskilllevel.py b/eos/effects/ewskillewcapneedskilllevel.py index 557624ed6..6b1a25c5d 100644 --- a/eos/effects/ewskillewcapneedskilllevel.py +++ b/eos/effects/ewskillewcapneedskilllevel.py @@ -5,6 +5,8 @@ # Modules named like: Signal Disruption Amplifier (8 of 8) # Skill: Electronic Warfare type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", diff --git a/eos/effects/ewskillewfalloffbonus.py b/eos/effects/ewskillewfalloffbonus.py index 839f16faa..931a640f6 100644 --- a/eos/effects/ewskillewfalloffbonus.py +++ b/eos/effects/ewskillewfalloffbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Frequency Modulation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level) diff --git a/eos/effects/ewskillewmaxrangebonus.py b/eos/effects/ewskillewmaxrangebonus.py index c161f7060..68cbc4d83 100644 --- a/eos/effects/ewskillewmaxrangebonus.py +++ b/eos/effects/ewskillewmaxrangebonus.py @@ -5,8 +5,10 @@ # Modules named like: Particle Dispersion Projector (8 of 8) # Skill: Long Distance Jamming type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties = "skill" not in context and "implant" not in context) + stackingPenalties="skill" not in context and "implant" not in context) diff --git a/eos/effects/ewskillguidancedisruptionbonus.py b/eos/effects/ewskillguidancedisruptionbonus.py index 7348e304b..71c4a3dc9 100644 --- a/eos/effects/ewskillguidancedisruptionbonus.py +++ b/eos/effects/ewskillguidancedisruptionbonus.py @@ -4,13 +4,15 @@ # Modules named like: Tracking Diagnostic Subroutines (8 of 8) # Skill: Weapon Destabilization type = "passive" + + def handler(fit, src, context): level = src.level if "skill" in context else 1 for attr in ( - "explosionDelayBonus", - "aoeVelocityBonus", - "aoeCloudSizeBonus", - "missileVelocityBonus" + "explosionDelayBonus", + "aoeVelocityBonus", + "aoeCloudSizeBonus", + "missileVelocityBonus" ): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), - attr, src.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) \ No newline at end of file + attr, src.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) diff --git a/eos/effects/ewskillrsdcapneedbonusskilllevel.py b/eos/effects/ewskillrsdcapneedbonusskilllevel.py index b9c503a5f..e7f0f80cb 100644 --- a/eos/effects/ewskillrsdcapneedbonusskilllevel.py +++ b/eos/effects/ewskillrsdcapneedbonusskilllevel.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Gypsy' Sensor Linking SL (6 of 6) # Skill: Sensor Linking type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), diff --git a/eos/effects/ewskillrsdfalloffbonus.py b/eos/effects/ewskillrsdfalloffbonus.py index aa9ab09bd..21ab67c21 100644 --- a/eos/effects/ewskillrsdfalloffbonus.py +++ b/eos/effects/ewskillrsdfalloffbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Frequency Modulation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), "falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level) diff --git a/eos/effects/ewskillrsdmaxrangebonus.py b/eos/effects/ewskillrsdmaxrangebonus.py index 14553b1cf..a0d8a7db7 100644 --- a/eos/effects/ewskillrsdmaxrangebonus.py +++ b/eos/effects/ewskillrsdmaxrangebonus.py @@ -4,8 +4,10 @@ # Modules named like: Particle Dispersion Projector (8 of 8) # Skill: Long Distance Jamming type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties = "skill" not in context) + stackingPenalties="skill" not in context) diff --git a/eos/effects/ewskillscanstrengthbonus.py b/eos/effects/ewskillscanstrengthbonus.py index 52b3c6862..1af9d30f4 100644 --- a/eos/effects/ewskillscanstrengthbonus.py +++ b/eos/effects/ewskillscanstrengthbonus.py @@ -4,10 +4,13 @@ # Modules named like: Particle Dispersion Augmentor (8 of 8) # Skill: Signal Dispersion type = "passive" + + def handler(fit, container, context): groups = ("ECM", "Burst Jammer") level = container.level if "skill" in context else 1 for scanType in ("Gravimetric", "Ladar", "Magnetometric", "Radar"): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "scan{0}StrengthBonus".format(scanType), container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level, - stackingPenalties = False if "skill" in context else True) + "scan{0}StrengthBonus".format(scanType), + container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level, + stackingPenalties=False if "skill" in context else True) diff --git a/eos/effects/ewskillsignalsuppressionmaxtargetrangebonus.py b/eos/effects/ewskillsignalsuppressionmaxtargetrangebonus.py index 76b99b887..534c3af7a 100644 --- a/eos/effects/ewskillsignalsuppressionmaxtargetrangebonus.py +++ b/eos/effects/ewskillsignalsuppressionmaxtargetrangebonus.py @@ -4,7 +4,10 @@ # Modules named like: Inverted Signal Field Projector (8 of 8) # Skill: Signal Suppression type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxTargetRangeBonus", container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) + "maxTargetRangeBonus", + container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) diff --git a/eos/effects/ewskillsignalsuppressionscanresolutionbonus.py b/eos/effects/ewskillsignalsuppressionscanresolutionbonus.py index 8edf1e5e7..0f218ec69 100644 --- a/eos/effects/ewskillsignalsuppressionscanresolutionbonus.py +++ b/eos/effects/ewskillsignalsuppressionscanresolutionbonus.py @@ -4,9 +4,12 @@ # Modules named like: Inverted Signal Field Projector (8 of 8) # Skill: Signal Suppression type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 penalized = False if "skill" in context else True fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "scanResolutionBonus", container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level, + "scanResolutionBonus", + container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level, stackingPenalties=penalized) diff --git a/eos/effects/ewskilltargetpaintingstrengthbonus.py b/eos/effects/ewskilltargetpaintingstrengthbonus.py index ec1730953..bf1267d77 100644 --- a/eos/effects/ewskilltargetpaintingstrengthbonus.py +++ b/eos/effects/ewskilltargetpaintingstrengthbonus.py @@ -3,6 +3,9 @@ # Used by: # Skill: Signature Focusing type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", skill.getModifiedItemAttr("scanSkillTargetPaintStrengthBonus") * skill.level) \ No newline at end of file + "signatureRadiusBonus", + skill.getModifiedItemAttr("scanSkillTargetPaintStrengthBonus") * skill.level) diff --git a/eos/effects/ewskilltdcapneedbonusskilllevel.py b/eos/effects/ewskilltdcapneedbonusskilllevel.py index 217f84bde..88e084361 100644 --- a/eos/effects/ewskilltdcapneedbonusskilllevel.py +++ b/eos/effects/ewskilltdcapneedbonusskilllevel.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Gypsy' Weapon Disruption WD (6 of 6) # Skill: Weapon Disruption type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), diff --git a/eos/effects/ewskilltdfalloffbonus.py b/eos/effects/ewskilltdfalloffbonus.py index 9951a09e8..6b1490fc6 100644 --- a/eos/effects/ewskilltdfalloffbonus.py +++ b/eos/effects/ewskilltdfalloffbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Frequency Modulation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", "falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level) diff --git a/eos/effects/ewskilltdmaxrangebonus.py b/eos/effects/ewskilltdmaxrangebonus.py index 03f87118a..1ed5b55d5 100644 --- a/eos/effects/ewskilltdmaxrangebonus.py +++ b/eos/effects/ewskilltdmaxrangebonus.py @@ -4,8 +4,10 @@ # Modules named like: Particle Dispersion Projector (8 of 8) # Skill: Long Distance Jamming type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties = "skill" not in context) + stackingPenalties="skill" not in context) diff --git a/eos/effects/ewskilltpcapneedbonusskilllevel.py b/eos/effects/ewskilltpcapneedbonusskilllevel.py index 495e99ebd..720cea451 100644 --- a/eos/effects/ewskilltpcapneedbonusskilllevel.py +++ b/eos/effects/ewskilltpcapneedbonusskilllevel.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Gypsy' Target Painting TG (6 of 6) # Skill: Target Painting type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Target Painting"), diff --git a/eos/effects/ewskilltpfalloffbonus.py b/eos/effects/ewskilltpfalloffbonus.py index 2ebb5d98d..38eebe10a 100644 --- a/eos/effects/ewskilltpfalloffbonus.py +++ b/eos/effects/ewskilltpfalloffbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Frequency Modulation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", "falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level) diff --git a/eos/effects/ewskilltpmaxrangebonus.py b/eos/effects/ewskilltpmaxrangebonus.py index c449a6d1a..901d4c45b 100644 --- a/eos/effects/ewskilltpmaxrangebonus.py +++ b/eos/effects/ewskilltpmaxrangebonus.py @@ -4,8 +4,10 @@ # Modules named like: Particle Dispersion Projector (8 of 8) # Skill: Long Distance Jamming type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties = "skill" not in context) + stackingPenalties="skill" not in context) diff --git a/eos/effects/ewskilltrackingdisruptionrangedisruptionbonus.py b/eos/effects/ewskilltrackingdisruptionrangedisruptionbonus.py index 461702874..fbd6ae8af 100644 --- a/eos/effects/ewskilltrackingdisruptionrangedisruptionbonus.py +++ b/eos/effects/ewskilltrackingdisruptionrangedisruptionbonus.py @@ -4,6 +4,8 @@ # Modules named like: Tracking Diagnostic Subroutines (8 of 8) # Skill: Weapon Destabilization type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 for attr in ("maxRangeBonus", "falloffBonus"): diff --git a/eos/effects/ewskilltrackingdisruptiontrackingspeedbonus.py b/eos/effects/ewskilltrackingdisruptiontrackingspeedbonus.py index 8327699cd..6a532270d 100644 --- a/eos/effects/ewskilltrackingdisruptiontrackingspeedbonus.py +++ b/eos/effects/ewskilltrackingdisruptiontrackingspeedbonus.py @@ -4,7 +4,10 @@ # Modules named like: Tracking Diagnostic Subroutines (8 of 8) # Skill: Weapon Destabilization type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", - "trackingSpeedBonus", container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) + "trackingSpeedBonus", + container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) diff --git a/eos/effects/ewtargetpaint.py b/eos/effects/ewtargetpaint.py index 4be80da74..c61adeb8b 100644 --- a/eos/effects/ewtargetpaint.py +++ b/eos/effects/ewtargetpaint.py @@ -1,6 +1,8 @@ # Not used by any item type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/ewtesteffectjam.py b/eos/effects/ewtesteffectjam.py index e3863a3e7..45a9f9c26 100644 --- a/eos/effects/ewtesteffectjam.py +++ b/eos/effects/ewtesteffectjam.py @@ -3,9 +3,11 @@ # Used by: # Drones named like: EC (3 of 3) type = "projected", "active" + + def handler(fit, module, context): if "projected" in context: # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType))/fit.scanStrength + strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/expeditionfrigatebonusiceharvestingcycletime2.py b/eos/effects/expeditionfrigatebonusiceharvestingcycletime2.py index c4a9204d1..65889bd4d 100644 --- a/eos/effects/expeditionfrigatebonusiceharvestingcycletime2.py +++ b/eos/effects/expeditionfrigatebonusiceharvestingcycletime2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Endurance type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", src.getModifiedItemAttr("eliteBonusExpedition2"), skill="Expedition Frigates") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", + src.getModifiedItemAttr("eliteBonusExpedition2"), skill="Expedition Frigates") diff --git a/eos/effects/expeditionfrigateshieldresistance1.py b/eos/effects/expeditionfrigateshieldresistance1.py index 404e2c072..ff05639dc 100644 --- a/eos/effects/expeditionfrigateshieldresistance1.py +++ b/eos/effects/expeditionfrigateshieldresistance1.py @@ -3,8 +3,14 @@ # Used by: # Ship: Endurance type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), skill="Expedition Frigates") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), skill="Expedition Frigates") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), skill="Expedition Frigates") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), skill="Expedition Frigates") + fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), + skill="Expedition Frigates") + fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), + skill="Expedition Frigates") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), + skill="Expedition Frigates") + fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), + skill="Expedition Frigates") diff --git a/eos/effects/explosivearmorcompensationhardeningbonusgrouparmorcoating.py b/eos/effects/explosivearmorcompensationhardeningbonusgrouparmorcoating.py index ea659537b..05511b42f 100644 --- a/eos/effects/explosivearmorcompensationhardeningbonusgrouparmorcoating.py +++ b/eos/effects/explosivearmorcompensationhardeningbonusgrouparmorcoating.py @@ -3,6 +3,9 @@ # Used by: # Skill: Explosive Armor Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Coating", - "explosiveDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + "explosiveDamageResistanceBonus", + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/explosivearmorcompensationhardeningbonusgroupenergized.py b/eos/effects/explosivearmorcompensationhardeningbonusgroupenergized.py index 94de318c7..556cbb7f2 100644 --- a/eos/effects/explosivearmorcompensationhardeningbonusgroupenergized.py +++ b/eos/effects/explosivearmorcompensationhardeningbonusgroupenergized.py @@ -3,6 +3,9 @@ # Used by: # Skill: Explosive Armor Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Plating Energized", - "explosiveDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + "explosiveDamageResistanceBonus", + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/explosiveshieldcompensationhardeningbonusgroupshieldamp.py b/eos/effects/explosiveshieldcompensationhardeningbonusgroupshieldamp.py index 3703083d1..332ccae6e 100644 --- a/eos/effects/explosiveshieldcompensationhardeningbonusgroupshieldamp.py +++ b/eos/effects/explosiveshieldcompensationhardeningbonusgroupshieldamp.py @@ -3,6 +3,9 @@ # Used by: # Skill: Explosive Shield Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Shield Resistance Amplifier", - "explosiveDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + "explosiveDamageResistanceBonus", + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/falloffbonuseffecthybrids.py b/eos/effects/falloffbonuseffecthybrids.py index d9f8d9e23..94f3ab90b 100644 --- a/eos/effects/falloffbonuseffecthybrids.py +++ b/eos/effects/falloffbonuseffecthybrids.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Hybrid Ambit Extension (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/falloffbonuseffectlasers.py b/eos/effects/falloffbonuseffectlasers.py index 47bb6e6d0..dd5838c5a 100644 --- a/eos/effects/falloffbonuseffectlasers.py +++ b/eos/effects/falloffbonuseffectlasers.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Energy Ambit Extension (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/falloffbonuseffectprojectiles.py b/eos/effects/falloffbonuseffectprojectiles.py index 5a2f4b45a..0de580e18 100644 --- a/eos/effects/falloffbonuseffectprojectiles.py +++ b/eos/effects/falloffbonuseffectprojectiles.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Projectile Ambit Extension (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/federationsetbonus3.py b/eos/effects/federationsetbonus3.py index b97317b82..f73c4d6af 100644 --- a/eos/effects/federationsetbonus3.py +++ b/eos/effects/federationsetbonus3.py @@ -4,6 +4,9 @@ # Implants named like: High grade Spur (6 of 6) type = "passive" runTime = "early" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanMagnetometricStrengthPercent", implant.getModifiedItemAttr("implantSetFederationNavy")) + "scanMagnetometricStrengthPercent", + implant.getModifiedItemAttr("implantSetFederationNavy")) diff --git a/eos/effects/federationsetlgbonus.py b/eos/effects/federationsetlgbonus.py index 4328417cd..a393582ba 100644 --- a/eos/effects/federationsetlgbonus.py +++ b/eos/effects/federationsetlgbonus.py @@ -4,6 +4,9 @@ # Implants named like: Low grade Spur (6 of 6) type = "passive" runTime = "early" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanMagnetometricStrengthModifier", implant.getModifiedItemAttr("implantSetLGFederationNavy")) + "scanMagnetometricStrengthModifier", + implant.getModifiedItemAttr("implantSetLGFederationNavy")) diff --git a/eos/effects/fighterabilityattackm.py b/eos/effects/fighterabilityattackm.py index d2d14119c..2ea002819 100644 --- a/eos/effects/fighterabilityattackm.py +++ b/eos/effects/fighterabilityattackm.py @@ -11,5 +11,6 @@ prefix = "fighterAbilityAttackMissile" type = "active" + def handler(fit, src, context): - pass \ No newline at end of file + pass diff --git a/eos/effects/fighterabilityecm.py b/eos/effects/fighterabilityecm.py index c18825aad..51f7ffc4a 100644 --- a/eos/effects/fighterabilityecm.py +++ b/eos/effects/fighterabilityecm.py @@ -3,7 +3,6 @@ Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the effects, and thus this effect file contains some custom information useful only to fighters. """ -from eos.types import State # User-friendly name for the ability displayName = "ECM" @@ -11,9 +10,11 @@ displayName = "ECM" prefix = "fighterAbilityECM" type = "projected", "active" + + def handler(fit, module, context): if "projected" not in context: return # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("{}Strength{}".format(prefix, fit.scanType))/fit.scanStrength + strModifier = 1 - module.getModifiedItemAttr("{}Strength{}".format(prefix, fit.scanType)) / fit.scanStrength fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/fighterabilityenergyneutralizer.py b/eos/effects/fighterabilityenergyneutralizer.py index bad275c32..dd771b750 100644 --- a/eos/effects/fighterabilityenergyneutralizer.py +++ b/eos/effects/fighterabilityenergyneutralizer.py @@ -14,4 +14,4 @@ def handler(fit, src, context): amount = src.getModifiedItemAttr("{}Amount".format(prefix)) time = src.getModifiedItemAttr("{}Duration".format(prefix)) - fit.addDrain(src, time, amount, 0) \ No newline at end of file + fit.addDrain(src, time, amount, 0) diff --git a/eos/effects/fighterabilitylaunchbomb.py b/eos/effects/fighterabilitylaunchbomb.py index bc76f2a19..bd46513bf 100644 --- a/eos/effects/fighterabilitylaunchbomb.py +++ b/eos/effects/fighterabilitylaunchbomb.py @@ -14,5 +14,6 @@ type = "active" # This flag is required for effects that use charges in order to properly calculate reload time hasCharges = True + def handler(fit, src, context): - pass \ No newline at end of file + pass diff --git a/eos/effects/fighterabilitymicrowarpdrive.py b/eos/effects/fighterabilitymicrowarpdrive.py index 9e2303ec4..01bea209a 100644 --- a/eos/effects/fighterabilitymicrowarpdrive.py +++ b/eos/effects/fighterabilitymicrowarpdrive.py @@ -11,6 +11,10 @@ grouped = True type = "active" runTime = "late" + + def handler(fit, module, context): module.boostItemAttr("maxVelocity", module.getModifiedItemAttr("fighterAbilityMicroWarpDriveSpeedBonus")) - module.boostItemAttr("signatureRadius", module.getModifiedItemAttr("fighterAbilityMicroWarpDriveSignatureRadiusBonus"), stackingPenalties = True) \ No newline at end of file + module.boostItemAttr("signatureRadius", + module.getModifiedItemAttr("fighterAbilityMicroWarpDriveSignatureRadiusBonus"), + stackingPenalties=True) diff --git a/eos/effects/fighterabilitymissiles.py b/eos/effects/fighterabilitymissiles.py index c002ea5ac..8dc752ee2 100644 --- a/eos/effects/fighterabilitymissiles.py +++ b/eos/effects/fighterabilitymissiles.py @@ -14,5 +14,6 @@ type = "active" # This flag is required for effects that use charges in order to properly calculate reload time hasCharges = True + def handler(fit, src, context): - pass \ No newline at end of file + pass diff --git a/eos/effects/fighterabilitystasiswebifier.py b/eos/effects/fighterabilitystasiswebifier.py index f067859bc..5d0bf6a26 100644 --- a/eos/effects/fighterabilitystasiswebifier.py +++ b/eos/effects/fighterabilitystasiswebifier.py @@ -3,7 +3,6 @@ Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the effects, and thus this effect file contains some custom information useful only to fighters. """ -from eos.types import State # User-friendly name for the ability displayName = "Stasis Webifier" @@ -12,6 +11,7 @@ prefix = "fighterAbilityStasisWebifier" type = "active", "projected" + def handler(fit, src, context): if "projected" not in context: return fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("{}SpeedPenalty".format(prefix))) diff --git a/eos/effects/fighterabilitywarpdisruption.py b/eos/effects/fighterabilitywarpdisruption.py index b0e0c281d..9d4b0c2fb 100644 --- a/eos/effects/fighterabilitywarpdisruption.py +++ b/eos/effects/fighterabilitywarpdisruption.py @@ -3,7 +3,6 @@ Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the effects, and thus this effect file contains some custom information useful only to fighters. """ -from eos.types import State # User-friendly name for the ability displayName = "Warp Disruption" @@ -12,6 +11,7 @@ prefix = "fighterAbilityWarpDisruption" type = "active", "projected" + def handler(fit, src, context): if "projected" not in context: return - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("{}PointStrength".format(prefix))) \ No newline at end of file + fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("{}PointStrength".format(prefix))) diff --git a/eos/effects/fightersdmgbonusskills.py b/eos/effects/fightersdmgbonusskills.py index 8f67ce916..8a61c85e0 100644 --- a/eos/effects/fightersdmgbonusskills.py +++ b/eos/effects/fightersdmgbonusskills.py @@ -3,6 +3,8 @@ # Used by: # Skill: Fighters type = "passive" + + def handler(fit, skill, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighters"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/flagshipmultirelayeffect.py b/eos/effects/flagshipmultirelayeffect.py index b62ac6282..85d24180b 100644 --- a/eos/effects/flagshipmultirelayeffect.py +++ b/eos/effects/flagshipmultirelayeffect.py @@ -3,10 +3,12 @@ # Used by: # Module: Command Processor I type = "passive" + + def handler(fit, module, context): - #Note: we increase maxGroupActive by two. - #If we only increased it by one, we'd get the number to stay equal - #As Comman Processors use one themselves too + # Note: we increase maxGroupActive by two. + # If we only increased it by one, we'd get the number to stay equal + # As Comman Processors use one themselves too fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator" and \ - "maxGroupActive" in mod.itemModifiedAttributes, + "maxGroupActive" in mod.itemModifiedAttributes, "maxGroupActive", 1) diff --git a/eos/effects/freighteragilitybonus2o2.py b/eos/effects/freighteragilitybonus2o2.py index 5a990918e..740a25522 100644 --- a/eos/effects/freighteragilitybonus2o2.py +++ b/eos/effects/freighteragilitybonus2o2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Bowhead type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shipMaintenanceBayCapacity", ship.getModifiedItemAttr("freighterBonusO1"), skill="ORE Freighter") + fit.ship.boostItemAttr("shipMaintenanceBayCapacity", ship.getModifiedItemAttr("freighterBonusO1"), + skill="ORE Freighter") diff --git a/eos/effects/freighteragilitybonusa1.py b/eos/effects/freighteragilitybonusa1.py index 2595d7d85..8aa4fa822 100644 --- a/eos/effects/freighteragilitybonusa1.py +++ b/eos/effects/freighteragilitybonusa1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Ark type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusA1"), skill="Amarr Freighter") diff --git a/eos/effects/freighteragilitybonusc1.py b/eos/effects/freighteragilitybonusc1.py index 157b2a432..02d6f9eae 100644 --- a/eos/effects/freighteragilitybonusc1.py +++ b/eos/effects/freighteragilitybonusc1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Rhea type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusC1"), skill="Caldari Freighter") diff --git a/eos/effects/freighteragilitybonusg1.py b/eos/effects/freighteragilitybonusg1.py index f68d099f7..54f7e1a62 100644 --- a/eos/effects/freighteragilitybonusg1.py +++ b/eos/effects/freighteragilitybonusg1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Anshar type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusG1"), skill="Gallente Freighter") diff --git a/eos/effects/freighteragilitybonusm1.py b/eos/effects/freighteragilitybonusm1.py index 999ac61b9..99100cf31 100644 --- a/eos/effects/freighteragilitybonusm1.py +++ b/eos/effects/freighteragilitybonusm1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Nomad type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusM1"), skill="Minmatar Freighter") diff --git a/eos/effects/freightercargobonusa2.py b/eos/effects/freightercargobonusa2.py index 66834b2df..beda51a4c 100644 --- a/eos/effects/freightercargobonusa2.py +++ b/eos/effects/freightercargobonusa2.py @@ -3,5 +3,7 @@ # Used by: # Variations of ship: Providence (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("freighterBonusA2"), skill="Amarr Freighter") diff --git a/eos/effects/freightercargobonusc2.py b/eos/effects/freightercargobonusc2.py index d024c2c54..35085c886 100644 --- a/eos/effects/freightercargobonusc2.py +++ b/eos/effects/freightercargobonusc2.py @@ -3,5 +3,7 @@ # Used by: # Variations of ship: Charon (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("freighterBonusC2"), skill="Caldari Freighter") diff --git a/eos/effects/freightercargobonusg2.py b/eos/effects/freightercargobonusg2.py index 43c5bb04b..4b4807871 100644 --- a/eos/effects/freightercargobonusg2.py +++ b/eos/effects/freightercargobonusg2.py @@ -3,5 +3,7 @@ # Used by: # Variations of ship: Obelisk (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("freighterBonusG2"), skill="Gallente Freighter") diff --git a/eos/effects/freightercargobonusm2.py b/eos/effects/freightercargobonusm2.py index 5b8ed9fd8..ee616cb53 100644 --- a/eos/effects/freightercargobonusm2.py +++ b/eos/effects/freightercargobonusm2.py @@ -3,5 +3,7 @@ # Used by: # Variations of ship: Fenrir (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("freighterBonusM2"), skill="Minmatar Freighter") diff --git a/eos/effects/freightermaxvelocitybonusa1.py b/eos/effects/freightermaxvelocitybonusa1.py index 70d2e724c..0842ef288 100644 --- a/eos/effects/freightermaxvelocitybonusa1.py +++ b/eos/effects/freightermaxvelocitybonusa1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Providence type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("freighterBonusA1"), skill="Amarr Freighter") diff --git a/eos/effects/freightermaxvelocitybonusc1.py b/eos/effects/freightermaxvelocitybonusc1.py index 219e7ea8b..e81e55459 100644 --- a/eos/effects/freightermaxvelocitybonusc1.py +++ b/eos/effects/freightermaxvelocitybonusc1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Charon type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("freighterBonusC1"), skill="Caldari Freighter") diff --git a/eos/effects/freightermaxvelocitybonusg1.py b/eos/effects/freightermaxvelocitybonusg1.py index 83d5a3bce..4fc3f4844 100644 --- a/eos/effects/freightermaxvelocitybonusg1.py +++ b/eos/effects/freightermaxvelocitybonusg1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Obelisk type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("freighterBonusG1"), skill="Gallente Freighter") diff --git a/eos/effects/freightermaxvelocitybonusm1.py b/eos/effects/freightermaxvelocitybonusm1.py index 7adad4fc6..497d0797f 100644 --- a/eos/effects/freightermaxvelocitybonusm1.py +++ b/eos/effects/freightermaxvelocitybonusm1.py @@ -3,5 +3,7 @@ # Used by: # Ship: Fenrir type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("freighterBonusM1"), skill="Minmatar Freighter") diff --git a/eos/effects/freightersmacapacitybonuso1.py b/eos/effects/freightersmacapacitybonuso1.py index b57f86216..92df1ab36 100644 --- a/eos/effects/freightersmacapacitybonuso1.py +++ b/eos/effects/freightersmacapacitybonuso1.py @@ -3,7 +3,9 @@ # Used by: # Ship: Bowhead type = "passive" + + def handler(fit, ship, context): # todo: stacking? fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusO2"), skill="ORE Freighter", - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/frequencymininglasermaxrangebonus.py b/eos/effects/frequencymininglasermaxrangebonus.py index 7a19424d1..9285d51b8 100644 --- a/eos/effects/frequencymininglasermaxrangebonus.py +++ b/eos/effects/frequencymininglasermaxrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Harvest (10 of 12) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Frequency Mining Laser", "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/fuelconservationcapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringafterburner.py b/eos/effects/fuelconservationcapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringafterburner.py index decfd1620..bdc5f5269 100644 --- a/eos/effects/fuelconservationcapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringafterburner.py +++ b/eos/effects/fuelconservationcapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringafterburner.py @@ -4,6 +4,8 @@ # Skill: Afterburner # Skill: Fuel Conservation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/fueledarmorrepair.py b/eos/effects/fueledarmorrepair.py index 91f1ffc65..875a25cd2 100644 --- a/eos/effects/fueledarmorrepair.py +++ b/eos/effects/fueledarmorrepair.py @@ -4,12 +4,14 @@ # Modules from group: Ancillary Armor Repairer (4 of 4) runTime = "late" type = "active" + + def handler(fit, module, context): if module.charge and module.charge.name == "Nanite Repair Paste": multiplier = 3 else: multiplier = 1 - + amount = module.getModifiedItemAttr("armorDamageAmount") * multiplier speed = module.getModifiedItemAttr("duration") / 1000.0 fit.extraAttributes.increase("armorRepair", amount / speed) diff --git a/eos/effects/fueledshieldboosting.py b/eos/effects/fueledshieldboosting.py index da058dfd6..36db95e2c 100644 --- a/eos/effects/fueledshieldboosting.py +++ b/eos/effects/fueledshieldboosting.py @@ -4,6 +4,8 @@ # Modules from group: Ancillary Shield Booster (5 of 5) runTime = "late" type = "active" + + def handler(fit, module, context): amount = module.getModifiedItemAttr("shieldBonus") speed = module.getModifiedItemAttr("duration") / 1000.0 diff --git a/eos/effects/gangabmwdfactorboost.py b/eos/effects/gangabmwdfactorboost.py index 898d561c2..3f37988f3 100644 --- a/eos/effects/gangabmwdfactorboost.py +++ b/eos/effects/gangabmwdfactorboost.py @@ -4,6 +4,8 @@ # Variations of module: Skirmish Warfare Link - Rapid Deployment I (2 of 2) type = "gang", "active" gangBoost = "speedFactor" + + def handler(fit, module, context): if "gang" not in context: return fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", diff --git a/eos/effects/gangarmorhardening.py b/eos/effects/gangarmorhardening.py index 25665c817..6ab7fbbd9 100644 --- a/eos/effects/gangarmorhardening.py +++ b/eos/effects/gangarmorhardening.py @@ -4,9 +4,11 @@ # Variations of module: Armored Warfare Link - Passive Defense I (2 of 2) type = "gang", "active" gangBoost = "armorResistance" + + def handler(fit, module, context): if "gang" not in context: return for damageType in ("Em", "Thermal", "Explosive", "Kinetic"): fit.ship.boostItemAttr("armor%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/gangarmorrepaircapreducerselfandprojected.py b/eos/effects/gangarmorrepaircapreducerselfandprojected.py index 89e451bca..5a0ac8da9 100644 --- a/eos/effects/gangarmorrepaircapreducerselfandprojected.py +++ b/eos/effects/gangarmorrepaircapreducerselfandprojected.py @@ -4,7 +4,10 @@ # Variations of module: Armored Warfare Link - Damage Control I (2 of 2) type = "gang", "active" gangBoost = "armorRepairCapacitorNeed" + + def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), - "capacitorNeed", module.getModifiedItemAttr("commandBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), + "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangarmorrepairspeedamplifierselfandprojected.py b/eos/effects/gangarmorrepairspeedamplifierselfandprojected.py index 0f94f82b0..e21b24ce0 100644 --- a/eos/effects/gangarmorrepairspeedamplifierselfandprojected.py +++ b/eos/effects/gangarmorrepairspeedamplifierselfandprojected.py @@ -4,7 +4,10 @@ # Variations of module: Armored Warfare Link - Rapid Repair I (2 of 2) type = "gang", "active" gangBoost = "armorRepairDuration" + + def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), - "duration", module.getModifiedItemAttr("commandBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), + "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangbonussignature.py b/eos/effects/gangbonussignature.py index 31db2a205..9dbb3526b 100644 --- a/eos/effects/gangbonussignature.py +++ b/eos/effects/gangbonussignature.py @@ -4,7 +4,9 @@ # Variations of module: Skirmish Warfare Link - Evasive Maneuvers I (2 of 2) type = "gang", "active" gangBoost = "signatureRadius" + + def handler(fit, module, context): if "gang" not in context: return fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py b/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py index a5729efce..f528a5c03 100644 --- a/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py +++ b/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py @@ -4,10 +4,12 @@ # Variations of module: Mining Foreman Link - Harvester Capacitor Efficiency I (2 of 2) type = "gang", "active" gangBoost = "miningCapacitorNeed" + + def handler(fit, module, context): if "gang" not in context: return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "capacitorNeed", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py b/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py index 1884f0fca..05e22fbc3 100644 --- a/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py +++ b/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py @@ -4,10 +4,12 @@ # Variations of module: Mining Foreman Link - Laser Optimization I (2 of 2) type = "gang", "active" gangBoost = "miningDuration" + + def handler(fit, module, context): if "gang" not in context: return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "duration", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/ganginformationwarfarerangebonuswithecmburst.py b/eos/effects/ganginformationwarfarerangebonuswithecmburst.py index b3ddcacaa..a66ef7cd1 100644 --- a/eos/effects/ganginformationwarfarerangebonuswithecmburst.py +++ b/eos/effects/ganginformationwarfarerangebonuswithecmburst.py @@ -4,9 +4,11 @@ # Variations of module: Information Warfare Link - Recon Operation I (2 of 2) type = "gang", "active" gangBoost = "electronicMaxRange" + + def handler(fit, module, context): if "gang" not in context: return groups = ("Target Painter", "Weapon Disruptor", "Sensor Dampener", "ECM", "Burst Jammer") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/ganginformationwarfaresuperiorityall2.py b/eos/effects/ganginformationwarfaresuperiorityall2.py index da72b30f4..6e8070e3a 100644 --- a/eos/effects/ganginformationwarfaresuperiorityall2.py +++ b/eos/effects/ganginformationwarfaresuperiorityall2.py @@ -3,8 +3,10 @@ # Used by: # Variations of module: Information Warfare Link - Electronic Superiority I (2 of 2) type = "active" + + def handler(fit, module, context): module.multiplyItemAttr("commandBonusTD", module.getModifiedItemAttr("commandBonusHidden")) module.multiplyItemAttr("commandBonusECM", module.getModifiedItemAttr("commandBonusHidden")) module.multiplyItemAttr("commandBonusRSD", module.getModifiedItemAttr("commandBonusHidden")) - module.multiplyItemAttr("commandBonusTP", module.getModifiedItemAttr("commandBonusHidden")) \ No newline at end of file + module.multiplyItemAttr("commandBonusTP", module.getModifiedItemAttr("commandBonusHidden")) diff --git a/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py b/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py index 00919eecf..02d4e913d 100644 --- a/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py +++ b/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py @@ -4,10 +4,13 @@ # Variations of module: Mining Foreman Link - Mining Laser Field Enhancement I (2 of 2) type = "gang", "active" gangBoost = "miningMaxRange" + + def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting") or mod.item.requiresSkill("Ice Harvesting") or mod.item.requiresSkill("Mining"), + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting") or mod.item.requiresSkill( + "Ice Harvesting") or mod.item.requiresSkill("Mining"), "maxRange", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("CPU Management"), "surveyScanRange", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangpropulsionjammingboost.py b/eos/effects/gangpropulsionjammingboost.py index e50376c7a..596e72792 100644 --- a/eos/effects/gangpropulsionjammingboost.py +++ b/eos/effects/gangpropulsionjammingboost.py @@ -4,9 +4,11 @@ # Variations of module: Skirmish Warfare Link - Interdiction Maneuvers I (2 of 2) type = "gang", "active" gangBoost = "interdictionMaxRange" + + def handler(fit, module, context): if "gang" not in context: return - groups = ("Stasis Web","Warp Scrambler") + groups = ("Stasis Web", "Warp Scrambler") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/gangsensorintegrity.py b/eos/effects/gangsensorintegrity.py index 9e90654b5..ec1932f0b 100644 --- a/eos/effects/gangsensorintegrity.py +++ b/eos/effects/gangsensorintegrity.py @@ -5,11 +5,13 @@ type = "gang", "active" gangBoost = "maxTargetRange" gangBonus = "commandBonus" + + def handler(fit, module, context): if "gang" not in context: return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) for scanType in ("Gravimetric", "Radar", "Ladar", "Magnetometric"): fit.ship.boostItemAttr("scan%sStrength" % scanType, module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/gangshieldboosteandtransportercapacitorneed.py b/eos/effects/gangshieldboosteandtransportercapacitorneed.py index 3f600e79c..dcf28b37a 100644 --- a/eos/effects/gangshieldboosteandtransportercapacitorneed.py +++ b/eos/effects/gangshieldboosteandtransportercapacitorneed.py @@ -4,7 +4,10 @@ # Variations of module: Siege Warfare Link - Shield Efficiency I (2 of 2) type = "gang", "active" gangBoost = "shieldRepairCapacitorNeed" + + def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), - "capacitorNeed", module.getModifiedItemAttr("commandBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), + "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangshieldboosterandtransporterspeed.py b/eos/effects/gangshieldboosterandtransporterspeed.py index 7637d0a94..468baaa25 100644 --- a/eos/effects/gangshieldboosterandtransporterspeed.py +++ b/eos/effects/gangshieldboosterandtransporterspeed.py @@ -4,7 +4,10 @@ # Variations of module: Siege Warfare Link - Active Shielding I (2 of 2) type = "gang", "active" gangBoost = "shieldRepairDuration" + + def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), - "duration", module.getModifiedItemAttr("commandBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), + "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangshieldhardening.py b/eos/effects/gangshieldhardening.py index 2c438590f..27a1adad0 100644 --- a/eos/effects/gangshieldhardening.py +++ b/eos/effects/gangshieldhardening.py @@ -4,9 +4,11 @@ # Variations of module: Siege Warfare Link - Shield Harmonizing I (2 of 2) type = "gang", "active" gangBoost = "shieldResistance" + + def handler(fit, module, context): if "gang" not in context: return for damageType in ("Em", "Explosive", "Thermal", "Kinetic"): fit.ship.boostItemAttr("shield%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/gascloudharvestingmaxgroupskilllevel.py b/eos/effects/gascloudharvestingmaxgroupskilllevel.py index 0ffd64ee6..3491f2f44 100644 --- a/eos/effects/gascloudharvestingmaxgroupskilllevel.py +++ b/eos/effects/gascloudharvestingmaxgroupskilllevel.py @@ -3,6 +3,8 @@ # Used by: # Skill: Gas Cloud Harvesting type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gas Cloud Harvester", - "maxGroupActive", skill.level) \ No newline at end of file + "maxGroupActive", skill.level) diff --git a/eos/effects/gasharvestermaxrangebonus.py b/eos/effects/gasharvestermaxrangebonus.py index 43d88368a..dbfd9f564 100644 --- a/eos/effects/gasharvestermaxrangebonus.py +++ b/eos/effects/gasharvestermaxrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Harvest (10 of 12) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Gas Cloud Harvester", - "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) \ No newline at end of file + "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/gasharvestingcycletimemodulesrequiringgascloudharvesting.py b/eos/effects/gasharvestingcycletimemodulesrequiringgascloudharvesting.py index ddae02770..015bad393 100644 --- a/eos/effects/gasharvestingcycletimemodulesrequiringgascloudharvesting.py +++ b/eos/effects/gasharvestingcycletimemodulesrequiringgascloudharvesting.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Eifyr and Co. 'Alchemist' Gas Harvesting GH (3 of 3) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting"), "duration", implant.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/gchyieldmultiplypassive.py b/eos/effects/gchyieldmultiplypassive.py index a86312d50..c62e662e5 100644 --- a/eos/effects/gchyieldmultiplypassive.py +++ b/eos/effects/gchyieldmultiplypassive.py @@ -4,6 +4,8 @@ # Ship: Prospect # Ship: Venture type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Gas Cloud Harvester", "miningAmount", module.getModifiedItemAttr("miningAmountMultiplier")) diff --git a/eos/effects/gunneryfalloffbonusonline.py b/eos/effects/gunneryfalloffbonusonline.py index 4aad761b3..553f9d428 100644 --- a/eos/effects/gunneryfalloffbonusonline.py +++ b/eos/effects/gunneryfalloffbonusonline.py @@ -4,7 +4,9 @@ # Modules from group: Tracking Enhancer (10 of 10) # Module: QA Damage Module type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/gunnerymaxrangebonusonline.py b/eos/effects/gunnerymaxrangebonusonline.py index 80742dd39..6f1bc78ed 100644 --- a/eos/effects/gunnerymaxrangebonusonline.py +++ b/eos/effects/gunnerymaxrangebonusonline.py @@ -4,7 +4,9 @@ # Modules from group: Tracking Enhancer (10 of 10) # Module: QA Damage Module type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/gunnerymaxrangefallofftrackingspeedbonus.py b/eos/effects/gunnerymaxrangefallofftrackingspeedbonus.py index 6569508c2..ef6c60e3b 100644 --- a/eos/effects/gunnerymaxrangefallofftrackingspeedbonus.py +++ b/eos/effects/gunnerymaxrangefallofftrackingspeedbonus.py @@ -3,8 +3,10 @@ # Used by: # Modules from group: Tracking Computer (11 of 11) type = "active" + + def handler(fit, module, context): for attr in ("maxRange", "falloff", "trackingSpeed"): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), attr, module.getModifiedItemAttr("%sBonus" % attr), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/gunnerytrackingspeedbonusonline.py b/eos/effects/gunnerytrackingspeedbonusonline.py index d75d1de83..f7bed1ecd 100644 --- a/eos/effects/gunnerytrackingspeedbonusonline.py +++ b/eos/effects/gunnerytrackingspeedbonusonline.py @@ -4,7 +4,9 @@ # Modules from group: Tracking Enhancer (10 of 10) # Module: QA Damage Module type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/gunneryturretspeebonuspostpercentspeedlocationshipmodulesrequiringgunnery.py b/eos/effects/gunneryturretspeebonuspostpercentspeedlocationshipmodulesrequiringgunnery.py index 7cd2ed065..fc4a45d26 100644 --- a/eos/effects/gunneryturretspeebonuspostpercentspeedlocationshipmodulesrequiringgunnery.py +++ b/eos/effects/gunneryturretspeebonuspostpercentspeedlocationshipmodulesrequiringgunnery.py @@ -5,6 +5,8 @@ # Implant: Pashan's Turret Customization Mindlink # Skill: Gunnery type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), diff --git a/eos/effects/hackingskillvirusbonus.py b/eos/effects/hackingskillvirusbonus.py index 43d9b5ebc..35c3be199 100644 --- a/eos/effects/hackingskillvirusbonus.py +++ b/eos/effects/hackingskillvirusbonus.py @@ -6,6 +6,8 @@ # Implant: Poteque 'Prospector' Hacking HC-905 # Skill: Hacking type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Hacking"), diff --git a/eos/effects/hardpointmodifiereffect.py b/eos/effects/hardpointmodifiereffect.py index 90fef9706..aeb98c46e 100644 --- a/eos/effects/hardpointmodifiereffect.py +++ b/eos/effects/hardpointmodifiereffect.py @@ -4,6 +4,8 @@ # Subsystems from group: Engineering Systems (16 of 16) # Subsystems from group: Offensive Systems (16 of 16) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("turretSlotsLeft", module.getModifiedItemAttr("turretHardPointModifier")) - fit.ship.increaseItemAttr("launcherSlotsLeft", module.getModifiedItemAttr("launcherHardPointModifier")) \ No newline at end of file + fit.ship.increaseItemAttr("launcherSlotsLeft", module.getModifiedItemAttr("launcherHardPointModifier")) diff --git a/eos/effects/heatdamagebonus.py b/eos/effects/heatdamagebonus.py index 4c074f63c..a4648cefa 100644 --- a/eos/effects/heatdamagebonus.py +++ b/eos/effects/heatdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Shield Boost Amplifier (25 of 25) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "heatDamage", module.getModifiedItemAttr("heatDamageBonus")) diff --git a/eos/effects/highspeedmanuveringcapacitorneedmultiplierpostpercentcapacitorneedlocationshipmodulesrequiringhighspeedmanuvering.py b/eos/effects/highspeedmanuveringcapacitorneedmultiplierpostpercentcapacitorneedlocationshipmodulesrequiringhighspeedmanuvering.py index 0c294ac98..d2b5f33c2 100644 --- a/eos/effects/highspeedmanuveringcapacitorneedmultiplierpostpercentcapacitorneedlocationshipmodulesrequiringhighspeedmanuvering.py +++ b/eos/effects/highspeedmanuveringcapacitorneedmultiplierpostpercentcapacitorneedlocationshipmodulesrequiringhighspeedmanuvering.py @@ -4,6 +4,8 @@ # Implants named like: Eifyr and Co. 'Rogue' High Speed Maneuvering HS (6 of 6) # Skill: High Speed Maneuvering type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), diff --git a/eos/effects/hullupgradesarmorhpbonuspostpercenthplocationship.py b/eos/effects/hullupgradesarmorhpbonuspostpercenthplocationship.py index 93e634b7e..9d9ba7b72 100644 --- a/eos/effects/hullupgradesarmorhpbonuspostpercenthplocationship.py +++ b/eos/effects/hullupgradesarmorhpbonuspostpercenthplocationship.py @@ -7,6 +7,8 @@ # Implant: Mid-grade Snake Epsilon # Skill: Hull Upgrades type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("armorHP", (container.getModifiedItemAttr("armorHpBonus") or 0) * level) diff --git a/eos/effects/hybridweapondamagemultiply.py b/eos/effects/hybridweapondamagemultiply.py index 092540734..76079b9a6 100644 --- a/eos/effects/hybridweapondamagemultiply.py +++ b/eos/effects/hybridweapondamagemultiply.py @@ -5,7 +5,9 @@ # Modules named like: QA Multiship Module Players (4 of 4) # Module: QA Damage Module type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Hybrid Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties = True) \ No newline at end of file + "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), + stackingPenalties=True) diff --git a/eos/effects/hybridweapondamagemultiplypassive.py b/eos/effects/hybridweapondamagemultiplypassive.py index ed90ad68d..53dcbda89 100644 --- a/eos/effects/hybridweapondamagemultiplypassive.py +++ b/eos/effects/hybridweapondamagemultiplypassive.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Hybrid Collision Accelerator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Hybrid Weapon", "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/hybridweaponspeedmultiply.py b/eos/effects/hybridweaponspeedmultiply.py index fa327ff96..2ed8c8d5f 100644 --- a/eos/effects/hybridweaponspeedmultiply.py +++ b/eos/effects/hybridweaponspeedmultiply.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: Magnetic Field Stabilizer (12 of 12) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Hybrid Weapon", "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/hybridweaponspeedmultiplypassive.py b/eos/effects/hybridweaponspeedmultiplypassive.py index 558b0c0aa..d40a2d630 100644 --- a/eos/effects/hybridweaponspeedmultiplypassive.py +++ b/eos/effects/hybridweaponspeedmultiplypassive.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Hybrid Burst Aerator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Hybrid Weapon", "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/iceharvestcycletimemodulesrequiringiceharvesting.py b/eos/effects/iceharvestcycletimemodulesrequiringiceharvesting.py index e559bc8ea..7066cba7b 100644 --- a/eos/effects/iceharvestcycletimemodulesrequiringiceharvesting.py +++ b/eos/effects/iceharvestcycletimemodulesrequiringiceharvesting.py @@ -5,6 +5,8 @@ # Module: Medium Ice Harvester Accelerator I # Skill: Ice Harvesting type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), diff --git a/eos/effects/iceharvestcycletimemodulesrequiringiceharvestingonline.py b/eos/effects/iceharvestcycletimemodulesrequiringiceharvestingonline.py index b495ccaaf..19d58e81e 100644 --- a/eos/effects/iceharvestcycletimemodulesrequiringiceharvestingonline.py +++ b/eos/effects/iceharvestcycletimemodulesrequiringiceharvestingonline.py @@ -3,6 +3,8 @@ # Used by: # Variations of module: Ice Harvester Upgrade I (5 of 5) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "duration", module.getModifiedItemAttr("iceHarvestCycleBonus")) \ No newline at end of file + "duration", module.getModifiedItemAttr("iceHarvestCycleBonus")) diff --git a/eos/effects/iceharvestercapacitorneedmultiplier.py b/eos/effects/iceharvestercapacitorneedmultiplier.py index ff7e59f60..93338c76f 100644 --- a/eos/effects/iceharvestercapacitorneedmultiplier.py +++ b/eos/effects/iceharvestercapacitorneedmultiplier.py @@ -1,5 +1,7 @@ # Not used by any item type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "capacitorNeed", ship.getModifiedItemAttr("iceHarvestCycleBonus")) diff --git a/eos/effects/iceharvesterdurationmultiplier.py b/eos/effects/iceharvesterdurationmultiplier.py index 16a46a13b..2b2cc75c8 100644 --- a/eos/effects/iceharvesterdurationmultiplier.py +++ b/eos/effects/iceharvesterdurationmultiplier.py @@ -3,6 +3,8 @@ # Used by: # Ship: Endurance type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", ship.getModifiedItemAttr("iceHarvestCycleBonus")) diff --git a/eos/effects/iceminercpuusagepercent.py b/eos/effects/iceminercpuusagepercent.py index 9a3f04694..666c030a6 100644 --- a/eos/effects/iceminercpuusagepercent.py +++ b/eos/effects/iceminercpuusagepercent.py @@ -3,6 +3,8 @@ # Used by: # Variations of module: Ice Harvester Upgrade I (5 of 5) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "cpu", module.getModifiedItemAttr("cpuPenaltyPercent")) \ No newline at end of file + "cpu", module.getModifiedItemAttr("cpuPenaltyPercent")) diff --git a/eos/effects/ignorecloakvelocitypenalty.py b/eos/effects/ignorecloakvelocitypenalty.py index bcb46a480..5fe1b1f10 100644 --- a/eos/effects/ignorecloakvelocitypenalty.py +++ b/eos/effects/ignorecloakvelocitypenalty.py @@ -4,6 +4,8 @@ # Ship: Endurance type = "passive" runTime = "early" + + def handler(fit, src, context): fit.modules.filteredItemForce(lambda mod: mod.item.group.name == "Cloaking Device", "maxVelocityBonus", src.getModifiedItemAttr("velocityPenaltyReduction")) diff --git a/eos/effects/imperialsetbonus3.py b/eos/effects/imperialsetbonus3.py index d239dcc35..bcd755f7f 100644 --- a/eos/effects/imperialsetbonus3.py +++ b/eos/effects/imperialsetbonus3.py @@ -4,6 +4,9 @@ # Implants named like: High grade Grail (6 of 6) type = "passive" runTime = "early" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanRadarStrengthPercent", implant.getModifiedItemAttr("implantSetImperialNavy")) + "scanRadarStrengthPercent", + implant.getModifiedItemAttr("implantSetImperialNavy")) diff --git a/eos/effects/imperialsetlgbonus.py b/eos/effects/imperialsetlgbonus.py index 56369bf22..fc14ae72d 100644 --- a/eos/effects/imperialsetlgbonus.py +++ b/eos/effects/imperialsetlgbonus.py @@ -4,6 +4,9 @@ # Implants named like: Low grade Grail (6 of 6) type = "passive" runTime = "early" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanRadarStrengthModifier", implant.getModifiedItemAttr("implantSetLGImperialNavy")) + "scanRadarStrengthModifier", + implant.getModifiedItemAttr("implantSetLGImperialNavy")) diff --git a/eos/effects/implantarmorhpbonus2.py b/eos/effects/implantarmorhpbonus2.py index e73da4150..36c997118 100644 --- a/eos/effects/implantarmorhpbonus2.py +++ b/eos/effects/implantarmorhpbonus2.py @@ -6,5 +6,7 @@ # Implant: Imperial Navy Modified 'Noble' Implant # Implant: Imperial Special Ops Field Enhancer - Standard type = "passive" + + def handler(fit, implant, context): - fit.ship.boostItemAttr("armorHP", implant.getModifiedItemAttr("armorHpBonus2")) \ No newline at end of file + fit.ship.boostItemAttr("armorHP", implant.getModifiedItemAttr("armorHpBonus2")) diff --git a/eos/effects/implanthardwiringabcapacitorneed.py b/eos/effects/implanthardwiringabcapacitorneed.py index 1a96723fe..1f0adf21c 100644 --- a/eos/effects/implanthardwiringabcapacitorneed.py +++ b/eos/effects/implanthardwiringabcapacitorneed.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Eifyr and Co. 'Rogue' Fuel Conservation FC (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "capacitorNeed", implant.getModifiedItemAttr("capNeedBonus")) diff --git a/eos/effects/implantsetwarpspeed.py b/eos/effects/implantsetwarpspeed.py index 29fd50e49..ce351f428 100644 --- a/eos/effects/implantsetwarpspeed.py +++ b/eos/effects/implantsetwarpspeed.py @@ -4,6 +4,8 @@ # Implants named like: grade Ascendancy (12 of 12) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "WarpSBonus", implant.getModifiedItemAttr("implantSetWarpSpeed")) + "WarpSBonus", implant.getModifiedItemAttr("implantSetWarpSpeed")) diff --git a/eos/effects/implantvelocitybonus.py b/eos/effects/implantvelocitybonus.py index 30665245c..d7841ad64 100644 --- a/eos/effects/implantvelocitybonus.py +++ b/eos/effects/implantvelocitybonus.py @@ -5,5 +5,7 @@ # Implant: Genolution Core Augmentation CA-3 # Implant: Shaqil's Speed Enhancer type = "passive" + + def handler(fit, implant, context): - fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("implantBonusVelocity")) \ No newline at end of file + fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("implantBonusVelocity")) diff --git a/eos/effects/implantvelocitybonus2.py b/eos/effects/implantvelocitybonus2.py index a88fc420a..3a39e759f 100644 --- a/eos/effects/implantvelocitybonus2.py +++ b/eos/effects/implantvelocitybonus2.py @@ -3,5 +3,7 @@ # Used by: # Implant: Republic Special Ops Field Enhancer - Gamma type = "passive" + + def handler(fit, implant, context): - fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("velocityBonus2")) \ No newline at end of file + fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("velocityBonus2")) diff --git a/eos/effects/increasesignatureradiusonline.py b/eos/effects/increasesignatureradiusonline.py index a67dc074f..bc58e44b9 100644 --- a/eos/effects/increasesignatureradiusonline.py +++ b/eos/effects/increasesignatureradiusonline.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Inertial Stabilizer (7 of 7) type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonus")) \ No newline at end of file + fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonus")) diff --git a/eos/effects/industrialcoreeffect2.py b/eos/effects/industrialcoreeffect2.py index 7bb0909f4..0676ef92b 100644 --- a/eos/effects/industrialcoreeffect2.py +++ b/eos/effects/industrialcoreeffect2.py @@ -4,6 +4,8 @@ # Module: Industrial Core I type = "active" runTime = "early" + + def handler(fit, module, context): fit.extraAttributes["siege"] = True fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor")) diff --git a/eos/effects/informationsquadroncommand.py b/eos/effects/informationsquadroncommand.py index f5ff715ff..3cb38deed 100644 --- a/eos/effects/informationsquadroncommand.py +++ b/eos/effects/informationsquadroncommand.py @@ -4,6 +4,8 @@ # Skill: Information Warfare Specialist runTime = "early" type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", skill.getModifiedItemAttr("squadronCommandBonus") * skill.level) diff --git a/eos/effects/informationsquadroncommandhidden.py b/eos/effects/informationsquadroncommandhidden.py index 0d3ca2319..97ad56e31 100644 --- a/eos/effects/informationsquadroncommandhidden.py +++ b/eos/effects/informationsquadroncommandhidden.py @@ -4,6 +4,8 @@ # Skill: Information Warfare Specialist runTime = "early" type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonusHidden", skill.getModifiedItemAttr("squadronCommandBonus") * skill.level) diff --git a/eos/effects/informationwarfaremaxtargetrangebonus.py b/eos/effects/informationwarfaremaxtargetrangebonus.py index 5e4bfed19..08ee3cd69 100644 --- a/eos/effects/informationwarfaremaxtargetrangebonus.py +++ b/eos/effects/informationwarfaremaxtargetrangebonus.py @@ -7,5 +7,7 @@ type = "gang" gangBoost = "maxTargetRange" gangBonus = "maxTargetRangeBonus" + + def handler(fit, container, context): fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus)) diff --git a/eos/effects/informationwarfaremindlinkhidden.py b/eos/effects/informationwarfaremindlinkhidden.py index f59c806ba..aac541ead 100644 --- a/eos/effects/informationwarfaremindlinkhidden.py +++ b/eos/effects/informationwarfaremindlinkhidden.py @@ -5,6 +5,8 @@ # Implant: Imperial Navy Warfare Mindlink # Implant: Information Warfare Mindlink type = "passive" + + def handler(fit, implant, context): fit.character.getSkill("Information Warfare").suppress() fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), diff --git a/eos/effects/interceptor2hybridtracking.py b/eos/effects/interceptor2hybridtracking.py index f1a720f41..c13c7bdea 100644 --- a/eos/effects/interceptor2hybridtracking.py +++ b/eos/effects/interceptor2hybridtracking.py @@ -3,6 +3,9 @@ # Used by: # Ship: Taranis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") \ No newline at end of file + "trackingSpeed", ship.getModifiedItemAttr("eliteBonusInterceptor2"), + skill="Interceptors") diff --git a/eos/effects/interceptor2lasertracking.py b/eos/effects/interceptor2lasertracking.py index b7ff9327e..bc71ac1e2 100644 --- a/eos/effects/interceptor2lasertracking.py +++ b/eos/effects/interceptor2lasertracking.py @@ -3,6 +3,9 @@ # Used by: # Ship: Crusader type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") \ No newline at end of file + "trackingSpeed", ship.getModifiedItemAttr("eliteBonusInterceptor2"), + skill="Interceptors") diff --git a/eos/effects/interceptor2projectiledamage.py b/eos/effects/interceptor2projectiledamage.py index a8f976175..9d4cfeb97 100644 --- a/eos/effects/interceptor2projectiledamage.py +++ b/eos/effects/interceptor2projectiledamage.py @@ -3,6 +3,9 @@ # Used by: # Ship: Claw type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") + "damageMultiplier", ship.getModifiedItemAttr("eliteBonusInterceptor2"), + skill="Interceptors") diff --git a/eos/effects/interceptor2shieldresist.py b/eos/effects/interceptor2shieldresist.py index 9a74e396f..301cc98c4 100644 --- a/eos/effects/interceptor2shieldresist.py +++ b/eos/effects/interceptor2shieldresist.py @@ -3,7 +3,10 @@ # Used by: # Ship: Raptor type = "passive" + + def handler(fit, ship, context): damageTypes = ("Em", "Explosive", "Kinetic", "Thermal") for damageType in damageTypes: - fit.ship.boostItemAttr("shield{0}DamageResonance".format(damageType), ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") + fit.ship.boostItemAttr("shield{0}DamageResonance".format(damageType), + ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") diff --git a/eos/effects/interceptor2warpscramblerange.py b/eos/effects/interceptor2warpscramblerange.py index 7e69a885f..d878926d0 100644 --- a/eos/effects/interceptor2warpscramblerange.py +++ b/eos/effects/interceptor2warpscramblerange.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Interceptor (6 of 10) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") diff --git a/eos/effects/interceptormwdsignatureradiusbonus.py b/eos/effects/interceptormwdsignatureradiusbonus.py index 146fce80e..73157a691 100644 --- a/eos/effects/interceptormwdsignatureradiusbonus.py +++ b/eos/effects/interceptormwdsignatureradiusbonus.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Interceptor (10 of 10) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusInterceptor"), skill="Interceptors") + "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusInterceptor"), + skill="Interceptors") diff --git a/eos/effects/jumpdriveskillscapacitorneedbonus.py b/eos/effects/jumpdriveskillscapacitorneedbonus.py index 916cdbb2c..578b0f47f 100644 --- a/eos/effects/jumpdriveskillscapacitorneedbonus.py +++ b/eos/effects/jumpdriveskillscapacitorneedbonus.py @@ -3,5 +3,8 @@ # Used by: # Skill: Jump Drive Operation type = "passive" + + def handler(fit, skill, context): - fit.ship.boostItemAttr("jumpDriveCapacitorNeed", skill.getModifiedItemAttr("jumpDriveCapacitorNeedBonus") * skill.level) + fit.ship.boostItemAttr("jumpDriveCapacitorNeed", + skill.getModifiedItemAttr("jumpDriveCapacitorNeedBonus") * skill.level) diff --git a/eos/effects/jumpdriveskillsrangebonus.py b/eos/effects/jumpdriveskillsrangebonus.py index 51f984b44..86ff1b5ce 100644 --- a/eos/effects/jumpdriveskillsrangebonus.py +++ b/eos/effects/jumpdriveskillsrangebonus.py @@ -3,5 +3,7 @@ # Used by: # Skill: Jump Drive Calibration type = "passive" + + def handler(fit, skill, context): - fit.ship.boostItemAttr("jumpDriveRange", skill.getModifiedItemAttr("jumpDriveRangeBonus") * skill.level) \ No newline at end of file + fit.ship.boostItemAttr("jumpDriveRange", skill.getModifiedItemAttr("jumpDriveRangeBonus") * skill.level) diff --git a/eos/effects/jumpportalconsumptionbonuspercentskill.py b/eos/effects/jumpportalconsumptionbonuspercentskill.py index af493c170..b823680ed 100644 --- a/eos/effects/jumpportalconsumptionbonuspercentskill.py +++ b/eos/effects/jumpportalconsumptionbonuspercentskill.py @@ -3,6 +3,8 @@ # Used by: # Skill: Jump Portal Generation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "consumptionQuantity", skill.getModifiedItemAttr("consumptionQuantityBonusPercent") * skill.level) diff --git a/eos/effects/kineticarmorcompensationhardeningbonusgrouparmorcoating.py b/eos/effects/kineticarmorcompensationhardeningbonusgrouparmorcoating.py index be536b70e..90df83fb9 100644 --- a/eos/effects/kineticarmorcompensationhardeningbonusgrouparmorcoating.py +++ b/eos/effects/kineticarmorcompensationhardeningbonusgrouparmorcoating.py @@ -3,7 +3,9 @@ # Used by: # Skill: Kinetic Armor Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Coating", "kineticDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/kineticarmorcompensationhardeningbonusgroupenergized.py b/eos/effects/kineticarmorcompensationhardeningbonusgroupenergized.py index e60cdc992..6300b21af 100644 --- a/eos/effects/kineticarmorcompensationhardeningbonusgroupenergized.py +++ b/eos/effects/kineticarmorcompensationhardeningbonusgroupenergized.py @@ -3,6 +3,9 @@ # Used by: # Skill: Kinetic Armor Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Plating Energized", - "kineticDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + "kineticDamageResistanceBonus", + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/kineticshieldcompensationhardeningbonusgroupshieldamp.py b/eos/effects/kineticshieldcompensationhardeningbonusgroupshieldamp.py index d230979b7..3b07f5957 100644 --- a/eos/effects/kineticshieldcompensationhardeningbonusgroupshieldamp.py +++ b/eos/effects/kineticshieldcompensationhardeningbonusgroupshieldamp.py @@ -3,7 +3,9 @@ # Used by: # Skill: Kinetic Shield Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Shield Resistance Amplifier", "kineticDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/largeenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeenergyturret.py b/eos/effects/largeenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeenergyturret.py index 93b47aacd..09ffdc5fb 100644 --- a/eos/effects/largeenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeenergyturret.py +++ b/eos/effects/largeenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeenergyturret.py @@ -5,6 +5,8 @@ # Implant: Pashan's Turret Handling Mindlink # Skill: Large Energy Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), diff --git a/eos/effects/largehybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargehybridturret.py b/eos/effects/largehybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargehybridturret.py index bb3fdf097..ea808b755 100644 --- a/eos/effects/largehybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargehybridturret.py +++ b/eos/effects/largehybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargehybridturret.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Deadeye' Large Hybrid Turret LH (6 of 6) # Skill: Large Hybrid Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), diff --git a/eos/effects/largeprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeprojectileturret.py b/eos/effects/largeprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeprojectileturret.py index 25a394c77..e7f214d19 100644 --- a/eos/effects/largeprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeprojectileturret.py +++ b/eos/effects/largeprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeprojectileturret.py @@ -4,6 +4,8 @@ # Implants named like: Eifyr and Co. 'Gunslinger' Large Projectile Turret LP (6 of 6) # Skill: Large Projectile Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), diff --git a/eos/effects/leadershipeffect.py b/eos/effects/leadershipeffect.py index f7aaa4d12..cfb672727 100644 --- a/eos/effects/leadershipeffect.py +++ b/eos/effects/leadershipeffect.py @@ -5,5 +5,7 @@ type = "gang" gangBoost = "scanResolution" gangBonus = "scanResolutionBonus" + + def handler(fit, skill, context): - fit.ship.boostItemAttr(gangBoost, skill.getModifiedItemAttr(gangBonus) * skill.level, stackingPenalties = True) + fit.ship.boostItemAttr(gangBoost, skill.getModifiedItemAttr(gangBonus) * skill.level, stackingPenalties=True) diff --git a/eos/effects/lightningweapon.py b/eos/effects/lightningweapon.py index 45ca33f3f..4f2324035 100644 --- a/eos/effects/lightningweapon.py +++ b/eos/effects/lightningweapon.py @@ -1,4 +1,6 @@ # Not used by any item type = 'active' + + def handler(fit, module, context): pass diff --git a/eos/effects/longrangetargetingmaxtargetrangebonuspostpercentmaxtargetrangelocationshipgroupelectronic.py b/eos/effects/longrangetargetingmaxtargetrangebonuspostpercentmaxtargetrangelocationshipgroupelectronic.py index 1c9429637..ac11238db 100644 --- a/eos/effects/longrangetargetingmaxtargetrangebonuspostpercentmaxtargetrangelocationshipgroupelectronic.py +++ b/eos/effects/longrangetargetingmaxtargetrangebonuspostpercentmaxtargetrangelocationshipgroupelectronic.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Gypsy' Long Range Targeting LT (6 of 6) # Skill: Long Range Targeting type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("maxTargetRange", container.getModifiedItemAttr("maxTargetRangeBonus") * level) diff --git a/eos/effects/maraudermodeeffect26.py b/eos/effects/maraudermodeeffect26.py index 74b730de6..724ce492b 100644 --- a/eos/effects/maraudermodeeffect26.py +++ b/eos/effects/maraudermodeeffect26.py @@ -1,6 +1,8 @@ # Not used by any item type = "active" runTime = "early" + + def handler(fit, module, context): # Resistances for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): @@ -14,29 +16,31 @@ def handler(fit, module, context): # Turrets fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or \ - mod.item.requiresSkill("Large Hybrid Turret") or \ - mod.item.requiresSkill("Large Projectile Turret"), + mod.item.requiresSkill("Large Hybrid Turret") or \ + mod.item.requiresSkill("Large Projectile Turret"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or \ - mod.item.requiresSkill("Large Hybrid Turret") or \ - mod.item.requiresSkill("Large Projectile Turret"), + mod.item.requiresSkill("Large Hybrid Turret") or \ + mod.item.requiresSkill("Large Projectile Turret"), "falloff", module.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) # Missiles fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes") or \ - mod.charge.requiresSkill("Cruise Missiles") or \ - mod.charge.requiresSkill("Heavy Missiles"), + mod.charge.requiresSkill("Cruise Missiles") or \ + mod.charge.requiresSkill("Heavy Missiles"), "maxVelocity", module.getModifiedItemAttr("missileVelocityBonus")) # Tanking - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems") or mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("armorDamageAmountBonus"), - stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation") or mod.item.requiresSkill("Shield Operation"), - "shieldBonus", module.getModifiedItemAttr("shieldBoostMultiplier"), - stackingPenalties=True) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Capital Repair Systems") or mod.item.requiresSkill("Repair Systems"), + "armorDamageAmount", module.getModifiedItemAttr("armorDamageAmountBonus"), + stackingPenalties=True) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Capital Shield Operation") or mod.item.requiresSkill("Shield Operation"), + "shieldBonus", module.getModifiedItemAttr("shieldBoostMultiplier"), + stackingPenalties=True) # Speed penalty fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor")) diff --git a/eos/effects/massaddpassive.py b/eos/effects/massaddpassive.py index 4bb107c72..929d32c5d 100644 --- a/eos/effects/massaddpassive.py +++ b/eos/effects/massaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Items from category: Subsystem (80 of 80) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("mass") or 0) diff --git a/eos/effects/massreductionbonuspassive.py b/eos/effects/massreductionbonuspassive.py index 13e72f726..abc1dddde 100644 --- a/eos/effects/massreductionbonuspassive.py +++ b/eos/effects/massreductionbonuspassive.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Rig Anchor (4 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("mass", module.getModifiedItemAttr("massBonusPercentage"), stackingPenalties=True) diff --git a/eos/effects/maxrangebonuseffecthybrids.py b/eos/effects/maxrangebonuseffecthybrids.py index b931faf28..68f035cc6 100644 --- a/eos/effects/maxrangebonuseffecthybrids.py +++ b/eos/effects/maxrangebonuseffecthybrids.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Hybrid Locus Coordinator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/maxrangebonuseffectlasers.py b/eos/effects/maxrangebonuseffectlasers.py index 8df9ca347..7f4126ad8 100644 --- a/eos/effects/maxrangebonuseffectlasers.py +++ b/eos/effects/maxrangebonuseffectlasers.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Energy Locus Coordinator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/maxrangebonuseffectprojectiles.py b/eos/effects/maxrangebonuseffectprojectiles.py index 8e56c8a1c..5f433584c 100644 --- a/eos/effects/maxrangebonuseffectprojectiles.py +++ b/eos/effects/maxrangebonuseffectprojectiles.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Projectile Locus Coordinator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/maxtargetingrangebonuspostpercentpassive.py b/eos/effects/maxtargetingrangebonuspostpercentpassive.py index e000410f5..6a0c0e916 100644 --- a/eos/effects/maxtargetingrangebonuspostpercentpassive.py +++ b/eos/effects/maxtargetingrangebonuspostpercentpassive.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Ionic Field Projector (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/maxtargetrangeaddpassive.py b/eos/effects/maxtargetrangeaddpassive.py index a2f352ab6..8afd7b53e 100644 --- a/eos/effects/maxtargetrangeaddpassive.py +++ b/eos/effects/maxtargetrangeaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Subsystems from group: Electronic Systems (16 of 16) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRange")) \ No newline at end of file + fit.ship.increaseItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRange")) diff --git a/eos/effects/maxtargetrangebonus.py b/eos/effects/maxtargetrangebonus.py index a7e0adc46..96731483b 100644 --- a/eos/effects/maxtargetrangebonus.py +++ b/eos/effects/maxtargetrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Warp Core Stabilizer (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/maxvelocityaddpassive.py b/eos/effects/maxvelocityaddpassive.py index 7c97bf7cd..c529918f4 100644 --- a/eos/effects/maxvelocityaddpassive.py +++ b/eos/effects/maxvelocityaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Subsystems from group: Propulsion Systems (16 of 16) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("maxVelocity", module.getModifiedItemAttr("maxVelocity")) \ No newline at end of file + fit.ship.increaseItemAttr("maxVelocity", module.getModifiedItemAttr("maxVelocity")) diff --git a/eos/effects/mechanichullhpbonuspostpercenthpship.py b/eos/effects/mechanichullhpbonuspostpercenthpship.py index 76da1c0c7..3f01c5422 100644 --- a/eos/effects/mechanichullhpbonuspostpercenthpship.py +++ b/eos/effects/mechanichullhpbonuspostpercenthpship.py @@ -5,6 +5,8 @@ # Modules named like: Transverse Bulkhead (8 of 8) # Skill: Mechanics type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("hp", container.getModifiedItemAttr("hullHpBonus") * level) diff --git a/eos/effects/mediumenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumenergyturret.py b/eos/effects/mediumenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumenergyturret.py index 00bcb480d..c70854c90 100644 --- a/eos/effects/mediumenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumenergyturret.py +++ b/eos/effects/mediumenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumenergyturret.py @@ -4,6 +4,8 @@ # Implants named like: Inherent Implants 'Lancer' Medium Energy Turret ME (6 of 6) # Skill: Medium Energy Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), diff --git a/eos/effects/mediumhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumhybridturret.py b/eos/effects/mediumhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumhybridturret.py index b621eb545..e64a0d35b 100644 --- a/eos/effects/mediumhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumhybridturret.py +++ b/eos/effects/mediumhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumhybridturret.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Deadeye' Medium Hybrid Turret MH (6 of 6) # Skill: Medium Hybrid Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), diff --git a/eos/effects/mediumprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumprojectileturret.py b/eos/effects/mediumprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumprojectileturret.py index d3a7f4fd6..8bd3dec22 100644 --- a/eos/effects/mediumprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumprojectileturret.py +++ b/eos/effects/mediumprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumprojectileturret.py @@ -4,6 +4,8 @@ # Implants named like: Eifyr and Co. 'Gunslinger' Medium Projectile Turret MP (6 of 6) # Skill: Medium Projectile Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), diff --git a/eos/effects/mercoxitcrystalbonus.py b/eos/effects/mercoxitcrystalbonus.py index 52fb3b2c8..97a255397 100644 --- a/eos/effects/mercoxitcrystalbonus.py +++ b/eos/effects/mercoxitcrystalbonus.py @@ -3,7 +3,10 @@ # Used by: # Module: Medium Mercoxit Mining Crystal Optimization I type = "passive" -runTime="early" +runTime = "early" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Mercoxit Processing"), - "specialisationAsteroidYieldMultiplier", module.getModifiedItemAttr("miningAmountBonus")) + "specialisationAsteroidYieldMultiplier", + module.getModifiedItemAttr("miningAmountBonus")) diff --git a/eos/effects/microjumpdrive.py b/eos/effects/microjumpdrive.py index 3d117a6a4..c8797d7d0 100644 --- a/eos/effects/microjumpdrive.py +++ b/eos/effects/microjumpdrive.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Micro Jump Drive (2 of 2) type = "active" + + def handler(fit, module, context): - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonusPercent")) \ No newline at end of file + fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonusPercent")) diff --git a/eos/effects/minercpuusagemultiplypercent2.py b/eos/effects/minercpuusagemultiplypercent2.py index f76b5323b..7b8e6025a 100644 --- a/eos/effects/minercpuusagemultiplypercent2.py +++ b/eos/effects/minercpuusagemultiplypercent2.py @@ -3,6 +3,8 @@ # Used by: # Variations of module: Mining Laser Upgrade I (5 of 5) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "cpu", module.getModifiedItemAttr("cpuPenaltyPercent")) \ No newline at end of file + "cpu", module.getModifiedItemAttr("cpuPenaltyPercent")) diff --git a/eos/effects/minigamevirusstrengthbonus.py b/eos/effects/minigamevirusstrengthbonus.py index f2e9de20d..774367539 100644 --- a/eos/effects/minigamevirusstrengthbonus.py +++ b/eos/effects/minigamevirusstrengthbonus.py @@ -11,7 +11,10 @@ # Ship: Nestor # Ship: Probe type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 - fit.modules.filteredItemIncrease(lambda mod: (mod.item.requiresSkill("Hacking") or mod.item.requiresSkill("Archaeology")), - "virusStrength", container.getModifiedItemAttr("virusStrengthBonus") * level) + fit.modules.filteredItemIncrease( + lambda mod: (mod.item.requiresSkill("Hacking") or mod.item.requiresSkill("Archaeology")), + "virusStrength", container.getModifiedItemAttr("virusStrengthBonus") * level) diff --git a/eos/effects/mining.py b/eos/effects/mining.py index 23a5bf7e7..6a80437e9 100644 --- a/eos/effects/mining.py +++ b/eos/effects/mining.py @@ -6,9 +6,10 @@ type = "passive" grouped = True + def handler(fit, container, context): miningDroneAmountPercent = container.getModifiedItemAttr("miningDroneAmountPercent") if (miningDroneAmountPercent is None) or (miningDroneAmountPercent == 0): pass else: - container.multiplyItemAttr("miningAmount", miningDroneAmountPercent/100) + container.multiplyItemAttr("miningAmount", miningDroneAmountPercent / 100) diff --git a/eos/effects/miningclouds.py b/eos/effects/miningclouds.py index 543851c78..f37896233 100644 --- a/eos/effects/miningclouds.py +++ b/eos/effects/miningclouds.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Gas Cloud Harvester (5 of 5) type = "active" + + def handler(fit, module, context): pass diff --git a/eos/effects/miningdirectorbonuscommandbonuseffective.py b/eos/effects/miningdirectorbonuscommandbonuseffective.py index 825d66b79..8ab633115 100644 --- a/eos/effects/miningdirectorbonuscommandbonuseffective.py +++ b/eos/effects/miningdirectorbonuscommandbonuseffective.py @@ -3,6 +3,8 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Director"), "commandBonus", ship.getModifiedItemAttr("commandBonusEffective")) diff --git a/eos/effects/miningdroneoperationminingamountbonuspostpercentminingdroneamountpercentchar.py b/eos/effects/miningdroneoperationminingamountbonuspostpercentminingdroneamountpercentchar.py index ebad7da0e..2a3e70211 100644 --- a/eos/effects/miningdroneoperationminingamountbonuspostpercentminingdroneamountpercentchar.py +++ b/eos/effects/miningdroneoperationminingamountbonuspostpercentminingdroneamountpercentchar.py @@ -4,6 +4,8 @@ # Modules named like: Drone Mining Augmentor (8 of 8) # Skill: Mining Drone Operation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Mining Drone", diff --git a/eos/effects/miningforemanmindlink.py b/eos/effects/miningforemanmindlink.py index 8ae84ef7d..2a595dd97 100644 --- a/eos/effects/miningforemanmindlink.py +++ b/eos/effects/miningforemanmindlink.py @@ -3,7 +3,9 @@ # Used by: # Implant: Mining Foreman Mindlink type = "passive" + + def handler(fit, implant, context): fit.character.getSkill("Mining Foreman").suppress() fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Director"), - "commandBonus", implant.getModifiedItemAttr("mindlinkBonus")) \ No newline at end of file + "commandBonus", implant.getModifiedItemAttr("mindlinkBonus")) diff --git a/eos/effects/miningforemanmindlinkminingamountbonusreplacer.py b/eos/effects/miningforemanmindlinkminingamountbonusreplacer.py index ddf2a573f..1e4921fbb 100644 --- a/eos/effects/miningforemanmindlinkminingamountbonusreplacer.py +++ b/eos/effects/miningforemanmindlinkminingamountbonusreplacer.py @@ -5,6 +5,8 @@ type = "gang" gangBoost = "miningAmount" gangBonus = "miningAmountBonus" + + def handler(fit, container, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), gangBoost, container.getModifiedItemAttr(gangBonus)) diff --git a/eos/effects/miningfrigatebonusiceharvestingcycletime2.py b/eos/effects/miningfrigatebonusiceharvestingcycletime2.py index e16c8ef86..094e01713 100644 --- a/eos/effects/miningfrigatebonusiceharvestingcycletime2.py +++ b/eos/effects/miningfrigatebonusiceharvestingcycletime2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Endurance type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", src.getModifiedItemAttr("shipBonusOREfrig2"), skill="Mining Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", + src.getModifiedItemAttr("shipBonusOREfrig2"), skill="Mining Frigate") diff --git a/eos/effects/mininginfomultiplier.py b/eos/effects/mininginfomultiplier.py index 10ecb4eef..0b9277114 100644 --- a/eos/effects/mininginfomultiplier.py +++ b/eos/effects/mininginfomultiplier.py @@ -4,5 +4,8 @@ # Charges from group: Mining Crystal (30 of 30) # Charges named like: Mining Crystal (32 of 32) type = "passive" + + def handler(fit, module, context): - module.multiplyItemAttr("specialtyMiningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) + module.multiplyItemAttr("specialtyMiningAmount", + module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) diff --git a/eos/effects/mininglaser.py b/eos/effects/mininglaser.py index 6189b7983..09bda59bf 100644 --- a/eos/effects/mininglaser.py +++ b/eos/effects/mininglaser.py @@ -5,6 +5,8 @@ # Modules from group: Mining Laser (15 of 15) # Modules from group: Strip Miner (5 of 5) type = 'active' + + def handler(fit, module, context): # Set reload time to 1 second module.reloadTime = 1000 diff --git a/eos/effects/mininglaserrangebonus.py b/eos/effects/mininglaserrangebonus.py index dbfe9d486..163574ba9 100644 --- a/eos/effects/mininglaserrangebonus.py +++ b/eos/effects/mininglaserrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Harvest (10 of 12) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mining Laser", - "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) \ No newline at end of file + "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/miningsquadroncommand.py b/eos/effects/miningsquadroncommand.py index 74520654f..77a9c0b20 100644 --- a/eos/effects/miningsquadroncommand.py +++ b/eos/effects/miningsquadroncommand.py @@ -4,6 +4,8 @@ # Skill: Mining Director runTime = "early" type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Director"), "commandBonus", skill.getModifiedItemAttr("squadronCommandBonus") * skill.level) diff --git a/eos/effects/miningupgradecpupenaltyreductionmodulesrequiringminingupgradepercent.py b/eos/effects/miningupgradecpupenaltyreductionmodulesrequiringminingupgradepercent.py index 867a3913c..f5afa70b6 100644 --- a/eos/effects/miningupgradecpupenaltyreductionmodulesrequiringminingupgradepercent.py +++ b/eos/effects/miningupgradecpupenaltyreductionmodulesrequiringminingupgradepercent.py @@ -4,7 +4,10 @@ # Implants named like: Inherent Implants 'Highwall' Mining Upgrades MU (3 of 3) # Skill: Mining Upgrades type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Upgrades"), - "cpuPenaltyPercent", container.getModifiedItemAttr("miningUpgradeCPUReductionBonus") * level) + "cpuPenaltyPercent", + container.getModifiedItemAttr("miningUpgradeCPUReductionBonus") * level) diff --git a/eos/effects/miningyieldgangbonusfixed.py b/eos/effects/miningyieldgangbonusfixed.py index 1b6a0a583..e597db001 100644 --- a/eos/effects/miningyieldgangbonusfixed.py +++ b/eos/effects/miningyieldgangbonusfixed.py @@ -5,6 +5,8 @@ type = "gang" gangBoost = "miningAmount" gangBonus = "miningAmountBonus" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), diff --git a/eos/effects/miningyieldmultiplypassive.py b/eos/effects/miningyieldmultiplypassive.py index a7c86d49e..13b45eb39 100644 --- a/eos/effects/miningyieldmultiplypassive.py +++ b/eos/effects/miningyieldmultiplypassive.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Venture (3 of 3) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedItemAttr("miningAmountMultiplier")) \ No newline at end of file + "miningAmount", module.getModifiedItemAttr("miningAmountMultiplier")) diff --git a/eos/effects/miningyieldmultiplypercent.py b/eos/effects/miningyieldmultiplypercent.py index d00198ab4..281b7169f 100644 --- a/eos/effects/miningyieldmultiplypercent.py +++ b/eos/effects/miningyieldmultiplypercent.py @@ -3,6 +3,8 @@ # Used by: # Variations of module: Mining Laser Upgrade I (5 of 5) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedItemAttr("miningAmountBonus")) \ No newline at end of file + "miningAmount", module.getModifiedItemAttr("miningAmountBonus")) diff --git a/eos/effects/minmatarshipewtargetpaintermc1.py b/eos/effects/minmatarshipewtargetpaintermc1.py index 77cdb088b..e1f9fcb2d 100644 --- a/eos/effects/minmatarshipewtargetpaintermc1.py +++ b/eos/effects/minmatarshipewtargetpaintermc1.py @@ -4,6 +4,9 @@ # Ship: Bellicose # Ship: Rapier type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") + "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMC"), + skill="Minmatar Cruiser") diff --git a/eos/effects/minmatarshipewtargetpaintermc2.py b/eos/effects/minmatarshipewtargetpaintermc2.py index 899ef2036..cb80fba62 100644 --- a/eos/effects/minmatarshipewtargetpaintermc2.py +++ b/eos/effects/minmatarshipewtargetpaintermc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Huginn type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/minmatarshipewtargetpaintermf2.py b/eos/effects/minmatarshipewtargetpaintermf2.py index 556db7d5b..0140a5d57 100644 --- a/eos/effects/minmatarshipewtargetpaintermf2.py +++ b/eos/effects/minmatarshipewtargetpaintermf2.py @@ -4,6 +4,9 @@ # Ship: Hyena # Ship: Vigil type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") + "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMF2"), + skill="Minmatar Frigate") diff --git a/eos/effects/minmatarshipewtargetpainterrookie.py b/eos/effects/minmatarshipewtargetpainterrookie.py index bab5d37d1..92b3330dc 100644 --- a/eos/effects/minmatarshipewtargetpainterrookie.py +++ b/eos/effects/minmatarshipewtargetpainterrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Reaper type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", "signatureRadiusBonus", ship.getModifiedItemAttr("rookieTargetPainterStrengthBonus")) diff --git a/eos/effects/missileaoecloudsizebonusonline.py b/eos/effects/missileaoecloudsizebonusonline.py index 11ebe04f2..bbc42b61b 100644 --- a/eos/effects/missileaoecloudsizebonusonline.py +++ b/eos/effects/missileaoecloudsizebonusonline.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Missile Guidance Enhancer (3 of 3) type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "aoeCloudSize", module.getModifiedItemAttr("aoeCloudSizeBonus"), diff --git a/eos/effects/missileaoevelocitybonusonline.py b/eos/effects/missileaoevelocitybonusonline.py index acfa8c8ec..e5d0d27c9 100644 --- a/eos/effects/missileaoevelocitybonusonline.py +++ b/eos/effects/missileaoevelocitybonusonline.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Missile Guidance Enhancer (3 of 3) type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "aoeVelocity", module.getModifiedItemAttr("aoeVelocityBonus"), diff --git a/eos/effects/missilebombardmentmaxflighttimebonuspostpercentexplosiondelayownercharmodulesrequiringmissilelauncheroperation.py b/eos/effects/missilebombardmentmaxflighttimebonuspostpercentexplosiondelayownercharmodulesrequiringmissilelauncheroperation.py index 30db4b96b..e7356d260 100644 --- a/eos/effects/missilebombardmentmaxflighttimebonuspostpercentexplosiondelayownercharmodulesrequiringmissilelauncheroperation.py +++ b/eos/effects/missilebombardmentmaxflighttimebonuspostpercentexplosiondelayownercharmodulesrequiringmissilelauncheroperation.py @@ -6,6 +6,8 @@ # Implant: Antipharmakon Toxot # Skill: Missile Bombardment type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 penalized = False if "skill" in context or "implant" in context or "booster" in context else True diff --git a/eos/effects/missiledmgbonus.py b/eos/effects/missiledmgbonus.py index f2604350b..d18ce2e30 100644 --- a/eos/effects/missiledmgbonus.py +++ b/eos/effects/missiledmgbonus.py @@ -4,8 +4,11 @@ # Modules from group: Ballistic Control system (17 of 17) # Modules named like: QA Multiship Module Players (4 of 4) type = "passive" + + def handler(fit, container, context): for dmgType in ("em", "kinetic", "explosive", "thermal"): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "%sDamage" % dmgType, container.getModifiedItemAttr("missileDamageMultiplierBonus"), - stackingPenalties = True) \ No newline at end of file + "%sDamage" % dmgType, + container.getModifiedItemAttr("missileDamageMultiplierBonus"), + stackingPenalties=True) diff --git a/eos/effects/missiledmgbonuspassive.py b/eos/effects/missiledmgbonuspassive.py index 1e32351e5..4934dc7cf 100644 --- a/eos/effects/missiledmgbonuspassive.py +++ b/eos/effects/missiledmgbonuspassive.py @@ -3,8 +3,11 @@ # Used by: # Modules named like: Warhead Calefaction Catalyst (8 of 8) type = "passive" + + def handler(fit, container, context): for dmgType in ("em", "kinetic", "explosive", "thermal"): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "%sDamage" % dmgType, container.getModifiedItemAttr("missileDamageMultiplierBonus"), - stackingPenalties = True) \ No newline at end of file + "%sDamage" % dmgType, + container.getModifiedItemAttr("missileDamageMultiplierBonus"), + stackingPenalties=True) diff --git a/eos/effects/missileemdmgbonus.py b/eos/effects/missileemdmgbonus.py index 27d7b7f70..4b745afd2 100644 --- a/eos/effects/missileemdmgbonus.py +++ b/eos/effects/missileemdmgbonus.py @@ -5,6 +5,8 @@ # Skill: Rockets # Skill: Torpedoes type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), "emDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missileemdmgbonuscruise3.py b/eos/effects/missileemdmgbonuscruise3.py index f75509d07..c7f718062 100644 --- a/eos/effects/missileemdmgbonuscruise3.py +++ b/eos/effects/missileemdmgbonuscruise3.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonusham.py b/eos/effects/missileemdmgbonusham.py index 369f792b5..93b008b9a 100644 --- a/eos/effects/missileemdmgbonusham.py +++ b/eos/effects/missileemdmgbonusham.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonusheavy.py b/eos/effects/missileemdmgbonusheavy.py index 32807bda7..35a8f634b 100644 --- a/eos/effects/missileemdmgbonusheavy.py +++ b/eos/effects/missileemdmgbonusheavy.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonusrocket.py b/eos/effects/missileemdmgbonusrocket.py index 8c17c10c0..cf4d1e826 100644 --- a/eos/effects/missileemdmgbonusrocket.py +++ b/eos/effects/missileemdmgbonusrocket.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonusstandard.py b/eos/effects/missileemdmgbonusstandard.py index 357be1063..82b69159a 100644 --- a/eos/effects/missileemdmgbonusstandard.py +++ b/eos/effects/missileemdmgbonusstandard.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonustorpedo.py b/eos/effects/missileemdmgbonustorpedo.py index f0910b5f4..82b228f3e 100644 --- a/eos/effects/missileemdmgbonustorpedo.py +++ b/eos/effects/missileemdmgbonustorpedo.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosiondelaybonusonline.py b/eos/effects/missileexplosiondelaybonusonline.py index 3f6949217..a23f9a2fe 100644 --- a/eos/effects/missileexplosiondelaybonusonline.py +++ b/eos/effects/missileexplosiondelaybonusonline.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Missile Guidance Enhancer (3 of 3) type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "explosionDelay", module.getModifiedItemAttr("explosionDelayBonus"), diff --git a/eos/effects/missileexplosivedmgbonus.py b/eos/effects/missileexplosivedmgbonus.py index 7d8c4f182..6f12347b3 100644 --- a/eos/effects/missileexplosivedmgbonus.py +++ b/eos/effects/missileexplosivedmgbonus.py @@ -5,6 +5,8 @@ # Skill: Rockets # Skill: Torpedoes type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), "explosiveDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missileexplosivedmgbonuscruise3.py b/eos/effects/missileexplosivedmgbonuscruise3.py index d9ec32d1f..861799510 100644 --- a/eos/effects/missileexplosivedmgbonuscruise3.py +++ b/eos/effects/missileexplosivedmgbonuscruise3.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "explosiveDamage",container.getModifiedItemAttr("damageMultiplierBonus")) + "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonusham.py b/eos/effects/missileexplosivedmgbonusham.py index 4943595cd..8000c3df0 100644 --- a/eos/effects/missileexplosivedmgbonusham.py +++ b/eos/effects/missileexplosivedmgbonusham.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonusheavy.py b/eos/effects/missileexplosivedmgbonusheavy.py index bda894ff9..dc68d5aed 100644 --- a/eos/effects/missileexplosivedmgbonusheavy.py +++ b/eos/effects/missileexplosivedmgbonusheavy.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonusrocket.py b/eos/effects/missileexplosivedmgbonusrocket.py index c6da4037d..437d99761 100644 --- a/eos/effects/missileexplosivedmgbonusrocket.py +++ b/eos/effects/missileexplosivedmgbonusrocket.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonusstandard.py b/eos/effects/missileexplosivedmgbonusstandard.py index b62945dc8..67c75f102 100644 --- a/eos/effects/missileexplosivedmgbonusstandard.py +++ b/eos/effects/missileexplosivedmgbonusstandard.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonustorpedo.py b/eos/effects/missileexplosivedmgbonustorpedo.py index 6f324f593..9611c2b22 100644 --- a/eos/effects/missileexplosivedmgbonustorpedo.py +++ b/eos/effects/missileexplosivedmgbonustorpedo.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileguidancecomputerbonus4.py b/eos/effects/missileguidancecomputerbonus4.py index d1295c657..a276fe2db 100644 --- a/eos/effects/missileguidancecomputerbonus4.py +++ b/eos/effects/missileguidancecomputerbonus4.py @@ -3,12 +3,14 @@ # Used by: # Modules from group: Missile Guidance Computer (3 of 3) type = "active" + + def handler(fit, container, context): for srcAttr, tgtAttr in ( - ("aoeCloudSizeBonus", "aoeCloudSize"), - ("aoeVelocityBonus", "aoeVelocity"), - ("missileVelocityBonus", "maxVelocity"), - ("explosionDelayBonus", "explosionDelay"), + ("aoeCloudSizeBonus", "aoeCloudSize"), + ("aoeVelocityBonus", "aoeVelocity"), + ("missileVelocityBonus", "maxVelocity"), + ("explosionDelayBonus", "explosionDelay"), ): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), tgtAttr, container.getModifiedItemAttr(srcAttr), diff --git a/eos/effects/missilekineticdmgbonus2.py b/eos/effects/missilekineticdmgbonus2.py index 5c476ec65..4de267555 100644 --- a/eos/effects/missilekineticdmgbonus2.py +++ b/eos/effects/missilekineticdmgbonus2.py @@ -5,6 +5,8 @@ # Skill: Rockets # Skill: Torpedoes type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), "kineticDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missilekineticdmgbonuscruise3.py b/eos/effects/missilekineticdmgbonuscruise3.py index e0cf8573f..7ce36c44b 100644 --- a/eos/effects/missilekineticdmgbonuscruise3.py +++ b/eos/effects/missilekineticdmgbonuscruise3.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonusham.py b/eos/effects/missilekineticdmgbonusham.py index a03ea8355..4a01de0bb 100644 --- a/eos/effects/missilekineticdmgbonusham.py +++ b/eos/effects/missilekineticdmgbonusham.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonusheavy.py b/eos/effects/missilekineticdmgbonusheavy.py index 577899c5e..56296feb1 100644 --- a/eos/effects/missilekineticdmgbonusheavy.py +++ b/eos/effects/missilekineticdmgbonusheavy.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonusrocket.py b/eos/effects/missilekineticdmgbonusrocket.py index 70a07aeaf..ab04fedf1 100644 --- a/eos/effects/missilekineticdmgbonusrocket.py +++ b/eos/effects/missilekineticdmgbonusrocket.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonusstandard.py b/eos/effects/missilekineticdmgbonusstandard.py index 2ec07fca8..e8f3714fa 100644 --- a/eos/effects/missilekineticdmgbonusstandard.py +++ b/eos/effects/missilekineticdmgbonusstandard.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonustorpedo.py b/eos/effects/missilekineticdmgbonustorpedo.py index b2cd9e427..de8d92fb6 100644 --- a/eos/effects/missilekineticdmgbonustorpedo.py +++ b/eos/effects/missilekineticdmgbonustorpedo.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilelauncherspeedmultiplier.py b/eos/effects/missilelauncherspeedmultiplier.py index 021bd7240..e9a3c1271 100644 --- a/eos/effects/missilelauncherspeedmultiplier.py +++ b/eos/effects/missilelauncherspeedmultiplier.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: Ballistic Control system (17 of 17) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/missilelauncherspeedmultiplierpassive.py b/eos/effects/missilelauncherspeedmultiplierpassive.py index 82d09ab03..6c3c147bb 100644 --- a/eos/effects/missilelauncherspeedmultiplierpassive.py +++ b/eos/effects/missilelauncherspeedmultiplierpassive.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Bay Loading Accelerator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/missileskillaoecloudsizebonus.py b/eos/effects/missileskillaoecloudsizebonus.py index 6d97e56cd..0e3bfdddf 100644 --- a/eos/effects/missileskillaoecloudsizebonus.py +++ b/eos/effects/missileskillaoecloudsizebonus.py @@ -5,6 +5,8 @@ # Modules named like: Warhead Rigor Catalyst (8 of 8) # Skill: Guided Missile Precision type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 penalize = False if "skill" in context or "implant" in context else True diff --git a/eos/effects/missileskillaoecloudsizebonusallincludingcapitals.py b/eos/effects/missileskillaoecloudsizebonusallincludingcapitals.py index 53a84ac3f..9593201fc 100644 --- a/eos/effects/missileskillaoecloudsizebonusallincludingcapitals.py +++ b/eos/effects/missileskillaoecloudsizebonusallincludingcapitals.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Crash Booster (4 of 4) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "aoeCloudSize", implant.getModifiedItemAttr("aoeCloudSizeBonus")) diff --git a/eos/effects/missileskillaoevelocitybonus.py b/eos/effects/missileskillaoevelocitybonus.py index a059eee93..28fdae111 100644 --- a/eos/effects/missileskillaoevelocitybonus.py +++ b/eos/effects/missileskillaoevelocitybonus.py @@ -5,6 +5,8 @@ # Modules named like: Warhead Flare Catalyst (8 of 8) # Skill: Target Navigation Prediction type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 penalize = False if "skill" in context or "implant" in context else True diff --git a/eos/effects/missileskillfofaoecloudsizebonus.py b/eos/effects/missileskillfofaoecloudsizebonus.py index 8dabd071c..cd3b2977c 100644 --- a/eos/effects/missileskillfofaoecloudsizebonus.py +++ b/eos/effects/missileskillfofaoecloudsizebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' FOF Explosion Radius FR (6 of 6) type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("FoF Missiles"), diff --git a/eos/effects/missileskillmissileprojectilevelocitybonus.py b/eos/effects/missileskillmissileprojectilevelocitybonus.py index 2168de284..3c7cee775 100644 --- a/eos/effects/missileskillmissileprojectilevelocitybonus.py +++ b/eos/effects/missileskillmissileprojectilevelocitybonus.py @@ -5,6 +5,8 @@ # Modules named like: Hydraulic Bay Thrusters (8 of 8) # Skill: Missile Projection type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 penalized = False if "skill" in context or "implant" in context else True diff --git a/eos/effects/missileskillrapidlauncherrof.py b/eos/effects/missileskillrapidlauncherrof.py index 7cba9d32a..9cdc9a0f6 100644 --- a/eos/effects/missileskillrapidlauncherrof.py +++ b/eos/effects/missileskillrapidlauncherrof.py @@ -7,7 +7,9 @@ # Skill: Missile Launcher Operation # Skill: Rapid Launch type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", container.getModifiedItemAttr("rofBonus") * level) + "speed", container.getModifiedItemAttr("rofBonus") * level) diff --git a/eos/effects/missileskillwarheadupgradesemdamagebonus.py b/eos/effects/missileskillwarheadupgradesemdamagebonus.py index 239ab1a20..352318e43 100644 --- a/eos/effects/missileskillwarheadupgradesemdamagebonus.py +++ b/eos/effects/missileskillwarheadupgradesemdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Warhead Upgrades type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "emDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "emDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missileskillwarheadupgradesexplosivedamagebonus.py b/eos/effects/missileskillwarheadupgradesexplosivedamagebonus.py index f738418b5..a466b5501 100644 --- a/eos/effects/missileskillwarheadupgradesexplosivedamagebonus.py +++ b/eos/effects/missileskillwarheadupgradesexplosivedamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Warhead Upgrades type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "explosiveDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missileskillwarheadupgradeskineticdamagebonus.py b/eos/effects/missileskillwarheadupgradeskineticdamagebonus.py index d907f8452..6d30090f7 100644 --- a/eos/effects/missileskillwarheadupgradeskineticdamagebonus.py +++ b/eos/effects/missileskillwarheadupgradeskineticdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Warhead Upgrades type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "kineticDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missileskillwarheadupgradesthermaldamagebonus.py b/eos/effects/missileskillwarheadupgradesthermaldamagebonus.py index dca7a5333..073831bac 100644 --- a/eos/effects/missileskillwarheadupgradesthermaldamagebonus.py +++ b/eos/effects/missileskillwarheadupgradesthermaldamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Warhead Upgrades type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "thermalDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missilethermaldmgbonus.py b/eos/effects/missilethermaldmgbonus.py index fba2a8979..162e5beb6 100644 --- a/eos/effects/missilethermaldmgbonus.py +++ b/eos/effects/missilethermaldmgbonus.py @@ -5,6 +5,8 @@ # Skill: Rockets # Skill: Torpedoes type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), "thermalDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missilethermaldmgbonuscruise3.py b/eos/effects/missilethermaldmgbonuscruise3.py index dd54307e3..47bd9feeb 100644 --- a/eos/effects/missilethermaldmgbonuscruise3.py +++ b/eos/effects/missilethermaldmgbonuscruise3.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonusham.py b/eos/effects/missilethermaldmgbonusham.py index 9e2225167..13e2d3398 100644 --- a/eos/effects/missilethermaldmgbonusham.py +++ b/eos/effects/missilethermaldmgbonusham.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonusheavy.py b/eos/effects/missilethermaldmgbonusheavy.py index 6235a950e..5e4087e84 100644 --- a/eos/effects/missilethermaldmgbonusheavy.py +++ b/eos/effects/missilethermaldmgbonusheavy.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonusrocket.py b/eos/effects/missilethermaldmgbonusrocket.py index 638db2d0e..20694a704 100644 --- a/eos/effects/missilethermaldmgbonusrocket.py +++ b/eos/effects/missilethermaldmgbonusrocket.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonusstandard.py b/eos/effects/missilethermaldmgbonusstandard.py index 0249a4792..49a8006e7 100644 --- a/eos/effects/missilethermaldmgbonusstandard.py +++ b/eos/effects/missilethermaldmgbonusstandard.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonustorpedo.py b/eos/effects/missilethermaldmgbonustorpedo.py index 77b9c2e00..22293eb06 100644 --- a/eos/effects/missilethermaldmgbonustorpedo.py +++ b/eos/effects/missilethermaldmgbonustorpedo.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilevelocitybonusdefender.py b/eos/effects/missilevelocitybonusdefender.py index 3ef92fa81..350eabe4d 100644 --- a/eos/effects/missilevelocitybonusdefender.py +++ b/eos/effects/missilevelocitybonusdefender.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: Zainou 'Snapshot' Defender Missiles DM (6 of 6) type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Defender Missiles"), "maxVelocity", container.getModifiedItemAttr("missileVelocityBonus")) diff --git a/eos/effects/missilevelocitybonusonline.py b/eos/effects/missilevelocitybonusonline.py index 947a2dfac..f04d47292 100644 --- a/eos/effects/missilevelocitybonusonline.py +++ b/eos/effects/missilevelocitybonusonline.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Missile Guidance Enhancer (3 of 3) type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", module.getModifiedItemAttr("missileVelocityBonus"), diff --git a/eos/effects/modeagilitypostdiv.py b/eos/effects/modeagilitypostdiv.py index 591290d5c..485100a7a 100644 --- a/eos/effects/modeagilitypostdiv.py +++ b/eos/effects/modeagilitypostdiv.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Propulsion Mode (4 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr( "agility", diff --git a/eos/effects/modearmorrepdurationpostdiv.py b/eos/effects/modearmorrepdurationpostdiv.py index ecfc76c1f..58f61b557 100644 --- a/eos/effects/modearmorrepdurationpostdiv.py +++ b/eos/effects/modearmorrepdurationpostdiv.py @@ -3,6 +3,8 @@ # Used by: # Module: Hecate Defense Mode type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply( lambda mod: mod.item.requiresSkill("Repair Systems"), diff --git a/eos/effects/modearmorresonancepostdiv.py b/eos/effects/modearmorresonancepostdiv.py index 708fafc9e..f6a744c4d 100644 --- a/eos/effects/modearmorresonancepostdiv.py +++ b/eos/effects/modearmorresonancepostdiv.py @@ -3,12 +3,14 @@ # Used by: # Modules named like: Defense Mode (3 of 4) type = "passive" + + def handler(fit, module, context): for srcResType, tgtResType in ( - ("Em", "Em"), - ("Explosive", "Explosive"), - ("Kinetic", "Kinetic"), - ("Thermic", "Thermal") + ("Em", "Em"), + ("Explosive", "Explosive"), + ("Kinetic", "Kinetic"), + ("Thermic", "Thermal") ): fit.ship.multiplyItemAttr( "armor{0}DamageResonance".format(tgtResType), diff --git a/eos/effects/modehullresonancepostdiv.py b/eos/effects/modehullresonancepostdiv.py index bc38b1e18..ae13c4b7d 100644 --- a/eos/effects/modehullresonancepostdiv.py +++ b/eos/effects/modehullresonancepostdiv.py @@ -3,12 +3,14 @@ # Used by: # Module: Hecate Defense Mode type = "passive" + + def handler(fit, module, context): for srcResType, tgtResType in ( - ("Em", "em"), - ("Explosive", "explosive"), - ("Kinetic", "kinetic"), - ("Thermic", "thermal") + ("Em", "em"), + ("Explosive", "explosive"), + ("Kinetic", "kinetic"), + ("Thermic", "thermal") ): fit.ship.multiplyItemAttr( "{0}DamageResonance".format(tgtResType), diff --git a/eos/effects/modemwdboostpostdiv.py b/eos/effects/modemwdboostpostdiv.py index 5669e906b..ad9ddf55e 100644 --- a/eos/effects/modemwdboostpostdiv.py +++ b/eos/effects/modemwdboostpostdiv.py @@ -3,6 +3,8 @@ # Used by: # Module: Hecate Propulsion Mode type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply( lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), diff --git a/eos/effects/modemwdcappostdiv.py b/eos/effects/modemwdcappostdiv.py index 7ad0ba151..6d16ea720 100644 --- a/eos/effects/modemwdcappostdiv.py +++ b/eos/effects/modemwdcappostdiv.py @@ -3,6 +3,8 @@ # Used by: # Module: Hecate Propulsion Mode type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply( lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), diff --git a/eos/effects/modemwdsigradiuspostdiv.py b/eos/effects/modemwdsigradiuspostdiv.py index 01421c82e..f1aeca8eb 100644 --- a/eos/effects/modemwdsigradiuspostdiv.py +++ b/eos/effects/modemwdsigradiuspostdiv.py @@ -3,6 +3,8 @@ # Used by: # Module: Svipul Defense Mode type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply( lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), diff --git a/eos/effects/modeshieldresonancepostdiv.py b/eos/effects/modeshieldresonancepostdiv.py index de5de9343..7213168b0 100644 --- a/eos/effects/modeshieldresonancepostdiv.py +++ b/eos/effects/modeshieldresonancepostdiv.py @@ -4,12 +4,14 @@ # Module: Jackdaw Defense Mode # Module: Svipul Defense Mode type = "passive" + + def handler(fit, module, context): for srcResType, tgtResType in ( - ("Em", "Em"), - ("Explosive", "Explosive"), - ("Kinetic", "Kinetic"), - ("Thermic", "Thermal") + ("Em", "Em"), + ("Explosive", "Explosive"), + ("Kinetic", "Kinetic"), + ("Thermic", "Thermal") ): fit.ship.multiplyItemAttr( "shield{0}DamageResonance".format(tgtResType), diff --git a/eos/effects/modesigradiuspostdiv.py b/eos/effects/modesigradiuspostdiv.py index 2b1dcfb88..7d3b69001 100644 --- a/eos/effects/modesigradiuspostdiv.py +++ b/eos/effects/modesigradiuspostdiv.py @@ -4,6 +4,8 @@ # Module: Confessor Defense Mode # Module: Jackdaw Defense Mode type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr("signatureRadius", 1 / module.getModifiedItemAttr("modeSignatureRadiusPostDiv"), stackingPenalties=True, penaltyGroup="postDiv") diff --git a/eos/effects/modevelocitypostdiv.py b/eos/effects/modevelocitypostdiv.py index a781893c6..d7895a700 100644 --- a/eos/effects/modevelocitypostdiv.py +++ b/eos/effects/modevelocitypostdiv.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Propulsion Mode (3 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr( "maxVelocity", diff --git a/eos/effects/modifyactivearmorresonancepostpercent.py b/eos/effects/modifyactivearmorresonancepostpercent.py index 3af14f816..be8b613a8 100644 --- a/eos/effects/modifyactivearmorresonancepostpercent.py +++ b/eos/effects/modifyactivearmorresonancepostpercent.py @@ -4,6 +4,8 @@ # Modules from group: Armor Hardener (156 of 156) # Modules from group: Flex Armor Hardener (4 of 4) type = "active" + + def handler(fit, module, context): for damageType in ("kinetic", "thermal", "explosive", "em"): fit.ship.boostItemAttr("armor%sDamageResonance" % damageType.capitalize(), diff --git a/eos/effects/modifyactiveshieldresonancepostpercent.py b/eos/effects/modifyactiveshieldresonancepostpercent.py index 8e78cc539..41e70a776 100644 --- a/eos/effects/modifyactiveshieldresonancepostpercent.py +++ b/eos/effects/modifyactiveshieldresonancepostpercent.py @@ -4,6 +4,8 @@ # Modules from group: Flex Shield Hardener (5 of 5) # Modules from group: Shield Hardener (97 of 97) type = "active" + + def handler(fit, module, context): for damageType in ("kinetic", "thermal", "explosive", "em"): fit.ship.boostItemAttr("shield" + damageType.capitalize() + "DamageResonance", diff --git a/eos/effects/modifyarmorresonancepassivepreassignment.py b/eos/effects/modifyarmorresonancepassivepreassignment.py index 082ddf0a4..2316b8c19 100644 --- a/eos/effects/modifyarmorresonancepassivepreassignment.py +++ b/eos/effects/modifyarmorresonancepassivepreassignment.py @@ -3,6 +3,9 @@ # Used by: # Subsystems from group: Defensive Systems (16 of 16) type = "passive" + + def handler(fit, module, context): for type in ("Em", "Explosive", "Kinetic", "Thermal"): - fit.ship.preAssignItemAttr("armor{0}DamageResonance".format(type), module.getModifiedItemAttr("passiveArmor{0}DamageResonance".format(type))) + fit.ship.preAssignItemAttr("armor{0}DamageResonance".format(type), + module.getModifiedItemAttr("passiveArmor{0}DamageResonance".format(type))) diff --git a/eos/effects/modifyarmorresonancepostpercent.py b/eos/effects/modifyarmorresonancepostpercent.py index 4280c9849..f5316cb3a 100644 --- a/eos/effects/modifyarmorresonancepostpercent.py +++ b/eos/effects/modifyarmorresonancepostpercent.py @@ -4,8 +4,10 @@ # Modules from group: Armor Coating (202 of 202) # Modules from group: Armor Plating Energized (187 of 187) type = "passive" + + def handler(fit, module, context): for type in ("kinetic", "thermal", "explosive", "em"): fit.ship.boostItemAttr("armor%sDamageResonance" % type.capitalize(), module.getModifiedItemAttr("%sDamageResistanceBonus" % type), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/modifyarmorresonancepostpercentpassive.py b/eos/effects/modifyarmorresonancepostpercentpassive.py index 56ddf5fe7..3478f268f 100644 --- a/eos/effects/modifyarmorresonancepostpercentpassive.py +++ b/eos/effects/modifyarmorresonancepostpercentpassive.py @@ -3,8 +3,10 @@ # Used by: # Modules named like: Anti Pump (32 of 32) type = "passive" + + def handler(fit, module, context): for type in ("kinetic", "thermal", "explosive", "em"): fit.ship.boostItemAttr("armor" + type.capitalize() + "DamageResonance", module.getModifiedItemAttr(type + "DamageResistanceBonus") or 0, - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modifyboostereffectchancewithboosterchancebonuspostpercent.py b/eos/effects/modifyboostereffectchancewithboosterchancebonuspostpercent.py index 413c9afae..6f123d02c 100644 --- a/eos/effects/modifyboostereffectchancewithboosterchancebonuspostpercent.py +++ b/eos/effects/modifyboostereffectchancewithboosterchancebonuspostpercent.py @@ -4,9 +4,11 @@ # Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Recovery NR (2 of 2) # Skill: Neurotoxin Recovery type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 for i in xrange(5): - attr = "boosterEffectChance{0}".format(i+1) + attr = "boosterEffectChance{0}".format(i + 1) fit.boosters.filteredItemBoost(lambda booster: attr in booster.itemModifiedAttributes, attr, container.getModifiedItemAttr("boosterChanceBonus") * level) diff --git a/eos/effects/modifyenergywarfareresistance.py b/eos/effects/modifyenergywarfareresistance.py index e7aacdb74..8cffe1386 100644 --- a/eos/effects/modifyenergywarfareresistance.py +++ b/eos/effects/modifyenergywarfareresistance.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: Capacitor Battery (27 of 27) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("energyWarfareResistance", - module.getModifiedItemAttr("energyWarfareResistanceBonus"), - stackingPenalties = True) + module.getModifiedItemAttr("energyWarfareResistanceBonus"), + stackingPenalties=True) diff --git a/eos/effects/modifymaxvelocityofshippassive.py b/eos/effects/modifymaxvelocityofshippassive.py index 62670476a..02ef1fc35 100644 --- a/eos/effects/modifymaxvelocityofshippassive.py +++ b/eos/effects/modifymaxvelocityofshippassive.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Expanded Cargohold (7 of 7) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr("maxVelocity", module.getModifiedItemAttr("maxVelocityBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/modifypowerrechargerate.py b/eos/effects/modifypowerrechargerate.py index c06cac114..95814ce8c 100644 --- a/eos/effects/modifypowerrechargerate.py +++ b/eos/effects/modifypowerrechargerate.py @@ -8,5 +8,7 @@ # Modules from group: Reactor Control Unit (22 of 22) # Modules from group: Shield Power Relay (6 of 6) type = "passive" + + def handler(fit, module, context): - fit.ship.multiplyItemAttr("rechargeRate", module.getModifiedItemAttr("capacitorRechargeRateMultiplier")) \ No newline at end of file + fit.ship.multiplyItemAttr("rechargeRate", module.getModifiedItemAttr("capacitorRechargeRateMultiplier")) diff --git a/eos/effects/modifyshieldrechargerate.py b/eos/effects/modifyshieldrechargerate.py index 845ba1788..2a1c209ad 100644 --- a/eos/effects/modifyshieldrechargerate.py +++ b/eos/effects/modifyshieldrechargerate.py @@ -8,5 +8,7 @@ # Modules named like: Flux Coil (12 of 12) # Modules named like: QA Multiship Module Players (4 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr("shieldRechargeRate", module.getModifiedItemAttr("shieldRechargeRateMultiplier") or 1) diff --git a/eos/effects/modifyshieldrechargeratepassive.py b/eos/effects/modifyshieldrechargeratepassive.py index d9edb75c1..f66994415 100644 --- a/eos/effects/modifyshieldrechargeratepassive.py +++ b/eos/effects/modifyshieldrechargeratepassive.py @@ -3,5 +3,7 @@ # Used by: # Modules named like: Processor Overclocking Unit (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr("shieldRechargeRate", module.getModifiedItemAttr("shieldRechargeRateMultiplier")) diff --git a/eos/effects/modifyshieldresonancepassivepreassignment.py b/eos/effects/modifyshieldresonancepassivepreassignment.py index 9df86f780..62a3aaa3f 100644 --- a/eos/effects/modifyshieldresonancepassivepreassignment.py +++ b/eos/effects/modifyshieldresonancepassivepreassignment.py @@ -3,6 +3,9 @@ # Used by: # Subsystems from group: Defensive Systems (16 of 16) type = "passive" + + def handler(fit, module, context): for type in ("Em", "Explosive", "Kinetic", "Thermal"): - fit.ship.preAssignItemAttr("shield{0}DamageResonance".format(type), module.getModifiedItemAttr("passiveShield{0}DamageResonance".format(type))) + fit.ship.preAssignItemAttr("shield{0}DamageResonance".format(type), + module.getModifiedItemAttr("passiveShield{0}DamageResonance".format(type))) diff --git a/eos/effects/modifyshieldresonancepostpercent.py b/eos/effects/modifyshieldresonancepostpercent.py index 3b2dcacb2..93125bf7c 100644 --- a/eos/effects/modifyshieldresonancepostpercent.py +++ b/eos/effects/modifyshieldresonancepostpercent.py @@ -3,8 +3,10 @@ # Used by: # Modules from group: Shield Resistance Amplifier (88 of 88) type = "passive" + + def handler(fit, module, context): for type in ("kinetic", "thermal", "explosive", "em"): fit.ship.boostItemAttr("shield%sDamageResonance" % type.capitalize(), module.getModifiedItemAttr("%sDamageResistanceBonus" % type), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/modifyshieldresonancepostpercentpassive.py b/eos/effects/modifyshieldresonancepostpercentpassive.py index 683965b78..dfb7b35a8 100644 --- a/eos/effects/modifyshieldresonancepostpercentpassive.py +++ b/eos/effects/modifyshieldresonancepostpercentpassive.py @@ -3,8 +3,10 @@ # Used by: # Modules named like: Anti Screen Reinforcer (32 of 32) type = "passive" + + def handler(fit, module, context): for type in ("kinetic", "thermal", "explosive", "em"): fit.ship.boostItemAttr("shield" + type.capitalize() + "DamageResonance", module.getModifiedItemAttr(type + "DamageResistanceBonus") or 0, - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modifyshipagilitypassivepreassignment.py b/eos/effects/modifyshipagilitypassivepreassignment.py index 7daab7695..e06ad8b51 100644 --- a/eos/effects/modifyshipagilitypassivepreassignment.py +++ b/eos/effects/modifyshipagilitypassivepreassignment.py @@ -4,5 +4,7 @@ # Subsystems from group: Propulsion Systems (16 of 16) runTime = "early" type = "passive" + + def handler(fit, module, context): fit.ship.preAssignItemAttr("agility", module.getModifiedItemAttr("agility")) diff --git a/eos/effects/modulebonusancillaryremotearmorrepairer.py b/eos/effects/modulebonusancillaryremotearmorrepairer.py index ba176a64f..c3c157b81 100644 --- a/eos/effects/modulebonusancillaryremotearmorrepairer.py +++ b/eos/effects/modulebonusancillaryremotearmorrepairer.py @@ -4,6 +4,8 @@ # Modules from group: Ancillary Remote Armor Repairer (4 of 4) runTime = "late" type = "projected", "active" + + def handler(fit, module, context): if "projected" not in context: return @@ -14,4 +16,4 @@ def handler(fit, module, context): amount = module.getModifiedItemAttr("armorDamageAmount") * multiplier speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("armorRepair", amount / speed) \ No newline at end of file + fit.extraAttributes.increase("armorRepair", amount / speed) diff --git a/eos/effects/modulebonusancillaryremoteshieldbooster.py b/eos/effects/modulebonusancillaryremoteshieldbooster.py index 2aab65f2a..74443b269 100644 --- a/eos/effects/modulebonusancillaryremoteshieldbooster.py +++ b/eos/effects/modulebonusancillaryremoteshieldbooster.py @@ -4,8 +4,10 @@ # Modules from group: Ancillary Remote Shield Booster (4 of 4) runTime = "late" type = "projected", "active" + + def handler(fit, module, context): if "projected" not in context: return amount = module.getModifiedItemAttr("shieldBonus") speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("shieldRepair", amount / speed) \ No newline at end of file + fit.extraAttributes.increase("shieldRepair", amount / speed) diff --git a/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py b/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py index d537f13ce..c57048020 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py +++ b/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py @@ -4,9 +4,12 @@ # Variations of module: Armored Warfare Link - Damage Control I (2 of 2) type = "gang", "active" gangBoost = "armorRepairCapacitorNeed" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), - "capacitorNeed", module.getModifiedItemAttr("commandBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), + "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py b/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py index f83745ebf..50783dc4b 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py +++ b/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py @@ -4,11 +4,13 @@ # Variations of module: Armored Warfare Link - Passive Defense I (2 of 2) type = "gang", "active" gangBoost = "armorResistance" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return for damageType in ("Em", "Thermal", "Explosive", "Kinetic"): fit.ship.boostItemAttr("armor%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py b/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py index 9575779e4..805dcc862 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py +++ b/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py @@ -4,9 +4,12 @@ # Variations of module: Armored Warfare Link - Rapid Repair I (2 of 2) type = "gang", "active" gangBoost = "armorRepairDuration" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), - "duration", module.getModifiedItemAttr("commandBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), + "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonusbastionmodule.py b/eos/effects/modulebonusbastionmodule.py index 9151b73da..cbf2e03c8 100644 --- a/eos/effects/modulebonusbastionmodule.py +++ b/eos/effects/modulebonusbastionmodule.py @@ -4,6 +4,8 @@ # Module: Bastion Module I type = "active" runTime = "early" + + def handler(fit, src, context): # Resistances for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): @@ -17,20 +19,20 @@ def handler(fit, src, context): # Turrets fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or \ - mod.item.requiresSkill("Large Hybrid Turret") or \ - mod.item.requiresSkill("Large Projectile Turret"), + mod.item.requiresSkill("Large Hybrid Turret") or \ + mod.item.requiresSkill("Large Projectile Turret"), "maxRange", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or \ - mod.item.requiresSkill("Large Hybrid Turret") or \ - mod.item.requiresSkill("Large Projectile Turret"), + mod.item.requiresSkill("Large Hybrid Turret") or \ + mod.item.requiresSkill("Large Projectile Turret"), "falloff", src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) # Missiles fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes") or \ - mod.charge.requiresSkill("Cruise Missiles") or \ - mod.charge.requiresSkill("Heavy Missiles"), + mod.charge.requiresSkill("Cruise Missiles") or \ + mod.charge.requiresSkill("Heavy Missiles"), "maxVelocity", src.getModifiedItemAttr("missileVelocityBonus")) # Tanking @@ -60,7 +62,8 @@ def handler(fit, src, context): fit.ship.boostItemAttr("remoteRepairImpedance", src.getModifiedItemAttr("remoteRepairImpedanceBonus")) fit.ship.boostItemAttr("remoteAssistanceImpedance", src.getModifiedItemAttr("remoteAssistanceImpedanceBonus")) fit.ship.boostItemAttr("sensorDampenerResistance", src.getModifiedItemAttr("sensorDampenerResistanceBonus")) - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Micro Jump Drive Operation"), "activationBlocked", src.getModifiedItemAttr("activationBlockedStrenght")) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Micro Jump Drive Operation"), + "activationBlocked", src.getModifiedItemAttr("activationBlockedStrenght")) fit.ship.boostItemAttr("targetPainterResistance", src.getModifiedItemAttr("targetPainterResistanceBonus")) fit.ship.boostItemAttr("weaponDisruptionResistance", src.getModifiedItemAttr("weaponDisruptionResistanceBonus")) fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("siegeModeWarpStatus")) diff --git a/eos/effects/modulebonuscapitaldronedurabilityenhancer.py b/eos/effects/modulebonuscapitaldronedurabilityenhancer.py index f8e4a8ab6..754bbf2f1 100644 --- a/eos/effects/modulebonuscapitaldronedurabilityenhancer.py +++ b/eos/effects/modulebonuscapitaldronedurabilityenhancer.py @@ -3,9 +3,15 @@ # Used by: # Variations of module: Capital Drone Durability Enhancer I (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", src.getModifiedItemAttr("hullHpBonus")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", src.getModifiedItemAttr("hullHpBonus")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", src.getModifiedItemAttr("hullHpBonus")) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", src.getModifiedItemAttr("hullHpBonus")) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", + src.getModifiedItemAttr("hullHpBonus")) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", + src.getModifiedItemAttr("hullHpBonus")) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", + src.getModifiedItemAttr("hullHpBonus")) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", + src.getModifiedItemAttr("hullHpBonus")) fit.ship.boostItemAttr("cpuOutput", src.getModifiedItemAttr("drawback")) diff --git a/eos/effects/modulebonuscapitaldronescopechip.py b/eos/effects/modulebonuscapitaldronescopechip.py index 03337760f..68be67520 100644 --- a/eos/effects/modulebonuscapitaldronescopechip.py +++ b/eos/effects/modulebonuscapitaldronescopechip.py @@ -3,9 +3,17 @@ # Used by: # Variations of module: Capital Drone Scope Chip I (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileRangeOptimal", src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", + src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", + src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("rangeSkillBonus"), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileRangeOptimal", + src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) fit.ship.boostItemAttr("cpuOutput", src.getModifiedItemAttr("drawback")) diff --git a/eos/effects/modulebonuscapitaldronespeedaugmentor.py b/eos/effects/modulebonuscapitaldronespeedaugmentor.py index 1fb64a671..c98e00110 100644 --- a/eos/effects/modulebonuscapitaldronespeedaugmentor.py +++ b/eos/effects/modulebonuscapitaldronespeedaugmentor.py @@ -3,7 +3,11 @@ # Used by: # Variations of module: Capital Drone Speed Augmentor I (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", src.getModifiedItemAttr("droneMaxVelocityBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", src.getModifiedItemAttr("droneMaxVelocityBonus"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", + src.getModifiedItemAttr("droneMaxVelocityBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", + src.getModifiedItemAttr("droneMaxVelocityBonus"), stackingPenalties=True) fit.ship.boostItemAttr("cpuOutput", src.getModifiedItemAttr("drawback")) diff --git a/eos/effects/modulebonusdronedamageamplifier.py b/eos/effects/modulebonusdronedamageamplifier.py index 09bb40dec..f37ea4a1d 100644 --- a/eos/effects/modulebonusdronedamageamplifier.py +++ b/eos/effects/modulebonusdronedamageamplifier.py @@ -3,8 +3,17 @@ # Used by: # Modules from group: Drone Damage Modules (11 of 11) type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", + src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) diff --git a/eos/effects/modulebonusdronenavigationcomputer.py b/eos/effects/modulebonusdronenavigationcomputer.py index 6cf0e7122..9c7f9e777 100644 --- a/eos/effects/modulebonusdronenavigationcomputer.py +++ b/eos/effects/modulebonusdronenavigationcomputer.py @@ -3,6 +3,10 @@ # Used by: # Modules from group: Drone Navigation Computer (8 of 8) type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", + src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", + src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) diff --git a/eos/effects/modulebonusfightersupportunit.py b/eos/effects/modulebonusfightersupportunit.py index 3681f1c1c..64906e62a 100644 --- a/eos/effects/modulebonusfightersupportunit.py +++ b/eos/effects/modulebonusfightersupportunit.py @@ -3,10 +3,19 @@ # Used by: # Modules from group: Fighter Support Unit (8 of 8) type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", src.getModifiedItemAttr("fighterBonusShieldCapacityPercent")) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", src.getModifiedItemAttr("fighterBonusVelocityPercent"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDuration", src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDuration", src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDuration", src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldRechargeRate", src.getModifiedItemAttr("fighterBonusShieldRechargePercent")) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", + src.getModifiedItemAttr("fighterBonusShieldCapacityPercent")) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", + src.getModifiedItemAttr("fighterBonusVelocityPercent"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDuration", + src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDuration", + src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDuration", + src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldRechargeRate", + src.getModifiedItemAttr("fighterBonusShieldRechargePercent")) diff --git a/eos/effects/modulebonusinformationwarfarelinkelectronicsuperiority.py b/eos/effects/modulebonusinformationwarfarelinkelectronicsuperiority.py index 1c99889aa..be7fdb918 100644 --- a/eos/effects/modulebonusinformationwarfarelinkelectronicsuperiority.py +++ b/eos/effects/modulebonusinformationwarfarelinkelectronicsuperiority.py @@ -4,6 +4,7 @@ # Variations of module: Information Warfare Link - Electronic Superiority I (2 of 2) type = "active" + def handler(fit, module, context): module.multiplyItemAttr("commandBonusTD", module.getModifiedItemAttr("commandBonusHidden")) module.multiplyItemAttr("commandBonusECM", module.getModifiedItemAttr("commandBonusHidden")) diff --git a/eos/effects/modulebonusinformationwarfarelinkreconoperation.py b/eos/effects/modulebonusinformationwarfarelinkreconoperation.py index 123ab066e..459a8d15c 100644 --- a/eos/effects/modulebonusinformationwarfarelinkreconoperation.py +++ b/eos/effects/modulebonusinformationwarfarelinkreconoperation.py @@ -4,11 +4,13 @@ # Variations of module: Information Warfare Link - Recon Operation I (2 of 2) type = "gang", "active" gangBoost = "electronicMaxRange" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return groups = ("Target Painter", "Weapon Disruptor", "Sensor Dampener", "ECM", "Burst Jammer") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py b/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py index 49af64bfe..a82b0e0a2 100644 --- a/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py +++ b/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py @@ -5,13 +5,15 @@ type = "gang", "active" gangBoost = "maxTargetRange" gangBonus = "commandBonus" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) for scanType in ("Gravimetric", "Radar", "Ladar", "Magnetometric"): fit.ship.boostItemAttr("scan%sStrength" % scanType, module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py b/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py index d86fbfc35..e34bb129c 100644 --- a/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py +++ b/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py @@ -4,10 +4,12 @@ # Variations of module: Mining Foreman Link - Harvester Capacitor Efficiency I (2 of 2) type = "gang", "active" gangBoost = "miningCapacitorNeed" + + def handler(fit, module, context): if "gang" not in context: return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "capacitorNeed", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modulebonusminingforemanlinklaseroptimization.py b/eos/effects/modulebonusminingforemanlinklaseroptimization.py index a1eb89913..611319f68 100644 --- a/eos/effects/modulebonusminingforemanlinklaseroptimization.py +++ b/eos/effects/modulebonusminingforemanlinklaseroptimization.py @@ -4,10 +4,12 @@ # Variations of module: Mining Foreman Link - Laser Optimization I (2 of 2) type = "gang", "active" gangBoost = "miningDuration" + + def handler(fit, module, context): if "gang" not in context: return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "duration", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py b/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py index 8d47866bd..c6c85cac6 100644 --- a/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py +++ b/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py @@ -4,10 +4,13 @@ # Variations of module: Mining Foreman Link - Mining Laser Field Enhancement I (2 of 2) type = "gang", "active" gangBoost = "miningMaxRange" + + def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting") or mod.item.requiresSkill("Ice Harvesting") or mod.item.requiresSkill("Mining"), + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting") or mod.item.requiresSkill( + "Ice Harvesting") or mod.item.requiresSkill("Mining"), "maxRange", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("CPU Management"), "surveyScanRange", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonusnetworkedsensorarray.py b/eos/effects/modulebonusnetworkedsensorarray.py index 7db715bfd..fb58a5928 100644 --- a/eos/effects/modulebonusnetworkedsensorarray.py +++ b/eos/effects/modulebonusnetworkedsensorarray.py @@ -3,6 +3,8 @@ # Used by: # Module: Networked Sensor Array type = "active" + + def handler(fit, src, context): fit.ship.boostItemAttr("scanResolution", src.getModifiedItemAttr("scanResolutionBonus"), stackingPenalties=True) @@ -10,7 +12,8 @@ def handler(fit, src, context): attr = "scan{}Strength".format(scanType) bonus = src.getModifiedItemAttr("scan{}StrengthPercent".format(scanType)) fit.ship.boostItemAttr(attr, bonus, stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), attr, bonus, stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), attr, bonus, + stackingPenalties=True) # EW cap need increase groups = [ @@ -23,4 +26,4 @@ def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups or mod.item.requiresSkill("Propulsion Jamming"), - "capacitorNeed", src.getModifiedItemAttr("ewCapacitorNeedBonus")) \ No newline at end of file + "capacitorNeed", src.getModifiedItemAttr("ewCapacitorNeedBonus")) diff --git a/eos/effects/modulebonusomnidirectionaltrackingenhancer.py b/eos/effects/modulebonusomnidirectionaltrackingenhancer.py index a19974d21..c6e8884e5 100644 --- a/eos/effects/modulebonusomnidirectionaltrackingenhancer.py +++ b/eos/effects/modulebonusomnidirectionaltrackingenhancer.py @@ -3,17 +3,41 @@ # Used by: # Modules from group: Drone Tracking Enhancer (10 of 10) type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileExplosionRadius", src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretRangeFalloff", src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesExplosionRadius", src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "falloff", src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileRangeFalloff", src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretTrackingSpeed", src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "trackingSpeed", src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesExplosionVelocity", src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileExplosionVelocity", src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileExplosionRadius", + src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretRangeFalloff", src.getModifiedItemAttr("falloffBonus"), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesExplosionRadius", + src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "falloff", + src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileRangeFalloff", src.getModifiedItemAttr("falloffBonus"), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretTrackingSpeed", + src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", + src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "trackingSpeed", + src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesExplosionVelocity", + src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileExplosionVelocity", + src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", + src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) diff --git a/eos/effects/modulebonusomnidirectionaltrackinglink.py b/eos/effects/modulebonusomnidirectionaltrackinglink.py index d791b359b..d589475bd 100644 --- a/eos/effects/modulebonusomnidirectionaltrackinglink.py +++ b/eos/effects/modulebonusomnidirectionaltrackinglink.py @@ -3,17 +3,41 @@ # Used by: # Modules from group: Drone Tracking Modules (10 of 10) type = "active" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretRangeFalloff", src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesExplosionVelocity", src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "trackingSpeed", src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileExplosionRadius", src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretTrackingSpeed", src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesExplosionRadius", src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "falloff", src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileExplosionVelocity", src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileRangeFalloff", src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretRangeFalloff", src.getModifiedItemAttr("falloffBonus"), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesExplosionVelocity", + src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "trackingSpeed", + src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileExplosionRadius", + src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretTrackingSpeed", + src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesExplosionRadius", + src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", + src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), + stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "falloff", + src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileExplosionVelocity", + src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileRangeFalloff", src.getModifiedItemAttr("falloffBonus"), + stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", + src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), + stackingPenalties=True) diff --git a/eos/effects/modulebonusomnidirectionaltrackinglinkoverload.py b/eos/effects/modulebonusomnidirectionaltrackinglinkoverload.py index 4605d70c2..cb4d4b21e 100644 --- a/eos/effects/modulebonusomnidirectionaltrackinglinkoverload.py +++ b/eos/effects/modulebonusomnidirectionaltrackinglinkoverload.py @@ -3,10 +3,12 @@ # Used by: # Modules from group: Drone Tracking Modules (10 of 10) type = "overheat" + + def handler(fit, module, context): overloadBonus = module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus") module.boostItemAttr("maxRangeBonus", overloadBonus) module.boostItemAttr("falloffBonus", overloadBonus) module.boostItemAttr("trackingSpeedBonus", overloadBonus) module.boostItemAttr("aoeCloudSizeBonus", overloadBonus) - module.boostItemAttr("aoeVelocityBonus", overloadBonus) \ No newline at end of file + module.boostItemAttr("aoeVelocityBonus", overloadBonus) diff --git a/eos/effects/modulebonussiegemodule.py b/eos/effects/modulebonussiegemodule.py index bb5258be6..885255b33 100644 --- a/eos/effects/modulebonussiegemodule.py +++ b/eos/effects/modulebonussiegemodule.py @@ -4,23 +4,25 @@ # Variations of module: Siege Module I (2 of 2) type = "active" runTime = "early" + + def handler(fit, src, context): - #Turrets + # Turrets fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret") or \ - mod.item.requiresSkill("Capital Hybrid Turret") or \ - mod.item.requiresSkill("Capital Projectile Turret"), + mod.item.requiresSkill("Capital Hybrid Turret") or \ + mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", src.getModifiedItemAttr("siegeTurretDamageBonus")) - #Missiles + # Missiles for type in ("kinetic", "thermal", "explosive", "em"): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes") or \ - mod.charge.requiresSkill("XL Cruise Missiles") or \ - mod.charge.requiresSkill("Torpedoes"), + mod.charge.requiresSkill("XL Cruise Missiles") or \ + mod.charge.requiresSkill("Torpedoes"), "%sDamage" % type, src.getModifiedItemAttr("siegeMissileDamageBonus")) # Reppers fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation") or \ - mod.item.requiresSkill("Capital Repair Systems"), + mod.item.requiresSkill("Capital Repair Systems"), "duration", src.getModifiedItemAttr("siegeLocalLogisticsDurationBonus")) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), @@ -31,24 +33,26 @@ def handler(fit, src, context): "armorDamageAmount", src.getModifiedItemAttr("siegeLocalLogisticsAmountBonus"), stackingPenalties=True) - #Speed penalty + # Speed penalty fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("speedFactor")) - #Mass + # Mass fit.ship.multiplyItemAttr("mass", src.getModifiedItemAttr("siegeMassMultiplier"), stackingPenalties=True, penaltyGroup="postMul") # @ todo: test for April 2016 release - #Block Hostile EWAR and friendly effects + # Block Hostile EWAR and friendly effects fit.ship.forceItemAttr("disallowOffensiveModifiers", src.getModifiedItemAttr("disallowOffensiveModifiers")) fit.ship.forceItemAttr("disallowAssistance", src.getModifiedItemAttr("disallowAssistance")) # new in April 2016 release # missile ROF bonus for group in ("Missile Launcher XL Torpedo", "Missile Launcher Rapid Torpedo", "Missile Launcher XL Cruise"): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == group, "speed", src.getModifiedItemAttr("siegeLauncherROFBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == group, "speed", + src.getModifiedItemAttr("siegeLauncherROFBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", src.getModifiedItemAttr("siegeTorpedoVelocityBonus"), stackingPenalties=True) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", + src.getModifiedItemAttr("siegeTorpedoVelocityBonus"), stackingPenalties=True) fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("siegeModeWarpStatus")) fit.ship.boostItemAttr("remoteRepairImpedance", src.getModifiedItemAttr("remoteRepairImpedanceBonus")) diff --git a/eos/effects/modulebonussiegewarfarelinkactiveshielding.py b/eos/effects/modulebonussiegewarfarelinkactiveshielding.py index a24ddcedc..374547e9e 100644 --- a/eos/effects/modulebonussiegewarfarelinkactiveshielding.py +++ b/eos/effects/modulebonussiegewarfarelinkactiveshielding.py @@ -4,9 +4,12 @@ # Variations of module: Siege Warfare Link - Active Shielding I (2 of 2) type = "gang", "active" gangBoost = "shieldRepairDuration" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), - "duration", module.getModifiedItemAttr("commandBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), + "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py b/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py index 52f0d64d0..c47100854 100644 --- a/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py +++ b/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py @@ -4,9 +4,12 @@ # Variations of module: Siege Warfare Link - Shield Efficiency I (2 of 2) type = "gang", "active" gangBoost = "shieldRepairCapacitorNeed" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), - "capacitorNeed", module.getModifiedItemAttr("commandBonus")) \ No newline at end of file + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), + "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py b/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py index 663a7ecc0..87dee5ff1 100644 --- a/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py +++ b/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py @@ -3,12 +3,14 @@ # Used by: # Variations of module: Siege Warfare Link - Shield Harmonizing I (2 of 2) type = "gang", "active" -#runTime = "late" +# runTime = "late" gangBoost = "shieldResistance" + + def handler(fit, module, context): if "gang" not in context: return for damageType in ("Em", "Explosive", "Thermal", "Kinetic"): fit.ship.boostItemAttr("shield%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py b/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py index 615ec0e10..233464c07 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py +++ b/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py @@ -4,9 +4,11 @@ # Variations of module: Skirmish Warfare Link - Evasive Maneuvers I (2 of 2) type = "gang", "active" gangBoost = "signatureRadius" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py b/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py index ac6897113..4a413e03e 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py +++ b/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py @@ -4,11 +4,13 @@ # Variations of module: Skirmish Warfare Link - Interdiction Maneuvers I (2 of 2) type = "gang", "active" gangBoost = "interdictionMaxRange" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return groups = ("Stasis Web", "Warp Scrambler") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py b/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py index f26737711..297f2ebcf 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py +++ b/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py @@ -4,7 +4,9 @@ # Variations of module: Skirmish Warfare Link - Rapid Deployment I (2 of 2) type = "gang", "active" gangBoost = "speedFactor" -#runTime = "late" + + +# runTime = "late" def handler(fit, module, context): if "gang" not in context: return diff --git a/eos/effects/modulebonustriagemodule.py b/eos/effects/modulebonustriagemodule.py index 30384fdb2..3474de594 100644 --- a/eos/effects/modulebonustriagemodule.py +++ b/eos/effects/modulebonustriagemodule.py @@ -4,31 +4,40 @@ # Variations of module: Triage Module I (2 of 2) type = "active" runTime = "early" + + def handler(fit, src, context): # Remote effect bonuses (duration / amount / range / fallout) for skill, amtAttr, stack in ( - ("Capital Remote Armor Repair Systems", "armorDamageAmount", True), - ("Capital Shield Emission Systems", "shieldBonus", True), - ("Capital Capacitor Emission Systems", "powerTransferAmount", False), - ("Capital Remote Hull Repair Systems", "structureDamageAmount", False)): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "duration", src.getModifiedItemAttr("siegeRemoteLogisticsDurationBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), amtAttr, src.getModifiedItemAttr("siegeRemoteLogisticsAmountBonus"), stackingPenalties=stack) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "maxRange", src.getModifiedItemAttr("siegeRemoteLogisticsRangeBonus"), stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "falloffEffectiveness", src.getModifiedItemAttr("siegeRemoteLogisticsRangeBonus"), stackingPenalties=True) + ("Capital Remote Armor Repair Systems", "armorDamageAmount", True), + ("Capital Shield Emission Systems", "shieldBonus", True), + ("Capital Capacitor Emission Systems", "powerTransferAmount", False), + ("Capital Remote Hull Repair Systems", "structureDamageAmount", False)): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "duration", + src.getModifiedItemAttr("siegeRemoteLogisticsDurationBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), amtAttr, + src.getModifiedItemAttr("siegeRemoteLogisticsAmountBonus"), + stackingPenalties=stack) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "maxRange", + src.getModifiedItemAttr("siegeRemoteLogisticsRangeBonus"), stackingPenalties=True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "falloffEffectiveness", + src.getModifiedItemAttr("siegeRemoteLogisticsRangeBonus"), stackingPenalties=True) # Local armor/shield rep effects (duration / amoutn) for skill, amtAttr in ( ("Capital Shield Operation", "shieldBonus"), ("Capital Repair Systems", "armorDamageAmount")): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "duration", src.getModifiedItemAttr("siegeLocalLogisticsDurationBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), amtAttr, src.getModifiedItemAttr("siegeLocalLogisticsAmountBonus")) - + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "duration", + src.getModifiedItemAttr("siegeLocalLogisticsDurationBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), amtAttr, + src.getModifiedItemAttr("siegeLocalLogisticsAmountBonus")) # Speed bonus fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) # Scan resolution multiplier - fit.ship.multiplyItemAttr("scanResolution", src.getModifiedItemAttr("scanResolutionMultiplier"), stackingPenalties=True) + fit.ship.multiplyItemAttr("scanResolution", src.getModifiedItemAttr("scanResolutionMultiplier"), + stackingPenalties=True) # Mass multiplier fit.ship.multiplyItemAttr("mass", src.getModifiedItemAttr("siegeMassMultiplier"), stackingPenalties=True) @@ -36,13 +45,12 @@ def handler(fit, src, context): # Max locked targets fit.ship.increaseItemAttr("maxLockedTargets", src.getModifiedItemAttr("maxLockedTargetsBonus")) - # EW cap need increase groups = [ 'Burst Jammer', 'Weapon Disruptor', 'ECM', - 'Stasis Grappler', + 'Stasis Grappler', 'Sensor Dampener', 'Target Painter'] @@ -56,7 +64,8 @@ def handler(fit, src, context): fit.ship.forceItemAttr("disallowAssistance", src.getModifiedItemAttr("disallowAssistance")) # new in April 2016 release - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", + src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("siegeModeWarpStatus")) fit.ship.boostItemAttr("sensorDampenerResistance", src.getModifiedItemAttr("sensorDampenerResistanceBonus")) diff --git a/eos/effects/mwdsignatureradiusrolebonus.py b/eos/effects/mwdsignatureradiusrolebonus.py index ff3fd7530..2c5ce0bbc 100644 --- a/eos/effects/mwdsignatureradiusrolebonus.py +++ b/eos/effects/mwdsignatureradiusrolebonus.py @@ -5,6 +5,8 @@ # Ships from group: Command Destroyer (4 of 4) # Ships from group: Heavy Assault Cruiser (8 of 11) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), "signatureRadiusBonus", ship.getModifiedItemAttr("MWDSignatureRadiusBonus")) diff --git a/eos/effects/navigationvelocitybonuspostpercentmaxvelocitylocationship.py b/eos/effects/navigationvelocitybonuspostpercentmaxvelocitylocationship.py index bde3d06c5..143f84076 100644 --- a/eos/effects/navigationvelocitybonuspostpercentmaxvelocitylocationship.py +++ b/eos/effects/navigationvelocitybonuspostpercentmaxvelocitylocationship.py @@ -4,5 +4,7 @@ # Implant: Low-grade Snake Alpha # Implant: Mid-grade Snake Alpha type = "passive" + + def handler(fit, implant, context): - fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("velocityBonus")) \ No newline at end of file + fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("velocityBonus")) diff --git a/eos/effects/navigationvelocitybonuspostpercentmaxvelocityship.py b/eos/effects/navigationvelocitybonuspostpercentmaxvelocityship.py index 19cb4e928..8f1435f81 100644 --- a/eos/effects/navigationvelocitybonuspostpercentmaxvelocityship.py +++ b/eos/effects/navigationvelocitybonuspostpercentmaxvelocityship.py @@ -7,8 +7,10 @@ # Implant: Quafe Zero # Skill: Navigation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 amount = container.getModifiedItemAttr("velocityBonus") or 0 fit.ship.boostItemAttr("maxVelocity", amount * level, - stackingPenalties = "skill" not in context and "implant" not in context and "booster" not in context) + stackingPenalties="skill" not in context and "implant" not in context and "booster" not in context) diff --git a/eos/effects/offensivedefensivereduction.py b/eos/effects/offensivedefensivereduction.py index 43ae14ed5..39c120f49 100644 --- a/eos/effects/offensivedefensivereduction.py +++ b/eos/effects/offensivedefensivereduction.py @@ -5,15 +5,19 @@ # Celestials named like: Incursion ship attributes effects (3 of 3) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): damages = ("em", "thermal", "kinetic", "explosive") for damage in damages: # Nerf missile damage fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "{0}Damage".format(damage), beacon.getModifiedItemAttr("systemEffectDamageReduction")) + "{0}Damage".format(damage), + beacon.getModifiedItemAttr("systemEffectDamageReduction")) # Nerf smartbomb damage fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Smart Bomb", - "{0}Damage".format(damage), beacon.getModifiedItemAttr("systemEffectDamageReduction")) + "{0}Damage".format(damage), + beacon.getModifiedItemAttr("systemEffectDamageReduction")) # Nerf armor resistances fit.ship.boostItemAttr("armor{0}DamageResonance".format(damage.capitalize()), beacon.getModifiedItemAttr("armor{0}DamageResistanceBonus".format(damage.capitalize()))) diff --git a/eos/effects/onlinejumpdriveconsumptionamountbonuspercentage.py b/eos/effects/onlinejumpdriveconsumptionamountbonuspercentage.py index b9ef93dce..55e0cb883 100644 --- a/eos/effects/onlinejumpdriveconsumptionamountbonuspercentage.py +++ b/eos/effects/onlinejumpdriveconsumptionamountbonuspercentage.py @@ -4,5 +4,8 @@ # Modules from group: Jump Drive Economizer (3 of 3) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): - fit.ship.boostItemAttr("jumpDriveConsumptionAmount", module.getModifiedItemAttr("consumptionQuantityBonusPercentage"), stackingPenalties=True) + fit.ship.boostItemAttr("jumpDriveConsumptionAmount", + module.getModifiedItemAttr("consumptionQuantityBonusPercentage"), stackingPenalties=True) diff --git a/eos/effects/orecapitalshipshieldtransferfalloff.py b/eos/effects/orecapitalshipshieldtransferfalloff.py index b1c8702eb..e339dc02d 100644 --- a/eos/effects/orecapitalshipshieldtransferfalloff.py +++ b/eos/effects/orecapitalshipshieldtransferfalloff.py @@ -3,5 +3,9 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), "falloffEffectiveness", src.getModifiedItemAttr("shipBonusORECapital3"), skill="Capital Industrial Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), + "falloffEffectiveness", src.getModifiedItemAttr("shipBonusORECapital3"), + skill="Capital Industrial Ships") diff --git a/eos/effects/orecapitalshipshieldtransferrange.py b/eos/effects/orecapitalshipshieldtransferrange.py index 401ad2472..f9d1b0e0b 100644 --- a/eos/effects/orecapitalshipshieldtransferrange.py +++ b/eos/effects/orecapitalshipshieldtransferrange.py @@ -3,6 +3,9 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), - "maxRange", ship.getModifiedItemAttr("shipBonusORECapital3"), skill="Capital Industrial Ships") + "maxRange", ship.getModifiedItemAttr("shipBonusORECapital3"), + skill="Capital Industrial Ships") diff --git a/eos/effects/overloadrofbonus.py b/eos/effects/overloadrofbonus.py index 8da5776ab..00b444c0d 100644 --- a/eos/effects/overloadrofbonus.py +++ b/eos/effects/overloadrofbonus.py @@ -5,5 +5,7 @@ # Items from market group: Ship Equipment > Turrets & Bays (428 of 848) # Module: Interdiction Sphere Launcher I type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("speed", module.getModifiedItemAttr("overloadRofBonus")) diff --git a/eos/effects/overloadselfarmordamageamountdurationbonus.py b/eos/effects/overloadselfarmordamageamountdurationbonus.py index edf684b56..3545e6dab 100644 --- a/eos/effects/overloadselfarmordamageamountdurationbonus.py +++ b/eos/effects/overloadselfarmordamageamountdurationbonus.py @@ -4,6 +4,9 @@ # Modules from group: Ancillary Armor Repairer (4 of 4) # Modules from group: Armor Repair Unit (105 of 105) type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("duration", module.getModifiedItemAttr("overloadSelfDurationBonus")) - module.boostItemAttr("armorDamageAmount", module.getModifiedItemAttr("overloadArmorDamageAmount"), stackingPenalties=True) + module.boostItemAttr("armorDamageAmount", module.getModifiedItemAttr("overloadArmorDamageAmount"), + stackingPenalties=True) diff --git a/eos/effects/overloadselfdamagebonus.py b/eos/effects/overloadselfdamagebonus.py index 0ff334285..1be80b966 100644 --- a/eos/effects/overloadselfdamagebonus.py +++ b/eos/effects/overloadselfdamagebonus.py @@ -5,5 +5,7 @@ # Modules from group: Hybrid Weapon (105 of 221) # Modules from group: Projectile Weapon (99 of 165) type = "overheat" + + def handler(fit, module, context): - module.boostItemAttr("damageMultiplier", module.getModifiedItemAttr("overloadDamageModifier")) \ No newline at end of file + module.boostItemAttr("damageMultiplier", module.getModifiedItemAttr("overloadDamageModifier")) diff --git a/eos/effects/overloadselfdurationbonus.py b/eos/effects/overloadselfdurationbonus.py index e9ddd0596..757ba6d76 100644 --- a/eos/effects/overloadselfdurationbonus.py +++ b/eos/effects/overloadselfdurationbonus.py @@ -16,5 +16,7 @@ # Module: Reactive Armor Hardener # Module: Target Spectrum Breaker type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("duration", module.getModifiedItemAttr("overloadSelfDurationBonus") or 0) diff --git a/eos/effects/overloadselfecmstrenghtbonus.py b/eos/effects/overloadselfecmstrenghtbonus.py index e8ee74567..f39a5eed1 100644 --- a/eos/effects/overloadselfecmstrenghtbonus.py +++ b/eos/effects/overloadselfecmstrenghtbonus.py @@ -4,9 +4,11 @@ # Modules from group: Burst Jammer (11 of 11) # Modules from group: ECM (39 of 39) type = "overheat" + + def handler(fit, module, context): if "projected" not in context: for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): module.boostItemAttr("scan{0}StrengthBonus".format(scanType), module.getModifiedItemAttr("overloadECMStrengthBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/overloadselfemhardeningbonus.py b/eos/effects/overloadselfemhardeningbonus.py index c1ceb5063..7e6cc6166 100644 --- a/eos/effects/overloadselfemhardeningbonus.py +++ b/eos/effects/overloadselfemhardeningbonus.py @@ -5,5 +5,7 @@ # Variations of module: EM Ward Field I (19 of 19) # Module: Civilian EM Ward Field type = "overheat" + + def handler(fit, module, context): - module.boostItemAttr("emDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) \ No newline at end of file + module.boostItemAttr("emDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselfexplosivehardeningbonus.py b/eos/effects/overloadselfexplosivehardeningbonus.py index 22409fdeb..9762eaf14 100644 --- a/eos/effects/overloadselfexplosivehardeningbonus.py +++ b/eos/effects/overloadselfexplosivehardeningbonus.py @@ -5,5 +5,7 @@ # Variations of module: Explosive Deflection Field I (19 of 19) # Module: Civilian Explosive Deflection Field type = "overheat" + + def handler(fit, module, context): - module.boostItemAttr("explosiveDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) \ No newline at end of file + module.boostItemAttr("explosiveDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselfhardeninginvulnerabilitybonus.py b/eos/effects/overloadselfhardeninginvulnerabilitybonus.py index c044987b2..59e6a1575 100644 --- a/eos/effects/overloadselfhardeninginvulnerabilitybonus.py +++ b/eos/effects/overloadselfhardeninginvulnerabilitybonus.py @@ -4,6 +4,8 @@ # Modules named like: Capital Flex Hardener (9 of 9) # Variations of module: Adaptive Invulnerability Field I (17 of 17) type = "overheat" + + def handler(fit, module, context): for type in ("kinetic", "thermal", "explosive", "em"): module.boostItemAttr("%sDamageResistanceBonus" % type, diff --git a/eos/effects/overloadselfkinetichardeningbonus.py b/eos/effects/overloadselfkinetichardeningbonus.py index a82dc7a5a..549ddf5e7 100644 --- a/eos/effects/overloadselfkinetichardeningbonus.py +++ b/eos/effects/overloadselfkinetichardeningbonus.py @@ -5,5 +5,7 @@ # Variations of module: Kinetic Deflection Field I (19 of 19) # Module: Civilian Kinetic Deflection Field type = "overheat" + + def handler(fit, module, context): - module.boostItemAttr("kineticDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) \ No newline at end of file + module.boostItemAttr("kineticDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselfmissileguidancebonus5.py b/eos/effects/overloadselfmissileguidancebonus5.py index 0f99c4965..3067ed1fd 100644 --- a/eos/effects/overloadselfmissileguidancebonus5.py +++ b/eos/effects/overloadselfmissileguidancebonus5.py @@ -3,12 +3,14 @@ # Used by: # Modules from group: Missile Guidance Computer (3 of 3) type = "overheat" + + def handler(fit, module, context): for tgtAttr in ( - "aoeCloudSizeBonus", - "explosionDelayBonus", - "missileVelocityBonus", - "maxVelocityBonus", - "aoeVelocityBonus" + "aoeCloudSizeBonus", + "explosionDelayBonus", + "missileVelocityBonus", + "maxVelocityBonus", + "aoeVelocityBonus" ): module.boostItemAttr(tgtAttr, module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) diff --git a/eos/effects/overloadselfmissileguidancemodulebonus.py b/eos/effects/overloadselfmissileguidancemodulebonus.py index da798b80b..3a8a9ab52 100644 --- a/eos/effects/overloadselfmissileguidancemodulebonus.py +++ b/eos/effects/overloadselfmissileguidancemodulebonus.py @@ -3,11 +3,13 @@ # Used by: # Variations of module: Guidance Disruptor I (6 of 6) type = "overheat" + + def handler(fit, module, context): for tgtAttr in ( - "aoeCloudSizeBonus", - "explosionDelayBonus", - "missileVelocityBonus", - "aoeVelocityBonus" + "aoeCloudSizeBonus", + "explosionDelayBonus", + "missileVelocityBonus", + "aoeVelocityBonus" ): - module.boostItemAttr(tgtAttr, module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) \ No newline at end of file + module.boostItemAttr(tgtAttr, module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) diff --git a/eos/effects/overloadselfpainterbonus.py b/eos/effects/overloadselfpainterbonus.py index 11f9a96a9..67b69fc55 100644 --- a/eos/effects/overloadselfpainterbonus.py +++ b/eos/effects/overloadselfpainterbonus.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Target Painter (8 of 8) type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("signatureRadiusBonus", module.getModifiedItemAttr("overloadPainterStrengthBonus") or 0) diff --git a/eos/effects/overloadselfrangebonus.py b/eos/effects/overloadselfrangebonus.py index eb2b4e370..f306a064f 100644 --- a/eos/effects/overloadselfrangebonus.py +++ b/eos/effects/overloadselfrangebonus.py @@ -5,6 +5,8 @@ # Modules from group: Stasis Web (18 of 18) # Modules from group: Warp Scrambler (52 of 53) type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("maxRange", module.getModifiedItemAttr("overloadRangeBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/overloadselfsensormodulebonus.py b/eos/effects/overloadselfsensormodulebonus.py index 303bebdf3..378e739b1 100644 --- a/eos/effects/overloadselfsensormodulebonus.py +++ b/eos/effects/overloadselfsensormodulebonus.py @@ -5,6 +5,8 @@ # Modules from group: Sensor Booster (16 of 16) # Modules from group: Sensor Dampener (6 of 6) type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("maxTargetRangeBonus", module.getModifiedItemAttr("overloadSensorModuleStrengthBonus")) module.boostItemAttr("scanResolutionBonus", module.getModifiedItemAttr("overloadSensorModuleStrengthBonus"), diff --git a/eos/effects/overloadselfshieldbonusdurationbonus.py b/eos/effects/overloadselfshieldbonusdurationbonus.py index 05d89029d..cc833be68 100644 --- a/eos/effects/overloadselfshieldbonusdurationbonus.py +++ b/eos/effects/overloadselfshieldbonusdurationbonus.py @@ -4,6 +4,8 @@ # Modules from group: Ancillary Shield Booster (5 of 5) # Modules from group: Shield Booster (93 of 93) type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("duration", module.getModifiedItemAttr("overloadSelfDurationBonus")) module.boostItemAttr("shieldBonus", module.getModifiedItemAttr("overloadShieldBonus"), stackingPenalties=True) diff --git a/eos/effects/overloadselfspeedbonus.py b/eos/effects/overloadselfspeedbonus.py index 7b5d7bb5a..c7ee81a90 100644 --- a/eos/effects/overloadselfspeedbonus.py +++ b/eos/effects/overloadselfspeedbonus.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Propulsion Module (127 of 127) type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("speedFactor", module.getModifiedItemAttr("overloadSpeedFactorBonus"), stackingPenalties=True) diff --git a/eos/effects/overloadselfthermalhardeningbonus.py b/eos/effects/overloadselfthermalhardeningbonus.py index 5a4036980..a97ab16fb 100644 --- a/eos/effects/overloadselfthermalhardeningbonus.py +++ b/eos/effects/overloadselfthermalhardeningbonus.py @@ -5,5 +5,7 @@ # Variations of module: Thermal Dissipation Field I (19 of 19) # Module: Civilian Thermal Dissipation Field type = "overheat" + + def handler(fit, module, context): - module.boostItemAttr("thermalDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) \ No newline at end of file + module.boostItemAttr("thermalDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselftrackingmodulebonus.py b/eos/effects/overloadselftrackingmodulebonus.py index bb7c7481b..fb217b93d 100644 --- a/eos/effects/overloadselftrackingmodulebonus.py +++ b/eos/effects/overloadselftrackingmodulebonus.py @@ -4,6 +4,8 @@ # Modules named like: Tracking Computer (19 of 19) # Variations of module: Tracking Disruptor I (6 of 6) type = "overheat" + + def handler(fit, module, context): module.boostItemAttr("maxRangeBonus", module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) module.boostItemAttr("falloffBonus", module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) diff --git a/eos/effects/passivespeedlimit.py b/eos/effects/passivespeedlimit.py index 95e832873..c8744ddcf 100644 --- a/eos/effects/passivespeedlimit.py +++ b/eos/effects/passivespeedlimit.py @@ -4,5 +4,7 @@ # Modules from group: Entosis Link (6 of 6) runtime = "late" type = "passive" + + def handler(fit, src, context): fit.extraAttributes['speedLimit'] = src.getModifiedItemAttr("speedLimit") diff --git a/eos/effects/pointdefense.py b/eos/effects/pointdefense.py index 45ca33f3f..4f2324035 100644 --- a/eos/effects/pointdefense.py +++ b/eos/effects/pointdefense.py @@ -1,4 +1,6 @@ # Not used by any item type = 'active' + + def handler(fit, module, context): pass diff --git a/eos/effects/powerbooster.py b/eos/effects/powerbooster.py index 6f23f7df3..6fdafc9a4 100644 --- a/eos/effects/powerbooster.py +++ b/eos/effects/powerbooster.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Capacitor Booster (59 of 59) type = "active" + + def handler(fit, module, context): # Set reload time to 10 seconds module.reloadTime = 10000 diff --git a/eos/effects/powerincrease.py b/eos/effects/powerincrease.py index edc73bbad..2d953deb4 100644 --- a/eos/effects/powerincrease.py +++ b/eos/effects/powerincrease.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Auxiliary Power Core (5 of 5) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("powerOutput", module.getModifiedItemAttr("powerIncrease")) \ No newline at end of file + fit.ship.increaseItemAttr("powerOutput", module.getModifiedItemAttr("powerIncrease")) diff --git a/eos/effects/poweroutputaddpassive.py b/eos/effects/poweroutputaddpassive.py index 772d9568f..6fff952b7 100644 --- a/eos/effects/poweroutputaddpassive.py +++ b/eos/effects/poweroutputaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Items from category: Subsystem (40 of 80) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("powerOutput", module.getModifiedItemAttr("powerOutput")) diff --git a/eos/effects/poweroutputmultiply.py b/eos/effects/poweroutputmultiply.py index 9d3f66082..3a0e5c6a1 100644 --- a/eos/effects/poweroutputmultiply.py +++ b/eos/effects/poweroutputmultiply.py @@ -6,5 +6,7 @@ # Modules from group: Power Diagnostic System (23 of 23) # Modules from group: Reactor Control Unit (22 of 22) type = "passive" + + def handler(fit, module, context): - fit.ship.multiplyItemAttr("powerOutput", module.getModifiedItemAttr("powerOutputMultiplier")) \ No newline at end of file + fit.ship.multiplyItemAttr("powerOutput", module.getModifiedItemAttr("powerOutputMultiplier")) diff --git a/eos/effects/probelaunchercpupercentbonustacticaldestroyer.py b/eos/effects/probelaunchercpupercentbonustacticaldestroyer.py index 99cbeb9b7..c52784fa9 100644 --- a/eos/effects/probelaunchercpupercentbonustacticaldestroyer.py +++ b/eos/effects/probelaunchercpupercentbonustacticaldestroyer.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Tactical Destroyer (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Astrometrics"), - "cpu", ship.getModifiedItemAttr("roleBonusTacticalDestroyer1")) + "cpu", ship.getModifiedItemAttr("roleBonusTacticalDestroyer1")) diff --git a/eos/effects/projectilefired.py b/eos/effects/projectilefired.py index 0de9601c2..491b73f0c 100644 --- a/eos/effects/projectilefired.py +++ b/eos/effects/projectilefired.py @@ -4,6 +4,8 @@ # Modules from group: Hybrid Weapon (221 of 221) # Modules from group: Projectile Weapon (165 of 165) type = 'active' + + def handler(fit, module, context): rt = module.getModifiedItemAttr("reloadTime") if not rt: diff --git a/eos/effects/projectileweapondamagemultiply.py b/eos/effects/projectileweapondamagemultiply.py index c0ea83334..bb6bbfda8 100644 --- a/eos/effects/projectileweapondamagemultiply.py +++ b/eos/effects/projectileweapondamagemultiply.py @@ -5,7 +5,9 @@ # Modules named like: QA Multiship Module Players (4 of 4) # Module: QA Damage Module type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Projectile Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties = True) \ No newline at end of file + "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), + stackingPenalties=True) diff --git a/eos/effects/projectileweapondamagemultiplypassive.py b/eos/effects/projectileweapondamagemultiplypassive.py index c2c214905..0060dafc8 100644 --- a/eos/effects/projectileweapondamagemultiplypassive.py +++ b/eos/effects/projectileweapondamagemultiplypassive.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Projectile Collision Accelerator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Projectile Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties = True) \ No newline at end of file + "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), + stackingPenalties=True) diff --git a/eos/effects/projectileweaponspeedmultiply.py b/eos/effects/projectileweaponspeedmultiply.py index 805fbf3fe..1a7ce802e 100644 --- a/eos/effects/projectileweaponspeedmultiply.py +++ b/eos/effects/projectileweaponspeedmultiply.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: Gyrostabilizer (12 of 12) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Projectile Weapon", "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/projectileweaponspeedmultiplypassive.py b/eos/effects/projectileweaponspeedmultiplypassive.py index 575dc0323..6a1b54d15 100644 --- a/eos/effects/projectileweaponspeedmultiplypassive.py +++ b/eos/effects/projectileweaponspeedmultiplypassive.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Projectile Burst Aerator (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Projectile Weapon", "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/propulsionskillcapneedbonusskilllevel.py b/eos/effects/propulsionskillcapneedbonusskilllevel.py index 388e6603e..04a0f10bf 100644 --- a/eos/effects/propulsionskillcapneedbonusskilllevel.py +++ b/eos/effects/propulsionskillcapneedbonusskilllevel.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Gypsy' Propulsion Jamming PJ (6 of 6) # Skill: Propulsion Jamming type = "passive" + + def handler(fit, container, context): groups = ("Stasis Web", "Stasis Grappler", "Warp Scrambler", "Warp Disrupt Field Generator") level = container.level if "skill" in context else 1 diff --git a/eos/effects/rapidfiringrofbonuspostpercentspeedlocationshipmodulesrequiringgunnery.py b/eos/effects/rapidfiringrofbonuspostpercentspeedlocationshipmodulesrequiringgunnery.py index 4b1efac30..fa0994205 100644 --- a/eos/effects/rapidfiringrofbonuspostpercentspeedlocationshipmodulesrequiringgunnery.py +++ b/eos/effects/rapidfiringrofbonuspostpercentspeedlocationshipmodulesrequiringgunnery.py @@ -3,6 +3,8 @@ # Used by: # Skill: Rapid Firing type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "speed", skill.getModifiedItemAttr("rofBonus") * skill.level) \ No newline at end of file + "speed", skill.getModifiedItemAttr("rofBonus") * skill.level) diff --git a/eos/effects/rechargerateaddpassive.py b/eos/effects/rechargerateaddpassive.py index b43f12f46..93f6bb8ab 100644 --- a/eos/effects/rechargerateaddpassive.py +++ b/eos/effects/rechargerateaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Subsystems from group: Engineering Systems (16 of 16) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("rechargeRate", module.getModifiedItemAttr("rechargeRate")) \ No newline at end of file + fit.ship.increaseItemAttr("rechargeRate", module.getModifiedItemAttr("rechargeRate")) diff --git a/eos/effects/reconoperationsmaxtargetrangebonuspostpercentmaxtargetrangegangships.py b/eos/effects/reconoperationsmaxtargetrangebonuspostpercentmaxtargetrangegangships.py index 15c177712..c80bdc346 100644 --- a/eos/effects/reconoperationsmaxtargetrangebonuspostpercentmaxtargetrangegangships.py +++ b/eos/effects/reconoperationsmaxtargetrangebonuspostpercentmaxtargetrangegangships.py @@ -5,6 +5,8 @@ type = "gang" gangBoost = "maxTargetRange" gangBonus = "maxTargetRangeBonus" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus) * level, stackingPenalties = True ) + fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus) * level, stackingPenalties=True) diff --git a/eos/effects/reconshipcloakcpubonus1.py b/eos/effects/reconshipcloakcpubonus1.py index e302d47ce..602efab28 100644 --- a/eos/effects/reconshipcloakcpubonus1.py +++ b/eos/effects/reconshipcloakcpubonus1.py @@ -4,6 +4,8 @@ # Ships from group: Force Recon Ship (6 of 6) type = "passive" runTime = "early" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cloaking Device", "cpu", ship.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/remotearmorpowerneedbonuseffect.py b/eos/effects/remotearmorpowerneedbonuseffect.py index 9940ffe88..ff0c38c0d 100644 --- a/eos/effects/remotearmorpowerneedbonuseffect.py +++ b/eos/effects/remotearmorpowerneedbonuseffect.py @@ -4,5 +4,8 @@ # Ship: Guardian # Ship: Oneiros type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "power", src.getModifiedItemAttr("remoteArmorPowerNeedBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "power", + src.getModifiedItemAttr("remoteArmorPowerNeedBonus")) diff --git a/eos/effects/remotearmorrepairentity.py b/eos/effects/remotearmorrepairentity.py index 4b4b049fc..810b9a32c 100644 --- a/eos/effects/remotearmorrepairentity.py +++ b/eos/effects/remotearmorrepairentity.py @@ -3,6 +3,8 @@ # Used by: # Drones named like: Armor Maintenance Bot (6 of 6) type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: bonus = container.getModifiedItemAttr("armorDamageAmount") diff --git a/eos/effects/remotearmorrepairfalloff.py b/eos/effects/remotearmorrepairfalloff.py index 6a1849234..e20db1af6 100644 --- a/eos/effects/remotearmorrepairfalloff.py +++ b/eos/effects/remotearmorrepairfalloff.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Remote Armor Repairer (39 of 39) type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: bonus = container.getModifiedItemAttr("armorDamageAmount") diff --git a/eos/effects/remotearmorsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringremotearmorsystems.py b/eos/effects/remotearmorsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringremotearmorsystems.py index f454835e2..73ff83db6 100644 --- a/eos/effects/remotearmorsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringremotearmorsystems.py +++ b/eos/effects/remotearmorsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringremotearmorsystems.py @@ -5,6 +5,8 @@ # Modules named like: Remote Repair Augmentor (6 of 8) # Skill: Remote Armor Repair Systems type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), diff --git a/eos/effects/remotecapacitortransmitterpowerneedbonuseffect.py b/eos/effects/remotecapacitortransmitterpowerneedbonuseffect.py index b55a1c8b1..233a0e2c2 100644 --- a/eos/effects/remotecapacitortransmitterpowerneedbonuseffect.py +++ b/eos/effects/remotecapacitortransmitterpowerneedbonuseffect.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Logistics (3 of 5) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", "power", ship.getModifiedItemAttr("powerTransferPowerNeedBonus")) diff --git a/eos/effects/remoteecmburst.py b/eos/effects/remoteecmburst.py index 45ca33f3f..4f2324035 100644 --- a/eos/effects/remoteecmburst.py +++ b/eos/effects/remoteecmburst.py @@ -1,4 +1,6 @@ # Not used by any item type = 'active' + + def handler(fit, module, context): pass diff --git a/eos/effects/remoteecmfalloff.py b/eos/effects/remoteecmfalloff.py index 9945eb020..377887992 100644 --- a/eos/effects/remoteecmfalloff.py +++ b/eos/effects/remoteecmfalloff.py @@ -3,9 +3,11 @@ # Used by: # Modules from group: ECM (39 of 39) type = "projected", "active" + + def handler(fit, module, context): if "projected" in context: # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType))/fit.scanStrength + strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/remoteenergytransferfalloff.py b/eos/effects/remoteenergytransferfalloff.py index f618d3d3c..258a71817 100644 --- a/eos/effects/remoteenergytransferfalloff.py +++ b/eos/effects/remoteenergytransferfalloff.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Remote Capacitor Transmitter (41 of 41) type = "projected", "active" + + def handler(fit, src, context): if "projected" in context: amount = src.getModifiedItemAttr("powerTransferAmount") diff --git a/eos/effects/remoteguidancedisruptfalloff.py b/eos/effects/remoteguidancedisruptfalloff.py index ede3f06f5..5dfbeba41 100644 --- a/eos/effects/remoteguidancedisruptfalloff.py +++ b/eos/effects/remoteguidancedisruptfalloff.py @@ -4,14 +4,15 @@ # Variations of module: Guidance Disruptor I (6 of 6) type = "active", "projected" + def handler(fit, module, context): if "projected" in context: for srcAttr, tgtAttr in ( - ("aoeCloudSizeBonus", "aoeCloudSize"), - ("aoeVelocityBonus", "aoeVelocity"), - ("missileVelocityBonus", "maxVelocity"), - ("explosionDelayBonus", "explosionDelay"), + ("aoeCloudSizeBonus", "aoeCloudSize"), + ("aoeVelocityBonus", "aoeVelocity"), + ("missileVelocityBonus", "maxVelocity"), + ("explosionDelayBonus", "explosionDelay"), ): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - tgtAttr, module.getModifiedItemAttr(srcAttr), - stackingPenalties=True, remoteResists=True) + tgtAttr, module.getModifiedItemAttr(srcAttr), + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/remotehullrepair.py b/eos/effects/remotehullrepair.py index 84ee64290..099e0c2ac 100644 --- a/eos/effects/remotehullrepair.py +++ b/eos/effects/remotehullrepair.py @@ -1,6 +1,8 @@ # Not used by any item type = "projected", "active" runTime = "late" + + def handler(fit, module, context): if "projected" not in context: return bonus = module.getModifiedItemAttr("structureDamageAmount") diff --git a/eos/effects/remotehullrepairentity.py b/eos/effects/remotehullrepairentity.py index 4f41aec22..db8de5fe4 100644 --- a/eos/effects/remotehullrepairentity.py +++ b/eos/effects/remotehullrepairentity.py @@ -4,6 +4,8 @@ # Drones named like: Hull Maintenance Bot (6 of 6) type = "projected", "active" runTime = "late" + + def handler(fit, module, context): if "projected" not in context: return bonus = module.getModifiedItemAttr("structureDamageAmount") diff --git a/eos/effects/remotehullrepairfalloff.py b/eos/effects/remotehullrepairfalloff.py index 94dc050c7..d7344b646 100644 --- a/eos/effects/remotehullrepairfalloff.py +++ b/eos/effects/remotehullrepairfalloff.py @@ -4,6 +4,8 @@ # Modules from group: Remote Hull Repairer (8 of 8) type = "projected", "active" runTime = "late" + + def handler(fit, module, context): if "projected" not in context: return bonus = module.getModifiedItemAttr("structureDamageAmount") diff --git a/eos/effects/remotesensorboostfalloff.py b/eos/effects/remotesensorboostfalloff.py index 1453fe2bc..a649c80e4 100644 --- a/eos/effects/remotesensorboostfalloff.py +++ b/eos/effects/remotesensorboostfalloff.py @@ -2,15 +2,17 @@ # # Used by: # Modules from group: Remote Sensor Booster (8 of 8) -type= "projected", "active" +type = "projected", "active" + + def handler(fit, module, context): if "projected" not in context: return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties = True) + stackingPenalties=True) fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties = True) + stackingPenalties=True) for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): fit.ship.boostItemAttr( diff --git a/eos/effects/remotesensordampentity.py b/eos/effects/remotesensordampentity.py index 2176a5a51..adb0b1ac3 100644 --- a/eos/effects/remotesensordampentity.py +++ b/eos/effects/remotesensordampentity.py @@ -2,13 +2,15 @@ # # Used by: # Drones named like: SD (3 of 3) -type= "projected", "active" +type = "projected", "active" + + def handler(fit, module, context): if "projected" not in context: return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/remotesensordampfalloff.py b/eos/effects/remotesensordampfalloff.py index 0339ee196..e04b573c1 100644 --- a/eos/effects/remotesensordampfalloff.py +++ b/eos/effects/remotesensordampfalloff.py @@ -2,13 +2,15 @@ # # Used by: # Modules from group: Sensor Dampener (6 of 6) -type= "projected", "active" +type = "projected", "active" + + def handler(fit, module, context): if "projected" not in context: return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/remoteshieldtransferentity.py b/eos/effects/remoteshieldtransferentity.py index 7a1fb0e20..b4cce3bce 100644 --- a/eos/effects/remoteshieldtransferentity.py +++ b/eos/effects/remoteshieldtransferentity.py @@ -3,6 +3,8 @@ # Used by: # Drones named like: Shield Maintenance Bot (6 of 6) type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: bonus = container.getModifiedItemAttr("shieldBonus") diff --git a/eos/effects/remoteshieldtransferfalloff.py b/eos/effects/remoteshieldtransferfalloff.py index 1506da541..4bdeee8eb 100644 --- a/eos/effects/remoteshieldtransferfalloff.py +++ b/eos/effects/remoteshieldtransferfalloff.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Remote Shield Booster (38 of 38) type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: bonus = container.getModifiedItemAttr("shieldBonus") diff --git a/eos/effects/remotetargetpaintentity.py b/eos/effects/remotetargetpaintentity.py index 4c001bd41..4ee7c9fc0 100644 --- a/eos/effects/remotetargetpaintentity.py +++ b/eos/effects/remotetargetpaintentity.py @@ -3,7 +3,9 @@ # Used by: # Drones named like: TP (3 of 3) type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/remotetargetpaintfalloff.py b/eos/effects/remotetargetpaintfalloff.py index 2d1fcb539..b9f5a6ef1 100644 --- a/eos/effects/remotetargetpaintfalloff.py +++ b/eos/effects/remotetargetpaintfalloff.py @@ -3,7 +3,9 @@ # Used by: # Modules from group: Target Painter (8 of 8) type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/remotetrackingassistfalloff.py b/eos/effects/remotetrackingassistfalloff.py index 6bd6ba72c..411d4fc05 100644 --- a/eos/effects/remotetrackingassistfalloff.py +++ b/eos/effects/remotetrackingassistfalloff.py @@ -2,15 +2,17 @@ # # Used by: # Modules from group: Remote Tracking Computer (8 of 8) -type= "projected", "active" +type = "projected", "active" + + def handler(fit, module, context): if "projected" in context: fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True) + stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True) + stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/remotetrackingdisruptfalloff.py b/eos/effects/remotetrackingdisruptfalloff.py index 9ea0a7f4e..18fd3239e 100644 --- a/eos/effects/remotetrackingdisruptfalloff.py +++ b/eos/effects/remotetrackingdisruptfalloff.py @@ -2,15 +2,17 @@ # # Used by: # Variations of module: Tracking Disruptor I (6 of 6) -type= "projected", "active" +type = "projected", "active" + + def handler(fit, module, context): if "projected" in context: fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/remoteweapondisruptentity.py b/eos/effects/remoteweapondisruptentity.py index 3b997e147..486f67f58 100644 --- a/eos/effects/remoteweapondisruptentity.py +++ b/eos/effects/remoteweapondisruptentity.py @@ -2,15 +2,17 @@ # # Used by: # Drones named like: TD (3 of 3) -type= "projected", "active" +type = "projected", "active" + + def handler(fit, module, context): if "projected" in context: fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/remotewebifierentity.py b/eos/effects/remotewebifierentity.py index 36186be00..38028881a 100644 --- a/eos/effects/remotewebifierentity.py +++ b/eos/effects/remotewebifierentity.py @@ -3,7 +3,9 @@ # Used by: # Drones from group: Stasis Webifying Drone (3 of 3) type = "active", "projected" + + def handler(fit, module, context): if "projected" not in context: return fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/remotewebifierfalloff.py b/eos/effects/remotewebifierfalloff.py index 1f37c29c5..67f6d4dc5 100644 --- a/eos/effects/remotewebifierfalloff.py +++ b/eos/effects/remotewebifierfalloff.py @@ -4,7 +4,9 @@ # Modules from group: Stasis Grappler (7 of 7) # Modules from group: Stasis Web (18 of 18) type = "active", "projected" + + def handler(fit, module, context): if "projected" not in context: return fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/repairdronearmordamageamountbonus.py b/eos/effects/repairdronearmordamageamountbonus.py index 8de0fd05e..3d7d56d4b 100644 --- a/eos/effects/repairdronearmordamageamountbonus.py +++ b/eos/effects/repairdronearmordamageamountbonus.py @@ -4,8 +4,10 @@ # Modules named like: Drone Repair Augmentor (8 of 8) # Skill: Repair Drone Operation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", "armorDamageAmount", container.getModifiedItemAttr("damageHP") * level, - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/repairdronehullbonusbonus.py b/eos/effects/repairdronehullbonusbonus.py index 5aaf80d46..9e1ea724a 100644 --- a/eos/effects/repairdronehullbonusbonus.py +++ b/eos/effects/repairdronehullbonusbonus.py @@ -4,6 +4,8 @@ # Modules named like: Drone Repair Augmentor (8 of 8) # Skill: Repair Drone Operation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", diff --git a/eos/effects/repairdroneshieldbonusbonus.py b/eos/effects/repairdroneshieldbonusbonus.py index 39a0d2c30..86bcba79b 100644 --- a/eos/effects/repairdroneshieldbonusbonus.py +++ b/eos/effects/repairdroneshieldbonusbonus.py @@ -4,6 +4,8 @@ # Modules named like: Drone Repair Augmentor (8 of 8) # Skill: Repair Drone Operation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", diff --git a/eos/effects/repairsystemsdurationbonuspostpercentdurationlocationshipmodulesrequiringrepairsystems.py b/eos/effects/repairsystemsdurationbonuspostpercentdurationlocationshipmodulesrequiringrepairsystems.py index d366f98e8..79a48defa 100644 --- a/eos/effects/repairsystemsdurationbonuspostpercentdurationlocationshipmodulesrequiringrepairsystems.py +++ b/eos/effects/repairsystemsdurationbonuspostpercentdurationlocationshipmodulesrequiringrepairsystems.py @@ -6,6 +6,8 @@ # Implant: Numon Family Heirloom # Skill: Repair Systems type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), diff --git a/eos/effects/republicsetbonus3.py b/eos/effects/republicsetbonus3.py index 5709959ae..c4275fa9b 100644 --- a/eos/effects/republicsetbonus3.py +++ b/eos/effects/republicsetbonus3.py @@ -4,6 +4,9 @@ # Implants named like: High grade Jackal (6 of 6) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanLadarStrengthPercent", implant.getModifiedItemAttr("implantSetRepublicFleet")) + "scanLadarStrengthPercent", + implant.getModifiedItemAttr("implantSetRepublicFleet")) diff --git a/eos/effects/republicsetlgbonus.py b/eos/effects/republicsetlgbonus.py index bf79499ea..c853ebed7 100644 --- a/eos/effects/republicsetlgbonus.py +++ b/eos/effects/republicsetlgbonus.py @@ -4,6 +4,9 @@ # Implants named like: Low grade Jackal (6 of 6) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanLadarStrengthModifier", implant.getModifiedItemAttr("implantSetLGRepublicFleet")) + "scanLadarStrengthModifier", + implant.getModifiedItemAttr("implantSetLGRepublicFleet")) diff --git a/eos/effects/resistancekillerhullall.py b/eos/effects/resistancekillerhullall.py index 19f670dd7..cdf18fee6 100644 --- a/eos/effects/resistancekillerhullall.py +++ b/eos/effects/resistancekillerhullall.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Polarized (12 of 18) type = "passive" + + def handler(fit, module, context): for dmgType in ('em', 'thermal', 'kinetic', 'explosive'): tgtAttr = '{}DamageResonance'.format(dmgType) diff --git a/eos/effects/resistancekillershieldarmorall.py b/eos/effects/resistancekillershieldarmorall.py index d513103fe..c89b4d310 100644 --- a/eos/effects/resistancekillershieldarmorall.py +++ b/eos/effects/resistancekillershieldarmorall.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Polarized (12 of 18) type = "passive" + + def handler(fit, module, context): for layer in ('armor', 'shield'): for dmgType in ('em', 'thermal', 'kinetic', 'explosive'): diff --git a/eos/effects/rigdrawbackbonuseffect.py b/eos/effects/rigdrawbackbonuseffect.py index 01d0a8018..58f066b1d 100644 --- a/eos/effects/rigdrawbackbonuseffect.py +++ b/eos/effects/rigdrawbackbonuseffect.py @@ -1,6 +1,7 @@ # Not used by any item type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "drawback", skill.getModifiedItemAttr("rigDrawbackBonus") * skill.level) - \ No newline at end of file diff --git a/eos/effects/rigdrawbackreductionarmor.py b/eos/effects/rigdrawbackreductionarmor.py index 40276d661..312e04d7a 100644 --- a/eos/effects/rigdrawbackreductionarmor.py +++ b/eos/effects/rigdrawbackreductionarmor.py @@ -3,7 +3,11 @@ # Used by: # Skill: Armor Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Armor", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Resource Processing", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Armor", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Resource Processing", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionastronautics.py b/eos/effects/rigdrawbackreductionastronautics.py index 300b49e26..679e381eb 100644 --- a/eos/effects/rigdrawbackreductionastronautics.py +++ b/eos/effects/rigdrawbackreductionastronautics.py @@ -3,7 +3,11 @@ # Used by: # Skill: Astronautics Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Navigation", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Anchor", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Navigation", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Anchor", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductiondrones.py b/eos/effects/rigdrawbackreductiondrones.py index d1350efcc..1761fae59 100644 --- a/eos/effects/rigdrawbackreductiondrones.py +++ b/eos/effects/rigdrawbackreductiondrones.py @@ -3,6 +3,9 @@ # Used by: # Skill: Drones Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Drones", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Drones", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionelectronic.py b/eos/effects/rigdrawbackreductionelectronic.py index d1d7a3cd5..7e27b8d0b 100644 --- a/eos/effects/rigdrawbackreductionelectronic.py +++ b/eos/effects/rigdrawbackreductionelectronic.py @@ -3,8 +3,13 @@ # Used by: # Skill: Electronic Superiority Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Electronic Systems", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Scanning", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Targeting", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Electronic Systems", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Scanning", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Targeting", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionenergyweapon.py b/eos/effects/rigdrawbackreductionenergyweapon.py index d92ca3132..9d99e3513 100644 --- a/eos/effects/rigdrawbackreductionenergyweapon.py +++ b/eos/effects/rigdrawbackreductionenergyweapon.py @@ -3,6 +3,9 @@ # Used by: # Skill: Energy Weapon Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Energy Weapon", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Energy Weapon", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionhybrid.py b/eos/effects/rigdrawbackreductionhybrid.py index 005b00d08..b7ffc0955 100644 --- a/eos/effects/rigdrawbackreductionhybrid.py +++ b/eos/effects/rigdrawbackreductionhybrid.py @@ -3,6 +3,9 @@ # Used by: # Skill: Hybrid Weapon Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Hybrid Weapon", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Hybrid Weapon", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionlauncher.py b/eos/effects/rigdrawbackreductionlauncher.py index 07bf0679c..04276c9b9 100644 --- a/eos/effects/rigdrawbackreductionlauncher.py +++ b/eos/effects/rigdrawbackreductionlauncher.py @@ -3,6 +3,9 @@ # Used by: # Skill: Launcher Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Launcher", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Launcher", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionprojectile.py b/eos/effects/rigdrawbackreductionprojectile.py index 160436893..c6c339041 100644 --- a/eos/effects/rigdrawbackreductionprojectile.py +++ b/eos/effects/rigdrawbackreductionprojectile.py @@ -3,6 +3,9 @@ # Used by: # Skill: Projectile Weapon Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Projectile Weapon", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Projectile Weapon", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionshield.py b/eos/effects/rigdrawbackreductionshield.py index a684ce50c..fa2f75f88 100644 --- a/eos/effects/rigdrawbackreductionshield.py +++ b/eos/effects/rigdrawbackreductionshield.py @@ -3,6 +3,9 @@ # Used by: # Skill: Shield Rigging type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Shield", "drawback", src.getModifiedItemAttr("rigDrawbackBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Shield", "drawback", + src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rolebonusbulkheadcpu.py b/eos/effects/rolebonusbulkheadcpu.py index c6cbac5c5..51ed0d68b 100644 --- a/eos/effects/rolebonusbulkheadcpu.py +++ b/eos/effects/rolebonusbulkheadcpu.py @@ -4,6 +4,8 @@ # Ships from group: Freighter (4 of 5) # Ships from group: Jump Freighter (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Reinforced Bulkhead", "cpu", ship.getModifiedItemAttr("cpuNeedBonus")) diff --git a/eos/effects/rolebonuscdlinkspgreduction.py b/eos/effects/rolebonuscdlinkspgreduction.py index 423f28aa2..c28e6122e 100644 --- a/eos/effects/rolebonuscdlinkspgreduction.py +++ b/eos/effects/rolebonuscdlinkspgreduction.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Command Destroyer (4 of 4) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "power", src.getModifiedItemAttr("roleBonusCD")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "power", + src.getModifiedItemAttr("roleBonusCD")) diff --git a/eos/effects/rolebonusecmcapcpu.py b/eos/effects/rolebonusecmcapcpu.py index a9bd4e612..3b8c77525 100644 --- a/eos/effects/rolebonusecmcapcpu.py +++ b/eos/effects/rolebonusecmcapcpu.py @@ -3,6 +3,9 @@ # Used by: # Ship: Griffin Navy Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "capacitorNeed", src.getModifiedItemAttr("roleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "capacitorNeed", + src.getModifiedItemAttr("roleBonus")) fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "cpu", src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonusecmrange.py b/eos/effects/rolebonusecmrange.py index 3d4c4c91e..a981b4f94 100644 --- a/eos/effects/rolebonusecmrange.py +++ b/eos/effects/rolebonusecmrange.py @@ -3,6 +3,10 @@ # Used by: # Ship: Griffin Navy Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "falloffEffectiveness", src.getModifiedItemAttr("roleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "maxRange", src.getModifiedItemAttr("roleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "falloffEffectiveness", + src.getModifiedItemAttr("roleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "maxRange", + src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonusiceoreminingdurationcap.py b/eos/effects/rolebonusiceoreminingdurationcap.py index 16222b0a3..f2dfdf612 100644 --- a/eos/effects/rolebonusiceoreminingdurationcap.py +++ b/eos/effects/rolebonusiceoreminingdurationcap.py @@ -3,8 +3,14 @@ # Used by: # Variations of ship: Covetor (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), "capacitorNeed", src.getModifiedItemAttr("miningDurationRoleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), "duration", src.getModifiedItemAttr("miningDurationRoleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", src.getModifiedItemAttr("miningDurationRoleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "capacitorNeed", src.getModifiedItemAttr("miningDurationRoleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), "capacitorNeed", + src.getModifiedItemAttr("miningDurationRoleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), "duration", + src.getModifiedItemAttr("miningDurationRoleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", + src.getModifiedItemAttr("miningDurationRoleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "capacitorNeed", + src.getModifiedItemAttr("miningDurationRoleBonus")) diff --git a/eos/effects/rolebonusjustscramblerstrength.py b/eos/effects/rolebonusjustscramblerstrength.py index 588d7b321..7be57333b 100644 --- a/eos/effects/rolebonusjustscramblerstrength.py +++ b/eos/effects/rolebonusjustscramblerstrength.py @@ -3,6 +3,8 @@ # Used by: # Ship: Maulus Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Navigation"), - "warpScrambleStrength", ship.getModifiedItemAttr("roleBonus")) \ No newline at end of file + "warpScrambleStrength", ship.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonusmaraudermjdrreactivationdelaybonus.py b/eos/effects/rolebonusmaraudermjdrreactivationdelaybonus.py index 9af3bd8eb..4f2dd193e 100644 --- a/eos/effects/rolebonusmaraudermjdrreactivationdelaybonus.py +++ b/eos/effects/rolebonusmaraudermjdrreactivationdelaybonus.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Marauder (4 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Micro Jump Drive", "moduleReactivationDelay", ship.getModifiedItemAttr("roleBonusMarauder")) diff --git a/eos/effects/rolebonusstasisrange.py b/eos/effects/rolebonusstasisrange.py index 2afc333ce..c08aa135f 100644 --- a/eos/effects/rolebonusstasisrange.py +++ b/eos/effects/rolebonusstasisrange.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vigil Fleet Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", src.getModifiedItemAttr("roleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", + src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonuswdcapcpu.py b/eos/effects/rolebonuswdcapcpu.py index 1805cfd3d..c16985002 100644 --- a/eos/effects/rolebonuswdcapcpu.py +++ b/eos/effects/rolebonuswdcapcpu.py @@ -3,6 +3,10 @@ # Used by: # Ship: Crucifier Navy Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "cpu", src.getModifiedItemAttr("roleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "capacitorNeed", src.getModifiedItemAttr("roleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "cpu", + src.getModifiedItemAttr("roleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "capacitorNeed", + src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonuswdrange.py b/eos/effects/rolebonuswdrange.py index 6e653055e..3d6cbdf24 100644 --- a/eos/effects/rolebonuswdrange.py +++ b/eos/effects/rolebonuswdrange.py @@ -3,6 +3,10 @@ # Used by: # Ship: Crucifier Navy Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloff", src.getModifiedItemAttr("roleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRange", src.getModifiedItemAttr("roleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloff", + src.getModifiedItemAttr("roleBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRange", + src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rorqualcargoscanrangebonus.py b/eos/effects/rorqualcargoscanrangebonus.py index 3fea94d3c..1b10ac223 100644 --- a/eos/effects/rorqualcargoscanrangebonus.py +++ b/eos/effects/rorqualcargoscanrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cargo Scanner", "cargoScanRange", ship.getModifiedItemAttr("cargoScannerRangeBonus")) diff --git a/eos/effects/rorqualsurveyscannerrangebonus.py b/eos/effects/rorqualsurveyscannerrangebonus.py index d9857c037..1a49d68ce 100644 --- a/eos/effects/rorqualsurveyscannerrangebonus.py +++ b/eos/effects/rorqualsurveyscannerrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Survey Scanner", "surveyScanRange", ship.getModifiedItemAttr("surveyScannerRangeBonus")) diff --git a/eos/effects/salvagermoduledurationreduction.py b/eos/effects/salvagermoduledurationreduction.py index 8221ba404..ecf0ee4cf 100644 --- a/eos/effects/salvagermoduledurationreduction.py +++ b/eos/effects/salvagermoduledurationreduction.py @@ -3,6 +3,8 @@ # Used by: # Implant: Poteque 'Prospector' Environmental Analysis EY-1005 type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Salvager", "duration", implant.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/salvaging.py b/eos/effects/salvaging.py index d41213cef..2caf9a3d4 100644 --- a/eos/effects/salvaging.py +++ b/eos/effects/salvaging.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Salvager (2 of 2) type = "active" + + def handler(fit, module, context): - pass \ No newline at end of file + pass diff --git a/eos/effects/salvagingaccessdifficultybonuseffectpassive.py b/eos/effects/salvagingaccessdifficultybonuseffectpassive.py index 1d4c1539a..f762ce8f0 100644 --- a/eos/effects/salvagingaccessdifficultybonuseffectpassive.py +++ b/eos/effects/salvagingaccessdifficultybonuseffectpassive.py @@ -4,6 +4,9 @@ # Modules from group: Rig Resource Processing (8 of 10) # Implant: Poteque 'Prospector' Salvaging SV-905 type = "passive" + + def handler(fit, container, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Salvaging"), - "accessDifficultyBonus", container.getModifiedItemAttr("accessDifficultyBonus"), position="post") + "accessDifficultyBonus", container.getModifiedItemAttr("accessDifficultyBonus"), + position="post") diff --git a/eos/effects/scangravimetricstrengthmodifiereffect.py b/eos/effects/scangravimetricstrengthmodifiereffect.py index ae4e2bc5d..64388c877 100644 --- a/eos/effects/scangravimetricstrengthmodifiereffect.py +++ b/eos/effects/scangravimetricstrengthmodifiereffect.py @@ -3,5 +3,7 @@ # Used by: # Implants named like: Low grade Talon (5 of 6) type = "passive" + + def handler(fit, implant, context): - fit.ship.increaseItemAttr("scanGravimetricStrength", implant.getModifiedItemAttr("scanGravimetricStrengthModifier")) \ No newline at end of file + fit.ship.increaseItemAttr("scanGravimetricStrength", implant.getModifiedItemAttr("scanGravimetricStrengthModifier")) diff --git a/eos/effects/scanladarstrengthmodifiereffect.py b/eos/effects/scanladarstrengthmodifiereffect.py index 984c6ef35..43c9aeafd 100644 --- a/eos/effects/scanladarstrengthmodifiereffect.py +++ b/eos/effects/scanladarstrengthmodifiereffect.py @@ -3,5 +3,7 @@ # Used by: # Implants named like: Low grade Jackal (5 of 6) type = "passive" + + def handler(fit, implant, context): - fit.ship.increaseItemAttr("scanLadarStrength", implant.getModifiedItemAttr("scanLadarStrengthModifier")) \ No newline at end of file + fit.ship.increaseItemAttr("scanLadarStrength", implant.getModifiedItemAttr("scanLadarStrengthModifier")) diff --git a/eos/effects/scanmagnetometricstrengthmodifiereffect.py b/eos/effects/scanmagnetometricstrengthmodifiereffect.py index aa9efba78..a4c66463f 100644 --- a/eos/effects/scanmagnetometricstrengthmodifiereffect.py +++ b/eos/effects/scanmagnetometricstrengthmodifiereffect.py @@ -3,5 +3,8 @@ # Used by: # Implants named like: Low grade Spur (5 of 6) type = "passive" + + def handler(fit, implant, context): - fit.ship.increaseItemAttr("scanMagnetometricStrength", implant.getModifiedItemAttr("scanMagnetometricStrengthModifier")) \ No newline at end of file + fit.ship.increaseItemAttr("scanMagnetometricStrength", + implant.getModifiedItemAttr("scanMagnetometricStrengthModifier")) diff --git a/eos/effects/scanradarstrengthmodifiereffect.py b/eos/effects/scanradarstrengthmodifiereffect.py index 2c6f049df..94069c92f 100644 --- a/eos/effects/scanradarstrengthmodifiereffect.py +++ b/eos/effects/scanradarstrengthmodifiereffect.py @@ -3,5 +3,7 @@ # Used by: # Implants named like: Low grade Grail (5 of 6) type = "passive" + + def handler(fit, implant, context): - fit.ship.increaseItemAttr("scanRadarStrength", implant.getModifiedItemAttr("scanRadarStrengthModifier")) \ No newline at end of file + fit.ship.increaseItemAttr("scanRadarStrength", implant.getModifiedItemAttr("scanRadarStrengthModifier")) diff --git a/eos/effects/scanresolutionaddpassive.py b/eos/effects/scanresolutionaddpassive.py index 78a8e292e..161b8c57c 100644 --- a/eos/effects/scanresolutionaddpassive.py +++ b/eos/effects/scanresolutionaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Subsystems from group: Electronic Systems (16 of 16) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("scanResolution", module.getModifiedItemAttr("scanResolution")) diff --git a/eos/effects/scanresolutionmultiplieronline.py b/eos/effects/scanresolutionmultiplieronline.py index fb4af457d..9b453a4c8 100644 --- a/eos/effects/scanresolutionmultiplieronline.py +++ b/eos/effects/scanresolutionmultiplieronline.py @@ -4,6 +4,8 @@ # Modules from group: Warp Core Stabilizer (8 of 8) # Module: Target Spectrum Breaker type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionMultiplier"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/scanstrengthaddpassive.py b/eos/effects/scanstrengthaddpassive.py index 050954265..bf7d16f60 100644 --- a/eos/effects/scanstrengthaddpassive.py +++ b/eos/effects/scanstrengthaddpassive.py @@ -3,6 +3,8 @@ # Used by: # Subsystems from group: Electronic Systems (16 of 16) type = "passive" + + def handler(fit, module, context): sensorTypes = ("Gravimetric", "Ladar", "Magnetometric", "Radar") for sensorType in sensorTypes: diff --git a/eos/effects/scanstrengthbonuspercentactivate.py b/eos/effects/scanstrengthbonuspercentactivate.py index 50b7b50ba..2ce6a627a 100644 --- a/eos/effects/scanstrengthbonuspercentactivate.py +++ b/eos/effects/scanstrengthbonuspercentactivate.py @@ -3,6 +3,8 @@ # Used by: # Module: QA ECCM type = "active" + + def handler(fit, module, context): for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): fit.ship.boostItemAttr( diff --git a/eos/effects/scanstrengthbonuspercentonline.py b/eos/effects/scanstrengthbonuspercentonline.py index 0dc5400fa..bccd06a4a 100644 --- a/eos/effects/scanstrengthbonuspercentonline.py +++ b/eos/effects/scanstrengthbonuspercentonline.py @@ -3,8 +3,10 @@ # Used by: # Modules from group: Signal Amplifier (7 of 7) type = "passive" + + def handler(fit, module, context): for type in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): fit.ship.boostItemAttr("scan%sStrength" % type, module.getModifiedItemAttr("scan%sStrengthPercent" % type), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/scanstrengthbonuspercentpassive.py b/eos/effects/scanstrengthbonuspercentpassive.py index 365a0f7a9..7e0f43c1d 100644 --- a/eos/effects/scanstrengthbonuspercentpassive.py +++ b/eos/effects/scanstrengthbonuspercentpassive.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: High grade (20 of 61) type = "passive" + + def handler(fit, implant, context): for type in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): sensorType = "scan{0}Strength".format(type) diff --git a/eos/effects/scoutdroneoperationdronerangebonusmodadddronecontroldistancechar.py b/eos/effects/scoutdroneoperationdronerangebonusmodadddronecontroldistancechar.py index fb750cd17..ba150045c 100644 --- a/eos/effects/scoutdroneoperationdronerangebonusmodadddronecontroldistancechar.py +++ b/eos/effects/scoutdroneoperationdronerangebonusmodadddronecontroldistancechar.py @@ -4,6 +4,8 @@ # Modules named like: Drone Control Range Augmentor (8 of 8) # Skills named like: Drone Avionics (2 of 2) type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 amount = container.getModifiedItemAttr("droneRangeBonus") * level diff --git a/eos/effects/scriptdurationbonus.py b/eos/effects/scriptdurationbonus.py index cd337615b..5b3081529 100644 --- a/eos/effects/scriptdurationbonus.py +++ b/eos/effects/scriptdurationbonus.py @@ -3,5 +3,7 @@ # Used by: # Charge: Focused Warp Disruption Script type = "passive" + + def handler(fit, module, context): module.boostItemAttr("duration", module.getModifiedChargeAttr("durationBonus")) diff --git a/eos/effects/scriptmassbonuspercentagebonus.py b/eos/effects/scriptmassbonuspercentagebonus.py index d045e09e1..e6d42eee4 100644 --- a/eos/effects/scriptmassbonuspercentagebonus.py +++ b/eos/effects/scriptmassbonuspercentagebonus.py @@ -4,5 +4,7 @@ # Charge: Focused Warp Disruption Script type = "passive" runTime = "early" + + def handler(fit, module, context): module.boostItemAttr("massBonusPercentage", module.getModifiedChargeAttr("massBonusPercentageBonus")) diff --git a/eos/effects/scriptmissileguidancecomputeraoecloudsizebonusbonus.py b/eos/effects/scriptmissileguidancecomputeraoecloudsizebonusbonus.py index e8b09cedb..12be7588b 100644 --- a/eos/effects/scriptmissileguidancecomputeraoecloudsizebonusbonus.py +++ b/eos/effects/scriptmissileguidancecomputeraoecloudsizebonusbonus.py @@ -4,5 +4,7 @@ # Charges from group: Tracking Script (2 of 2) # Charges named like: Missile Script (4 of 4) type = "passive" + + def handler(fit, module, context): module.boostItemAttr("aoeCloudSizeBonus", module.getModifiedChargeAttr("aoeCloudSizeBonusBonus")) diff --git a/eos/effects/scriptmissileguidancecomputeraoevelocitybonusbonus.py b/eos/effects/scriptmissileguidancecomputeraoevelocitybonusbonus.py index 514cc0077..800c91a08 100644 --- a/eos/effects/scriptmissileguidancecomputeraoevelocitybonusbonus.py +++ b/eos/effects/scriptmissileguidancecomputeraoevelocitybonusbonus.py @@ -4,5 +4,7 @@ # Charges from group: Tracking Script (2 of 2) # Charges named like: Missile Script (4 of 4) type = "passive" + + def handler(fit, module, context): module.boostItemAttr("aoeVelocityBonus", module.getModifiedChargeAttr("aoeVelocityBonusBonus")) diff --git a/eos/effects/scriptmissileguidancecomputerexplosiondelaybonusbonus.py b/eos/effects/scriptmissileguidancecomputerexplosiondelaybonusbonus.py index 5f58e1686..5f6b2e00b 100644 --- a/eos/effects/scriptmissileguidancecomputerexplosiondelaybonusbonus.py +++ b/eos/effects/scriptmissileguidancecomputerexplosiondelaybonusbonus.py @@ -3,5 +3,7 @@ # Used by: # Charges named like: Missile Script (4 of 4) type = "passive" + + def handler(fit, module, context): module.boostItemAttr("explosionDelayBonus", module.getModifiedChargeAttr("explosionDelayBonusBonus")) diff --git a/eos/effects/scriptmissileguidancecomputermissilevelocitybonusbonus.py b/eos/effects/scriptmissileguidancecomputermissilevelocitybonusbonus.py index 31859dbc9..9867c0a84 100644 --- a/eos/effects/scriptmissileguidancecomputermissilevelocitybonusbonus.py +++ b/eos/effects/scriptmissileguidancecomputermissilevelocitybonusbonus.py @@ -3,5 +3,7 @@ # Used by: # Charges named like: Missile Script (4 of 4) type = "passive" + + def handler(fit, module, context): module.boostItemAttr("missileVelocityBonus", module.getModifiedChargeAttr("missileVelocityBonusBonus")) diff --git a/eos/effects/scriptresistancebonusbonus.py b/eos/effects/scriptresistancebonusbonus.py index 1698579fc..d2c313dca 100644 --- a/eos/effects/scriptresistancebonusbonus.py +++ b/eos/effects/scriptresistancebonusbonus.py @@ -3,8 +3,11 @@ # Used by: # Charges named like: Resistance Script (8 of 8) type = "passive" + + def handler(fit, src, context): src.boostItemAttr("emDamageResistanceBonus", src.getModifiedChargeAttr("emDamageResistanceBonusBonus")) - src.boostItemAttr("explosiveDamageResistanceBonus", src.getModifiedChargeAttr("explosiveDamageResistanceBonusBonus")) + src.boostItemAttr("explosiveDamageResistanceBonus", + src.getModifiedChargeAttr("explosiveDamageResistanceBonusBonus")) src.boostItemAttr("kineticDamageResistanceBonus", src.getModifiedChargeAttr("kineticDamageResistanceBonusBonus")) src.boostItemAttr("thermalDamageResistanceBonus", src.getModifiedChargeAttr("thermalDamageResistanceBonusBonus")) diff --git a/eos/effects/scriptsensorboostermaxtargetrangebonusbonus.py b/eos/effects/scriptsensorboostermaxtargetrangebonusbonus.py index 1eb7b7b6b..a74e9d0bc 100644 --- a/eos/effects/scriptsensorboostermaxtargetrangebonusbonus.py +++ b/eos/effects/scriptsensorboostermaxtargetrangebonusbonus.py @@ -4,5 +4,7 @@ # Charges from group: Sensor Booster Script (3 of 3) # Charges from group: Sensor Dampener Script (2 of 2) type = "passive" + + def handler(fit, module, context): - module.boostItemAttr("maxTargetRangeBonus", module.getModifiedChargeAttr("maxTargetRangeBonusBonus")) \ No newline at end of file + module.boostItemAttr("maxTargetRangeBonus", module.getModifiedChargeAttr("maxTargetRangeBonusBonus")) diff --git a/eos/effects/scriptsensorboosterscanresolutionbonusbonus.py b/eos/effects/scriptsensorboosterscanresolutionbonusbonus.py index 2372aa055..c1d064018 100644 --- a/eos/effects/scriptsensorboosterscanresolutionbonusbonus.py +++ b/eos/effects/scriptsensorboosterscanresolutionbonusbonus.py @@ -4,5 +4,7 @@ # Charges from group: Sensor Booster Script (3 of 3) # Charges from group: Sensor Dampener Script (2 of 2) type = "passive" + + def handler(fit, module, context): - module.boostItemAttr("scanResolutionBonus", module.getModifiedChargeAttr("scanResolutionBonusBonus")) \ No newline at end of file + module.boostItemAttr("scanResolutionBonus", module.getModifiedChargeAttr("scanResolutionBonusBonus")) diff --git a/eos/effects/scriptsensorboostersensorstrengthbonusbonus.py b/eos/effects/scriptsensorboostersensorstrengthbonusbonus.py index f0f6500a6..467c7edef 100644 --- a/eos/effects/scriptsensorboostersensorstrengthbonusbonus.py +++ b/eos/effects/scriptsensorboostersensorstrengthbonusbonus.py @@ -3,6 +3,9 @@ # Used by: # Charges from group: Sensor Booster Script (3 of 3) type = "active" + + def handler(fit, module, context): for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - module.boostItemAttr("scan{}StrengthPercent".format(scanType), module.getModifiedChargeAttr("sensorStrengthBonusBonus")) + module.boostItemAttr("scan{}StrengthPercent".format(scanType), + module.getModifiedChargeAttr("sensorStrengthBonusBonus")) diff --git a/eos/effects/scriptsignatureradiusbonusbonus.py b/eos/effects/scriptsignatureradiusbonusbonus.py index 403de39f0..29b60408a 100644 --- a/eos/effects/scriptsignatureradiusbonusbonus.py +++ b/eos/effects/scriptsignatureradiusbonusbonus.py @@ -4,5 +4,7 @@ # Charge: Focused Warp Disruption Script type = "passive" runTime = "early" + + def handler(fit, module, context): module.boostItemAttr("signatureRadiusBonus", module.getModifiedChargeAttr("signatureRadiusBonusBonus")) diff --git a/eos/effects/scriptspeedboostfactorbonusbonus.py b/eos/effects/scriptspeedboostfactorbonusbonus.py index 613ab01e3..e7795bc1a 100644 --- a/eos/effects/scriptspeedboostfactorbonusbonus.py +++ b/eos/effects/scriptspeedboostfactorbonusbonus.py @@ -4,5 +4,7 @@ # Charge: Focused Warp Disruption Script type = "passive" runTime = "early" + + def handler(fit, module, context): module.boostItemAttr("speedBoostFactorBonus", module.getModifiedChargeAttr("speedBoostFactorBonusBonus")) diff --git a/eos/effects/scriptspeedfactorbonusbonus.py b/eos/effects/scriptspeedfactorbonusbonus.py index 34b7121c0..3df351500 100644 --- a/eos/effects/scriptspeedfactorbonusbonus.py +++ b/eos/effects/scriptspeedfactorbonusbonus.py @@ -4,5 +4,7 @@ # Charge: Focused Warp Disruption Script type = "passive" runTime = "early" + + def handler(fit, module, context): module.boostItemAttr("speedFactorBonus", module.getModifiedChargeAttr("speedFactorBonusBonus")) diff --git a/eos/effects/scripttrackingcomputerfalloffbonusbonus.py b/eos/effects/scripttrackingcomputerfalloffbonusbonus.py index 987bbea91..b2c054606 100644 --- a/eos/effects/scripttrackingcomputerfalloffbonusbonus.py +++ b/eos/effects/scripttrackingcomputerfalloffbonusbonus.py @@ -4,5 +4,7 @@ # Charges from group: Tracking Disruption Script (2 of 2) # Charges from group: Tracking Script (2 of 2) type = "passive" + + def handler(fit, module, context): module.boostItemAttr("falloffBonus", module.getModifiedChargeAttr("falloffBonusBonus")) diff --git a/eos/effects/scripttrackingcomputermaxrangebonusbonus.py b/eos/effects/scripttrackingcomputermaxrangebonusbonus.py index 04194a932..c3b510a7b 100644 --- a/eos/effects/scripttrackingcomputermaxrangebonusbonus.py +++ b/eos/effects/scripttrackingcomputermaxrangebonusbonus.py @@ -4,5 +4,7 @@ # Charges from group: Tracking Disruption Script (2 of 2) # Charges from group: Tracking Script (2 of 2) type = "passive" + + def handler(fit, module, context): module.boostItemAttr("maxRangeBonus", module.getModifiedChargeAttr("maxRangeBonusBonus")) diff --git a/eos/effects/scripttrackingcomputertrackingspeedbonusbonus.py b/eos/effects/scripttrackingcomputertrackingspeedbonusbonus.py index 027f78b11..ff256a748 100644 --- a/eos/effects/scripttrackingcomputertrackingspeedbonusbonus.py +++ b/eos/effects/scripttrackingcomputertrackingspeedbonusbonus.py @@ -4,5 +4,7 @@ # Charges from group: Tracking Disruption Script (2 of 2) # Charges from group: Tracking Script (2 of 2) type = "passive" + + def handler(fit, module, context): module.boostItemAttr("trackingSpeedBonus", module.getModifiedChargeAttr("trackingSpeedBonusBonus")) diff --git a/eos/effects/scriptwarpdisruptionfieldgeneratorsetdisallowinempirespace.py b/eos/effects/scriptwarpdisruptionfieldgeneratorsetdisallowinempirespace.py index 5e9ae6df9..4e9f29bd9 100644 --- a/eos/effects/scriptwarpdisruptionfieldgeneratorsetdisallowinempirespace.py +++ b/eos/effects/scriptwarpdisruptionfieldgeneratorsetdisallowinempirespace.py @@ -3,5 +3,7 @@ # Used by: # Charge: Focused Warp Disruption Script type = "passive" + + def handler(fit, module, context): module.forceItemAttr("disallowInEmpireSpace", module.getModifiedChargeAttr("disallowInEmpireSpace")) diff --git a/eos/effects/scriptwarpscramblerangebonus.py b/eos/effects/scriptwarpscramblerangebonus.py index 82a3ce954..adbcbc88e 100644 --- a/eos/effects/scriptwarpscramblerangebonus.py +++ b/eos/effects/scriptwarpscramblerangebonus.py @@ -3,5 +3,7 @@ # Used by: # Charge: Focused Warp Disruption Script type = "passive" + + def handler(fit, module, context): module.boostItemAttr("warpScrambleRange", module.getModifiedChargeAttr("warpScrambleRangeBonus")) diff --git a/eos/effects/selfrof.py b/eos/effects/selfrof.py index 58334e09d..b9f0541f2 100644 --- a/eos/effects/selfrof.py +++ b/eos/effects/selfrof.py @@ -5,6 +5,8 @@ # Skill: Rocket Specialization # Skill: Torpedo Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), - "speed", skill.getModifiedItemAttr("rofBonus") * skill.level) \ No newline at end of file + "speed", skill.getModifiedItemAttr("rofBonus") * skill.level) diff --git a/eos/effects/selft2largehybridblasterdamagebonus.py b/eos/effects/selft2largehybridblasterdamagebonus.py index 559825e92..929509540 100644 --- a/eos/effects/selft2largehybridblasterdamagebonus.py +++ b/eos/effects/selft2largehybridblasterdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Large Blaster Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Blaster Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largehybridraildamagebonus.py b/eos/effects/selft2largehybridraildamagebonus.py index 177517e71..6742d22d8 100644 --- a/eos/effects/selft2largehybridraildamagebonus.py +++ b/eos/effects/selft2largehybridraildamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Large Railgun Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Railgun Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largelaserbeamdamagebonus.py b/eos/effects/selft2largelaserbeamdamagebonus.py index 4a23b07a9..0a4cbafde 100644 --- a/eos/effects/selft2largelaserbeamdamagebonus.py +++ b/eos/effects/selft2largelaserbeamdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Large Beam Laser Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Beam Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largelaserpulsedamagebonus.py b/eos/effects/selft2largelaserpulsedamagebonus.py index 1e0e7a507..4714dd913 100644 --- a/eos/effects/selft2largelaserpulsedamagebonus.py +++ b/eos/effects/selft2largelaserpulsedamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Large Pulse Laser Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Pulse Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largeprojectileacdamagebonus.py b/eos/effects/selft2largeprojectileacdamagebonus.py index e0af7c045..0b3e4c6e3 100644 --- a/eos/effects/selft2largeprojectileacdamagebonus.py +++ b/eos/effects/selft2largeprojectileacdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Large Autocannon Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Autocannon Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largeprojectileartydamagebonus.py b/eos/effects/selft2largeprojectileartydamagebonus.py index ae4744e49..245a64866 100644 --- a/eos/effects/selft2largeprojectileartydamagebonus.py +++ b/eos/effects/selft2largeprojectileartydamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Large Artillery Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Artillery Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumhybridblasterdamagebonus.py b/eos/effects/selft2mediumhybridblasterdamagebonus.py index 856c45328..ca7dffdf5 100644 --- a/eos/effects/selft2mediumhybridblasterdamagebonus.py +++ b/eos/effects/selft2mediumhybridblasterdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Medium Blaster Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Blaster Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumhybridraildamagebonus.py b/eos/effects/selft2mediumhybridraildamagebonus.py index 1636d7358..77b6c5abb 100644 --- a/eos/effects/selft2mediumhybridraildamagebonus.py +++ b/eos/effects/selft2mediumhybridraildamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Medium Railgun Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Railgun Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumlaserbeamdamagebonus.py b/eos/effects/selft2mediumlaserbeamdamagebonus.py index 4c7296f7d..e509d73de 100644 --- a/eos/effects/selft2mediumlaserbeamdamagebonus.py +++ b/eos/effects/selft2mediumlaserbeamdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Medium Beam Laser Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Beam Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumlaserpulsedamagebonus.py b/eos/effects/selft2mediumlaserpulsedamagebonus.py index fde671bfe..021493979 100644 --- a/eos/effects/selft2mediumlaserpulsedamagebonus.py +++ b/eos/effects/selft2mediumlaserpulsedamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Medium Pulse Laser Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Pulse Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumprojectileacdamagebonus.py b/eos/effects/selft2mediumprojectileacdamagebonus.py index c8feae6d9..a18d3914a 100644 --- a/eos/effects/selft2mediumprojectileacdamagebonus.py +++ b/eos/effects/selft2mediumprojectileacdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Medium Autocannon Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Autocannon Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumprojectileartydamagebonus.py b/eos/effects/selft2mediumprojectileartydamagebonus.py index d0fc889bc..8b091e5d8 100644 --- a/eos/effects/selft2mediumprojectileartydamagebonus.py +++ b/eos/effects/selft2mediumprojectileartydamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Medium Artillery Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Artillery Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smallhybridblasterdamagebonus.py b/eos/effects/selft2smallhybridblasterdamagebonus.py index d1903a112..3bc3b79c1 100644 --- a/eos/effects/selft2smallhybridblasterdamagebonus.py +++ b/eos/effects/selft2smallhybridblasterdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Small Blaster Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Blaster Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smallhybridraildamagebonus.py b/eos/effects/selft2smallhybridraildamagebonus.py index cd427589b..8da445f83 100644 --- a/eos/effects/selft2smallhybridraildamagebonus.py +++ b/eos/effects/selft2smallhybridraildamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Small Railgun Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Railgun Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smalllaserbeamdamagebonus.py b/eos/effects/selft2smalllaserbeamdamagebonus.py index b3982e22e..b6cd4b2fd 100644 --- a/eos/effects/selft2smalllaserbeamdamagebonus.py +++ b/eos/effects/selft2smalllaserbeamdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Small Beam Laser Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Beam Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smalllaserpulsedamagebonus.py b/eos/effects/selft2smalllaserpulsedamagebonus.py index 78d48b5ec..92a516038 100644 --- a/eos/effects/selft2smalllaserpulsedamagebonus.py +++ b/eos/effects/selft2smalllaserpulsedamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Small Pulse Laser Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Pulse Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smallprojectileacdamagebonus.py b/eos/effects/selft2smallprojectileacdamagebonus.py index 46d43f304..d86b1ed90 100644 --- a/eos/effects/selft2smallprojectileacdamagebonus.py +++ b/eos/effects/selft2smallprojectileacdamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Small Autocannon Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Autocannon Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smallprojectileartydamagebonus.py b/eos/effects/selft2smallprojectileartydamagebonus.py index faec6a137..52510d1cb 100644 --- a/eos/effects/selft2smallprojectileartydamagebonus.py +++ b/eos/effects/selft2smallprojectileartydamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Small Artillery Specialization type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Artillery Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) \ No newline at end of file + "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/sensorboosteractivepercentage.py b/eos/effects/sensorboosteractivepercentage.py index c6e61424f..f79c16a57 100644 --- a/eos/effects/sensorboosteractivepercentage.py +++ b/eos/effects/sensorboosteractivepercentage.py @@ -3,11 +3,13 @@ # Used by: # Modules from group: Sensor Booster (16 of 16) type = "active" + + def handler(fit, module, context): fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties = True) + stackingPenalties=True) fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties = True) + stackingPenalties=True) for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): fit.ship.boostItemAttr( diff --git a/eos/effects/sensorboosttargetedhostile.py b/eos/effects/sensorboosttargetedhostile.py index 53712211a..0055c9c92 100644 --- a/eos/effects/sensorboosttargetedhostile.py +++ b/eos/effects/sensorboosttargetedhostile.py @@ -3,9 +3,11 @@ # Used by: # Drones named like: SD (3 of 3) type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: fit.ship.multiplyItemAttr("maxTargetRange", container.getModifiedItemAttr("maxTargetRangeMultiplier"), - stackingPenalties = True, penaltyGroup="postMul") + stackingPenalties=True, penaltyGroup="postMul") fit.ship.multiplyItemAttr("scanResolution", container.getModifiedItemAttr("scanResolutionMultiplier"), - stackingPenalties = True, penaltyGroup="postMul") + stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/sensorcompensationsensorstrengthbonusgravimetric.py b/eos/effects/sensorcompensationsensorstrengthbonusgravimetric.py index cb504e7bb..244f84e2a 100644 --- a/eos/effects/sensorcompensationsensorstrengthbonusgravimetric.py +++ b/eos/effects/sensorcompensationsensorstrengthbonusgravimetric.py @@ -3,5 +3,8 @@ # Used by: # Skill: Gravimetric Sensor Compensation type = "passive" + + def handler(fit, container, context): - fit.ship.boostItemAttr("scanGravimetricStrength", container.getModifiedItemAttr("sensorStrengthBonus") * container.level) + fit.ship.boostItemAttr("scanGravimetricStrength", + container.getModifiedItemAttr("sensorStrengthBonus") * container.level) diff --git a/eos/effects/sensorcompensationsensorstrengthbonusladar.py b/eos/effects/sensorcompensationsensorstrengthbonusladar.py index 25c5ac30c..b046ce046 100644 --- a/eos/effects/sensorcompensationsensorstrengthbonusladar.py +++ b/eos/effects/sensorcompensationsensorstrengthbonusladar.py @@ -3,5 +3,7 @@ # Used by: # Skill: Ladar Sensor Compensation type = "passive" + + def handler(fit, container, context): fit.ship.boostItemAttr("scanLadarStrength", container.getModifiedItemAttr("sensorStrengthBonus") * container.level) diff --git a/eos/effects/sensorcompensationsensorstrengthbonusmagnetometric.py b/eos/effects/sensorcompensationsensorstrengthbonusmagnetometric.py index 80e58a9fa..6306a2df6 100644 --- a/eos/effects/sensorcompensationsensorstrengthbonusmagnetometric.py +++ b/eos/effects/sensorcompensationsensorstrengthbonusmagnetometric.py @@ -3,5 +3,8 @@ # Used by: # Skill: Magnetometric Sensor Compensation type = "passive" + + def handler(fit, container, context): - fit.ship.boostItemAttr("scanMagnetometricStrength", container.getModifiedItemAttr("sensorStrengthBonus") * container.level) + fit.ship.boostItemAttr("scanMagnetometricStrength", + container.getModifiedItemAttr("sensorStrengthBonus") * container.level) diff --git a/eos/effects/sensorcompensationsensorstrengthbonusradar.py b/eos/effects/sensorcompensationsensorstrengthbonusradar.py index 0a88f3961..2df326dca 100644 --- a/eos/effects/sensorcompensationsensorstrengthbonusradar.py +++ b/eos/effects/sensorcompensationsensorstrengthbonusradar.py @@ -3,5 +3,7 @@ # Used by: # Skill: Radar Sensor Compensation type = "passive" + + def handler(fit, container, context): fit.ship.boostItemAttr("scanRadarStrength", container.getModifiedItemAttr("sensorStrengthBonus") * container.level) diff --git a/eos/effects/sensorupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringsensorupgrades.py b/eos/effects/sensorupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringsensorupgrades.py index 9e55388e2..f4d9c0886 100644 --- a/eos/effects/sensorupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringsensorupgrades.py +++ b/eos/effects/sensorupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringsensorupgrades.py @@ -5,6 +5,8 @@ # Modules named like: Liquid Cooled Electronics (8 of 8) # Skill: Electronics Upgrades type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Electronics Upgrades"), diff --git a/eos/effects/sentrydronedamagebonus.py b/eos/effects/sentrydronedamagebonus.py index 07a42592b..cf8ec25b2 100644 --- a/eos/effects/sentrydronedamagebonus.py +++ b/eos/effects/sentrydronedamagebonus.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Sentry Damage Augmentor (8 of 8) type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "damageMultiplier", module.getModifiedItemAttr("damageMultiplierBonus"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/setbonusasklepian.py b/eos/effects/setbonusasklepian.py index 1451bee7d..5d063f470 100644 --- a/eos/effects/setbonusasklepian.py +++ b/eos/effects/setbonusasklepian.py @@ -5,6 +5,8 @@ # Implants named like: grade Asklepian Omega (2 of 2) runTime = "early" type = "passive" + + def handler(fit, src, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Cybernetics"), "armorRepairBonus", src.getModifiedItemAttr("implantSetSerpentis2")) diff --git a/eos/effects/setbonusbloodraider.py b/eos/effects/setbonusbloodraider.py index 73fb305ec..2b318f6f9 100644 --- a/eos/effects/setbonusbloodraider.py +++ b/eos/effects/setbonusbloodraider.py @@ -4,6 +4,8 @@ # Implants named like: grade Talisman (18 of 18) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "durationBonus", implant.getModifiedItemAttr("implantSetBloodraider")) + "durationBonus", implant.getModifiedItemAttr("implantSetBloodraider")) diff --git a/eos/effects/setbonusbloodraidernosferatu.py b/eos/effects/setbonusbloodraidernosferatu.py index 31d3d4b3b..81d37c598 100644 --- a/eos/effects/setbonusbloodraidernosferatu.py +++ b/eos/effects/setbonusbloodraidernosferatu.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Talisman (15 of 18) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems"), "duration", implant.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/setbonuschristmasagilitybonus.py b/eos/effects/setbonuschristmasagilitybonus.py index 760c76e05..d8f472b50 100644 --- a/eos/effects/setbonuschristmasagilitybonus.py +++ b/eos/effects/setbonuschristmasagilitybonus.py @@ -4,6 +4,8 @@ # Implants named like: Genolution Core Augmentation CA (4 of 4) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "agilityBonus", implant.getModifiedItemAttr("implantSetChristmas")) + "agilityBonus", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmasarmorhpbonus2.py b/eos/effects/setbonuschristmasarmorhpbonus2.py index 6d096e01a..b9eb11557 100644 --- a/eos/effects/setbonuschristmasarmorhpbonus2.py +++ b/eos/effects/setbonuschristmasarmorhpbonus2.py @@ -4,6 +4,8 @@ # Implants named like: Genolution Core Augmentation CA (4 of 4) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "armorHpBonus2", implant.getModifiedItemAttr("implantSetChristmas")) + "armorHpBonus2", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmasbonusvelocity.py b/eos/effects/setbonuschristmasbonusvelocity.py index 09352ce10..eb2ae35bc 100644 --- a/eos/effects/setbonuschristmasbonusvelocity.py +++ b/eos/effects/setbonuschristmasbonusvelocity.py @@ -4,6 +4,8 @@ # Implants named like: Genolution Core Augmentation CA (4 of 4) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "implantBonusVelocity", implant.getModifiedItemAttr("implantSetChristmas")) + "implantBonusVelocity", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmascapacitorcapacity.py b/eos/effects/setbonuschristmascapacitorcapacity.py index 79cc5654a..cb2a90ce1 100644 --- a/eos/effects/setbonuschristmascapacitorcapacity.py +++ b/eos/effects/setbonuschristmascapacitorcapacity.py @@ -4,6 +4,9 @@ # Implants named like: Genolution Core Augmentation CA (4 of 4) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "capacitorCapacityBonus", implant.getModifiedItemAttr("implantSetChristmas")) + "capacitorCapacityBonus", + implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmascapacitorrecharge2.py b/eos/effects/setbonuschristmascapacitorrecharge2.py index a6c85f4de..39e0d41b4 100644 --- a/eos/effects/setbonuschristmascapacitorrecharge2.py +++ b/eos/effects/setbonuschristmascapacitorrecharge2.py @@ -4,6 +4,8 @@ # Implants named like: Genolution Core Augmentation CA (4 of 4) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "capRechargeBonus", implant.getModifiedItemAttr("implantSetChristmas")) + "capRechargeBonus", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmascpuoutput.py b/eos/effects/setbonuschristmascpuoutput.py index 554485070..2c7d06990 100644 --- a/eos/effects/setbonuschristmascpuoutput.py +++ b/eos/effects/setbonuschristmascpuoutput.py @@ -4,6 +4,8 @@ # Implants named like: Genolution Core Augmentation CA (4 of 4) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "cpuOutputBonus2", implant.getModifiedItemAttr("implantSetChristmas")) + "cpuOutputBonus2", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmaspowergrid.py b/eos/effects/setbonuschristmaspowergrid.py index 936f394dc..183356391 100644 --- a/eos/effects/setbonuschristmaspowergrid.py +++ b/eos/effects/setbonuschristmaspowergrid.py @@ -4,6 +4,9 @@ # Implants named like: Genolution Core Augmentation CA (4 of 4) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "powerEngineeringOutputBonus", implant.getModifiedItemAttr("implantSetChristmas")) + "powerEngineeringOutputBonus", + implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmasshieldcapacitybonus.py b/eos/effects/setbonuschristmasshieldcapacitybonus.py index 8de48f2ab..e9212fe68 100644 --- a/eos/effects/setbonuschristmasshieldcapacitybonus.py +++ b/eos/effects/setbonuschristmasshieldcapacitybonus.py @@ -4,6 +4,8 @@ # Implants named like: Genolution Core Augmentation CA (4 of 4) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "shieldCapacityBonus", implant.getModifiedItemAttr("implantSetChristmas")) + "shieldCapacityBonus", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonusguristas.py b/eos/effects/setbonusguristas.py index 34bbfacc2..18a708dc1 100644 --- a/eos/effects/setbonusguristas.py +++ b/eos/effects/setbonusguristas.py @@ -4,6 +4,8 @@ # Implants named like: grade Crystal (18 of 18) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "shieldBoostMultiplier", implant.getModifiedItemAttr("implantSetGuristas")) + "shieldBoostMultiplier", implant.getModifiedItemAttr("implantSetGuristas")) diff --git a/eos/effects/setbonusmordus.py b/eos/effects/setbonusmordus.py index eef3675f9..6db3789dd 100644 --- a/eos/effects/setbonusmordus.py +++ b/eos/effects/setbonusmordus.py @@ -4,6 +4,8 @@ # Implants named like: grade Centurion (12 of 12) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "rangeSkillBonus", implant.getModifiedItemAttr("implantSetMordus")) + "rangeSkillBonus", implant.getModifiedItemAttr("implantSetMordus")) diff --git a/eos/effects/setbonusore.py b/eos/effects/setbonusore.py index a7342a8fa..0d5a83233 100644 --- a/eos/effects/setbonusore.py +++ b/eos/effects/setbonusore.py @@ -4,6 +4,8 @@ # Implants named like: grade Harvest (12 of 12) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "maxRangeBonus", implant.getModifiedItemAttr("implantSetORE")) + "maxRangeBonus", implant.getModifiedItemAttr("implantSetORE")) diff --git a/eos/effects/setbonussansha.py b/eos/effects/setbonussansha.py index df7ae7be3..48c915f1d 100644 --- a/eos/effects/setbonussansha.py +++ b/eos/effects/setbonussansha.py @@ -5,6 +5,8 @@ # Implant: High-grade Halo Omega runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "armorHpBonus", implant.getModifiedItemAttr("implantSetSansha") or 1) + "armorHpBonus", implant.getModifiedItemAttr("implantSetSansha") or 1) diff --git a/eos/effects/setbonusserpentis.py b/eos/effects/setbonusserpentis.py index f4de04dcc..96f1048f5 100644 --- a/eos/effects/setbonusserpentis.py +++ b/eos/effects/setbonusserpentis.py @@ -4,6 +4,8 @@ # Implants named like: grade Snake (18 of 18) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "velocityBonus", implant.getModifiedItemAttr("implantSetSerpentis")) + "velocityBonus", implant.getModifiedItemAttr("implantSetSerpentis")) diff --git a/eos/effects/setbonussisters.py b/eos/effects/setbonussisters.py index a43478d52..a63079741 100644 --- a/eos/effects/setbonussisters.py +++ b/eos/effects/setbonussisters.py @@ -4,6 +4,8 @@ # Implants named like: grade Virtue (12 of 12) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "scanStrengthBonus", implant.getModifiedItemAttr("implantSetSisters")) + "scanStrengthBonus", implant.getModifiedItemAttr("implantSetSisters")) diff --git a/eos/effects/setbonussyndicate.py b/eos/effects/setbonussyndicate.py index 61fc59591..ffb9c754f 100644 --- a/eos/effects/setbonussyndicate.py +++ b/eos/effects/setbonussyndicate.py @@ -4,6 +4,9 @@ # Implants named like: grade Edge (12 of 12) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "boosterAttributeModifier", implant.getModifiedItemAttr("implantSetSyndicate")) + "boosterAttributeModifier", + implant.getModifiedItemAttr("implantSetSyndicate")) diff --git a/eos/effects/setbonusthukker.py b/eos/effects/setbonusthukker.py index 8594ddcfe..78313ac62 100644 --- a/eos/effects/setbonusthukker.py +++ b/eos/effects/setbonusthukker.py @@ -4,6 +4,8 @@ # Implants named like: grade Nomad (12 of 12) runTime = "early" type = "passive" + + def handler(fit, implant, context): fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "agilityBonus", implant.getModifiedItemAttr("implantSetThukker")) + "agilityBonus", implant.getModifiedItemAttr("implantSetThukker")) diff --git a/eos/effects/sharpshooterrangeskillbonuspostpercentmaxrangelocationshipmodulesrequiringgunnery.py b/eos/effects/sharpshooterrangeskillbonuspostpercentmaxrangelocationshipmodulesrequiringgunnery.py index a0e5b18e9..7b53ea966 100644 --- a/eos/effects/sharpshooterrangeskillbonuspostpercentmaxrangelocationshipmodulesrequiringgunnery.py +++ b/eos/effects/sharpshooterrangeskillbonuspostpercentmaxrangelocationshipmodulesrequiringgunnery.py @@ -5,6 +5,8 @@ # Implants named like: Zainou 'Deadeye' Sharpshooter ST (6 of 6) # Skill: Sharpshooter type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), diff --git a/eos/effects/shieldboostamplifier.py b/eos/effects/shieldboostamplifier.py index 7b9ca00df..6b37ba157 100644 --- a/eos/effects/shieldboostamplifier.py +++ b/eos/effects/shieldboostamplifier.py @@ -4,7 +4,10 @@ # Modules from group: Capacitor Power Relay (20 of 20) # Modules from group: Shield Boost Amplifier (25 of 25) type = "passive" + + def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), - "shieldBonus", module.getModifiedItemAttr("shieldBoostMultiplier"), - stackingPenalties=True) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), + "shieldBonus", module.getModifiedItemAttr("shieldBoostMultiplier"), + stackingPenalties=True) diff --git a/eos/effects/shieldboostamplifierpassive.py b/eos/effects/shieldboostamplifierpassive.py index 33b0cff40..182c04acf 100644 --- a/eos/effects/shieldboostamplifierpassive.py +++ b/eos/effects/shieldboostamplifierpassive.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Crystal (15 of 18) type = "passive" + + def handler(fit, container, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", container.getModifiedItemAttr("shieldBoostMultiplier")) diff --git a/eos/effects/shieldboostamplifierpassivebooster.py b/eos/effects/shieldboostamplifierpassivebooster.py index b0b98b09c..0c7158194 100644 --- a/eos/effects/shieldboostamplifierpassivebooster.py +++ b/eos/effects/shieldboostamplifierpassivebooster.py @@ -4,6 +4,9 @@ # Implants named like: Blue Pill Booster (5 of 5) # Implant: Antipharmakon Thureo type = "passive" + + def handler(fit, container, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), - "shieldBonus", container.getModifiedItemAttr("shieldBoostMultiplier")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), + "shieldBonus", container.getModifiedItemAttr("shieldBoostMultiplier")) diff --git a/eos/effects/shieldboosterdurationbonusshieldskills.py b/eos/effects/shieldboosterdurationbonusshieldskills.py index 7664e8f81..4840594c1 100644 --- a/eos/effects/shieldboosterdurationbonusshieldskills.py +++ b/eos/effects/shieldboosterdurationbonusshieldskills.py @@ -3,6 +3,9 @@ # Used by: # Modules named like: Core Defense Operational Solidifier (8 of 8) type = "passive" + + def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), - "duration", module.getModifiedItemAttr("durationSkillBonus")) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), + "duration", module.getModifiedItemAttr("durationSkillBonus")) diff --git a/eos/effects/shieldboosting.py b/eos/effects/shieldboosting.py index 70e49fa8b..8d8676d0e 100644 --- a/eos/effects/shieldboosting.py +++ b/eos/effects/shieldboosting.py @@ -4,7 +4,9 @@ # Modules from group: Shield Booster (93 of 93) runTime = "late" type = "active" + + def handler(fit, module, context): amount = module.getModifiedItemAttr("shieldBonus") speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("shieldRepair", amount / speed) \ No newline at end of file + fit.extraAttributes.increase("shieldRepair", amount / speed) diff --git a/eos/effects/shieldcapacityaddpassive.py b/eos/effects/shieldcapacityaddpassive.py index 6bc0000b0..cf0ff741b 100644 --- a/eos/effects/shieldcapacityaddpassive.py +++ b/eos/effects/shieldcapacityaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Subsystems from group: Defensive Systems (16 of 16) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("shieldCapacity", module.getModifiedItemAttr("shieldCapacity")) diff --git a/eos/effects/shieldcapacitybonusonline.py b/eos/effects/shieldcapacitybonusonline.py index 8f3d4afbb..7c4cb037d 100644 --- a/eos/effects/shieldcapacitybonusonline.py +++ b/eos/effects/shieldcapacitybonusonline.py @@ -4,5 +4,7 @@ # Modules from group: Shield Extender (33 of 33) # Modules from group: Shield Resistance Amplifier (88 of 88) type = "passive" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("shieldCapacity", module.getModifiedItemAttr("capacityBonus")) \ No newline at end of file + fit.ship.increaseItemAttr("shieldCapacity", module.getModifiedItemAttr("capacityBonus")) diff --git a/eos/effects/shieldcapacitymultiply.py b/eos/effects/shieldcapacitymultiply.py index ea6bfa8c6..71c91f19e 100644 --- a/eos/effects/shieldcapacitymultiply.py +++ b/eos/effects/shieldcapacitymultiply.py @@ -6,5 +6,7 @@ # Modules from group: Reactor Control Unit (22 of 22) # Modules named like: Flux Coil (12 of 12) type = "passive" + + def handler(fit, module, context): - fit.ship.multiplyItemAttr("shieldCapacity", module.getModifiedItemAttr("shieldCapacityMultiplier")) \ No newline at end of file + fit.ship.multiplyItemAttr("shieldCapacity", module.getModifiedItemAttr("shieldCapacityMultiplier")) diff --git a/eos/effects/shielddefensiveoperationsshieldcapacitybonuspostpercentshieldcapacitygangships.py b/eos/effects/shielddefensiveoperationsshieldcapacitybonuspostpercentshieldcapacitygangships.py index 5d38c76e3..97658eb27 100644 --- a/eos/effects/shielddefensiveoperationsshieldcapacitybonuspostpercentshieldcapacitygangships.py +++ b/eos/effects/shielddefensiveoperationsshieldcapacitybonuspostpercentshieldcapacitygangships.py @@ -5,6 +5,8 @@ type = "gang" gangBoost = "shieldCapacity" gangBonus = "shieldCapacityBonus" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus) * level) diff --git a/eos/effects/shieldemmisionsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringshieldemmisionsystems.py b/eos/effects/shieldemmisionsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringshieldemmisionsystems.py index 29d79db87..6161d3fe0 100644 --- a/eos/effects/shieldemmisionsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringshieldemmisionsystems.py +++ b/eos/effects/shieldemmisionsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringshieldemmisionsystems.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Gnome' Shield Emission Systems SE (6 of 6) # Skill: Shield Emission Systems type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), diff --git a/eos/effects/shieldmanagementshieldcapacitybonuspostpercentcapacitylocationshipgroupshield.py b/eos/effects/shieldmanagementshieldcapacitybonuspostpercentcapacitylocationshipgroupshield.py index b3ff25128..9e2f091fe 100644 --- a/eos/effects/shieldmanagementshieldcapacitybonuspostpercentcapacitylocationshipgroupshield.py +++ b/eos/effects/shieldmanagementshieldcapacitybonuspostpercentcapacitylocationshipgroupshield.py @@ -8,6 +8,8 @@ # Implant: Sansha Modified 'Gnome' Implant # Skill: Shield Management type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("shieldCapacity", container.getModifiedItemAttr("shieldCapacityBonus") * level) diff --git a/eos/effects/shieldoperationrechargeratebonuspostpercentonline.py b/eos/effects/shieldoperationrechargeratebonuspostpercentonline.py index c5f89daf0..266c3776d 100644 --- a/eos/effects/shieldoperationrechargeratebonuspostpercentonline.py +++ b/eos/effects/shieldoperationrechargeratebonuspostpercentonline.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Shield Power Relay (6 of 6) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("shieldRechargeRate", module.getModifiedItemAttr("rechargeratebonus") or 0) diff --git a/eos/effects/shieldoperationrechargeratebonuspostpercentrechargeratelocationshipgroupshield.py b/eos/effects/shieldoperationrechargeratebonuspostpercentrechargeratelocationshipgroupshield.py index 8ec779a67..919fc8b79 100644 --- a/eos/effects/shieldoperationrechargeratebonuspostpercentrechargeratelocationshipgroupshield.py +++ b/eos/effects/shieldoperationrechargeratebonuspostpercentrechargeratelocationshipgroupshield.py @@ -6,6 +6,8 @@ # Implant: Sansha Modified 'Gnome' Implant # Skill: Shield Operation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("shieldRechargeRate", container.getModifiedItemAttr("rechargeratebonus") * level) diff --git a/eos/effects/shieldoperationskillboostcapacitorneedbonus.py b/eos/effects/shieldoperationskillboostcapacitorneedbonus.py index aa8e6c21d..da4472bd4 100644 --- a/eos/effects/shieldoperationskillboostcapacitorneedbonus.py +++ b/eos/effects/shieldoperationskillboostcapacitorneedbonus.py @@ -4,6 +4,8 @@ # Modules named like: Core Defense Capacitor Safeguard (8 of 8) # Skill: Shield Compensation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), diff --git a/eos/effects/shieldrechargerateaddpassive.py b/eos/effects/shieldrechargerateaddpassive.py index 4b16bcfd4..95e2db768 100644 --- a/eos/effects/shieldrechargerateaddpassive.py +++ b/eos/effects/shieldrechargerateaddpassive.py @@ -3,5 +3,7 @@ # Used by: # Subsystems from group: Defensive Systems (16 of 16) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("shieldRechargeRate", module.getModifiedItemAttr("shieldRechargeRate") or 0) diff --git a/eos/effects/shieldtransfer.py b/eos/effects/shieldtransfer.py index a06ea9e4c..b55165a32 100644 --- a/eos/effects/shieldtransfer.py +++ b/eos/effects/shieldtransfer.py @@ -3,6 +3,8 @@ # Used by: # Module: QA Shield Transporter - 5 Players type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: bonus = container.getModifiedItemAttr("shieldBonus") diff --git a/eos/effects/shieldtransportcpuneedbonuseffect.py b/eos/effects/shieldtransportcpuneedbonuseffect.py index 0e5cf26bf..311bdf3ad 100644 --- a/eos/effects/shieldtransportcpuneedbonuseffect.py +++ b/eos/effects/shieldtransportcpuneedbonuseffect.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Logistics (3 of 5) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "cpu", src.getModifiedItemAttr("shieldTransportCpuNeedBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "cpu", + src.getModifiedItemAttr("shieldTransportCpuNeedBonus")) diff --git a/eos/effects/shieldtransporterfalloffbonus.py b/eos/effects/shieldtransporterfalloffbonus.py index 5cc642bda..94e282490 100644 --- a/eos/effects/shieldtransporterfalloffbonus.py +++ b/eos/effects/shieldtransporterfalloffbonus.py @@ -6,6 +6,10 @@ # Ship: Osprey # Ship: Scythe type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", "falloffEffectiveness", src.getModifiedItemAttr("falloffBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Shield Booster", "falloffEffectiveness", src.getModifiedItemAttr("falloffBonus")) \ No newline at end of file + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", "falloffEffectiveness", + src.getModifiedItemAttr("falloffBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Shield Booster", + "falloffEffectiveness", src.getModifiedItemAttr("falloffBonus")) diff --git a/eos/effects/shieldtransportermaxrangebonus.py b/eos/effects/shieldtransportermaxrangebonus.py index 271e463fc..7ad08c222 100644 --- a/eos/effects/shieldtransportermaxrangebonus.py +++ b/eos/effects/shieldtransportermaxrangebonus.py @@ -4,6 +4,10 @@ # Ship: Osprey # Ship: Scythe type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Shield Booster", "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) \ No newline at end of file + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", "maxRange", + ship.getModifiedItemAttr("maxRangeBonus")) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Shield Booster", "maxRange", + ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/shieldupgradespowerneedbonuspostpercentpowerlocationshipmodulesrequiringshieldupgrades.py b/eos/effects/shieldupgradespowerneedbonuspostpercentpowerlocationshipmodulesrequiringshieldupgrades.py index 1a2fefd6d..2d59d3d3a 100644 --- a/eos/effects/shieldupgradespowerneedbonuspostpercentpowerlocationshipmodulesrequiringshieldupgrades.py +++ b/eos/effects/shieldupgradespowerneedbonuspostpercentpowerlocationshipmodulesrequiringshieldupgrades.py @@ -5,6 +5,8 @@ # Modules named like: Core Defense Charge Economizer (8 of 8) # Skill: Shield Upgrades type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Upgrades"), diff --git a/eos/effects/shipadvancedspaceshipcommandagilitybonus.py b/eos/effects/shipadvancedspaceshipcommandagilitybonus.py index 69bafc2a4..7b4d64d3b 100644 --- a/eos/effects/shipadvancedspaceshipcommandagilitybonus.py +++ b/eos/effects/shipadvancedspaceshipcommandagilitybonus.py @@ -5,6 +5,8 @@ # Ships from group: Titan (5 of 5) # Items from market group: Ships > Capital Ships (32 of 33) type = "passive" + + def handler(fit, ship, context): skillName = "Advanced Spaceship Command" skill = fit.character.getSkill(skillName) diff --git a/eos/effects/shiparmoremandexpandkinandthmresistanceac2.py b/eos/effects/shiparmoremandexpandkinandthmresistanceac2.py index 546bc98c9..d19155457 100644 --- a/eos/effects/shiparmoremandexpandkinandthmresistanceac2.py +++ b/eos/effects/shiparmoremandexpandkinandthmresistanceac2.py @@ -5,7 +5,10 @@ # Ship: Sacrilege # Ship: Vangel type = "passive" + + def handler(fit, ship, context): damageTypes = ("Em", "Explosive", "Kinetic", "Thermal") for damageType in damageTypes: - fit.ship.boostItemAttr("armor{0}DamageResonance".format(damageType), ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") + fit.ship.boostItemAttr("armor{0}DamageResonance".format(damageType), ship.getModifiedItemAttr("shipBonusAC2"), + skill="Amarr Cruiser") diff --git a/eos/effects/shiparmoremresistance1abc1.py b/eos/effects/shiparmoremresistance1abc1.py index c30eed18d..98ccf2fc8 100644 --- a/eos/effects/shiparmoremresistance1abc1.py +++ b/eos/effects/shiparmoremresistance1abc1.py @@ -4,5 +4,8 @@ # Variations of ship: Prophecy (2 of 2) # Ship: Absolution type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), skill="Amarr Battlecruiser") + fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiparmoremresistanceac2.py b/eos/effects/shiparmoremresistanceac2.py index b20f70b08..3b38e626e 100644 --- a/eos/effects/shiparmoremresistanceac2.py +++ b/eos/effects/shiparmoremresistanceac2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Maller type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shiparmoremresistanceaf1.py b/eos/effects/shiparmoremresistanceaf1.py index e89173590..ba757a558 100644 --- a/eos/effects/shiparmoremresistanceaf1.py +++ b/eos/effects/shiparmoremresistanceaf1.py @@ -5,5 +5,7 @@ # Ship: Malice # Ship: Punisher type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiparmoremresistancemc2.py b/eos/effects/shiparmoremresistancemc2.py index 2be5737de..777c51ec0 100644 --- a/eos/effects/shiparmoremresistancemc2.py +++ b/eos/effects/shiparmoremresistancemc2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Mimir type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shiparmoremresistancerookie.py b/eos/effects/shiparmoremresistancerookie.py index 9baaf9c4c..41cb429c6 100644 --- a/eos/effects/shiparmoremresistancerookie.py +++ b/eos/effects/shiparmoremresistancerookie.py @@ -7,5 +7,7 @@ # Ship: Phobos # Ship: Silver Magnate type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("rookieArmorResistanceBonus")) diff --git a/eos/effects/shiparmorexplosiveresistance1abc1.py b/eos/effects/shiparmorexplosiveresistance1abc1.py index b80f3d3eb..f1a9d3a72 100644 --- a/eos/effects/shiparmorexplosiveresistance1abc1.py +++ b/eos/effects/shiparmorexplosiveresistance1abc1.py @@ -4,5 +4,8 @@ # Variations of ship: Prophecy (2 of 2) # Ship: Absolution type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), skill="Amarr Battlecruiser") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiparmorexplosiveresistanceac2.py b/eos/effects/shiparmorexplosiveresistanceac2.py index 68b1c30b3..76c98a057 100644 --- a/eos/effects/shiparmorexplosiveresistanceac2.py +++ b/eos/effects/shiparmorexplosiveresistanceac2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Maller type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), + skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorexplosiveresistancemc2.py b/eos/effects/shiparmorexplosiveresistancemc2.py index 5f3e48b1f..f6ef4cfab 100644 --- a/eos/effects/shiparmorexplosiveresistancemc2.py +++ b/eos/effects/shiparmorexplosiveresistancemc2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Mimir type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shiparmorexresistanceaf1.py b/eos/effects/shiparmorexresistanceaf1.py index 898ed3df3..448ed9fd3 100644 --- a/eos/effects/shiparmorexresistanceaf1.py +++ b/eos/effects/shiparmorexresistanceaf1.py @@ -5,5 +5,8 @@ # Ship: Malice # Ship: Punisher type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), + skill="Amarr Frigate") diff --git a/eos/effects/shiparmorexresistancerookie.py b/eos/effects/shiparmorexresistancerookie.py index 35868ef02..a3ffd9333 100644 --- a/eos/effects/shiparmorexresistancerookie.py +++ b/eos/effects/shiparmorexresistancerookie.py @@ -7,5 +7,7 @@ # Ship: Phobos # Ship: Silver Magnate type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("rookieArmorResistanceBonus")) diff --git a/eos/effects/shiparmorhpac2.py b/eos/effects/shiparmorhpac2.py index 5a20e5faf..a801712c2 100644 --- a/eos/effects/shiparmorhpac2.py +++ b/eos/effects/shiparmorhpac2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Augoror Navy Issue type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorHP", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorkineticresistance1abc1.py b/eos/effects/shiparmorkineticresistance1abc1.py index 09018a295..191e50025 100644 --- a/eos/effects/shiparmorkineticresistance1abc1.py +++ b/eos/effects/shiparmorkineticresistance1abc1.py @@ -4,5 +4,8 @@ # Variations of ship: Prophecy (2 of 2) # Ship: Absolution type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), skill="Amarr Battlecruiser") + fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiparmorkineticresistanceac2.py b/eos/effects/shiparmorkineticresistanceac2.py index a2ea82540..5c96ab767 100644 --- a/eos/effects/shiparmorkineticresistanceac2.py +++ b/eos/effects/shiparmorkineticresistanceac2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Maller type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") + fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), + skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorkineticresistancemc2.py b/eos/effects/shiparmorkineticresistancemc2.py index 8d9bf0a3e..fe1303bd5 100644 --- a/eos/effects/shiparmorkineticresistancemc2.py +++ b/eos/effects/shiparmorkineticresistancemc2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Mimir type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shiparmorknresistanceaf1.py b/eos/effects/shiparmorknresistanceaf1.py index 6263ace6e..d5d9ea4ac 100644 --- a/eos/effects/shiparmorknresistanceaf1.py +++ b/eos/effects/shiparmorknresistanceaf1.py @@ -5,5 +5,8 @@ # Ship: Malice # Ship: Punisher type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") + fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), + skill="Amarr Frigate") diff --git a/eos/effects/shiparmorknresistancerookie.py b/eos/effects/shiparmorknresistancerookie.py index efc324adf..9932056eb 100644 --- a/eos/effects/shiparmorknresistancerookie.py +++ b/eos/effects/shiparmorknresistancerookie.py @@ -7,5 +7,7 @@ # Ship: Phobos # Ship: Silver Magnate type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("rookieArmorResistanceBonus")) diff --git a/eos/effects/shiparmorrepairing1gbc2.py b/eos/effects/shiparmorrepairing1gbc2.py index a7dc3a8b9..1c4ca9d09 100644 --- a/eos/effects/shiparmorrepairing1gbc2.py +++ b/eos/effects/shiparmorrepairing1gbc2.py @@ -5,6 +5,9 @@ # Ship: Astarte # Ship: Brutix type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGBC2"), skill="Gallente Battlecruiser") + "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGBC2"), + skill="Gallente Battlecruiser") diff --git a/eos/effects/shiparmorrepairinggf2.py b/eos/effects/shiparmorrepairinggf2.py index 40370add3..e4da7c41d 100644 --- a/eos/effects/shiparmorrepairinggf2.py +++ b/eos/effects/shiparmorrepairinggf2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Incursus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") + "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGF2"), + skill="Gallente Frigate") diff --git a/eos/effects/shiparmorrepairingrookie.py b/eos/effects/shiparmorrepairingrookie.py index 3103ee3ae..91a18b03d 100644 --- a/eos/effects/shiparmorrepairingrookie.py +++ b/eos/effects/shiparmorrepairingrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Velator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "armorDamageAmount", ship.getModifiedItemAttr("rookieArmorRepBonus")) diff --git a/eos/effects/shiparmorresistanceaf1.py b/eos/effects/shiparmorresistanceaf1.py index 8c210c965..651595294 100644 --- a/eos/effects/shiparmorresistanceaf1.py +++ b/eos/effects/shiparmorresistanceaf1.py @@ -3,7 +3,10 @@ # Used by: # Ship: Malediction type = "passive" + + def handler(fit, ship, context): damageTypes = ("Em", "Explosive", "Kinetic", "Thermal") for damageType in damageTypes: - fit.ship.boostItemAttr("armor{0}DamageResonance".format(damageType), ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") + fit.ship.boostItemAttr("armor{0}DamageResonance".format(damageType), ship.getModifiedItemAttr("shipBonusAF"), + skill="Amarr Frigate") diff --git a/eos/effects/shiparmorthermalresistanceac2.py b/eos/effects/shiparmorthermalresistanceac2.py index 7226fb62c..3e3dab2cf 100644 --- a/eos/effects/shiparmorthermalresistanceac2.py +++ b/eos/effects/shiparmorthermalresistanceac2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Maller type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") + fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), + skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorthermalresistancemc2.py b/eos/effects/shiparmorthermalresistancemc2.py index 3435ca29c..85ca998f0 100644 --- a/eos/effects/shiparmorthermalresistancemc2.py +++ b/eos/effects/shiparmorthermalresistancemc2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Mimir type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shiparmorthermresistance1abc1.py b/eos/effects/shiparmorthermresistance1abc1.py index 766a6fee0..b03dffabe 100644 --- a/eos/effects/shiparmorthermresistance1abc1.py +++ b/eos/effects/shiparmorthermresistance1abc1.py @@ -4,5 +4,8 @@ # Variations of ship: Prophecy (2 of 2) # Ship: Absolution type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), skill="Amarr Battlecruiser") + fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiparmorthresistanceaf1.py b/eos/effects/shiparmorthresistanceaf1.py index 231eb7350..3e01abbc3 100644 --- a/eos/effects/shiparmorthresistanceaf1.py +++ b/eos/effects/shiparmorthresistanceaf1.py @@ -5,5 +5,8 @@ # Ship: Malice # Ship: Punisher type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") + fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), + skill="Amarr Frigate") diff --git a/eos/effects/shiparmorthresistancerookie.py b/eos/effects/shiparmorthresistancerookie.py index 385e27b4b..3c4a8f289 100644 --- a/eos/effects/shiparmorthresistancerookie.py +++ b/eos/effects/shiparmorthresistancerookie.py @@ -7,5 +7,7 @@ # Ship: Phobos # Ship: Silver Magnate type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("rookieArmorResistanceBonus")) diff --git a/eos/effects/shipbonusaf1torpedoexplosionvelocity.py b/eos/effects/shipbonusaf1torpedoexplosionvelocity.py index 805ba8b4c..d3be58566 100644 --- a/eos/effects/shipbonusaf1torpedoexplosionvelocity.py +++ b/eos/effects/shipbonusaf1torpedoexplosionvelocity.py @@ -3,6 +3,8 @@ # Used by: # Ship: Purifier type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "aoeVelocity", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusaf1torpedoflighttime.py b/eos/effects/shipbonusaf1torpedoflighttime.py index cc5e5ed7b..09b679710 100644 --- a/eos/effects/shipbonusaf1torpedoflighttime.py +++ b/eos/effects/shipbonusaf1torpedoflighttime.py @@ -3,6 +3,8 @@ # Used by: # Ship: Purifier type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosionDelay", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusafterburnercapneedatf.py b/eos/effects/shipbonusafterburnercapneedatf.py index d7e15843f..2b3561611 100644 --- a/eos/effects/shipbonusafterburnercapneedatf.py +++ b/eos/effects/shipbonusafterburnercapneedatf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Freki type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", "capacitorNeed", ship.getModifiedItemAttr("shipBonusATF1")) diff --git a/eos/effects/shipbonusafterburnerspeedfactor2cb.py b/eos/effects/shipbonusafterburnerspeedfactor2cb.py index 5ffa2685b..f4a0fe196 100644 --- a/eos/effects/shipbonusafterburnerspeedfactor2cb.py +++ b/eos/effects/shipbonusafterburnerspeedfactor2cb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Nightmare type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "speedFactor", module.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusafterburnerspeedfactorcc2.py b/eos/effects/shipbonusafterburnerspeedfactorcc2.py index 3578b9877..6a4dbfe2f 100644 --- a/eos/effects/shipbonusafterburnerspeedfactorcc2.py +++ b/eos/effects/shipbonusafterburnerspeedfactorcc2.py @@ -4,6 +4,8 @@ # Ship: Fiend # Ship: Phantasm type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "speedFactor", module.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusafterburnerspeedfactorcf2.py b/eos/effects/shipbonusafterburnerspeedfactorcf2.py index 737553561..b8c52da97 100644 --- a/eos/effects/shipbonusafterburnerspeedfactorcf2.py +++ b/eos/effects/shipbonusafterburnerspeedfactorcf2.py @@ -4,6 +4,8 @@ # Ship: Imp # Ship: Succubus type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "speedFactor", module.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonusagilityai2.py b/eos/effects/shipbonusagilityai2.py index d92a8edb9..16c2537ad 100644 --- a/eos/effects/shipbonusagilityai2.py +++ b/eos/effects/shipbonusagilityai2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Sigil type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("shipBonusAI2"), skill="Amarr Industrial") diff --git a/eos/effects/shipbonusagilityci2.py b/eos/effects/shipbonusagilityci2.py index 479786f70..2fccf4074 100644 --- a/eos/effects/shipbonusagilityci2.py +++ b/eos/effects/shipbonusagilityci2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Badger type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("shipBonusCI2"), skill="Caldari Industrial") diff --git a/eos/effects/shipbonusagilitygi2.py b/eos/effects/shipbonusagilitygi2.py index 26dba42a9..3fc84bb06 100644 --- a/eos/effects/shipbonusagilitygi2.py +++ b/eos/effects/shipbonusagilitygi2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Nereus type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("shipBonusGI2"), skill="Gallente Industrial") diff --git a/eos/effects/shipbonusagilitymi2.py b/eos/effects/shipbonusagilitymi2.py index 8c5a1fb49..8273934e5 100644 --- a/eos/effects/shipbonusagilitymi2.py +++ b/eos/effects/shipbonusagilitymi2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Wreathe type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("shipBonusMI2"), skill="Minmatar Industrial") diff --git a/eos/effects/shipbonusammobaymi2.py b/eos/effects/shipbonusammobaymi2.py index d17a65aa3..8bb93aaeb 100644 --- a/eos/effects/shipbonusammobaymi2.py +++ b/eos/effects/shipbonusammobaymi2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Hoarder type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("specialAmmoHoldCapacity", ship.getModifiedItemAttr("shipBonusMI2"), skill="Minmatar Industrial") + fit.ship.boostItemAttr("specialAmmoHoldCapacity", ship.getModifiedItemAttr("shipBonusMI2"), + skill="Minmatar Industrial") diff --git a/eos/effects/shipbonusaoevelocitycruiseandtorpedocb2.py b/eos/effects/shipbonusaoevelocitycruiseandtorpedocb2.py index 9fcd68b86..240b2f5ca 100644 --- a/eos/effects/shipbonusaoevelocitycruiseandtorpedocb2.py +++ b/eos/effects/shipbonusaoevelocitycruiseandtorpedocb2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Golem type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), + "aoeVelocity", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusaoevelocitycruisemissilesmb2.py b/eos/effects/shipbonusaoevelocitycruisemissilesmb2.py index 90abc91df..1bf11ce1a 100644 --- a/eos/effects/shipbonusaoevelocitycruisemissilesmb2.py +++ b/eos/effects/shipbonusaoevelocitycruisemissilesmb2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusMB2"), skill="Minmatar Battleship") + "aoeVelocity", ship.getModifiedItemAttr("shipBonusMB2"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusaoevelocityrocketscd2.py b/eos/effects/shipbonusaoevelocityrocketscd2.py index 8d4a1f11b..3513d9025 100644 --- a/eos/effects/shipbonusaoevelocityrocketscd2.py +++ b/eos/effects/shipbonusaoevelocityrocketscd2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Corax type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "aoeVelocity", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusaoevelocityrocketsmf.py b/eos/effects/shipbonusaoevelocityrocketsmf.py index c67e6a4a9..3e7de55ef 100644 --- a/eos/effects/shipbonusaoevelocityrocketsmf.py +++ b/eos/effects/shipbonusaoevelocityrocketsmf.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vigil Fleet Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "aoeVelocity", src.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "aoeVelocity", + src.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusaoevelocitystandardmissilescd2.py b/eos/effects/shipbonusaoevelocitystandardmissilescd2.py index 7e396fca5..c49324439 100644 --- a/eos/effects/shipbonusaoevelocitystandardmissilescd2.py +++ b/eos/effects/shipbonusaoevelocitystandardmissilescd2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Corax type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), "aoeVelocity", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusarmorrepairai2.py b/eos/effects/shipbonusarmorrepairai2.py index 4eb27de16..172163178 100644 --- a/eos/effects/shipbonusarmorrepairai2.py +++ b/eos/effects/shipbonusarmorrepairai2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Impel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusAI2"), skill="Amarr Industrial") + "armorDamageAmount", ship.getModifiedItemAttr("shipBonusAI2"), + skill="Amarr Industrial") diff --git a/eos/effects/shipbonusarmorrepairgi2.py b/eos/effects/shipbonusarmorrepairgi2.py index ea4216fb3..3699a8b1e 100644 --- a/eos/effects/shipbonusarmorrepairgi2.py +++ b/eos/effects/shipbonusarmorrepairgi2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Occator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGI2"), skill="Gallente Industrial") + "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGI2"), + skill="Gallente Industrial") diff --git a/eos/effects/shipbonusarmorrepamountgc2.py b/eos/effects/shipbonusarmorrepamountgc2.py index 7b5e66cad..622b593fd 100644 --- a/eos/effects/shipbonusarmorrepamountgc2.py +++ b/eos/effects/shipbonusarmorrepamountgc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Deimos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") + "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGC2"), + skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusarmorresistab.py b/eos/effects/shipbonusarmorresistab.py index 7eed16667..cc3351844 100644 --- a/eos/effects/shipbonusarmorresistab.py +++ b/eos/effects/shipbonusarmorresistab.py @@ -4,6 +4,9 @@ # Ship: Abaddon # Ship: Nestor type = "passive" + + def handler(fit, ship, context): for type in ("Em", "Explosive", "Kinetic", "Thermal"): - fit.ship.boostItemAttr("armor{0}DamageResonance".format(type), ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") + fit.ship.boostItemAttr("armor{0}DamageResonance".format(type), ship.getModifiedItemAttr("shipBonusAB"), + skill="Amarr Battleship") diff --git a/eos/effects/shipbonuscapcapab.py b/eos/effects/shipbonuscapcapab.py index 7e28253c7..73ccc8035 100644 --- a/eos/effects/shipbonuscapcapab.py +++ b/eos/effects/shipbonuscapcapab.py @@ -4,5 +4,7 @@ # Ship: Apocalypse Imperial Issue # Ship: Paladin type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("capacitorCapacity", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonuscargo2gi.py b/eos/effects/shipbonuscargo2gi.py index 95b1530f7..85388f312 100644 --- a/eos/effects/shipbonuscargo2gi.py +++ b/eos/effects/shipbonuscargo2gi.py @@ -5,6 +5,8 @@ # Variations of ship: Nereus (2 of 2) # Ship: Iteron Mark V type = "passive" + + def handler(fit, ship, context): # TODO: investigate if we can live without such ifs or hardcoding # Viator doesn't have GI bonus diff --git a/eos/effects/shipbonuscargoci.py b/eos/effects/shipbonuscargoci.py index 338155164..3e80fb36a 100644 --- a/eos/effects/shipbonuscargoci.py +++ b/eos/effects/shipbonuscargoci.py @@ -4,5 +4,7 @@ # Variations of ship: Badger (2 of 2) # Ship: Tayra type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("shipBonusCI"), skill="Caldari Industrial") diff --git a/eos/effects/shipbonuscargomi.py b/eos/effects/shipbonuscargomi.py index f8adc0250..bc98e3615 100644 --- a/eos/effects/shipbonuscargomi.py +++ b/eos/effects/shipbonuscargomi.py @@ -4,5 +4,7 @@ # Variations of ship: Wreathe (2 of 2) # Ship: Mammoth type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("shipBonusMI"), skill="Minmatar Industrial") diff --git a/eos/effects/shipbonuscarriera1armorresists.py b/eos/effects/shipbonuscarriera1armorresists.py index 2e90ea373..ebda73d9d 100644 --- a/eos/effects/shipbonuscarriera1armorresists.py +++ b/eos/effects/shipbonuscarriera1armorresists.py @@ -3,8 +3,14 @@ # Used by: # Ship: Archon type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), skill="Amarr Carrier") + fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), + skill="Amarr Carrier") diff --git a/eos/effects/shipbonuscarriera2supportfighterbonus.py b/eos/effects/shipbonuscarriera2supportfighterbonus.py index c226a07e5..02228b9c6 100644 --- a/eos/effects/shipbonuscarriera2supportfighterbonus.py +++ b/eos/effects/shipbonuscarriera2supportfighterbonus.py @@ -3,6 +3,11 @@ # Used by: # Ship: Archon type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", src.getModifiedItemAttr("shipBonusCarrierA2"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterAbilityEnergyNeutralizerOptimalRange", src.getModifiedItemAttr("shipBonusCarrierA2"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", + src.getModifiedItemAttr("shipBonusCarrierA2"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), + "fighterAbilityEnergyNeutralizerOptimalRange", + src.getModifiedItemAttr("shipBonusCarrierA2"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonuscarriera4warfarelinksbonus.py b/eos/effects/shipbonuscarriera4warfarelinksbonus.py index 96716c37f..c639f344b 100644 --- a/eos/effects/shipbonuscarriera4warfarelinksbonus.py +++ b/eos/effects/shipbonuscarriera4warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Archon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonuscarrierc1shieldresists.py b/eos/effects/shipbonuscarrierc1shieldresists.py index 195b1a2af..4b8cd7101 100644 --- a/eos/effects/shipbonuscarrierc1shieldresists.py +++ b/eos/effects/shipbonuscarrierc1shieldresists.py @@ -3,8 +3,14 @@ # Used by: # Ship: Chimera type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), + skill="Caldari Carrier") diff --git a/eos/effects/shipbonuscarrierc2supportfighterbonus.py b/eos/effects/shipbonuscarrierc2supportfighterbonus.py index 96ae4beb0..ff46a2d1d 100644 --- a/eos/effects/shipbonuscarrierc2supportfighterbonus.py +++ b/eos/effects/shipbonuscarrierc2supportfighterbonus.py @@ -3,6 +3,11 @@ # Used by: # Ship: Chimera type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", src.getModifiedItemAttr("shipBonusCarrierC2"), skill="Caldari Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterAbilityECMRangeOptimal", src.getModifiedItemAttr("shipBonusCarrierC2"), skill="Caldari Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", + src.getModifiedItemAttr("shipBonusCarrierC2"), skill="Caldari Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), + "fighterAbilityECMRangeOptimal", src.getModifiedItemAttr("shipBonusCarrierC2"), + skill="Caldari Carrier") diff --git a/eos/effects/shipbonuscarrierc4warfarelinksbonus.py b/eos/effects/shipbonuscarrierc4warfarelinksbonus.py index b47c3eaab..8612d190e 100644 --- a/eos/effects/shipbonuscarrierc4warfarelinksbonus.py +++ b/eos/effects/shipbonuscarrierc4warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Chimera type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonuscarrierg1fighterdamage.py b/eos/effects/shipbonuscarrierg1fighterdamage.py index dbd2ef63b..e17ff621a 100644 --- a/eos/effects/shipbonuscarrierg1fighterdamage.py +++ b/eos/effects/shipbonuscarrierg1fighterdamage.py @@ -3,7 +3,15 @@ # Used by: # Ship: Thanatos type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierg1fighterdamageandhitpoints.py b/eos/effects/shipbonuscarrierg1fighterdamageandhitpoints.py index df81f47ac..edc2c2077 100644 --- a/eos/effects/shipbonuscarrierg1fighterdamageandhitpoints.py +++ b/eos/effects/shipbonuscarrierg1fighterdamageandhitpoints.py @@ -3,8 +3,17 @@ # Used by: # Ship: Thanatos type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", + src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierg2supportfighterbonus.py b/eos/effects/shipbonuscarrierg2supportfighterbonus.py index 05ba1172d..e3bfe9f1f 100644 --- a/eos/effects/shipbonuscarrierg2supportfighterbonus.py +++ b/eos/effects/shipbonuscarrierg2supportfighterbonus.py @@ -3,6 +3,11 @@ # Used by: # Ship: Thanatos type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", src.getModifiedItemAttr("shipBonusCarrierG2"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterAbilityWarpDisruptionRange", src.getModifiedItemAttr("shipBonusCarrierG2"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", + src.getModifiedItemAttr("shipBonusCarrierG2"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), + "fighterAbilityWarpDisruptionRange", src.getModifiedItemAttr("shipBonusCarrierG2"), + skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierg3fighterhitpoints.py b/eos/effects/shipbonuscarrierg3fighterhitpoints.py index 40b568fb3..4ad0965d0 100644 --- a/eos/effects/shipbonuscarrierg3fighterhitpoints.py +++ b/eos/effects/shipbonuscarrierg3fighterhitpoints.py @@ -3,5 +3,8 @@ # Used by: # Ship: Thanatos type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", src.getModifiedItemAttr("shipBonusCarrierG3"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", + src.getModifiedItemAttr("shipBonusCarrierG3"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierg4warfarelinksbonus.py b/eos/effects/shipbonuscarrierg4warfarelinksbonus.py index d7518eb28..40301427d 100644 --- a/eos/effects/shipbonuscarrierg4warfarelinksbonus.py +++ b/eos/effects/shipbonuscarrierg4warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Thanatos type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierm1fighterdamage.py b/eos/effects/shipbonuscarrierm1fighterdamage.py index 954d783fb..218947805 100644 --- a/eos/effects/shipbonuscarrierm1fighterdamage.py +++ b/eos/effects/shipbonuscarrierm1fighterdamage.py @@ -3,7 +3,15 @@ # Used by: # Ship: Nidhoggur type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierm1fighterdamageandvelocity.py b/eos/effects/shipbonuscarrierm1fighterdamageandvelocity.py index fbd629a73..d15acda6a 100644 --- a/eos/effects/shipbonuscarrierm1fighterdamageandvelocity.py +++ b/eos/effects/shipbonuscarrierm1fighterdamageandvelocity.py @@ -3,8 +3,17 @@ # Used by: # Ship: Nidhoggur type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", + src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierm2supportfighterbonus.py b/eos/effects/shipbonuscarrierm2supportfighterbonus.py index 6dd2c8518..e28ccbfef 100644 --- a/eos/effects/shipbonuscarrierm2supportfighterbonus.py +++ b/eos/effects/shipbonuscarrierm2supportfighterbonus.py @@ -3,6 +3,11 @@ # Used by: # Ship: Nidhoggur type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", src.getModifiedItemAttr("shipBonusCarrierM2"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterAbilityStasisWebifierOptimalRange", src.getModifiedItemAttr("shipBonusCarrierM2"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", + src.getModifiedItemAttr("shipBonusCarrierM2"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), + "fighterAbilityStasisWebifierOptimalRange", + src.getModifiedItemAttr("shipBonusCarrierM2"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierm3fightervelocity.py b/eos/effects/shipbonuscarrierm3fightervelocity.py index a880ddcdf..63d22459a 100644 --- a/eos/effects/shipbonuscarrierm3fightervelocity.py +++ b/eos/effects/shipbonuscarrierm3fightervelocity.py @@ -3,5 +3,8 @@ # Used by: # Ship: Nidhoggur type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", src.getModifiedItemAttr("shipBonusCarrierM3"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", + src.getModifiedItemAttr("shipBonusCarrierM3"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierm4warfarelinksbonus.py b/eos/effects/shipbonuscarrierm4warfarelinksbonus.py index 4f47e8954..584704463 100644 --- a/eos/effects/shipbonuscarrierm4warfarelinksbonus.py +++ b/eos/effects/shipbonuscarrierm4warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Nidhoggur type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierrole1numwarfarelinks.py b/eos/effects/shipbonuscarrierrole1numwarfarelinks.py index e2fde5322..fdfc77d94 100644 --- a/eos/effects/shipbonuscarrierrole1numwarfarelinks.py +++ b/eos/effects/shipbonuscarrierrole1numwarfarelinks.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Carrier (4 of 4) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", src.getModifiedItemAttr("shipBonusRole1")) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", + src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonuscf1torpedoexplosionvelocity.py b/eos/effects/shipbonuscf1torpedoexplosionvelocity.py index 3c18d96fb..41a8b9db8 100644 --- a/eos/effects/shipbonuscf1torpedoexplosionvelocity.py +++ b/eos/effects/shipbonuscf1torpedoexplosionvelocity.py @@ -3,6 +3,8 @@ # Used by: # Ship: Manticore type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "aoeVelocity", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonuscf1torpedoflighttime.py b/eos/effects/shipbonuscf1torpedoflighttime.py index b107b5bc3..2f00bd515 100644 --- a/eos/effects/shipbonuscf1torpedoflighttime.py +++ b/eos/effects/shipbonuscf1torpedoflighttime.py @@ -3,6 +3,8 @@ # Used by: # Ship: Manticore type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosionDelay", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonuscruisemissileemdmgmb.py b/eos/effects/shipbonuscruisemissileemdmgmb.py index 4de20283a..7a79cd089 100644 --- a/eos/effects/shipbonuscruisemissileemdmgmb.py +++ b/eos/effects/shipbonuscruisemissileemdmgmb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "emDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonuscruisemissileexplodmgmb.py b/eos/effects/shipbonuscruisemissileexplodmgmb.py index 43579fd90..d4c413987 100644 --- a/eos/effects/shipbonuscruisemissileexplodmgmb.py +++ b/eos/effects/shipbonuscruisemissileexplodmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonuscruisemissilekineticdmgmb.py b/eos/effects/shipbonuscruisemissilekineticdmgmb.py index 291f941e1..33fa55ff9 100644 --- a/eos/effects/shipbonuscruisemissilekineticdmgmb.py +++ b/eos/effects/shipbonuscruisemissilekineticdmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonuscruisemissilethermdmgmb.py b/eos/effects/shipbonuscruisemissilethermdmgmb.py index b5b094dfd..701dcf7e5 100644 --- a/eos/effects/shipbonuscruisemissilethermdmgmb.py +++ b/eos/effects/shipbonuscruisemissilethermdmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonuscruiserofmb.py b/eos/effects/shipbonuscruiserofmb.py index 31d7e5394..34dc736d2 100644 --- a/eos/effects/shipbonuscruiserofmb.py +++ b/eos/effects/shipbonuscruiserofmb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Typhoon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Cruise", "speed", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusdreadcitadelcruiserofc1.py b/eos/effects/shipbonusdreadcitadelcruiserofc1.py index 3d815d693..f4c82794a 100644 --- a/eos/effects/shipbonusdreadcitadelcruiserofc1.py +++ b/eos/effects/shipbonusdreadcitadelcruiserofc1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Phoenix type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missiles"), - "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusC1"), skill="Caldari Dreadnought") + "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusC1"), + skill="Caldari Dreadnought") diff --git a/eos/effects/shipbonusdreadcitadeltorprofc1.py b/eos/effects/shipbonusdreadcitadeltorprofc1.py index 74ac8e7fa..fa1944b6d 100644 --- a/eos/effects/shipbonusdreadcitadeltorprofc1.py +++ b/eos/effects/shipbonusdreadcitadeltorprofc1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Phoenix type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("XL Torpedoes"), - "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusC1"), skill="Caldari Dreadnought") + "speed", ship.getModifiedItemAttr("dreadnoughtShipBonusC1"), + skill="Caldari Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughta1damagebonus.py b/eos/effects/shipbonusdreadnoughta1damagebonus.py index 03dff96c9..3b85fee4a 100644 --- a/eos/effects/shipbonusdreadnoughta1damagebonus.py +++ b/eos/effects/shipbonusdreadnoughta1damagebonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Revelation type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusDreadnoughtA1"), skill="Amarr Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusDreadnoughtA1"), skill="Amarr Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughta2armorresists.py b/eos/effects/shipbonusdreadnoughta2armorresists.py index b1fbada09..207c827f0 100644 --- a/eos/effects/shipbonusdreadnoughta2armorresists.py +++ b/eos/effects/shipbonusdreadnoughta2armorresists.py @@ -3,8 +3,14 @@ # Used by: # Ship: Revelation type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), skill="Amarr Dreadnought") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), skill="Amarr Dreadnought") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), skill="Amarr Dreadnought") - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), skill="Amarr Dreadnought") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), + skill="Amarr Dreadnought") + fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), + skill="Amarr Dreadnought") + fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), + skill="Amarr Dreadnought") + fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), + skill="Amarr Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughta3capneed.py b/eos/effects/shipbonusdreadnoughta3capneed.py index 515c7e026..1571c46bf 100644 --- a/eos/effects/shipbonusdreadnoughta3capneed.py +++ b/eos/effects/shipbonusdreadnoughta3capneed.py @@ -3,5 +3,8 @@ # Used by: # Ship: Revelation type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "capacitorNeed", src.getModifiedItemAttr("shipBonusDreadnoughtA3"), skill="Amarr Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "capacitorNeed", + src.getModifiedItemAttr("shipBonusDreadnoughtA3"), skill="Amarr Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtc1damagebonus.py b/eos/effects/shipbonusdreadnoughtc1damagebonus.py index 0fb110a9e..9d06fd5db 100644 --- a/eos/effects/shipbonusdreadnoughtc1damagebonus.py +++ b/eos/effects/shipbonusdreadnoughtc1damagebonus.py @@ -3,16 +3,30 @@ # Used by: # Ship: Phoenix type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "thermalDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "kineticDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosiveDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "explosiveDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "thermalDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "thermalDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "emDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "kineticDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "kineticDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "explosiveDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "emDamage", src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "thermalDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "kineticDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosiveDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "explosiveDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "thermalDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "thermalDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "emDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "kineticDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "kineticDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "explosiveDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "emDamage", + src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtc2shieldresists.py b/eos/effects/shipbonusdreadnoughtc2shieldresists.py index f8704bc73..9179c65ec 100644 --- a/eos/effects/shipbonusdreadnoughtc2shieldresists.py +++ b/eos/effects/shipbonusdreadnoughtc2shieldresists.py @@ -3,8 +3,14 @@ # Used by: # Ship: Phoenix type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), skill="Caldari Dreadnought") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), skill="Caldari Dreadnought") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), skill="Caldari Dreadnought") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), skill="Caldari Dreadnought") + fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), + skill="Caldari Dreadnought") + fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), + skill="Caldari Dreadnought") + fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), + skill="Caldari Dreadnought") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), + skill="Caldari Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtc3reloadbonus.py b/eos/effects/shipbonusdreadnoughtc3reloadbonus.py index 71d7353cf..8ba0cc3fc 100644 --- a/eos/effects/shipbonusdreadnoughtc3reloadbonus.py +++ b/eos/effects/shipbonusdreadnoughtc3reloadbonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Phoenix type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "reloadTime", src.getModifiedItemAttr("shipBonusDreadnoughtC3"), skill="Caldari Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "reloadTime", + src.getModifiedItemAttr("shipBonusDreadnoughtC3"), skill="Caldari Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtg1damagebonus.py b/eos/effects/shipbonusdreadnoughtg1damagebonus.py index 343616f66..d6d5b9074 100644 --- a/eos/effects/shipbonusdreadnoughtg1damagebonus.py +++ b/eos/effects/shipbonusdreadnoughtg1damagebonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Moros type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtg2rofbonus.py b/eos/effects/shipbonusdreadnoughtg2rofbonus.py index b0957e9c6..b109e3e30 100644 --- a/eos/effects/shipbonusdreadnoughtg2rofbonus.py +++ b/eos/effects/shipbonusdreadnoughtg2rofbonus.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Moros (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "speed", src.getModifiedItemAttr("shipBonusDreadnoughtG2"), skill="Gallente Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "speed", + src.getModifiedItemAttr("shipBonusDreadnoughtG2"), skill="Gallente Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtg3repairtime.py b/eos/effects/shipbonusdreadnoughtg3repairtime.py index 9b764ccf7..39b99c0f5 100644 --- a/eos/effects/shipbonusdreadnoughtg3repairtime.py +++ b/eos/effects/shipbonusdreadnoughtg3repairtime.py @@ -3,5 +3,8 @@ # Used by: # Ship: Moros type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "duration", src.getModifiedItemAttr("shipBonusDreadnoughtG3"), skill="Gallente Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "duration", + src.getModifiedItemAttr("shipBonusDreadnoughtG3"), skill="Gallente Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm1damagebonus.py b/eos/effects/shipbonusdreadnoughtm1damagebonus.py index 1117b294c..c1de5b9f4 100644 --- a/eos/effects/shipbonusdreadnoughtm1damagebonus.py +++ b/eos/effects/shipbonusdreadnoughtm1damagebonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Naglfar type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusDreadnoughtM1"), skill="Minmatar Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusDreadnoughtM1"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm1webbonus.py b/eos/effects/shipbonusdreadnoughtm1webbonus.py index d0adb6354..040ce5086 100644 --- a/eos/effects/shipbonusdreadnoughtm1webbonus.py +++ b/eos/effects/shipbonusdreadnoughtm1webbonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vehement type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", src.getModifiedItemAttr("shipBonusDreadnoughtM1"), skill="Minmatar Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", + src.getModifiedItemAttr("shipBonusDreadnoughtM1"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm2rofbonus.py b/eos/effects/shipbonusdreadnoughtm2rofbonus.py index a92dea0a3..c183f3c7b 100644 --- a/eos/effects/shipbonusdreadnoughtm2rofbonus.py +++ b/eos/effects/shipbonusdreadnoughtm2rofbonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Naglfar type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "speed", src.getModifiedItemAttr("shipBonusDreadnoughtM2"), skill="Minmatar Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "speed", + src.getModifiedItemAttr("shipBonusDreadnoughtM2"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm3repairtime.py b/eos/effects/shipbonusdreadnoughtm3repairtime.py index dab9cd5fb..0e5ca87f9 100644 --- a/eos/effects/shipbonusdreadnoughtm3repairtime.py +++ b/eos/effects/shipbonusdreadnoughtm3repairtime.py @@ -3,5 +3,8 @@ # Used by: # Ship: Naglfar type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), "duration", src.getModifiedItemAttr("shipBonusDreadnoughtM2"), skill="Minmatar Dreadnought") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), "duration", + src.getModifiedItemAttr("shipBonusDreadnoughtM2"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtrole1damagebonus.py b/eos/effects/shipbonusdreadnoughtrole1damagebonus.py index e25f3e6b9..0cba1617a 100644 --- a/eos/effects/shipbonusdreadnoughtrole1damagebonus.py +++ b/eos/effects/shipbonusdreadnoughtrole1damagebonus.py @@ -3,7 +3,8 @@ # Used by: # Ship: Vehement type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole1")) - diff --git a/eos/effects/shipbonusdronearmorhitpointsab.py b/eos/effects/shipbonusdronearmorhitpointsab.py index 366217f22..4753c8f3f 100644 --- a/eos/effects/shipbonusdronearmorhitpointsab.py +++ b/eos/effects/shipbonusdronearmorhitpointsab.py @@ -3,6 +3,8 @@ # Used by: # Ship: Armageddon type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "armorHP", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusdronearmorhitpointsgf2.py b/eos/effects/shipbonusdronearmorhitpointsgf2.py index ffab2d3fa..89cdf8e30 100644 --- a/eos/effects/shipbonusdronearmorhitpointsgf2.py +++ b/eos/effects/shipbonusdronearmorhitpointsgf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishkur type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "armorHP", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronedamagegf2.py b/eos/effects/shipbonusdronedamagegf2.py index ac5f55643..5f71d4b0f 100644 --- a/eos/effects/shipbonusdronedamagegf2.py +++ b/eos/effects/shipbonusdronedamagegf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Utu type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronedamagemultiplierab.py b/eos/effects/shipbonusdronedamagemultiplierab.py index dc0f2f271..3825f9bb3 100644 --- a/eos/effects/shipbonusdronedamagemultiplierab.py +++ b/eos/effects/shipbonusdronedamagemultiplierab.py @@ -3,6 +3,8 @@ # Used by: # Ship: Armageddon type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusdronedamagemultiplierabc2.py b/eos/effects/shipbonusdronedamagemultiplierabc2.py index a87f57a3b..b93e05392 100644 --- a/eos/effects/shipbonusdronedamagemultiplierabc2.py +++ b/eos/effects/shipbonusdronedamagemultiplierabc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Prophecy type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), skill="Amarr Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shipbonusdronedamagemultiplierac2.py b/eos/effects/shipbonusdronedamagemultiplierac2.py index 9e7f823a8..24e284817 100644 --- a/eos/effects/shipbonusdronedamagemultiplierac2.py +++ b/eos/effects/shipbonusdronedamagemultiplierac2.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Arbitrator (3 of 3) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusdronedamagemultiplierad1.py b/eos/effects/shipbonusdronedamagemultiplierad1.py index b18b20bcb..3112585a8 100644 --- a/eos/effects/shipbonusdronedamagemultiplierad1.py +++ b/eos/effects/shipbonusdronedamagemultiplierad1.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Dragoon (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusdronedamagemultipliergb2.py b/eos/effects/shipbonusdronedamagemultipliergb2.py index 776ac9abf..19ea8bdde 100644 --- a/eos/effects/shipbonusdronedamagemultipliergb2.py +++ b/eos/effects/shipbonusdronedamagemultipliergb2.py @@ -4,6 +4,9 @@ # Variations of ship: Dominix (3 of 3) # Ship: Nestor type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGB2"), skill="Gallente Battleship") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusGB2"), + skill="Gallente Battleship") diff --git a/eos/effects/shipbonusdronedamagemultipliergbc1.py b/eos/effects/shipbonusdronedamagemultipliergbc1.py index ab07e9c71..b1f3abe8e 100644 --- a/eos/effects/shipbonusdronedamagemultipliergbc1.py +++ b/eos/effects/shipbonusdronedamagemultipliergbc1.py @@ -3,6 +3,9 @@ # Used by: # Variations of ship: Myrmidon (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC1"), skill="Gallente Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC1"), + skill="Gallente Battlecruiser") diff --git a/eos/effects/shipbonusdronedamagemultipliergc2.py b/eos/effects/shipbonusdronedamagemultipliergc2.py index e2933b832..9585f7590 100644 --- a/eos/effects/shipbonusdronedamagemultipliergc2.py +++ b/eos/effects/shipbonusdronedamagemultipliergc2.py @@ -5,6 +5,8 @@ # Ship: Vexor # Ship: Vexor Navy Issue type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdronedamagemultipliergd1.py b/eos/effects/shipbonusdronedamagemultipliergd1.py index b033f6d34..28ba5adfc 100644 --- a/eos/effects/shipbonusdronedamagemultipliergd1.py +++ b/eos/effects/shipbonusdronedamagemultipliergd1.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Algos (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusdronedamagemultiplierrookie.py b/eos/effects/shipbonusdronedamagemultiplierrookie.py index b27b56692..58e088f8b 100644 --- a/eos/effects/shipbonusdronedamagemultiplierrookie.py +++ b/eos/effects/shipbonusdronedamagemultiplierrookie.py @@ -6,6 +6,8 @@ # Ship: Taipan # Ship: Velator type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "damageMultiplier", ship.getModifiedItemAttr("rookieDroneBonus")) diff --git a/eos/effects/shipbonusdronehitpointsabc2.py b/eos/effects/shipbonusdronehitpointsabc2.py index 209241457..b1738a300 100644 --- a/eos/effects/shipbonusdronehitpointsabc2.py +++ b/eos/effects/shipbonusdronehitpointsabc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Prophecy type = "passive" + + def handler(fit, ship, context): for layer in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), diff --git a/eos/effects/shipbonusdronehitpointsad1.py b/eos/effects/shipbonusdronehitpointsad1.py index 3caf0535b..4015c8f2e 100644 --- a/eos/effects/shipbonusdronehitpointsad1.py +++ b/eos/effects/shipbonusdronehitpointsad1.py @@ -3,7 +3,12 @@ # Used by: # Variations of ship: Dragoon (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", + src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", + src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", + src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusdronehitpointsfixedac2.py b/eos/effects/shipbonusdronehitpointsfixedac2.py index 36dbd1907..b761c859b 100644 --- a/eos/effects/shipbonusdronehitpointsfixedac2.py +++ b/eos/effects/shipbonusdronehitpointsfixedac2.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Arbitrator (3 of 3) type = "passive" + + def handler(fit, ship, context): for type in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), diff --git a/eos/effects/shipbonusdronehitpointsgb2.py b/eos/effects/shipbonusdronehitpointsgb2.py index 3570eee62..9a591a4bc 100644 --- a/eos/effects/shipbonusdronehitpointsgb2.py +++ b/eos/effects/shipbonusdronehitpointsgb2.py @@ -4,6 +4,8 @@ # Variations of ship: Dominix (3 of 3) # Ship: Nestor type = "passive" + + def handler(fit, ship, context): for type in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), diff --git a/eos/effects/shipbonusdronehitpointsgbc1.py b/eos/effects/shipbonusdronehitpointsgbc1.py index 9b6d29c11..36f77064e 100644 --- a/eos/effects/shipbonusdronehitpointsgbc1.py +++ b/eos/effects/shipbonusdronehitpointsgbc1.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Myrmidon (2 of 2) type = "passive" + + def handler(fit, ship, context): for layer in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), diff --git a/eos/effects/shipbonusdronehitpointsgc2.py b/eos/effects/shipbonusdronehitpointsgc2.py index 6b3b8ce66..8dabc04f0 100644 --- a/eos/effects/shipbonusdronehitpointsgc2.py +++ b/eos/effects/shipbonusdronehitpointsgc2.py @@ -5,6 +5,8 @@ # Ship: Vexor # Ship: Vexor Navy Issue type = "passive" + + def handler(fit, ship, context): for type in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), diff --git a/eos/effects/shipbonusdronehitpointsgd1.py b/eos/effects/shipbonusdronehitpointsgd1.py index 986683701..e82e28b1a 100644 --- a/eos/effects/shipbonusdronehitpointsgd1.py +++ b/eos/effects/shipbonusdronehitpointsgd1.py @@ -3,7 +3,12 @@ # Used by: # Variations of ship: Algos (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", + src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", + src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", + src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusdronehitpointsgf.py b/eos/effects/shipbonusdronehitpointsgf.py index 03f6cf729..62058ca89 100644 --- a/eos/effects/shipbonusdronehitpointsgf.py +++ b/eos/effects/shipbonusdronehitpointsgf.py @@ -5,6 +5,8 @@ # Ship: Maulus Navy Issue # Ship: Tristan type = "passive" + + def handler(fit, ship, context): for layer in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), diff --git a/eos/effects/shipbonusdronehitpointsgf2.py b/eos/effects/shipbonusdronehitpointsgf2.py index 1b9c0d382..a2e993f1b 100644 --- a/eos/effects/shipbonusdronehitpointsgf2.py +++ b/eos/effects/shipbonusdronehitpointsgf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishkur type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "hp", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronehitpointsrookie.py b/eos/effects/shipbonusdronehitpointsrookie.py index dad9c4e99..fa22f9a91 100644 --- a/eos/effects/shipbonusdronehitpointsrookie.py +++ b/eos/effects/shipbonusdronehitpointsrookie.py @@ -6,7 +6,9 @@ # Ship: Taipan # Ship: Velator type = "passive" + + def handler(fit, ship, context): for type in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - type, ship.getModifiedItemAttr("rookieDroneBonus")) \ No newline at end of file + type, ship.getModifiedItemAttr("rookieDroneBonus")) diff --git a/eos/effects/shipbonusdroneminingamountac2.py b/eos/effects/shipbonusdroneminingamountac2.py index b268d7443..4e314a7b7 100644 --- a/eos/effects/shipbonusdroneminingamountac2.py +++ b/eos/effects/shipbonusdroneminingamountac2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Arbitrator type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Mining Drone", "miningAmount", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusdroneminingamountgc2.py b/eos/effects/shipbonusdroneminingamountgc2.py index eb904aebd..b13344744 100644 --- a/eos/effects/shipbonusdroneminingamountgc2.py +++ b/eos/effects/shipbonusdroneminingamountgc2.py @@ -4,6 +4,8 @@ # Ship: Vexor # Ship: Vexor Navy Issue type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Mining Drone", "miningAmount", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdronemwdboostgc.py b/eos/effects/shipbonusdronemwdboostgc.py index b89433e4f..617b0a7a5 100644 --- a/eos/effects/shipbonusdronemwdboostgc.py +++ b/eos/effects/shipbonusdronemwdboostgc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vexor Navy Issue type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxVelocity", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdronemwdboostrole.py b/eos/effects/shipbonusdronemwdboostrole.py index 036dddc67..6b342b2b0 100644 --- a/eos/effects/shipbonusdronemwdboostrole.py +++ b/eos/effects/shipbonusdronemwdboostrole.py @@ -4,6 +4,8 @@ # Ship: Algos # Ship: Dragoon type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxVelocity", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusdroneoptimalrangegb.py b/eos/effects/shipbonusdroneoptimalrangegb.py index 0b7cf2d8d..197aba8ac 100644 --- a/eos/effects/shipbonusdroneoptimalrangegb.py +++ b/eos/effects/shipbonusdroneoptimalrangegb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Dominix type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxRange", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonusdroneshieldhitpointsab.py b/eos/effects/shipbonusdroneshieldhitpointsab.py index 45583dc41..e0ed55589 100644 --- a/eos/effects/shipbonusdroneshieldhitpointsab.py +++ b/eos/effects/shipbonusdroneshieldhitpointsab.py @@ -3,6 +3,8 @@ # Used by: # Ship: Armageddon type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusdroneshieldhitpointsgf2.py b/eos/effects/shipbonusdroneshieldhitpointsgf2.py index 01f4c6122..4a4ca98ae 100644 --- a/eos/effects/shipbonusdroneshieldhitpointsgf2.py +++ b/eos/effects/shipbonusdroneshieldhitpointsgf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishkur type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronestructurehitpointsab.py b/eos/effects/shipbonusdronestructurehitpointsab.py index 3fc42ee65..a37f00d0c 100644 --- a/eos/effects/shipbonusdronestructurehitpointsab.py +++ b/eos/effects/shipbonusdronestructurehitpointsab.py @@ -3,6 +3,8 @@ # Used by: # Ship: Armageddon type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "hp", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusdronetrackinggb.py b/eos/effects/shipbonusdronetrackinggb.py index f82784f41..8449ffc78 100644 --- a/eos/effects/shipbonusdronetrackinggb.py +++ b/eos/effects/shipbonusdronetrackinggb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Dominix type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonusdronetrackinggc.py b/eos/effects/shipbonusdronetrackinggc.py index e6ce626d9..c33d4f02f 100644 --- a/eos/effects/shipbonusdronetrackinggc.py +++ b/eos/effects/shipbonusdronetrackinggc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vexor Navy Issue type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdronetrackinggf.py b/eos/effects/shipbonusdronetrackinggf.py index c6ec28d2c..b98c308e0 100644 --- a/eos/effects/shipbonusdronetrackinggf.py +++ b/eos/effects/shipbonusdronetrackinggf.py @@ -4,6 +4,8 @@ # Ship: Maulus Navy Issue # Ship: Tristan type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusecmstrengthbonuscc.py b/eos/effects/shipbonusecmstrengthbonuscc.py index 0865be894..1eaf7ef56 100644 --- a/eos/effects/shipbonusecmstrengthbonuscc.py +++ b/eos/effects/shipbonusecmstrengthbonuscc.py @@ -3,7 +3,10 @@ # Used by: # Ship: Blackbird type = "passive" + + def handler(fit, ship, context): for type in ("Gravimetric", "Magnetometric", "Ladar", "Radar"): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scan{0}StrengthBonus".format(type), ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") + "scan{0}StrengthBonus".format(type), ship.getModifiedItemAttr("shipBonusCC"), + skill="Caldari Cruiser") diff --git a/eos/effects/shipbonuselitecover2torpedoemdamage.py b/eos/effects/shipbonuselitecover2torpedoemdamage.py index 03dd49466..6db342ce5 100644 --- a/eos/effects/shipbonuselitecover2torpedoemdamage.py +++ b/eos/effects/shipbonuselitecover2torpedoemdamage.py @@ -3,6 +3,8 @@ # Used by: # Ship: Purifier type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", ship.getModifiedItemAttr("eliteBonusCoverOps2"), skill="Covert Ops") diff --git a/eos/effects/shipbonuselitecover2torpedoexplosivedamage.py b/eos/effects/shipbonuselitecover2torpedoexplosivedamage.py index f9a3b9203..29c7a5755 100644 --- a/eos/effects/shipbonuselitecover2torpedoexplosivedamage.py +++ b/eos/effects/shipbonuselitecover2torpedoexplosivedamage.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hound type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosiveDamage", ship.getModifiedItemAttr("eliteBonusCoverOps2"), skill="Covert Ops") + "explosiveDamage", ship.getModifiedItemAttr("eliteBonusCoverOps2"), + skill="Covert Ops") diff --git a/eos/effects/shipbonuselitecover2torpedokineticdamage.py b/eos/effects/shipbonuselitecover2torpedokineticdamage.py index 4389f1de3..811f14ee2 100644 --- a/eos/effects/shipbonuselitecover2torpedokineticdamage.py +++ b/eos/effects/shipbonuselitecover2torpedokineticdamage.py @@ -3,6 +3,9 @@ # Used by: # Ship: Manticore type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "kineticDamage", ship.getModifiedItemAttr("eliteBonusCoverOps2"), skill="Covert Ops") + "kineticDamage", ship.getModifiedItemAttr("eliteBonusCoverOps2"), + skill="Covert Ops") diff --git a/eos/effects/shipbonuselitecover2torpedothermaldamage.py b/eos/effects/shipbonuselitecover2torpedothermaldamage.py index 5cc0957d2..245685e41 100644 --- a/eos/effects/shipbonuselitecover2torpedothermaldamage.py +++ b/eos/effects/shipbonuselitecover2torpedothermaldamage.py @@ -3,6 +3,9 @@ # Used by: # Ship: Nemesis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "thermalDamage", ship.getModifiedItemAttr("eliteBonusCoverOps2"), skill="Covert Ops") + "thermalDamage", ship.getModifiedItemAttr("eliteBonusCoverOps2"), + skill="Covert Ops") diff --git a/eos/effects/shipbonusemarmorresistancead2.py b/eos/effects/shipbonusemarmorresistancead2.py index 7bc317a77..745d64420 100644 --- a/eos/effects/shipbonusemarmorresistancead2.py +++ b/eos/effects/shipbonusemarmorresistancead2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Pontifex type = "passive" + + def handler(fit, src, context): fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusemarmorresistancegd2.py b/eos/effects/shipbonusemarmorresistancegd2.py index bd2d53724..0c7feb03a 100644 --- a/eos/effects/shipbonusemarmorresistancegd2.py +++ b/eos/effects/shipbonusemarmorresistancegd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Magus type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), skill="Gallente Destroyer") + fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), + skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusemmissiledamagecd1.py b/eos/effects/shipbonusemmissiledamagecd1.py index 4c5a36d8f..db491c2b4 100644 --- a/eos/effects/shipbonusemmissiledamagecd1.py +++ b/eos/effects/shipbonusemmissiledamagecd1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", + src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusemmissiledmgmd1.py b/eos/effects/shipbonusemmissiledmgmd1.py index 9f1e5175c..cab979332 100644 --- a/eos/effects/shipbonusemmissiledmgmd1.py +++ b/eos/effects/shipbonusemmissiledmgmd1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Bifrost type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", + src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusemshieldresistancecb2.py b/eos/effects/shipbonusemshieldresistancecb2.py index 145d4b3b3..4e9cdf83d 100644 --- a/eos/effects/shipbonusemshieldresistancecb2.py +++ b/eos/effects/shipbonusemshieldresistancecb2.py @@ -5,5 +5,8 @@ # Ship: Rokh # Ship: Scorpion Navy Issue type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") + fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), + skill="Caldari Battleship") diff --git a/eos/effects/shipbonusemshieldresistancemd2.py b/eos/effects/shipbonusemshieldresistancemd2.py index c25f179da..526ad3caf 100644 --- a/eos/effects/shipbonusemshieldresistancemd2.py +++ b/eos/effects/shipbonusemshieldresistancemd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Bifrost type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), skill="Minmatar Destroyer") + fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusenergyneutfalloffab2.py b/eos/effects/shipbonusenergyneutfalloffab2.py index e49217c81..7540842ce 100644 --- a/eos/effects/shipbonusenergyneutfalloffab2.py +++ b/eos/effects/shipbonusenergyneutfalloffab2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Armageddon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", + src.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusenergyneutfalloffac3.py b/eos/effects/shipbonusenergyneutfalloffac3.py index 3434e6988..fe991894d 100644 --- a/eos/effects/shipbonusenergyneutfalloffac3.py +++ b/eos/effects/shipbonusenergyneutfalloffac3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vangel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAC3"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", + src.getModifiedItemAttr("shipBonusAC3"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusenergyneutfalloffad1.py b/eos/effects/shipbonusenergyneutfalloffad1.py index cf34118ff..9f515fe44 100644 --- a/eos/effects/shipbonusenergyneutfalloffad1.py +++ b/eos/effects/shipbonusenergyneutfalloffad1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Dragoon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", + src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusenergyneutfalloffaf3.py b/eos/effects/shipbonusenergyneutfalloffaf3.py index 248ed9f36..f2f20904d 100644 --- a/eos/effects/shipbonusenergyneutfalloffaf3.py +++ b/eos/effects/shipbonusenergyneutfalloffaf3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Malice type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", src.getModifiedItemAttr("shipBonus3AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", + src.getModifiedItemAttr("shipBonus3AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusenergyneutfalloffeaf3.py b/eos/effects/shipbonusenergyneutfalloffeaf3.py index f4a99fa85..54a1a972a 100644 --- a/eos/effects/shipbonusenergyneutfalloffeaf3.py +++ b/eos/effects/shipbonusenergyneutfalloffeaf3.py @@ -3,5 +3,9 @@ # Used by: # Ship: Sentinel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", src.getModifiedItemAttr("eliteBonusElectronicAttackShip3"), skill="Electronic Attack Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", + src.getModifiedItemAttr("eliteBonusElectronicAttackShip3"), + skill="Electronic Attack Ships") diff --git a/eos/effects/shipbonusenergyneutfalloffrs2.py b/eos/effects/shipbonusenergyneutfalloffrs2.py index 350e3d199..8299434e6 100644 --- a/eos/effects/shipbonusenergyneutfalloffrs2.py +++ b/eos/effects/shipbonusenergyneutfalloffrs2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Pilgrim type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", src.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", + src.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergyneutfalloffrs3.py b/eos/effects/shipbonusenergyneutfalloffrs3.py index f3396dc37..47434368d 100644 --- a/eos/effects/shipbonusenergyneutfalloffrs3.py +++ b/eos/effects/shipbonusenergyneutfalloffrs3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Curse type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", + src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergyneutoptimalab.py b/eos/effects/shipbonusenergyneutoptimalab.py index 7e887f0e6..c8a3351dc 100644 --- a/eos/effects/shipbonusenergyneutoptimalab.py +++ b/eos/effects/shipbonusenergyneutoptimalab.py @@ -3,5 +3,8 @@ # Used by: # Ship: Armageddon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", src.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", + src.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusenergyneutoptimalac1.py b/eos/effects/shipbonusenergyneutoptimalac1.py index b66e58a46..10d1d5291 100644 --- a/eos/effects/shipbonusenergyneutoptimalac1.py +++ b/eos/effects/shipbonusenergyneutoptimalac1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vangel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusenergyneutoptimalad2.py b/eos/effects/shipbonusenergyneutoptimalad2.py index 682a574ad..de8d4804c 100644 --- a/eos/effects/shipbonusenergyneutoptimalad2.py +++ b/eos/effects/shipbonusenergyneutoptimalad2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Dragoon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", + src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusenergyneutoptimalaf2.py b/eos/effects/shipbonusenergyneutoptimalaf2.py index 39609d68b..f85f88f75 100644 --- a/eos/effects/shipbonusenergyneutoptimalaf2.py +++ b/eos/effects/shipbonusenergyneutoptimalaf2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Malice type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusenergyneutoptimaleaf1.py b/eos/effects/shipbonusenergyneutoptimaleaf1.py index 29645d514..f78e0b1ea 100644 --- a/eos/effects/shipbonusenergyneutoptimaleaf1.py +++ b/eos/effects/shipbonusenergyneutoptimaleaf1.py @@ -3,5 +3,9 @@ # Used by: # Ship: Sentinel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", src.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), skill="Electronic Attack Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", + src.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), + skill="Electronic Attack Ships") diff --git a/eos/effects/shipbonusenergyneutoptimalrs1.py b/eos/effects/shipbonusenergyneutoptimalrs1.py index e045b53eb..f6141a967 100644 --- a/eos/effects/shipbonusenergyneutoptimalrs1.py +++ b/eos/effects/shipbonusenergyneutoptimalrs1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Curse type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", src.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", + src.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergyneutoptimalrs3.py b/eos/effects/shipbonusenergyneutoptimalrs3.py index e71d9d93d..9f7dab064 100644 --- a/eos/effects/shipbonusenergyneutoptimalrs3.py +++ b/eos/effects/shipbonusenergyneutoptimalrs3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Pilgrim type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", + src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergynosfalloffab2.py b/eos/effects/shipbonusenergynosfalloffab2.py index 4fd3d877e..153506b06 100644 --- a/eos/effects/shipbonusenergynosfalloffab2.py +++ b/eos/effects/shipbonusenergynosfalloffab2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Armageddon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", + src.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusenergynosfalloffac3.py b/eos/effects/shipbonusenergynosfalloffac3.py index e2099faf4..5bc01aab7 100644 --- a/eos/effects/shipbonusenergynosfalloffac3.py +++ b/eos/effects/shipbonusenergynosfalloffac3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vangel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAC3"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", + src.getModifiedItemAttr("shipBonusAC3"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusenergynosfalloffad1.py b/eos/effects/shipbonusenergynosfalloffad1.py index 466f0f587..1de9dcb6f 100644 --- a/eos/effects/shipbonusenergynosfalloffad1.py +++ b/eos/effects/shipbonusenergynosfalloffad1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Dragoon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", + src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusenergynosfalloffaf3.py b/eos/effects/shipbonusenergynosfalloffaf3.py index 30837fc68..9316fbb76 100644 --- a/eos/effects/shipbonusenergynosfalloffaf3.py +++ b/eos/effects/shipbonusenergynosfalloffaf3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Malice type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", src.getModifiedItemAttr("shipBonus3AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", + src.getModifiedItemAttr("shipBonus3AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusenergynosfalloffeaf3.py b/eos/effects/shipbonusenergynosfalloffeaf3.py index fddede98e..74f6b4ceb 100644 --- a/eos/effects/shipbonusenergynosfalloffeaf3.py +++ b/eos/effects/shipbonusenergynosfalloffeaf3.py @@ -3,5 +3,9 @@ # Used by: # Ship: Sentinel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", src.getModifiedItemAttr("eliteBonusElectronicAttackShip3"), skill="Electronic Attack Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", + src.getModifiedItemAttr("eliteBonusElectronicAttackShip3"), + skill="Electronic Attack Ships") diff --git a/eos/effects/shipbonusenergynosfalloffrs2.py b/eos/effects/shipbonusenergynosfalloffrs2.py index 448e9f26e..372b2f1c3 100644 --- a/eos/effects/shipbonusenergynosfalloffrs2.py +++ b/eos/effects/shipbonusenergynosfalloffrs2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Pilgrim type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", src.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", + src.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergynosfalloffrs3.py b/eos/effects/shipbonusenergynosfalloffrs3.py index 2cc7313b9..d02b92b95 100644 --- a/eos/effects/shipbonusenergynosfalloffrs3.py +++ b/eos/effects/shipbonusenergynosfalloffrs3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Curse type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", + src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergynosoptimalab.py b/eos/effects/shipbonusenergynosoptimalab.py index 07acffc22..a3075262c 100644 --- a/eos/effects/shipbonusenergynosoptimalab.py +++ b/eos/effects/shipbonusenergynosoptimalab.py @@ -3,5 +3,8 @@ # Used by: # Ship: Armageddon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", src.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", + src.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusenergynosoptimalac1.py b/eos/effects/shipbonusenergynosoptimalac1.py index ce1d7d17e..d2c101bbd 100644 --- a/eos/effects/shipbonusenergynosoptimalac1.py +++ b/eos/effects/shipbonusenergynosoptimalac1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vangel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusenergynosoptimalad2.py b/eos/effects/shipbonusenergynosoptimalad2.py index a21ba98b9..7d7e516b8 100644 --- a/eos/effects/shipbonusenergynosoptimalad2.py +++ b/eos/effects/shipbonusenergynosoptimalad2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Dragoon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", + src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusenergynosoptimalaf2.py b/eos/effects/shipbonusenergynosoptimalaf2.py index c7b5ca636..4b6adf6f8 100644 --- a/eos/effects/shipbonusenergynosoptimalaf2.py +++ b/eos/effects/shipbonusenergynosoptimalaf2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Malice type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusenergynosoptimaleaf1.py b/eos/effects/shipbonusenergynosoptimaleaf1.py index 2874e596e..0de8a02d8 100644 --- a/eos/effects/shipbonusenergynosoptimaleaf1.py +++ b/eos/effects/shipbonusenergynosoptimaleaf1.py @@ -3,5 +3,9 @@ # Used by: # Ship: Sentinel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", src.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), skill="Electronic Attack Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", + src.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), + skill="Electronic Attack Ships") diff --git a/eos/effects/shipbonusenergynosoptimalrs1.py b/eos/effects/shipbonusenergynosoptimalrs1.py index 9755223ed..8eaf6c305 100644 --- a/eos/effects/shipbonusenergynosoptimalrs1.py +++ b/eos/effects/shipbonusenergynosoptimalrs1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Curse type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", src.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", + src.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergynosoptimalrs3.py b/eos/effects/shipbonusenergynosoptimalrs3.py index 8f9da2fcf..670f0c701 100644 --- a/eos/effects/shipbonusenergynosoptimalrs3.py +++ b/eos/effects/shipbonusenergynosoptimalrs3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Pilgrim type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", + src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergyvampirerangead2.py b/eos/effects/shipbonusenergyvampirerangead2.py index 5739edcbc..28f9f7c8c 100644 --- a/eos/effects/shipbonusenergyvampirerangead2.py +++ b/eos/effects/shipbonusenergyvampirerangead2.py @@ -1,5 +1,7 @@ # Not used by any item type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", ship.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusewremotesensordampenerfalloffbonusgc1.py b/eos/effects/shipbonusewremotesensordampenerfalloffbonusgc1.py index bd37ce743..0152e33bd 100644 --- a/eos/effects/shipbonusewremotesensordampenerfalloffbonusgc1.py +++ b/eos/effects/shipbonusewremotesensordampenerfalloffbonusgc1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Celestis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") + "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusGC"), + skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgc2.py b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgc2.py index 7c7d1c512..7d1afd2ed 100644 --- a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgc2.py +++ b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgc2.py @@ -3,6 +3,9 @@ # Used by: # Variations of ship: Celestis (3 of 3) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxTargetRangeBonus", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") + "maxTargetRangeBonus", ship.getModifiedItemAttr("shipBonusGC2"), + skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgf2.py b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgf2.py index e321d8f41..bbfd54a57 100644 --- a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgf2.py +++ b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgf2.py @@ -4,6 +4,9 @@ # Ship: Keres # Ship: Maulus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxTargetRangeBonus", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") + "maxTargetRangeBonus", ship.getModifiedItemAttr("shipBonusGF2"), + skill="Gallente Frigate") diff --git a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusrookie.py b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusrookie.py index 90874e57f..82fb26288 100644 --- a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusrookie.py +++ b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Velator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", "maxTargetRangeBonus", ship.getModifiedItemAttr("rookieDampStrengthBonus")) diff --git a/eos/effects/shipbonusewremotesensordampeneroptimalbonusgc1.py b/eos/effects/shipbonusewremotesensordampeneroptimalbonusgc1.py index 677cc1169..2c87e50e9 100644 --- a/eos/effects/shipbonusewremotesensordampeneroptimalbonusgc1.py +++ b/eos/effects/shipbonusewremotesensordampeneroptimalbonusgc1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Celestis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", "maxRange", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgc2.py b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgc2.py index 7c676b180..b8b1259dc 100644 --- a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgc2.py +++ b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgc2.py @@ -3,6 +3,9 @@ # Used by: # Variations of ship: Celestis (3 of 3) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "scanResolutionBonus", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") + "scanResolutionBonus", ship.getModifiedItemAttr("shipBonusGC2"), + skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgf2.py b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgf2.py index 3a1da8294..ede9c9d7e 100644 --- a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgf2.py +++ b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgf2.py @@ -4,6 +4,9 @@ # Ship: Keres # Ship: Maulus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "scanResolutionBonus", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") + "scanResolutionBonus", ship.getModifiedItemAttr("shipBonusGF2"), + skill="Gallente Frigate") diff --git a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusrookie.py b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusrookie.py index fdf1f57cc..6cc41c30d 100644 --- a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusrookie.py +++ b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Velator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", "scanResolutionBonus", ship.getModifiedItemAttr("rookieDampStrengthBonus")) diff --git a/eos/effects/shipbonusewweapondisruptionrangedisruptionrookie.py b/eos/effects/shipbonusewweapondisruptionrangedisruptionrookie.py index f047f203d..03e07fbdb 100644 --- a/eos/effects/shipbonusewweapondisruptionrangedisruptionrookie.py +++ b/eos/effects/shipbonusewweapondisruptionrangedisruptionrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Impairor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRangeBonus", ship.getModifiedItemAttr("rookieWeaponDisruptionBonus")) diff --git a/eos/effects/shipbonusewweapondisruptionstrengthac1.py b/eos/effects/shipbonusewweapondisruptionstrengthac1.py index 5d8b490e7..6ac7ea077 100644 --- a/eos/effects/shipbonusewweapondisruptionstrengthac1.py +++ b/eos/effects/shipbonusewweapondisruptionstrengthac1.py @@ -3,11 +3,20 @@ # Used by: # Variations of ship: Arbitrator (3 of 3) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "missileVelocityBonus", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeVelocityBonus", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRangeBonus", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "explosionDelayBonus", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeCloudSizeBonus", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "trackingSpeedBonus", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloffBonus", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "missileVelocityBonus", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeVelocityBonus", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRangeBonus", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "explosionDelayBonus", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeCloudSizeBonus", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "trackingSpeedBonus", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloffBonus", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusewweapondisruptionstrengthaf2.py b/eos/effects/shipbonusewweapondisruptionstrengthaf2.py index 61a417430..d7955172b 100644 --- a/eos/effects/shipbonusewweapondisruptionstrengthaf2.py +++ b/eos/effects/shipbonusewweapondisruptionstrengthaf2.py @@ -3,11 +3,20 @@ # Used by: # Variations of ship: Crucifier (3 of 3) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "trackingSpeedBonus", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "explosionDelayBonus", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRangeBonus", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloffBonus", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "missileVelocityBonus", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeVelocityBonus", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeCloudSizeBonus", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "trackingSpeedBonus", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "explosionDelayBonus", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRangeBonus", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloffBonus", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "missileVelocityBonus", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeVelocityBonus", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeCloudSizeBonus", + src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusexplosivearmorresistancead2.py b/eos/effects/shipbonusexplosivearmorresistancead2.py index b9cf16401..a1e2cc1c8 100644 --- a/eos/effects/shipbonusexplosivearmorresistancead2.py +++ b/eos/effects/shipbonusexplosivearmorresistancead2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Pontifex type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), + skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusexplosivearmorresistancegd2.py b/eos/effects/shipbonusexplosivearmorresistancegd2.py index 9954b848b..37c731132 100644 --- a/eos/effects/shipbonusexplosivearmorresistancegd2.py +++ b/eos/effects/shipbonusexplosivearmorresistancegd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Magus type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), skill="Gallente Destroyer") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), + skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusexplosivemissiledamagecd1.py b/eos/effects/shipbonusexplosivemissiledamagecd1.py index dab14bcd9..b7c2293f7 100644 --- a/eos/effects/shipbonusexplosivemissiledamagecd1.py +++ b/eos/effects/shipbonusexplosivemissiledamagecd1.py @@ -3,5 +3,9 @@ # Used by: # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "explosiveDamage", src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), + "explosiveDamage", src.getModifiedItemAttr("shipBonusCD1"), + skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusexplosivemissiledmgmd1.py b/eos/effects/shipbonusexplosivemissiledmgmd1.py index 4b6852d70..b6b2dd692 100644 --- a/eos/effects/shipbonusexplosivemissiledmgmd1.py +++ b/eos/effects/shipbonusexplosivemissiledmgmd1.py @@ -3,5 +3,9 @@ # Used by: # Ship: Bifrost type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "explosiveDamage", src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), + "explosiveDamage", src.getModifiedItemAttr("shipBonusMD1"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusexplosiveshieldresistancecb2.py b/eos/effects/shipbonusexplosiveshieldresistancecb2.py index 7932112cc..77f1f0356 100644 --- a/eos/effects/shipbonusexplosiveshieldresistancecb2.py +++ b/eos/effects/shipbonusexplosiveshieldresistancecb2.py @@ -5,5 +5,8 @@ # Ship: Rokh # Ship: Scorpion Navy Issue type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), + skill="Caldari Battleship") diff --git a/eos/effects/shipbonusexplosiveshieldresistancemd2.py b/eos/effects/shipbonusexplosiveshieldresistancemd2.py index 3cd1b0b2c..b9f93788b 100644 --- a/eos/effects/shipbonusexplosiveshieldresistancemd2.py +++ b/eos/effects/shipbonusexplosiveshieldresistancemd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Bifrost type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), skill="Minmatar Destroyer") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusforceauxiliarya1remoterepairandcapamount.py b/eos/effects/shipbonusforceauxiliarya1remoterepairandcapamount.py index ef38862e5..2ae2102d6 100644 --- a/eos/effects/shipbonusforceauxiliarya1remoterepairandcapamount.py +++ b/eos/effects/shipbonusforceauxiliarya1remoterepairandcapamount.py @@ -3,10 +3,14 @@ # Used by: # Ship: Apostle type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems") or mod.item.requiresSkill("Capital Capacitor Emission Systems"), - "powerTransferAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), skill="Amarr Carrier") + "powerTransferAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), + skill="Amarr Carrier") fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") or mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), skill="Amarr Carrier") + "armorDamageAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), + skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliarya2armorresists.py b/eos/effects/shipbonusforceauxiliarya2armorresists.py index 071d51184..38dc7efd9 100644 --- a/eos/effects/shipbonusforceauxiliarya2armorresists.py +++ b/eos/effects/shipbonusforceauxiliarya2armorresists.py @@ -3,8 +3,14 @@ # Used by: # Ship: Apostle type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), skill="Amarr Carrier") + fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), + skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliarya3capcapacity.py b/eos/effects/shipbonusforceauxiliarya3capcapacity.py index 8ee87d878..604573a39 100644 --- a/eos/effects/shipbonusforceauxiliarya3capcapacity.py +++ b/eos/effects/shipbonusforceauxiliarya3capcapacity.py @@ -3,5 +3,8 @@ # Used by: # Ship: Apostle type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("capacitorCapacity", src.getModifiedItemAttr("shipBonusForceAuxiliaryA3"), skill="Amarr Carrier") + fit.ship.boostItemAttr("capacitorCapacity", src.getModifiedItemAttr("shipBonusForceAuxiliaryA3"), + skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliarya4warfarelinksbonus.py b/eos/effects/shipbonusforceauxiliarya4warfarelinksbonus.py index ed7b9cf3d..555b8f336 100644 --- a/eos/effects/shipbonusforceauxiliarya4warfarelinksbonus.py +++ b/eos/effects/shipbonusforceauxiliarya4warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Apostle type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryc1remoteboostandcapamount.py b/eos/effects/shipbonusforceauxiliaryc1remoteboostandcapamount.py index 0aaf8c8a9..2a6cdced9 100644 --- a/eos/effects/shipbonusforceauxiliaryc1remoteboostandcapamount.py +++ b/eos/effects/shipbonusforceauxiliaryc1remoteboostandcapamount.py @@ -3,10 +3,14 @@ # Used by: # Ship: Minokawa type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems") or mod.item.requiresSkill("Capital Capacitor Emission Systems"), - "powerTransferAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryC1"), skill="Caldari Carrier") + "powerTransferAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryC1"), + skill="Caldari Carrier") fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") or mod.item.requiresSkill("Capital Shield Emission Systems"), - "shieldBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryC1"), skill="Caldari Carrier") + "shieldBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryC1"), + skill="Caldari Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryc2shieldresists.py b/eos/effects/shipbonusforceauxiliaryc2shieldresists.py index 96cfae084..9381d82df 100644 --- a/eos/effects/shipbonusforceauxiliaryc2shieldresists.py +++ b/eos/effects/shipbonusforceauxiliaryc2shieldresists.py @@ -3,8 +3,14 @@ # Used by: # Ship: Minokawa type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), + skill="Caldari Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryc3capcapacity.py b/eos/effects/shipbonusforceauxiliaryc3capcapacity.py index 3e1cf41d4..e7ed1f5de 100644 --- a/eos/effects/shipbonusforceauxiliaryc3capcapacity.py +++ b/eos/effects/shipbonusforceauxiliaryc3capcapacity.py @@ -3,5 +3,8 @@ # Used by: # Ship: Minokawa type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("capacitorCapacity", src.getModifiedItemAttr("shipBonusForceAuxiliaryC3"), skill="Caldari Carrier") + fit.ship.boostItemAttr("capacitorCapacity", src.getModifiedItemAttr("shipBonusForceAuxiliaryC3"), + skill="Caldari Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryc4warfarelinksbonus.py b/eos/effects/shipbonusforceauxiliaryc4warfarelinksbonus.py index d724e8bda..a14973753 100644 --- a/eos/effects/shipbonusforceauxiliaryc4warfarelinksbonus.py +++ b/eos/effects/shipbonusforceauxiliaryc4warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Minokawa type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryg1remotecycletime.py b/eos/effects/shipbonusforceauxiliaryg1remotecycletime.py index eb889bf5d..3ae370e41 100644 --- a/eos/effects/shipbonusforceauxiliaryg1remotecycletime.py +++ b/eos/effects/shipbonusforceauxiliaryg1remotecycletime.py @@ -3,10 +3,14 @@ # Used by: # Ship: Ninazu type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") or mod.item.requiresSkill("Capital Shield Emission Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryG1"), skill="Gallente Carrier") + "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryG1"), + skill="Gallente Carrier") fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") or mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryG1"), skill="Gallente Carrier") + "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryG1"), + skill="Gallente Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryg2localrepairamount.py b/eos/effects/shipbonusforceauxiliaryg2localrepairamount.py index b93057e97..bdbefdd49 100644 --- a/eos/effects/shipbonusforceauxiliaryg2localrepairamount.py +++ b/eos/effects/shipbonusforceauxiliaryg2localrepairamount.py @@ -3,6 +3,10 @@ # Used by: # Ship: Ninazu type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "armorDamageAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryG2"), skill="Gallente Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "armorDamageAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryG2"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "armorDamageAmount", + src.getModifiedItemAttr("shipBonusForceAuxiliaryG2"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "armorDamageAmount", + src.getModifiedItemAttr("shipBonusForceAuxiliaryG2"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryg3capboosterstrength.py b/eos/effects/shipbonusforceauxiliaryg3capboosterstrength.py index dffacb74a..7dbd8b392 100644 --- a/eos/effects/shipbonusforceauxiliaryg3capboosterstrength.py +++ b/eos/effects/shipbonusforceauxiliaryg3capboosterstrength.py @@ -3,5 +3,8 @@ # Used by: # Ship: Ninazu type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Capacitor Booster Charge", "capacitorBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryG3"), skill="Gallente Carrier") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Capacitor Booster Charge", "capacitorBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryG3"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryg4warfarelinksbonus.py b/eos/effects/shipbonusforceauxiliaryg4warfarelinksbonus.py index 5e933d9a5..f67bdd8fd 100644 --- a/eos/effects/shipbonusforceauxiliaryg4warfarelinksbonus.py +++ b/eos/effects/shipbonusforceauxiliaryg4warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Ninazu type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym1remotecycletime.py b/eos/effects/shipbonusforceauxiliarym1remotecycletime.py index 90f14c952..9ab5ae04c 100644 --- a/eos/effects/shipbonusforceauxiliarym1remotecycletime.py +++ b/eos/effects/shipbonusforceauxiliarym1remotecycletime.py @@ -3,11 +3,15 @@ # Used by: # Ship: Lif type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") or mod.item.requiresSkill("Capital Shield Emission Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryM1"), skill="Minmatar Carrier") + "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryM1"), + skill="Minmatar Carrier") fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") or mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryM1"), skill="Minmatar Carrier") + "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryM1"), + skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym2localboostamount.py b/eos/effects/shipbonusforceauxiliarym2localboostamount.py index 8fe11a235..2bff2d794 100644 --- a/eos/effects/shipbonusforceauxiliarym2localboostamount.py +++ b/eos/effects/shipbonusforceauxiliarym2localboostamount.py @@ -3,6 +3,10 @@ # Used by: # Ship: Lif type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), "shieldBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryM2"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryM2"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), "shieldBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryM2"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryM2"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym3capboosterstrength.py b/eos/effects/shipbonusforceauxiliarym3capboosterstrength.py index 401b0530f..a2a656cea 100644 --- a/eos/effects/shipbonusforceauxiliarym3capboosterstrength.py +++ b/eos/effects/shipbonusforceauxiliarym3capboosterstrength.py @@ -3,5 +3,8 @@ # Used by: # Ship: Lif type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Capacitor Booster Charge", "capacitorBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryM3"), skill="Minmatar Carrier") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Capacitor Booster Charge", "capacitorBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryM3"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym4warfarelinksbonus.py b/eos/effects/shipbonusforceauxiliarym4warfarelinksbonus.py index afbb2c09a..53c1f8b60 100644 --- a/eos/effects/shipbonusforceauxiliarym4warfarelinksbonus.py +++ b/eos/effects/shipbonusforceauxiliarym4warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Lif type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryrole1cpubonus.py b/eos/effects/shipbonusforceauxiliaryrole1cpubonus.py index 41f57ed82..cda897b72 100644 --- a/eos/effects/shipbonusforceauxiliaryrole1cpubonus.py +++ b/eos/effects/shipbonusforceauxiliaryrole1cpubonus.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Force Auxiliary (4 of 4) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "cpu", src.getModifiedItemAttr("shipBonusRole1")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "cpu", + src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonusforceauxiliaryrole2logisticdronebonus.py b/eos/effects/shipbonusforceauxiliaryrole2logisticdronebonus.py index a401ef2a0..53bb50f5f 100644 --- a/eos/effects/shipbonusforceauxiliaryrole2logisticdronebonus.py +++ b/eos/effects/shipbonusforceauxiliaryrole2logisticdronebonus.py @@ -3,7 +3,12 @@ # Used by: # Ships from group: Force Auxiliary (4 of 4) type = "passive" + + def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "structureDamageAmount", src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "armorDamageAmount", src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "shieldBonus", src.getModifiedItemAttr("shipBonusRole2")) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "structureDamageAmount", + src.getModifiedItemAttr("shipBonusRole2")) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "armorDamageAmount", + src.getModifiedItemAttr("shipBonusRole2")) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "shieldBonus", + src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonusforceauxiliaryrole3numwarfarelinks.py b/eos/effects/shipbonusforceauxiliaryrole3numwarfarelinks.py index b44ffb8f0..69a19a64b 100644 --- a/eos/effects/shipbonusforceauxiliaryrole3numwarfarelinks.py +++ b/eos/effects/shipbonusforceauxiliaryrole3numwarfarelinks.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Force Auxiliary (4 of 4) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", src.getModifiedItemAttr("shipBonusRole3")) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", + src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/shipbonusfrigatesizedlightmissileexplosivedamagemd1.py b/eos/effects/shipbonusfrigatesizedlightmissileexplosivedamagemd1.py index d27d30493..28ce0aedb 100644 --- a/eos/effects/shipbonusfrigatesizedlightmissileexplosivedamagemd1.py +++ b/eos/effects/shipbonusfrigatesizedlightmissileexplosivedamagemd1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Talwar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") + "explosiveDamage", ship.getModifiedItemAttr("shipBonusMD1"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusfrigatesizedmissilekineticdamagecd1.py b/eos/effects/shipbonusfrigatesizedmissilekineticdamagecd1.py index b1be29908..efb861fb9 100644 --- a/eos/effects/shipbonusfrigatesizedmissilekineticdamagecd1.py +++ b/eos/effects/shipbonusfrigatesizedmissilekineticdamagecd1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Corax type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") + "kineticDamage", ship.getModifiedItemAttr("shipBonusCD1"), + skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusgf1torpedoflighttime.py b/eos/effects/shipbonusgf1torpedoflighttime.py index 9ed770b3b..7fe141ec6 100644 --- a/eos/effects/shipbonusgf1torpedoflighttime.py +++ b/eos/effects/shipbonusgf1torpedoflighttime.py @@ -3,6 +3,8 @@ # Used by: # Ship: Nemesis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosionDelay", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusgftorpedoexplosionvelocity.py b/eos/effects/shipbonusgftorpedoexplosionvelocity.py index b653c749e..d7cd8a67e 100644 --- a/eos/effects/shipbonusgftorpedoexplosionvelocity.py +++ b/eos/effects/shipbonusgftorpedoexplosionvelocity.py @@ -3,6 +3,8 @@ # Used by: # Ship: Nemesis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") \ No newline at end of file + "aoeVelocity", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonushamvelocityelitebonusheavygunship1.py b/eos/effects/shipbonushamvelocityelitebonusheavygunship1.py index 0b529bf00..59e546543 100644 --- a/eos/effects/shipbonushamvelocityelitebonusheavygunship1.py +++ b/eos/effects/shipbonushamvelocityelitebonusheavygunship1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Sacrilege type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/shipbonusheatdamageatf1.py b/eos/effects/shipbonusheatdamageatf1.py index 22f686d74..d6dfc2597 100644 --- a/eos/effects/shipbonusheatdamageatf1.py +++ b/eos/effects/shipbonusheatdamageatf1.py @@ -5,6 +5,8 @@ # Ship: Etana # Ship: Utu type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", ship.getModifiedItemAttr("shipBonusATF1")) diff --git a/eos/effects/shipbonusheavyassaultmissilealldamagemc2.py b/eos/effects/shipbonusheavyassaultmissilealldamagemc2.py index 4e0334dd1..12e3673b4 100644 --- a/eos/effects/shipbonusheavyassaultmissilealldamagemc2.py +++ b/eos/effects/shipbonusheavyassaultmissilealldamagemc2.py @@ -4,7 +4,10 @@ # Ship: Rapier # Ship: Scythe Fleet Issue type = "passive" + + def handler(fit, ship, context): for damageType in ("em", "explosive", "kinetic", "thermal"): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc1.py b/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc1.py index 425b3024e..4843ac63b 100644 --- a/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc1.py +++ b/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc1.py @@ -4,6 +4,9 @@ # Ship: Drake # Ship: Nighthawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCBC1"), skill="Caldari Battlecruiser") + "kineticDamage", ship.getModifiedItemAttr("shipBonusCBC1"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavyassaultmissilelauncherrofmbc2.py b/eos/effects/shipbonusheavyassaultmissilelauncherrofmbc2.py index dbae3e20f..85820f30e 100644 --- a/eos/effects/shipbonusheavyassaultmissilelauncherrofmbc2.py +++ b/eos/effects/shipbonusheavyassaultmissilelauncherrofmbc2.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Cyclone (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", "speed", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusheavydronearmorhpgc2.py b/eos/effects/shipbonusheavydronearmorhpgc2.py index 5f9a3e2ad..296ebfce8 100644 --- a/eos/effects/shipbonusheavydronearmorhpgc2.py +++ b/eos/effects/shipbonusheavydronearmorhpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "armorHP", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydronearmorhppiratefaction.py b/eos/effects/shipbonusheavydronearmorhppiratefaction.py index d1d7189f5..c5dc193ab 100644 --- a/eos/effects/shipbonusheavydronearmorhppiratefaction.py +++ b/eos/effects/shipbonusheavydronearmorhppiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "armorHP", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusheavydronedamagemultipliergc2.py b/eos/effects/shipbonusheavydronedamagemultipliergc2.py index 3932beba3..f144bd698 100644 --- a/eos/effects/shipbonusheavydronedamagemultipliergc2.py +++ b/eos/effects/shipbonusheavydronedamagemultipliergc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydronedamagemultiplierpiratefaction.py b/eos/effects/shipbonusheavydronedamagemultiplierpiratefaction.py index b6f76821d..b1a03b0f4 100644 --- a/eos/effects/shipbonusheavydronedamagemultiplierpiratefaction.py +++ b/eos/effects/shipbonusheavydronedamagemultiplierpiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusheavydronehpgc2.py b/eos/effects/shipbonusheavydronehpgc2.py index 64ef5aea2..8ddebf251 100644 --- a/eos/effects/shipbonusheavydronehpgc2.py +++ b/eos/effects/shipbonusheavydronehpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "hp", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydronehppiratefaction.py b/eos/effects/shipbonusheavydronehppiratefaction.py index 18e142507..58a3c7eb4 100644 --- a/eos/effects/shipbonusheavydronehppiratefaction.py +++ b/eos/effects/shipbonusheavydronehppiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "hp", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusheavydroneshieldhpgc2.py b/eos/effects/shipbonusheavydroneshieldhpgc2.py index e3155d4d8..82e112d19 100644 --- a/eos/effects/shipbonusheavydroneshieldhpgc2.py +++ b/eos/effects/shipbonusheavydroneshieldhpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydroneshieldhppiratefaction.py b/eos/effects/shipbonusheavydroneshieldhppiratefaction.py index 654197505..60d10086f 100644 --- a/eos/effects/shipbonusheavydroneshieldhppiratefaction.py +++ b/eos/effects/shipbonusheavydroneshieldhppiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusheavydronespeedgc.py b/eos/effects/shipbonusheavydronespeedgc.py index f31837962..4f7113218 100644 --- a/eos/effects/shipbonusheavydronespeedgc.py +++ b/eos/effects/shipbonusheavydronespeedgc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "maxVelocity", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydronetrackinggc.py b/eos/effects/shipbonusheavydronetrackinggc.py index aac4f0422..d306134b2 100644 --- a/eos/effects/shipbonusheavydronetrackinggc.py +++ b/eos/effects/shipbonusheavydronetrackinggc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavymissilealldamagemc2.py b/eos/effects/shipbonusheavymissilealldamagemc2.py index b4b1fbb03..cd0e38e60 100644 --- a/eos/effects/shipbonusheavymissilealldamagemc2.py +++ b/eos/effects/shipbonusheavymissilealldamagemc2.py @@ -4,7 +4,10 @@ # Ship: Rapier # Ship: Scythe Fleet Issue type = "passive" + + def handler(fit, ship, context): for damageType in ("em", "explosive", "kinetic", "thermal"): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusheavymissileemdmgmb.py b/eos/effects/shipbonusheavymissileemdmgmb.py index 6055232bf..18cc901a9 100644 --- a/eos/effects/shipbonusheavymissileemdmgmb.py +++ b/eos/effects/shipbonusheavymissileemdmgmb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "emDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusheavymissileexplodmgmb.py b/eos/effects/shipbonusheavymissileexplodmgmb.py index a191d1f46..917596584 100644 --- a/eos/effects/shipbonusheavymissileexplodmgmb.py +++ b/eos/effects/shipbonusheavymissileexplodmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusheavymissilekineticdamagecbc1.py b/eos/effects/shipbonusheavymissilekineticdamagecbc1.py index 37d20993f..83f591980 100644 --- a/eos/effects/shipbonusheavymissilekineticdamagecbc1.py +++ b/eos/effects/shipbonusheavymissilekineticdamagecbc1.py @@ -4,6 +4,9 @@ # Ship: Drake # Ship: Nighthawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCBC1"), skill="Caldari Battlecruiser") + "kineticDamage", ship.getModifiedItemAttr("shipBonusCBC1"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavymissilekineticdmgmb.py b/eos/effects/shipbonusheavymissilekineticdmgmb.py index 507fe97e8..5e2f0da29 100644 --- a/eos/effects/shipbonusheavymissilekineticdmgmb.py +++ b/eos/effects/shipbonusheavymissilekineticdmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusheavymissilelauncherrofmbc2.py b/eos/effects/shipbonusheavymissilelauncherrofmbc2.py index 41d41d1db..7622c3d1d 100644 --- a/eos/effects/shipbonusheavymissilelauncherrofmbc2.py +++ b/eos/effects/shipbonusheavymissilelauncherrofmbc2.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Cyclone (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", "speed", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusheavymissilethermdmgmb.py b/eos/effects/shipbonusheavymissilethermdmgmb.py index 3059a0b34..d4406c6b6 100644 --- a/eos/effects/shipbonusheavymissilethermdmgmb.py +++ b/eos/effects/shipbonusheavymissilethermdmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonushmlemdamageac.py b/eos/effects/shipbonushmlemdamageac.py index 73e0215ab..464e8d6ac 100644 --- a/eos/effects/shipbonushmlemdamageac.py +++ b/eos/effects/shipbonushmlemdamageac.py @@ -3,6 +3,8 @@ # Used by: # Ship: Sacrilege type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "emDamage", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonushmlexplodamageac.py b/eos/effects/shipbonushmlexplodamageac.py index aae93767b..c22b7f6ba 100644 --- a/eos/effects/shipbonushmlexplodamageac.py +++ b/eos/effects/shipbonushmlexplodamageac.py @@ -3,6 +3,8 @@ # Used by: # Ship: Sacrilege type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "explosiveDamage", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonushmlkineticdamageac.py b/eos/effects/shipbonushmlkineticdamageac.py index e5caa6f6b..adecc7914 100644 --- a/eos/effects/shipbonushmlkineticdamageac.py +++ b/eos/effects/shipbonushmlkineticdamageac.py @@ -3,6 +3,8 @@ # Used by: # Ship: Sacrilege type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "kineticDamage", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonushmlthermdamageac.py b/eos/effects/shipbonushmlthermdamageac.py index 0951cbcb2..663ee7a44 100644 --- a/eos/effects/shipbonushmlthermdamageac.py +++ b/eos/effects/shipbonushmlthermdamageac.py @@ -3,6 +3,8 @@ # Used by: # Ship: Sacrilege type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "thermalDamage", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonushmlvelocityelitebonusheavygunship1.py b/eos/effects/shipbonushmlvelocityelitebonusheavygunship1.py index 0e77373b2..1275a2e99 100644 --- a/eos/effects/shipbonushmlvelocityelitebonusheavygunship1.py +++ b/eos/effects/shipbonushmlvelocityelitebonusheavygunship1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Sacrilege type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), skill="Heavy Assault Cruisers") + "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/shipbonushtfalloffgb2.py b/eos/effects/shipbonushtfalloffgb2.py index b359b64d8..f8a66395d 100644 --- a/eos/effects/shipbonushtfalloffgb2.py +++ b/eos/effects/shipbonushtfalloffgb2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Kronos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "falloff", ship.getModifiedItemAttr("shipBonusGB2"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonushybridfalloffatc2.py b/eos/effects/shipbonushybridfalloffatc2.py index 7c0a32e78..b60d60618 100644 --- a/eos/effects/shipbonushybridfalloffatc2.py +++ b/eos/effects/shipbonushybridfalloffatc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Adrestia type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "falloff", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipbonushybridoptimalcb.py b/eos/effects/shipbonushybridoptimalcb.py index b94cde8d2..5129958e9 100644 --- a/eos/effects/shipbonushybridoptimalcb.py +++ b/eos/effects/shipbonushybridoptimalcb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Rokh type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonushybridtrackingatc2.py b/eos/effects/shipbonushybridtrackingatc2.py index ee8aeda5b..9b6e8a4ec 100644 --- a/eos/effects/shipbonushybridtrackingatc2.py +++ b/eos/effects/shipbonushybridtrackingatc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Adrestia type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipbonushybridtrackinggf2.py b/eos/effects/shipbonushybridtrackinggf2.py index 2f3cb4e10..dabf163d6 100644 --- a/eos/effects/shipbonushybridtrackinggf2.py +++ b/eos/effects/shipbonushybridtrackinggf2.py @@ -5,6 +5,8 @@ # Ship: Federation Navy Comet # Ship: Tristan type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") + "trackingSpeed", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusiceharvesterdurationore3.py b/eos/effects/shipbonusiceharvesterdurationore3.py index c9353b36c..2e099cc24 100644 --- a/eos/effects/shipbonusiceharvesterdurationore3.py +++ b/eos/effects/shipbonusiceharvesterdurationore3.py @@ -4,6 +4,8 @@ # Ships from group: Exhumer (3 of 3) # Ships from group: Mining Barge (3 of 3) type = "passive" + + def handler(fit, container, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "duration", container.getModifiedItemAttr("shipBonusORE3"), skill="Mining Barge") \ No newline at end of file + "duration", container.getModifiedItemAttr("shipBonusORE3"), skill="Mining Barge") diff --git a/eos/effects/shipbonusjustscramblerrangegf2.py b/eos/effects/shipbonusjustscramblerrangegf2.py index e620633f2..0c82717b2 100644 --- a/eos/effects/shipbonusjustscramblerrangegf2.py +++ b/eos/effects/shipbonusjustscramblerrangegf2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Maulus Navy Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Navigation"), "maxRange", src.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Navigation"), "maxRange", + src.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonuskineticarmorresistancead2.py b/eos/effects/shipbonuskineticarmorresistancead2.py index f326f664c..2359565c0 100644 --- a/eos/effects/shipbonuskineticarmorresistancead2.py +++ b/eos/effects/shipbonuskineticarmorresistancead2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Pontifex type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") + fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), + skill="Amarr Destroyer") diff --git a/eos/effects/shipbonuskineticarmorresistancegd2.py b/eos/effects/shipbonuskineticarmorresistancegd2.py index fc46a2b17..48b4afc6a 100644 --- a/eos/effects/shipbonuskineticarmorresistancegd2.py +++ b/eos/effects/shipbonuskineticarmorresistancegd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Magus type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), skill="Gallente Destroyer") + fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), + skill="Gallente Destroyer") diff --git a/eos/effects/shipbonuskineticmissiledamagecd1.py b/eos/effects/shipbonuskineticmissiledamagecd1.py index fccd0aa38..3f47a32e2 100644 --- a/eos/effects/shipbonuskineticmissiledamagecd1.py +++ b/eos/effects/shipbonuskineticmissiledamagecd1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", + src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonuskineticmissiledamagegb2.py b/eos/effects/shipbonuskineticmissiledamagegb2.py index 5c47215dd..203f8ff3c 100644 --- a/eos/effects/shipbonuskineticmissiledamagegb2.py +++ b/eos/effects/shipbonuskineticmissiledamagegb2.py @@ -3,6 +3,9 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusGB2"), skill="Gallente Battleship") + "kineticDamage", ship.getModifiedItemAttr("shipBonusGB2"), + skill="Gallente Battleship") diff --git a/eos/effects/shipbonuskineticmissiledamagegc2.py b/eos/effects/shipbonuskineticmissiledamagegc2.py index 21a2ab998..b4f538d2c 100644 --- a/eos/effects/shipbonuskineticmissiledamagegc2.py +++ b/eos/effects/shipbonuskineticmissiledamagegc2.py @@ -4,6 +4,8 @@ # Ship: Chameleon # Ship: Gila type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuskineticmissiledamagegf.py b/eos/effects/shipbonuskineticmissiledamagegf.py index 2b52b828a..8bd18e45a 100644 --- a/eos/effects/shipbonuskineticmissiledamagegf.py +++ b/eos/effects/shipbonuskineticmissiledamagegf.py @@ -4,6 +4,8 @@ # Ship: Whiptail # Ship: Worm type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonuskineticmissiledmgmd1.py b/eos/effects/shipbonuskineticmissiledmgmd1.py index 881fa755c..ece38cb4e 100644 --- a/eos/effects/shipbonuskineticmissiledmgmd1.py +++ b/eos/effects/shipbonuskineticmissiledmgmd1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Bifrost type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", + src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonuskineticshieldresistancecb2.py b/eos/effects/shipbonuskineticshieldresistancecb2.py index 00da5e4d7..9fb1f3929 100644 --- a/eos/effects/shipbonuskineticshieldresistancecb2.py +++ b/eos/effects/shipbonuskineticshieldresistancecb2.py @@ -5,5 +5,8 @@ # Ship: Rokh # Ship: Scorpion Navy Issue type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") + fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), + skill="Caldari Battleship") diff --git a/eos/effects/shipbonuskineticshieldresistancemd2.py b/eos/effects/shipbonuskineticshieldresistancemd2.py index fe8ba6db5..81c08cc47 100644 --- a/eos/effects/shipbonuskineticshieldresistancemd2.py +++ b/eos/effects/shipbonuskineticshieldresistancemd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Bifrost type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), skill="Minmatar Destroyer") + fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonuslargeenergyturretmaxrangeab.py b/eos/effects/shipbonuslargeenergyturretmaxrangeab.py index 1d392745a..7f5cd2822 100644 --- a/eos/effects/shipbonuslargeenergyturretmaxrangeab.py +++ b/eos/effects/shipbonuslargeenergyturretmaxrangeab.py @@ -3,6 +3,8 @@ # Used by: # Ship: Paladin type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonuslargeenergyturretmaxrangeab2.py b/eos/effects/shipbonuslargeenergyturretmaxrangeab2.py index 650571509..cad976ce7 100644 --- a/eos/effects/shipbonuslargeenergyturretmaxrangeab2.py +++ b/eos/effects/shipbonuslargeenergyturretmaxrangeab2.py @@ -4,6 +4,8 @@ # Ship: Apocalypse # Ship: Apocalypse Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonuslargeenergyturrettrackingab.py b/eos/effects/shipbonuslargeenergyturrettrackingab.py index 1dc627449..0ec7b3b4c 100644 --- a/eos/effects/shipbonuslargeenergyturrettrackingab.py +++ b/eos/effects/shipbonuslargeenergyturrettrackingab.py @@ -4,6 +4,8 @@ # Ship: Apocalypse # Ship: Apocalypse Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonuslargeenergyweapondamageab2.py b/eos/effects/shipbonuslargeenergyweapondamageab2.py index af3e9d8ea..a982bdf36 100644 --- a/eos/effects/shipbonuslargeenergyweapondamageab2.py +++ b/eos/effects/shipbonuslargeenergyweapondamageab2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Abaddon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusAB2"), + skill="Amarr Battleship") diff --git a/eos/effects/shipbonusletoptimalrangepiratefaction.py b/eos/effects/shipbonusletoptimalrangepiratefaction.py index b0d80376b..d2f044b5f 100644 --- a/eos/effects/shipbonusletoptimalrangepiratefaction.py +++ b/eos/effects/shipbonusletoptimalrangepiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ship: Nestor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonuslightdronearmorhpgc2.py b/eos/effects/shipbonuslightdronearmorhpgc2.py index b3db8ca7f..244594dd1 100644 --- a/eos/effects/shipbonuslightdronearmorhpgc2.py +++ b/eos/effects/shipbonuslightdronearmorhpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "armorHP", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") \ No newline at end of file + "armorHP", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuslightdronearmorhppiratefaction.py b/eos/effects/shipbonuslightdronearmorhppiratefaction.py index 529475926..aaefc8119 100644 --- a/eos/effects/shipbonuslightdronearmorhppiratefaction.py +++ b/eos/effects/shipbonuslightdronearmorhppiratefaction.py @@ -4,6 +4,8 @@ # Ship: Whiptail # Ship: Worm type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), "armorHP", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonuslightdronedamagemultipliergc2.py b/eos/effects/shipbonuslightdronedamagemultipliergc2.py index f06eb81d3..c25e35e5d 100644 --- a/eos/effects/shipbonuslightdronedamagemultipliergc2.py +++ b/eos/effects/shipbonuslightdronedamagemultipliergc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuslightdronedamagemultiplierpiratefaction.py b/eos/effects/shipbonuslightdronedamagemultiplierpiratefaction.py index f6163a246..e5a9b340c 100644 --- a/eos/effects/shipbonuslightdronedamagemultiplierpiratefaction.py +++ b/eos/effects/shipbonuslightdronedamagemultiplierpiratefaction.py @@ -4,6 +4,8 @@ # Ship: Whiptail # Ship: Worm type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonuslightdronehpgc2.py b/eos/effects/shipbonuslightdronehpgc2.py index ec66ebcc8..886f429a5 100644 --- a/eos/effects/shipbonuslightdronehpgc2.py +++ b/eos/effects/shipbonuslightdronehpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), "hp", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuslightdronehppiratefaction.py b/eos/effects/shipbonuslightdronehppiratefaction.py index a4faf9bdd..af6b5dae4 100644 --- a/eos/effects/shipbonuslightdronehppiratefaction.py +++ b/eos/effects/shipbonuslightdronehppiratefaction.py @@ -4,6 +4,8 @@ # Ship: Whiptail # Ship: Worm type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), "hp", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonuslightdroneshieldhpgc2.py b/eos/effects/shipbonuslightdroneshieldhpgc2.py index b46703c5b..5cead50c6 100644 --- a/eos/effects/shipbonuslightdroneshieldhpgc2.py +++ b/eos/effects/shipbonuslightdroneshieldhpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuslightdroneshieldhppiratefaction.py b/eos/effects/shipbonuslightdroneshieldhppiratefaction.py index 8648a2767..8bbff53f2 100644 --- a/eos/effects/shipbonuslightdroneshieldhppiratefaction.py +++ b/eos/effects/shipbonuslightdroneshieldhppiratefaction.py @@ -4,6 +4,8 @@ # Ship: Whiptail # Ship: Worm type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonuslightmissilealldamagemc2.py b/eos/effects/shipbonuslightmissilealldamagemc2.py index 1f12783b5..c00eb3939 100644 --- a/eos/effects/shipbonuslightmissilealldamagemc2.py +++ b/eos/effects/shipbonuslightmissilealldamagemc2.py @@ -4,7 +4,10 @@ # Ship: Rapier # Ship: Scythe Fleet Issue type = "passive" + + def handler(fit, ship, context): for damageType in ("em", "explosive", "kinetic", "thermal"): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusmediumdronearmorhpgc2.py b/eos/effects/shipbonusmediumdronearmorhpgc2.py index 609e5dfbd..d3237a25b 100644 --- a/eos/effects/shipbonusmediumdronearmorhpgc2.py +++ b/eos/effects/shipbonusmediumdronearmorhpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), "armorHP", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusmediumdronearmorhppiratefaction.py b/eos/effects/shipbonusmediumdronearmorhppiratefaction.py index b0afc2751..e48c99319 100644 --- a/eos/effects/shipbonusmediumdronearmorhppiratefaction.py +++ b/eos/effects/shipbonusmediumdronearmorhppiratefaction.py @@ -4,6 +4,8 @@ # Ship: Chameleon # Ship: Gila type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), "armorHP", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusmediumdronedamagemultipliergc2.py b/eos/effects/shipbonusmediumdronedamagemultipliergc2.py index 871ec5da9..df28d53e0 100644 --- a/eos/effects/shipbonusmediumdronedamagemultipliergc2.py +++ b/eos/effects/shipbonusmediumdronedamagemultipliergc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusmediumdronedamagemultiplierpiratefaction.py b/eos/effects/shipbonusmediumdronedamagemultiplierpiratefaction.py index 45a647b40..6adbcb51b 100644 --- a/eos/effects/shipbonusmediumdronedamagemultiplierpiratefaction.py +++ b/eos/effects/shipbonusmediumdronedamagemultiplierpiratefaction.py @@ -4,6 +4,8 @@ # Ship: Chameleon # Ship: Gila type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusmediumdronehpgc2.py b/eos/effects/shipbonusmediumdronehpgc2.py index 376f835a3..719b2b507 100644 --- a/eos/effects/shipbonusmediumdronehpgc2.py +++ b/eos/effects/shipbonusmediumdronehpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), "hp", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusmediumdronehppiratefaction.py b/eos/effects/shipbonusmediumdronehppiratefaction.py index 4c57126a5..287bd32ad 100644 --- a/eos/effects/shipbonusmediumdronehppiratefaction.py +++ b/eos/effects/shipbonusmediumdronehppiratefaction.py @@ -4,6 +4,8 @@ # Ship: Chameleon # Ship: Gila type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), "hp", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusmediumdroneshieldhpgc2.py b/eos/effects/shipbonusmediumdroneshieldhpgc2.py index a076da901..3e2e48409 100644 --- a/eos/effects/shipbonusmediumdroneshieldhpgc2.py +++ b/eos/effects/shipbonusmediumdroneshieldhpgc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusmediumdroneshieldhppiratefaction.py b/eos/effects/shipbonusmediumdroneshieldhppiratefaction.py index ea15603ab..eb68ee3fb 100644 --- a/eos/effects/shipbonusmediumdroneshieldhppiratefaction.py +++ b/eos/effects/shipbonusmediumdroneshieldhppiratefaction.py @@ -4,6 +4,8 @@ # Ship: Chameleon # Ship: Gila type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusmediumenergyturretdamagepiratefaction.py b/eos/effects/shipbonusmediumenergyturretdamagepiratefaction.py index a02db8730..428e548a0 100644 --- a/eos/effects/shipbonusmediumenergyturretdamagepiratefaction.py +++ b/eos/effects/shipbonusmediumenergyturretdamagepiratefaction.py @@ -6,6 +6,8 @@ # Ship: Gnosis # Ship: Phantasm type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusmediumenergyturrettrackingac2.py b/eos/effects/shipbonusmediumenergyturrettrackingac2.py index 1222bb406..d0c9a8e55 100644 --- a/eos/effects/shipbonusmediumenergyturrettrackingac2.py +++ b/eos/effects/shipbonusmediumenergyturrettrackingac2.py @@ -4,6 +4,8 @@ # Ship: Fiend # Ship: Phantasm type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusmediumhybriddmgcc2.py b/eos/effects/shipbonusmediumhybriddmgcc2.py index ac1b0a566..858d70ab9 100644 --- a/eos/effects/shipbonusmediumhybriddmgcc2.py +++ b/eos/effects/shipbonusmediumhybriddmgcc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Falcon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusmetoptimalac2.py b/eos/effects/shipbonusmetoptimalac2.py index 18a09ba84..50d9ce4a4 100644 --- a/eos/effects/shipbonusmetoptimalac2.py +++ b/eos/effects/shipbonusmetoptimalac2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Omen Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusmetoptimalrangepiratefaction.py b/eos/effects/shipbonusmetoptimalrangepiratefaction.py index 76d57deac..5380edc07 100644 --- a/eos/effects/shipbonusmetoptimalrangepiratefaction.py +++ b/eos/effects/shipbonusmetoptimalrangepiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Stratios (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusmf1torpedoexplosionvelocity.py b/eos/effects/shipbonusmf1torpedoexplosionvelocity.py index 4ae858dfa..db283c8bd 100644 --- a/eos/effects/shipbonusmf1torpedoexplosionvelocity.py +++ b/eos/effects/shipbonusmf1torpedoexplosionvelocity.py @@ -3,6 +3,8 @@ # Used by: # Ship: Hound type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") \ No newline at end of file + "aoeVelocity", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusmf1torpedoflighttime.py b/eos/effects/shipbonusmf1torpedoflighttime.py index 10b8500fe..97c790694 100644 --- a/eos/effects/shipbonusmf1torpedoflighttime.py +++ b/eos/effects/shipbonusmf1torpedoflighttime.py @@ -3,6 +3,8 @@ # Used by: # Ship: Hound type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosionDelay", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusmineralbaygi2.py b/eos/effects/shipbonusmineralbaygi2.py index 7ac219899..66a78e721 100644 --- a/eos/effects/shipbonusmineralbaygi2.py +++ b/eos/effects/shipbonusmineralbaygi2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Kryos type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("specialMineralHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), skill="Gallente Industrial") + fit.ship.boostItemAttr("specialMineralHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), + skill="Gallente Industrial") diff --git a/eos/effects/shipbonusminingdroneamountpercentrookie.py b/eos/effects/shipbonusminingdroneamountpercentrookie.py index 00484e8e5..ddffa24e9 100644 --- a/eos/effects/shipbonusminingdroneamountpercentrookie.py +++ b/eos/effects/shipbonusminingdroneamountpercentrookie.py @@ -5,6 +5,8 @@ # Ship: Taipan # Ship: Velator type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Mining Drone", diff --git a/eos/effects/shipbonusminingdurationore3.py b/eos/effects/shipbonusminingdurationore3.py index 5bc0565cd..4f6551231 100644 --- a/eos/effects/shipbonusminingdurationore3.py +++ b/eos/effects/shipbonusminingdurationore3.py @@ -4,6 +4,8 @@ # Ships from group: Exhumer (3 of 3) # Ships from group: Mining Barge (3 of 3) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), "duration", ship.getModifiedItemAttr("shipBonusORE3"), skill="Mining Barge") diff --git a/eos/effects/shipbonusminingiceharvestingrangeore2.py b/eos/effects/shipbonusminingiceharvestingrangeore2.py index 0f58c1536..d29154f31 100644 --- a/eos/effects/shipbonusminingiceharvestingrangeore2.py +++ b/eos/effects/shipbonusminingiceharvestingrangeore2.py @@ -3,6 +3,9 @@ # Used by: # Variations of ship: Covetor (2 of 2) type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining") or mod.item.requiresSkill("Ice Harvesting"), - "maxRange", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Mining") or mod.item.requiresSkill("Ice Harvesting"), + "maxRange", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") diff --git a/eos/effects/shipbonusmissileaoevelocitymb2.py b/eos/effects/shipbonusmissileaoevelocitymb2.py index ba5e38e0c..844746ae1 100644 --- a/eos/effects/shipbonusmissileaoevelocitymb2.py +++ b/eos/effects/shipbonusmissileaoevelocitymb2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusMB2"), skill="Minmatar Battleship") + "aoeVelocity", ship.getModifiedItemAttr("shipBonusMB2"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusmissileexplosiondelaypiratefaction2.py b/eos/effects/shipbonusmissileexplosiondelaypiratefaction2.py index afc032220..e1976dc49 100644 --- a/eos/effects/shipbonusmissileexplosiondelaypiratefaction2.py +++ b/eos/effects/shipbonusmissileexplosiondelaypiratefaction2.py @@ -5,6 +5,8 @@ # Ship: Garmur # Ship: Orthrus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "explosionDelay", ship.getModifiedItemAttr("shipBonusPirateFaction2")) diff --git a/eos/effects/shipbonusmissilekineticlatf2.py b/eos/effects/shipbonusmissilekineticlatf2.py index c3192529d..c07b02c44 100644 --- a/eos/effects/shipbonusmissilekineticlatf2.py +++ b/eos/effects/shipbonusmissilekineticlatf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Cambion type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipbonusmissilelauncherassaultrofatc1.py b/eos/effects/shipbonusmissilelauncherassaultrofatc1.py index 0df09a4ec..cc18bb8ed 100644 --- a/eos/effects/shipbonusmissilelauncherassaultrofatc1.py +++ b/eos/effects/shipbonusmissilelauncherassaultrofatc1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vangel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Light", "speed", ship.getModifiedItemAttr("shipBonusATC1")) diff --git a/eos/effects/shipbonusmissilelauncherheavyassaultrofatc1.py b/eos/effects/shipbonusmissilelauncherheavyassaultrofatc1.py index f5f851235..ae3dc443d 100644 --- a/eos/effects/shipbonusmissilelauncherheavyassaultrofatc1.py +++ b/eos/effects/shipbonusmissilelauncherheavyassaultrofatc1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vangel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", "speed", ship.getModifiedItemAttr("shipBonusATC1")) diff --git a/eos/effects/shipbonusmissilelauncherheavyrofatc1.py b/eos/effects/shipbonusmissilelauncherheavyrofatc1.py index 16764ceb5..bf2b11b02 100644 --- a/eos/effects/shipbonusmissilelauncherheavyrofatc1.py +++ b/eos/effects/shipbonusmissilelauncherheavyrofatc1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vangel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", "speed", ship.getModifiedItemAttr("shipBonusATC1")) diff --git a/eos/effects/shipbonusmissilevelocityad2.py b/eos/effects/shipbonusmissilevelocityad2.py index e498e2231..af169f934 100644 --- a/eos/effects/shipbonusmissilevelocityad2.py +++ b/eos/effects/shipbonusmissilevelocityad2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Heretic type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", ship.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusmissilevelocitycc2.py b/eos/effects/shipbonusmissilevelocitycc2.py index 1886163f5..991b62c44 100644 --- a/eos/effects/shipbonusmissilevelocitycc2.py +++ b/eos/effects/shipbonusmissilevelocitycc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Cerberus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusmwdsignatureradiusmd2.py b/eos/effects/shipbonusmwdsignatureradiusmd2.py index 5d3ba376e..2354f22a1 100644 --- a/eos/effects/shipbonusmwdsignatureradiusmd2.py +++ b/eos/effects/shipbonusmwdsignatureradiusmd2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Talwar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMD2"), skill="Minmatar Destroyer") + "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMD2"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusnoctissalvagecycle.py b/eos/effects/shipbonusnoctissalvagecycle.py index dd2780d33..5b405a371 100644 --- a/eos/effects/shipbonusnoctissalvagecycle.py +++ b/eos/effects/shipbonusnoctissalvagecycle.py @@ -3,6 +3,9 @@ # Used by: # Ship: Noctis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), - "duration", ship.getModifiedItemAttr("shipBonusOreIndustrial1"), skill="ORE Industrial") + "duration", ship.getModifiedItemAttr("shipBonusOreIndustrial1"), + skill="ORE Industrial") diff --git a/eos/effects/shipbonusnoctistractorcycle.py b/eos/effects/shipbonusnoctistractorcycle.py index 8543ccf06..b9ea733b9 100644 --- a/eos/effects/shipbonusnoctistractorcycle.py +++ b/eos/effects/shipbonusnoctistractorcycle.py @@ -3,6 +3,9 @@ # Used by: # Ship: Noctis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "duration", ship.getModifiedItemAttr("shipBonusOreIndustrial1"), skill="ORE Industrial") + "duration", ship.getModifiedItemAttr("shipBonusOreIndustrial1"), + skill="ORE Industrial") diff --git a/eos/effects/shipbonusnoctistractorrange.py b/eos/effects/shipbonusnoctistractorrange.py index 58a8799e0..ab2254345 100644 --- a/eos/effects/shipbonusnoctistractorrange.py +++ b/eos/effects/shipbonusnoctistractorrange.py @@ -3,6 +3,9 @@ # Used by: # Ship: Noctis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxRange", ship.getModifiedItemAttr("shipBonusOreIndustrial2"), skill="ORE Industrial") + "maxRange", ship.getModifiedItemAttr("shipBonusOreIndustrial2"), + skill="ORE Industrial") diff --git a/eos/effects/shipbonusnoctistractorvelocity.py b/eos/effects/shipbonusnoctistractorvelocity.py index bf7030612..28c2f237a 100644 --- a/eos/effects/shipbonusnoctistractorvelocity.py +++ b/eos/effects/shipbonusnoctistractorvelocity.py @@ -3,6 +3,9 @@ # Used by: # Ship: Noctis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxTractorVelocity", ship.getModifiedItemAttr("shipBonusOreIndustrial2"), skill="ORE Industrial") + "maxTractorVelocity", ship.getModifiedItemAttr("shipBonusOreIndustrial2"), + skill="ORE Industrial") diff --git a/eos/effects/shipbonusorecapacitygi2.py b/eos/effects/shipbonusorecapacitygi2.py index b73c40589..5c6af2abb 100644 --- a/eos/effects/shipbonusorecapacitygi2.py +++ b/eos/effects/shipbonusorecapacitygi2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Miasmos type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("specialOreHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), skill="Gallente Industrial") + fit.ship.boostItemAttr("specialOreHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), + skill="Gallente Industrial") diff --git a/eos/effects/shipbonusorecapshipdronearmorhpandshieldhpandhpbonus.py b/eos/effects/shipbonusorecapshipdronearmorhpandshieldhpandhpbonus.py index c97e7f30f..3027e47a2 100644 --- a/eos/effects/shipbonusorecapshipdronearmorhpandshieldhpandhpbonus.py +++ b/eos/effects/shipbonusorecapshipdronearmorhpandshieldhpandhpbonus.py @@ -3,7 +3,10 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): for type in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - type, ship.getModifiedItemAttr("shipBonusORECapital4"), skill="Capital Industrial Ships") + type, ship.getModifiedItemAttr("shipBonusORECapital4"), + skill="Capital Industrial Ships") diff --git a/eos/effects/shipbonusorecapshipdronedmgbonus.py b/eos/effects/shipbonusorecapshipdronedmgbonus.py index 5dce4fd88..cb56c2326 100644 --- a/eos/effects/shipbonusorecapshipdronedmgbonus.py +++ b/eos/effects/shipbonusorecapshipdronedmgbonus.py @@ -3,6 +3,9 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusORECapital4"), skill="Capital Industrial Ships") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusORECapital4"), + skill="Capital Industrial Ships") diff --git a/eos/effects/shipbonusoreholdore2.py b/eos/effects/shipbonusoreholdore2.py index 1117ca5c3..fccf39e52 100644 --- a/eos/effects/shipbonusoreholdore2.py +++ b/eos/effects/shipbonusoreholdore2.py @@ -3,5 +3,7 @@ # Used by: # Variations of ship: Retriever (2 of 2) type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("specialOreHoldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") \ No newline at end of file + fit.ship.boostItemAttr("specialOreHoldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") diff --git a/eos/effects/shipbonuspicommoditiesholdgi2.py b/eos/effects/shipbonuspicommoditiesholdgi2.py index 2b5271576..dfac42672 100644 --- a/eos/effects/shipbonuspicommoditiesholdgi2.py +++ b/eos/effects/shipbonuspicommoditiesholdgi2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Epithal type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("specialPlanetaryCommoditiesHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), skill="Gallente Industrial") + fit.ship.boostItemAttr("specialPlanetaryCommoditiesHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), + skill="Gallente Industrial") diff --git a/eos/effects/shipbonuspiratefrigateprojdamage.py b/eos/effects/shipbonuspiratefrigateprojdamage.py index e569a3705..df25253f0 100644 --- a/eos/effects/shipbonuspiratefrigateprojdamage.py +++ b/eos/effects/shipbonuspiratefrigateprojdamage.py @@ -5,6 +5,8 @@ # Ship: Dramiel # Ship: Svipul type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonuspiratesmallhybriddmg.py b/eos/effects/shipbonuspiratesmallhybriddmg.py index 986b5d59b..40d3e9a00 100644 --- a/eos/effects/shipbonuspiratesmallhybriddmg.py +++ b/eos/effects/shipbonuspiratesmallhybriddmg.py @@ -4,6 +4,8 @@ # Ship: Daredevil # Ship: Hecate type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusprojectiledamagembc1.py b/eos/effects/shipbonusprojectiledamagembc1.py index 0d693b236..d1d2bb14d 100644 --- a/eos/effects/shipbonusprojectiledamagembc1.py +++ b/eos/effects/shipbonusprojectiledamagembc1.py @@ -3,6 +3,9 @@ # Used by: # Ships named like: Hurricane (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMBC1"), skill="Minmatar Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusMBC1"), + skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusprojectiledamagembc2.py b/eos/effects/shipbonusprojectiledamagembc2.py index 8128831f1..ef47a0f27 100644 --- a/eos/effects/shipbonusprojectiledamagembc2.py +++ b/eos/effects/shipbonusprojectiledamagembc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Sleipnir type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusMBC2"), + skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusprojectiletrackingmbc2.py b/eos/effects/shipbonusprojectiletrackingmbc2.py index 8add40a2b..e8cd08be7 100644 --- a/eos/effects/shipbonusprojectiletrackingmbc2.py +++ b/eos/effects/shipbonusprojectiletrackingmbc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hurricane Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") + "trackingSpeed", ship.getModifiedItemAttr("shipBonusMBC2"), + skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusprojectiletrackingmc2.py b/eos/effects/shipbonusprojectiletrackingmc2.py index 579fb1864..9d45c3e24 100644 --- a/eos/effects/shipbonusprojectiletrackingmc2.py +++ b/eos/effects/shipbonusprojectiletrackingmc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Stabber Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusptfalloffmb1.py b/eos/effects/shipbonusptfalloffmb1.py index b72a45b93..b88ecd60b 100644 --- a/eos/effects/shipbonusptfalloffmb1.py +++ b/eos/effects/shipbonusptfalloffmb1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vargur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "falloff", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusremotearmorrepairamount2af.py b/eos/effects/shipbonusremotearmorrepairamount2af.py index c672f9496..68da161e5 100644 --- a/eos/effects/shipbonusremotearmorrepairamount2af.py +++ b/eos/effects/shipbonusremotearmorrepairamount2af.py @@ -4,5 +4,8 @@ # Ship: Deacon # Ship: Inquisitor type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "armorDamageAmount", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), + "armorDamageAmount", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusremotearmorrepairamountac2.py b/eos/effects/shipbonusremotearmorrepairamountac2.py index 2b56129bf..b671bc196 100644 --- a/eos/effects/shipbonusremotearmorrepairamountac2.py +++ b/eos/effects/shipbonusremotearmorrepairamountac2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Augoror type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "armorDamageAmount", src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), + "armorDamageAmount", src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusremotearmorrepairamountgc2.py b/eos/effects/shipbonusremotearmorrepairamountgc2.py index 7612f0191..ec701a318 100644 --- a/eos/effects/shipbonusremotearmorrepairamountgc2.py +++ b/eos/effects/shipbonusremotearmorrepairamountgc2.py @@ -3,5 +3,9 @@ # Used by: # Ship: Exequror type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "armorDamageAmount", src.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), + "armorDamageAmount", src.getModifiedItemAttr("shipBonusGC2"), + skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusremotearmorrepairamountgf2.py b/eos/effects/shipbonusremotearmorrepairamountgf2.py index 40475557a..d1cba9063 100644 --- a/eos/effects/shipbonusremotearmorrepairamountgf2.py +++ b/eos/effects/shipbonusremotearmorrepairamountgf2.py @@ -3,5 +3,9 @@ # Used by: # Variations of ship: Navitas (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "armorDamageAmount", src.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), + "armorDamageAmount", src.getModifiedItemAttr("shipBonusGF2"), + skill="Gallente Frigate") diff --git a/eos/effects/shipbonusremotearmorrepaircapneedac1.py b/eos/effects/shipbonusremotearmorrepaircapneedac1.py index d9257a835..d8d32bf66 100644 --- a/eos/effects/shipbonusremotearmorrepaircapneedac1.py +++ b/eos/effects/shipbonusremotearmorrepaircapneedac1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Augoror type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", + src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusremotearmorrepaircapneedaf.py b/eos/effects/shipbonusremotearmorrepaircapneedaf.py index 56daea7ba..41c5b3e47 100644 --- a/eos/effects/shipbonusremotearmorrepaircapneedaf.py +++ b/eos/effects/shipbonusremotearmorrepaircapneedaf.py @@ -4,5 +4,8 @@ # Ship: Deacon # Ship: Inquisitor type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", src.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", + src.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusremotearmorrepaircapneedgc1.py b/eos/effects/shipbonusremotearmorrepaircapneedgc1.py index 79788def7..3c04cdc3a 100644 --- a/eos/effects/shipbonusremotearmorrepaircapneedgc1.py +++ b/eos/effects/shipbonusremotearmorrepaircapneedgc1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Exequror type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", + src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusremotearmorrepaircapneedgf.py b/eos/effects/shipbonusremotearmorrepaircapneedgf.py index 6f2c5fd7a..b4bc7bbff 100644 --- a/eos/effects/shipbonusremotearmorrepaircapneedgf.py +++ b/eos/effects/shipbonusremotearmorrepaircapneedgf.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Navitas (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", src.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", + src.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusremoterepairamountpiratefaction.py b/eos/effects/shipbonusremoterepairamountpiratefaction.py index 5219c2cad..f8152a605 100644 --- a/eos/effects/shipbonusremoterepairamountpiratefaction.py +++ b/eos/effects/shipbonusremoterepairamountpiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ship: Nestor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "armorDamageAmount", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonusremoterepairrangepiratefaction2.py b/eos/effects/shipbonusremoterepairrangepiratefaction2.py index bdaf8a687..551227691 100644 --- a/eos/effects/shipbonusremoterepairrangepiratefaction2.py +++ b/eos/effects/shipbonusremoterepairrangepiratefaction2.py @@ -3,8 +3,10 @@ # Used by: # Ship: Nestor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange", ship.getModifiedItemAttr("shipBonusPirateFaction2")) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusPirateFaction2")) \ No newline at end of file + "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusPirateFaction2")) diff --git a/eos/effects/shipbonusremotetrackingcomputerfalloffgc2.py b/eos/effects/shipbonusremotetrackingcomputerfalloffgc2.py index 621e5f2e9..0c65a20f2 100644 --- a/eos/effects/shipbonusremotetrackingcomputerfalloffgc2.py +++ b/eos/effects/shipbonusremotetrackingcomputerfalloffgc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") + "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusGC2"), + skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusremotetrackingcomputerfalloffmc.py b/eos/effects/shipbonusremotetrackingcomputerfalloffmc.py index ffc402d88..c760a4b28 100644 --- a/eos/effects/shipbonusremotetrackingcomputerfalloffmc.py +++ b/eos/effects/shipbonusremotetrackingcomputerfalloffmc.py @@ -3,6 +3,9 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") + "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusMC"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusrepairsystemsarmorrepairamountgb2.py b/eos/effects/shipbonusrepairsystemsarmorrepairamountgb2.py index ae83eaa6e..09b2fc18d 100644 --- a/eos/effects/shipbonusrepairsystemsarmorrepairamountgb2.py +++ b/eos/effects/shipbonusrepairsystemsarmorrepairamountgb2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hyperion type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGB2"), skill="Gallente Battleship") + "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGB2"), + skill="Gallente Battleship") diff --git a/eos/effects/shipbonusrepairsystemsbonusatc2.py b/eos/effects/shipbonusrepairsystemsbonusatc2.py index 3859785cf..b2f7bd1aa 100644 --- a/eos/effects/shipbonusrepairsystemsbonusatc2.py +++ b/eos/effects/shipbonusrepairsystemsbonusatc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vangel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "armorDamageAmount", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipbonusrhmlrof2cb.py b/eos/effects/shipbonusrhmlrof2cb.py index 172c479f9..f6c61b3b4 100644 --- a/eos/effects/shipbonusrhmlrof2cb.py +++ b/eos/effects/shipbonusrhmlrof2cb.py @@ -4,6 +4,8 @@ # Ship: Raven # Ship: Widow type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Heavy", "speed", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusrhmlrofcb.py b/eos/effects/shipbonusrhmlrofcb.py index 728a0710d..a145864d6 100644 --- a/eos/effects/shipbonusrhmlrofcb.py +++ b/eos/effects/shipbonusrhmlrofcb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scorpion Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Heavy", "speed", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusrhmlrofmb.py b/eos/effects/shipbonusrhmlrofmb.py index 575e39727..1f972e2ea 100644 --- a/eos/effects/shipbonusrhmlrofmb.py +++ b/eos/effects/shipbonusrhmlrofmb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Typhoon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Heavy", "speed", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonussalvagecycleaf.py b/eos/effects/shipbonussalvagecycleaf.py index 9b4f3b372..c5cdf079c 100644 --- a/eos/effects/shipbonussalvagecycleaf.py +++ b/eos/effects/shipbonussalvagecycleaf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Magnate type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), "duration", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonussalvagecyclecf.py b/eos/effects/shipbonussalvagecyclecf.py index bdf4d4b9d..88802e78e 100644 --- a/eos/effects/shipbonussalvagecyclecf.py +++ b/eos/effects/shipbonussalvagecyclecf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Heron type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), "duration", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonussalvagecyclegf.py b/eos/effects/shipbonussalvagecyclegf.py index 095ea42b8..60dd7e948 100644 --- a/eos/effects/shipbonussalvagecyclegf.py +++ b/eos/effects/shipbonussalvagecyclegf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Imicus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), "duration", ship.getModifiedItemAttr("shipBonusGF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonussalvagecyclemf.py b/eos/effects/shipbonussalvagecyclemf.py index f4544c74b..738c4e6eb 100644 --- a/eos/effects/shipbonussalvagecyclemf.py +++ b/eos/effects/shipbonussalvagecyclemf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Probe type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), "duration", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusscanprobestrength2af.py b/eos/effects/shipbonusscanprobestrength2af.py index f1e0c05d9..e3df5259c 100644 --- a/eos/effects/shipbonusscanprobestrength2af.py +++ b/eos/effects/shipbonusscanprobestrength2af.py @@ -3,6 +3,9 @@ # Used by: # Ship: Magnate type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + "baseSensorStrength", ship.getModifiedItemAttr("shipBonus2AF"), + skill="Amarr Frigate") diff --git a/eos/effects/shipbonusscanprobestrengthcf.py b/eos/effects/shipbonusscanprobestrengthcf.py index 06d8c2a59..0e61528b2 100644 --- a/eos/effects/shipbonusscanprobestrengthcf.py +++ b/eos/effects/shipbonusscanprobestrengthcf.py @@ -3,6 +3,9 @@ # Used by: # Ship: Heron type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") \ No newline at end of file + "baseSensorStrength", ship.getModifiedItemAttr("shipBonusCF2"), + skill="Caldari Frigate") diff --git a/eos/effects/shipbonusscanprobestrengthgf.py b/eos/effects/shipbonusscanprobestrengthgf.py index 0d419793b..aed2e3d3a 100644 --- a/eos/effects/shipbonusscanprobestrengthgf.py +++ b/eos/effects/shipbonusscanprobestrengthgf.py @@ -3,6 +3,9 @@ # Used by: # Ship: Imicus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") + "baseSensorStrength", ship.getModifiedItemAttr("shipBonusGF2"), + skill="Gallente Frigate") diff --git a/eos/effects/shipbonusscanprobestrengthmf.py b/eos/effects/shipbonusscanprobestrengthmf.py index 27375af1b..8caaf2411 100644 --- a/eos/effects/shipbonusscanprobestrengthmf.py +++ b/eos/effects/shipbonusscanprobestrengthmf.py @@ -3,6 +3,9 @@ # Used by: # Ship: Probe type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") + "baseSensorStrength", ship.getModifiedItemAttr("shipBonusMF2"), + skill="Minmatar Frigate") diff --git a/eos/effects/shipbonussentryarmorhpgc3.py b/eos/effects/shipbonussentryarmorhpgc3.py index ebf024b2a..e5795c26f 100644 --- a/eos/effects/shipbonussentryarmorhpgc3.py +++ b/eos/effects/shipbonussentryarmorhpgc3.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "armorHP", ship.getModifiedItemAttr("shipBonusGC3"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonussentrydamagemultipliergc3.py b/eos/effects/shipbonussentrydamagemultipliergc3.py index 40e9489d4..fde740a9a 100644 --- a/eos/effects/shipbonussentrydamagemultipliergc3.py +++ b/eos/effects/shipbonussentrydamagemultipliergc3.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC3"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonussentrydronearmorhppiratefaction.py b/eos/effects/shipbonussentrydronearmorhppiratefaction.py index 9e657cc30..b2cf85c49 100644 --- a/eos/effects/shipbonussentrydronearmorhppiratefaction.py +++ b/eos/effects/shipbonussentrydronearmorhppiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "armorHP", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonussentrydronedamagemultiplierpiratefaction.py b/eos/effects/shipbonussentrydronedamagemultiplierpiratefaction.py index ed68433d5..27da3b576 100644 --- a/eos/effects/shipbonussentrydronedamagemultiplierpiratefaction.py +++ b/eos/effects/shipbonussentrydronedamagemultiplierpiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonussentrydronehppiratefaction.py b/eos/effects/shipbonussentrydronehppiratefaction.py index d7933f658..0399ccfc8 100644 --- a/eos/effects/shipbonussentrydronehppiratefaction.py +++ b/eos/effects/shipbonussentrydronehppiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "hp", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonussentrydroneoptimalrangeelitebonusheavygunship2.py b/eos/effects/shipbonussentrydroneoptimalrangeelitebonusheavygunship2.py index 6c5f64edc..7704bffed 100644 --- a/eos/effects/shipbonussentrydroneoptimalrangeelitebonusheavygunship2.py +++ b/eos/effects/shipbonussentrydroneoptimalrangeelitebonusheavygunship2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/shipbonussentrydroneshieldhppiratefaction.py b/eos/effects/shipbonussentrydroneshieldhppiratefaction.py index 92e980074..d69820fca 100644 --- a/eos/effects/shipbonussentrydroneshieldhppiratefaction.py +++ b/eos/effects/shipbonussentrydroneshieldhppiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonussentrydronetrackingelitebonusheavygunship2.py b/eos/effects/shipbonussentrydronetrackingelitebonusheavygunship2.py index 5e3cad258..aab03ea9e 100644 --- a/eos/effects/shipbonussentrydronetrackingelitebonusheavygunship2.py +++ b/eos/effects/shipbonussentrydronetrackingelitebonusheavygunship2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), skill="Heavy Assault Cruisers") + "trackingSpeed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), + skill="Heavy Assault Cruisers") diff --git a/eos/effects/shipbonussentryhpgc3.py b/eos/effects/shipbonussentryhpgc3.py index 4ab87a24e..b2545b29f 100644 --- a/eos/effects/shipbonussentryhpgc3.py +++ b/eos/effects/shipbonussentryhpgc3.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "hp", ship.getModifiedItemAttr("shipBonusGC3"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonussentryshieldhpgc3.py b/eos/effects/shipbonussentryshieldhpgc3.py index 6f968c1e3..6161d241f 100644 --- a/eos/effects/shipbonussentryshieldhpgc3.py +++ b/eos/effects/shipbonussentryshieldhpgc3.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ishtar type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), "shieldCapacity", ship.getModifiedItemAttr("shipBonusGC3"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusshieldboostamountmc2.py b/eos/effects/shipbonusshieldboostamountmc2.py index 97d7eb3ed..8acf3337a 100644 --- a/eos/effects/shipbonusshieldboostamountmc2.py +++ b/eos/effects/shipbonusshieldboostamountmc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vagabond type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusshieldboostci2.py b/eos/effects/shipbonusshieldboostci2.py index b4c601146..594102379 100644 --- a/eos/effects/shipbonusshieldboostci2.py +++ b/eos/effects/shipbonusshieldboostci2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Bustard type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", ship.getModifiedItemAttr("shipBonusCI2"), skill="Caldari Industrial") diff --git a/eos/effects/shipbonusshieldboostermb1a.py b/eos/effects/shipbonusshieldboostermb1a.py index 10c8f3c72..be92006c9 100644 --- a/eos/effects/shipbonusshieldboostermb1a.py +++ b/eos/effects/shipbonusshieldboostermb1a.py @@ -3,6 +3,8 @@ # Used by: # Ship: Maelstrom type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusshieldboostmi2.py b/eos/effects/shipbonusshieldboostmi2.py index 34325c73a..628c261ab 100644 --- a/eos/effects/shipbonusshieldboostmi2.py +++ b/eos/effects/shipbonusshieldboostmi2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Mastodon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", ship.getModifiedItemAttr("shipBonusMI2"), skill="Minmatar Industrial") diff --git a/eos/effects/shipbonusshieldcapacityore2.py b/eos/effects/shipbonusshieldcapacityore2.py index e4037f542..901026323 100644 --- a/eos/effects/shipbonusshieldcapacityore2.py +++ b/eos/effects/shipbonusshieldcapacityore2.py @@ -3,5 +3,7 @@ # Used by: # Variations of ship: Procurer (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("shieldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") diff --git a/eos/effects/shipbonusshieldemresistancecd2.py b/eos/effects/shipbonusshieldemresistancecd2.py index bbae40146..059c76dfd 100644 --- a/eos/effects/shipbonusshieldemresistancecd2.py +++ b/eos/effects/shipbonusshieldemresistancecd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") + fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), + skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusshieldexplosiveresistancecd2.py b/eos/effects/shipbonusshieldexplosiveresistancecd2.py index 04f590b5b..70944c9f2 100644 --- a/eos/effects/shipbonusshieldexplosiveresistancecd2.py +++ b/eos/effects/shipbonusshieldexplosiveresistancecd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), + skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusshieldkineticresistancecd2.py b/eos/effects/shipbonusshieldkineticresistancecd2.py index d48537e8d..11f8a77d8 100644 --- a/eos/effects/shipbonusshieldkineticresistancecd2.py +++ b/eos/effects/shipbonusshieldkineticresistancecd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") + fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), + skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusshieldthermalresistancecd2.py b/eos/effects/shipbonusshieldthermalresistancecd2.py index 2554e9bce..b4c5042f5 100644 --- a/eos/effects/shipbonusshieldthermalresistancecd2.py +++ b/eos/effects/shipbonusshieldthermalresistancecd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") + fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), + skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusshieldtransferboostamountcc2.py b/eos/effects/shipbonusshieldtransferboostamountcc2.py index 6d26b7cf2..734821576 100644 --- a/eos/effects/shipbonusshieldtransferboostamountcc2.py +++ b/eos/effects/shipbonusshieldtransferboostamountcc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Osprey type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "shieldBonus", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusshieldtransferboostamountcf2.py b/eos/effects/shipbonusshieldtransferboostamountcf2.py index 601c4ca7f..164975e92 100644 --- a/eos/effects/shipbonusshieldtransferboostamountcf2.py +++ b/eos/effects/shipbonusshieldtransferboostamountcf2.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Bantam (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "shieldBonus", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonusshieldtransferboostamountmc2.py b/eos/effects/shipbonusshieldtransferboostamountmc2.py index e427eaead..901826281 100644 --- a/eos/effects/shipbonusshieldtransferboostamountmc2.py +++ b/eos/effects/shipbonusshieldtransferboostamountmc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scythe type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "shieldBonus", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusshieldtransferboostamountmf2.py b/eos/effects/shipbonusshieldtransferboostamountmf2.py index 9cca8c9e0..a1c552524 100644 --- a/eos/effects/shipbonusshieldtransferboostamountmf2.py +++ b/eos/effects/shipbonusshieldtransferboostamountmf2.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Burst (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "shieldBonus", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusshieldtransfercapneed1.py b/eos/effects/shipbonusshieldtransfercapneed1.py index 1414679f2..6a7ab5f90 100644 --- a/eos/effects/shipbonusshieldtransfercapneed1.py +++ b/eos/effects/shipbonusshieldtransfercapneed1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Osprey type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", + src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusshieldtransfercapneedcf.py b/eos/effects/shipbonusshieldtransfercapneedcf.py index 6f216c594..61732a557 100644 --- a/eos/effects/shipbonusshieldtransfercapneedcf.py +++ b/eos/effects/shipbonusshieldtransfercapneedcf.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Bantam (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonusshieldtransfercapneedmc1.py b/eos/effects/shipbonusshieldtransfercapneedmc1.py index ffab0d6a6..89d41277d 100644 --- a/eos/effects/shipbonusshieldtransfercapneedmc1.py +++ b/eos/effects/shipbonusshieldtransfercapneedmc1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scythe type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusshieldtransfercapneedmf.py b/eos/effects/shipbonusshieldtransfercapneedmf.py index 9ea17daa4..3f164c524 100644 --- a/eos/effects/shipbonusshieldtransfercapneedmf.py +++ b/eos/effects/shipbonusshieldtransfercapneedmf.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Burst (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonussmallenergyturretdamageatf1.py b/eos/effects/shipbonussmallenergyturretdamageatf1.py index dd17ac90b..483f39915 100644 --- a/eos/effects/shipbonussmallenergyturretdamageatf1.py +++ b/eos/effects/shipbonussmallenergyturretdamageatf1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Malice type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusATF1")) diff --git a/eos/effects/shipbonussmallenergyturretdamagepiratefaction.py b/eos/effects/shipbonussmallenergyturretdamagepiratefaction.py index 33e63d389..40abb0284 100644 --- a/eos/effects/shipbonussmallenergyturretdamagepiratefaction.py +++ b/eos/effects/shipbonussmallenergyturretdamagepiratefaction.py @@ -6,6 +6,8 @@ # Ship: Imp # Ship: Succubus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipbonussmallenergyturrettracking2af.py b/eos/effects/shipbonussmallenergyturrettracking2af.py index dc808a81d..76232e8f4 100644 --- a/eos/effects/shipbonussmallenergyturrettracking2af.py +++ b/eos/effects/shipbonussmallenergyturrettracking2af.py @@ -4,6 +4,8 @@ # Ship: Imp # Ship: Succubus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonussmallenergyweaponoptimalrangeatf2.py b/eos/effects/shipbonussmallenergyweaponoptimalrangeatf2.py index 948481a4a..85f5ba924 100644 --- a/eos/effects/shipbonussmallenergyweaponoptimalrangeatf2.py +++ b/eos/effects/shipbonussmallenergyweaponoptimalrangeatf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Malice type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipbonussmallhybridmaxrangeatf2.py b/eos/effects/shipbonussmallhybridmaxrangeatf2.py index 908431c5f..e1312bf05 100644 --- a/eos/effects/shipbonussmallhybridmaxrangeatf2.py +++ b/eos/effects/shipbonussmallhybridmaxrangeatf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Utu type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipbonussmallhybridtrackingspeedatf2.py b/eos/effects/shipbonussmallhybridtrackingspeedatf2.py index a6bc89699..5d0131952 100644 --- a/eos/effects/shipbonussmallhybridtrackingspeedatf2.py +++ b/eos/effects/shipbonussmallhybridtrackingspeedatf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Utu type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipbonussmallmissileexplosionradiuscd2.py b/eos/effects/shipbonussmallmissileexplosionradiuscd2.py index df0731eaf..b471d2d1d 100644 --- a/eos/effects/shipbonussmallmissileexplosionradiuscd2.py +++ b/eos/effects/shipbonussmallmissileexplosionradiuscd2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Flycatcher type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), + "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonussmallmissileexplosionradiuscf2.py b/eos/effects/shipbonussmallmissileexplosionradiuscf2.py index f6fb52ef2..6a10c458c 100644 --- a/eos/effects/shipbonussmallmissileexplosionradiuscf2.py +++ b/eos/effects/shipbonussmallmissileexplosionradiuscf2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Crow type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), + "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonussptfalloffmf2.py b/eos/effects/shipbonussptfalloffmf2.py index 2d65eb1f6..9ec05f2c4 100644 --- a/eos/effects/shipbonussptfalloffmf2.py +++ b/eos/effects/shipbonussptfalloffmf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Rifter type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "falloff", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusstasismf2.py b/eos/effects/shipbonusstasismf2.py index 4b364d15c..658922899 100644 --- a/eos/effects/shipbonusstasismf2.py +++ b/eos/effects/shipbonusstasismf2.py @@ -4,6 +4,8 @@ # Ship: Cruor # Ship: Freki type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusstasiswebspeedfactormb.py b/eos/effects/shipbonusstasiswebspeedfactormb.py index 9d4a0aa86..b0d4a1f79 100644 --- a/eos/effects/shipbonusstasiswebspeedfactormb.py +++ b/eos/effects/shipbonusstasiswebspeedfactormb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vindicator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusstrategiccruiseramarrheatdamage.py b/eos/effects/shipbonusstrategiccruiseramarrheatdamage.py index 084d27cd7..c693def96 100644 --- a/eos/effects/shipbonusstrategiccruiseramarrheatdamage.py +++ b/eos/effects/shipbonusstrategiccruiseramarrheatdamage.py @@ -3,6 +3,9 @@ # Used by: # Ship: Legion type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusStrategicCruiserAmarr"), skill="Amarr Strategic Cruiser") + ship.getModifiedItemAttr("shipBonusStrategicCruiserAmarr"), + skill="Amarr Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruisercaldariheatdamage.py b/eos/effects/shipbonusstrategiccruisercaldariheatdamage.py index 30e53b90b..23e346ffe 100644 --- a/eos/effects/shipbonusstrategiccruisercaldariheatdamage.py +++ b/eos/effects/shipbonusstrategiccruisercaldariheatdamage.py @@ -3,6 +3,9 @@ # Used by: # Ship: Tengu type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusStrategicCruiserCaldari"), skill="Caldari Strategic Cruiser") + ship.getModifiedItemAttr("shipBonusStrategicCruiserCaldari"), + skill="Caldari Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruisergallenteheatdamage.py b/eos/effects/shipbonusstrategiccruisergallenteheatdamage.py index 71ad1a2e6..8e0be35d8 100644 --- a/eos/effects/shipbonusstrategiccruisergallenteheatdamage.py +++ b/eos/effects/shipbonusstrategiccruisergallenteheatdamage.py @@ -3,6 +3,9 @@ # Used by: # Ship: Proteus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusStrategicCruiserGallente"), skill="Gallente Strategic Cruiser") + ship.getModifiedItemAttr("shipBonusStrategicCruiserGallente"), + skill="Gallente Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruiserminmatarheatdamage.py b/eos/effects/shipbonusstrategiccruiserminmatarheatdamage.py index a53f4c61d..800b5aa2a 100644 --- a/eos/effects/shipbonusstrategiccruiserminmatarheatdamage.py +++ b/eos/effects/shipbonusstrategiccruiserminmatarheatdamage.py @@ -3,6 +3,9 @@ # Used by: # Ship: Loki type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusStrategicCruiserMinmatar"), skill="Minmatar Strategic Cruiser") + ship.getModifiedItemAttr("shipBonusStrategicCruiserMinmatar"), + skill="Minmatar Strategic Cruiser") diff --git a/eos/effects/shipbonussupercarriera1fighterdamage.py b/eos/effects/shipbonussupercarriera1fighterdamage.py index a093c63aa..1c1900cba 100644 --- a/eos/effects/shipbonussupercarriera1fighterdamage.py +++ b/eos/effects/shipbonussupercarriera1fighterdamage.py @@ -4,7 +4,15 @@ # Ship: Aeon # Ship: Revenant type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera2armorresists.py b/eos/effects/shipbonussupercarriera2armorresists.py index 3fb12647b..4eafbff18 100644 --- a/eos/effects/shipbonussupercarriera2armorresists.py +++ b/eos/effects/shipbonussupercarriera2armorresists.py @@ -3,8 +3,14 @@ # Used by: # Ship: Aeon type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") + fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), + skill="Amarr Carrier") + fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), + skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera2fighterapplicationbonus.py b/eos/effects/shipbonussupercarriera2fighterapplicationbonus.py index c8567faf7..ef805c824 100644 --- a/eos/effects/shipbonussupercarriera2fighterapplicationbonus.py +++ b/eos/effects/shipbonussupercarriera2fighterapplicationbonus.py @@ -3,6 +3,12 @@ # Used by: # Ship: Revenant type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesExplosionVelocity", src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileExplosionVelocity", src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesExplosionVelocity", + src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileExplosionVelocity", + src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera3warpstrength.py b/eos/effects/shipbonussupercarriera3warpstrength.py index 13c8b0160..caee35c38 100644 --- a/eos/effects/shipbonussupercarriera3warpstrength.py +++ b/eos/effects/shipbonussupercarriera3warpstrength.py @@ -4,5 +4,8 @@ # Ship: Aeon # Ship: Revenant type = "passive" + + def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierA3"), skill="Amarr Carrier") + fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierA3"), + skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera4burstprojectorbonus.py b/eos/effects/shipbonussupercarriera4burstprojectorbonus.py index e4ad92cdc..49c41fdd6 100644 --- a/eos/effects/shipbonussupercarriera4burstprojectorbonus.py +++ b/eos/effects/shipbonussupercarriera4burstprojectorbonus.py @@ -3,5 +3,9 @@ # Used by: # Ship: Aeon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), "durationWeaponDisruptionBurstProjector", src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), + "durationWeaponDisruptionBurstProjector", + src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera4fighterapplicationbonus.py b/eos/effects/shipbonussupercarriera4fighterapplicationbonus.py index 4a28f6b5f..b24c555c9 100644 --- a/eos/effects/shipbonussupercarriera4fighterapplicationbonus.py +++ b/eos/effects/shipbonussupercarriera4fighterapplicationbonus.py @@ -3,6 +3,12 @@ # Used by: # Ship: Revenant type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesExplosionRadius", src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileExplosionRadius", src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesExplosionRadius", + src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileExplosionRadius", + src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera5warfarelinksbonus.py b/eos/effects/shipbonussupercarriera5warfarelinksbonus.py index eb48a0191..71b48d6ca 100644 --- a/eos/effects/shipbonussupercarriera5warfarelinksbonus.py +++ b/eos/effects/shipbonussupercarriera5warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Aeon type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarrierc1fighterdamage.py b/eos/effects/shipbonussupercarrierc1fighterdamage.py index b96d89ad7..680e6ac24 100644 --- a/eos/effects/shipbonussupercarrierc1fighterdamage.py +++ b/eos/effects/shipbonussupercarrierc1fighterdamage.py @@ -4,7 +4,15 @@ # Ship: Revenant # Ship: Wyvern type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc2afterburnerbonus.py b/eos/effects/shipbonussupercarrierc2afterburnerbonus.py index 4ec867087..832a17eff 100644 --- a/eos/effects/shipbonussupercarrierc2afterburnerbonus.py +++ b/eos/effects/shipbonussupercarrierc2afterburnerbonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Revenant type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "speedFactor", src.getModifiedItemAttr("shipBonusSupercarrierC2"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "speedFactor", + src.getModifiedItemAttr("shipBonusSupercarrierC2"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc2shieldresists.py b/eos/effects/shipbonussupercarrierc2shieldresists.py index f8334921b..5f9e36e9b 100644 --- a/eos/effects/shipbonussupercarrierc2shieldresists.py +++ b/eos/effects/shipbonussupercarrierc2shieldresists.py @@ -3,8 +3,14 @@ # Used by: # Ship: Wyvern type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), + skill="Caldari Carrier") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), + skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc3warpstrength.py b/eos/effects/shipbonussupercarrierc3warpstrength.py index d61a96370..9a18457fd 100644 --- a/eos/effects/shipbonussupercarrierc3warpstrength.py +++ b/eos/effects/shipbonussupercarrierc3warpstrength.py @@ -4,5 +4,8 @@ # Ship: Revenant # Ship: Wyvern type = "passive" + + def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierC3"), skill="Caldari Carrier") + fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierC3"), + skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc4burstprojectorbonus.py b/eos/effects/shipbonussupercarrierc4burstprojectorbonus.py index e26358a72..ce70f80f2 100644 --- a/eos/effects/shipbonussupercarrierc4burstprojectorbonus.py +++ b/eos/effects/shipbonussupercarrierc4burstprojectorbonus.py @@ -3,5 +3,9 @@ # Used by: # Ship: Wyvern type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), "durationECMJammerBurstProjector", src.getModifiedItemAttr("shipBonusSupercarrierC4"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), + "durationECMJammerBurstProjector", src.getModifiedItemAttr("shipBonusSupercarrierC4"), + skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc5warfarelinksbonus.py b/eos/effects/shipbonussupercarrierc5warfarelinksbonus.py index ef76d206b..1064421b7 100644 --- a/eos/effects/shipbonussupercarrierc5warfarelinksbonus.py +++ b/eos/effects/shipbonussupercarrierc5warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Wyvern type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierg1fighterdamage.py b/eos/effects/shipbonussupercarrierg1fighterdamage.py index 02a96966b..835a0f3fc 100644 --- a/eos/effects/shipbonussupercarrierg1fighterdamage.py +++ b/eos/effects/shipbonussupercarrierg1fighterdamage.py @@ -3,7 +3,15 @@ # Used by: # Variations of ship: Nyx (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierg2fighterhitpoints.py b/eos/effects/shipbonussupercarrierg2fighterhitpoints.py index b1deb8573..5b23ff737 100644 --- a/eos/effects/shipbonussupercarrierg2fighterhitpoints.py +++ b/eos/effects/shipbonussupercarrierg2fighterhitpoints.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Nyx (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", src.getModifiedItemAttr("shipBonusSupercarrierG2"), skill="Gallente Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", + src.getModifiedItemAttr("shipBonusSupercarrierG2"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierg3warpstrength.py b/eos/effects/shipbonussupercarrierg3warpstrength.py index 3b224338f..5c361a79e 100644 --- a/eos/effects/shipbonussupercarrierg3warpstrength.py +++ b/eos/effects/shipbonussupercarrierg3warpstrength.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Nyx (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierG3"), skill="Gallente Carrier") + fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierG3"), + skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierg4burstprojectorbonus.py b/eos/effects/shipbonussupercarrierg4burstprojectorbonus.py index d3f3cd7a2..74b6a3ba6 100644 --- a/eos/effects/shipbonussupercarrierg4burstprojectorbonus.py +++ b/eos/effects/shipbonussupercarrierg4burstprojectorbonus.py @@ -3,5 +3,9 @@ # Used by: # Ship: Nyx type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), "durationSensorDampeningBurstProjector", src.getModifiedItemAttr("shipBonusSupercarrierG4"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), + "durationSensorDampeningBurstProjector", + src.getModifiedItemAttr("shipBonusSupercarrierG4"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierg5warfarelinksbonus.py b/eos/effects/shipbonussupercarrierg5warfarelinksbonus.py index b1d975523..432f092ab 100644 --- a/eos/effects/shipbonussupercarrierg5warfarelinksbonus.py +++ b/eos/effects/shipbonussupercarrierg5warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Nyx type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierm1burstprojectorwebbonus.py b/eos/effects/shipbonussupercarrierm1burstprojectorwebbonus.py index a7981f59e..534d7357c 100644 --- a/eos/effects/shipbonussupercarrierm1burstprojectorwebbonus.py +++ b/eos/effects/shipbonussupercarrierm1burstprojectorwebbonus.py @@ -4,5 +4,8 @@ # Ship: Hel # Ship: Vendetta type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), "speedFactor", src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), "speedFactor", + src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm1fighterdamage.py b/eos/effects/shipbonussupercarrierm1fighterdamage.py index 5d1f73613..072aa2573 100644 --- a/eos/effects/shipbonussupercarrierm1fighterdamage.py +++ b/eos/effects/shipbonussupercarrierm1fighterdamage.py @@ -3,7 +3,15 @@ # Used by: # Ship: Hel type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm2fightervelocity.py b/eos/effects/shipbonussupercarrierm2fightervelocity.py index f119d5235..d908f242c 100644 --- a/eos/effects/shipbonussupercarrierm2fightervelocity.py +++ b/eos/effects/shipbonussupercarrierm2fightervelocity.py @@ -4,5 +4,8 @@ # Ship: Hel # Ship: Vendetta type = "passive" + + def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", src.getModifiedItemAttr("shipBonusSupercarrierM2"), skill="Minmatar Carrier") + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", + src.getModifiedItemAttr("shipBonusSupercarrierM2"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm3warpstrength.py b/eos/effects/shipbonussupercarrierm3warpstrength.py index 5e328b84e..dd652f578 100644 --- a/eos/effects/shipbonussupercarrierm3warpstrength.py +++ b/eos/effects/shipbonussupercarrierm3warpstrength.py @@ -4,5 +4,8 @@ # Ship: Hel # Ship: Vendetta type = "passive" + + def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierM3"), skill="Minmatar Carrier") + fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierM3"), + skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm4burstprojectorbonus.py b/eos/effects/shipbonussupercarrierm4burstprojectorbonus.py index bc5a9972a..d75b19a16 100644 --- a/eos/effects/shipbonussupercarrierm4burstprojectorbonus.py +++ b/eos/effects/shipbonussupercarrierm4burstprojectorbonus.py @@ -3,5 +3,9 @@ # Used by: # Ship: Hel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), "durationTargetIlluminationBurstProjector", src.getModifiedItemAttr("shipBonusSupercarrierM4"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), + "durationTargetIlluminationBurstProjector", + src.getModifiedItemAttr("shipBonusSupercarrierM4"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm5warfarelinksbonus.py b/eos/effects/shipbonussupercarrierm5warfarelinksbonus.py index f742dd710..0c76ab95f 100644 --- a/eos/effects/shipbonussupercarrierm5warfarelinksbonus.py +++ b/eos/effects/shipbonussupercarrierm5warfarelinksbonus.py @@ -3,6 +3,10 @@ # Used by: # Ship: Hel type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", + src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierrole1numwarfarelinks.py b/eos/effects/shipbonussupercarrierrole1numwarfarelinks.py index 60bf8d1ae..05dcff6a1 100644 --- a/eos/effects/shipbonussupercarrierrole1numwarfarelinks.py +++ b/eos/effects/shipbonussupercarrierrole1numwarfarelinks.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Supercarrier (6 of 6) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", src.getModifiedItemAttr("shipBonusRole1")) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", + src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonussupercarrierrole2armorshieldmodulebonus.py b/eos/effects/shipbonussupercarrierrole2armorshieldmodulebonus.py index de6d7f485..283256d6c 100644 --- a/eos/effects/shipbonussupercarrierrole2armorshieldmodulebonus.py +++ b/eos/effects/shipbonussupercarrierrole2armorshieldmodulebonus.py @@ -3,6 +3,10 @@ # Used by: # Ships from group: Supercarrier (6 of 6) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "armorHPBonusAdd", src.getModifiedItemAttr("shipBonusRole2")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Upgrades"), "capacityBonus", src.getModifiedItemAttr("shipBonusRole2")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "armorHPBonusAdd", + src.getModifiedItemAttr("shipBonusRole2")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Upgrades"), "capacityBonus", + src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonussurveyprobeexplosiondelayskillsurveycovertops3.py b/eos/effects/shipbonussurveyprobeexplosiondelayskillsurveycovertops3.py index 2e1ede706..176b1279d 100644 --- a/eos/effects/shipbonussurveyprobeexplosiondelayskillsurveycovertops3.py +++ b/eos/effects/shipbonussurveyprobeexplosiondelayskillsurveycovertops3.py @@ -3,6 +3,9 @@ # Used by: # Ships from group: Covert Ops (4 of 5) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Survey Probe", - "explosionDelay", ship.getModifiedItemAttr("eliteBonusCoverOps3"), skill="Covert Ops") + "explosionDelay", ship.getModifiedItemAttr("eliteBonusCoverOps3"), + skill="Covert Ops") diff --git a/eos/effects/shipbonustargetpainteroptimalmf1.py b/eos/effects/shipbonustargetpainteroptimalmf1.py index b0dbdc28d..da9b2c09f 100644 --- a/eos/effects/shipbonustargetpainteroptimalmf1.py +++ b/eos/effects/shipbonustargetpainteroptimalmf1.py @@ -4,6 +4,8 @@ # Ship: Hyena # Ship: Vigil type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Target Painting"), "maxRange", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonustdoptimalbonusaf1.py b/eos/effects/shipbonustdoptimalbonusaf1.py index 5903beac5..9ef068a92 100644 --- a/eos/effects/shipbonustdoptimalbonusaf1.py +++ b/eos/effects/shipbonustdoptimalbonusaf1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Crucifier type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRange", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusthermalarmorresistancead2.py b/eos/effects/shipbonusthermalarmorresistancead2.py index 175477548..3a1d5f206 100644 --- a/eos/effects/shipbonusthermalarmorresistancead2.py +++ b/eos/effects/shipbonusthermalarmorresistancead2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Pontifex type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") + fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), + skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusthermalarmorresistancegd2.py b/eos/effects/shipbonusthermalarmorresistancegd2.py index aeee7c1ef..722d1b044 100644 --- a/eos/effects/shipbonusthermalarmorresistancegd2.py +++ b/eos/effects/shipbonusthermalarmorresistancegd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Magus type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), skill="Gallente Destroyer") + fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), + skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusthermalmissiledamagecd1.py b/eos/effects/shipbonusthermalmissiledamagecd1.py index 060decdde..514c58b4d 100644 --- a/eos/effects/shipbonusthermalmissiledamagecd1.py +++ b/eos/effects/shipbonusthermalmissiledamagecd1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Stork type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", + src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusthermalmissiledamagegb2.py b/eos/effects/shipbonusthermalmissiledamagegb2.py index fc08b37db..65b8c1ba5 100644 --- a/eos/effects/shipbonusthermalmissiledamagegb2.py +++ b/eos/effects/shipbonusthermalmissiledamagegb2.py @@ -3,6 +3,9 @@ # Used by: # Ships named like: Rattlesnake (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusGB2"), skill="Gallente Battleship") + "thermalDamage", ship.getModifiedItemAttr("shipBonusGB2"), + skill="Gallente Battleship") diff --git a/eos/effects/shipbonusthermalmissiledamagegc2.py b/eos/effects/shipbonusthermalmissiledamagegc2.py index 8f1c23eb7..e939aa4e6 100644 --- a/eos/effects/shipbonusthermalmissiledamagegc2.py +++ b/eos/effects/shipbonusthermalmissiledamagegc2.py @@ -5,6 +5,8 @@ # Ship: Gila type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusthermalmissiledamagegf.py b/eos/effects/shipbonusthermalmissiledamagegf.py index 903dd9804..30d762728 100644 --- a/eos/effects/shipbonusthermalmissiledamagegf.py +++ b/eos/effects/shipbonusthermalmissiledamagegf.py @@ -4,6 +4,8 @@ # Ship: Whiptail # Ship: Worm type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusthermalshieldresistancemd2.py b/eos/effects/shipbonusthermalshieldresistancemd2.py index a7221bc88..5d41685a0 100644 --- a/eos/effects/shipbonusthermalshieldresistancemd2.py +++ b/eos/effects/shipbonusthermalshieldresistancemd2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Bifrost type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), skill="Minmatar Destroyer") + fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusthermicshieldresistancecb2.py b/eos/effects/shipbonusthermicshieldresistancecb2.py index 0819cd08e..af97edbed 100644 --- a/eos/effects/shipbonusthermicshieldresistancecb2.py +++ b/eos/effects/shipbonusthermicshieldresistancecb2.py @@ -5,5 +5,8 @@ # Ship: Rokh # Ship: Scorpion Navy Issue type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") + fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), + skill="Caldari Battleship") diff --git a/eos/effects/shipbonusthermmissiledmgmd1.py b/eos/effects/shipbonusthermmissiledmgmd1.py index 5f1d29b7a..cb804bcc1 100644 --- a/eos/effects/shipbonusthermmissiledmgmd1.py +++ b/eos/effects/shipbonusthermmissiledmgmd1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Bifrost type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", + src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonustitana1damagebonus.py b/eos/effects/shipbonustitana1damagebonus.py index 17f727696..92ec95b48 100644 --- a/eos/effects/shipbonustitana1damagebonus.py +++ b/eos/effects/shipbonustitana1damagebonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Avatar type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusTitanA1"), skill="Amarr Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusTitanA1"), skill="Amarr Titan") diff --git a/eos/effects/shipbonustitana2capneed.py b/eos/effects/shipbonustitana2capneed.py index bec69b616..93084ad75 100644 --- a/eos/effects/shipbonustitana2capneed.py +++ b/eos/effects/shipbonustitana2capneed.py @@ -3,5 +3,8 @@ # Used by: # Ship: Avatar type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "capacitorNeed", src.getModifiedItemAttr("shipBonusTitanA2"), skill="Amarr Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "capacitorNeed", + src.getModifiedItemAttr("shipBonusTitanA2"), skill="Amarr Titan") diff --git a/eos/effects/shipbonustitana3warpstrength.py b/eos/effects/shipbonustitana3warpstrength.py index a496c1bfd..c7c5bfca5 100644 --- a/eos/effects/shipbonustitana3warpstrength.py +++ b/eos/effects/shipbonustitana3warpstrength.py @@ -3,5 +3,7 @@ # Used by: # Ship: Avatar type = "passive" + + def handler(fit, src, context): fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusTitanA3"), skill="Amarr Titan") diff --git a/eos/effects/shipbonustitana4fleetbonus.py b/eos/effects/shipbonustitana4fleetbonus.py index b84dfd698..5112410b7 100644 --- a/eos/effects/shipbonustitana4fleetbonus.py +++ b/eos/effects/shipbonustitana4fleetbonus.py @@ -8,7 +8,8 @@ gangBonus = "shipBonusTitanA4" gangBonusSkill = "Amarr Titan" runTime = "late" + def handler(fit, src, context): if "gang" not in context: return - fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) - + fit.ship.boostItemAttr(gangBoost, + src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitanc1kindamagebonus.py b/eos/effects/shipbonustitanc1kindamagebonus.py index 0ca0dd671..08ea4ea52 100644 --- a/eos/effects/shipbonustitanc1kindamagebonus.py +++ b/eos/effects/shipbonustitanc1kindamagebonus.py @@ -3,7 +3,12 @@ # Used by: # Ship: Leviathan type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "kineticDamage", src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "kineticDamage", src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "kineticDamage", src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "kineticDamage", + src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "kineticDamage", + src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "kineticDamage", + src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitanc2rofbonus.py b/eos/effects/shipbonustitanc2rofbonus.py index cd131d5d6..af73b2761 100644 --- a/eos/effects/shipbonustitanc2rofbonus.py +++ b/eos/effects/shipbonustitanc2rofbonus.py @@ -3,7 +3,12 @@ # Used by: # Ship: Leviathan type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher XL Cruise", "speed", src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Torpedo", "speed", src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher XL Torpedo", "speed", src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher XL Cruise", "speed", + src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Torpedo", "speed", + src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher XL Torpedo", "speed", + src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitanc3warpstrength.py b/eos/effects/shipbonustitanc3warpstrength.py index 2cfdc56c4..e82b02ef3 100644 --- a/eos/effects/shipbonustitanc3warpstrength.py +++ b/eos/effects/shipbonustitanc3warpstrength.py @@ -3,5 +3,7 @@ # Used by: # Ship: Leviathan type = "passive" + + def handler(fit, src, context): fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusTitanC3"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitanc4fleetbonus.py b/eos/effects/shipbonustitanc4fleetbonus.py index c9d5aff1e..19c4e0c67 100644 --- a/eos/effects/shipbonustitanc4fleetbonus.py +++ b/eos/effects/shipbonustitanc4fleetbonus.py @@ -8,7 +8,8 @@ gangBonus = "shipBonusTitanC4" gangBonusSkill = "Caldari Titan" runTime = "late" + def handler(fit, src, context): if "gang" not in context: return - fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) - + fit.ship.boostItemAttr(gangBoost, + src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitanc5alldamagebonus.py b/eos/effects/shipbonustitanc5alldamagebonus.py index 49e1a4651..13c64f8f2 100644 --- a/eos/effects/shipbonustitanc5alldamagebonus.py +++ b/eos/effects/shipbonustitanc5alldamagebonus.py @@ -3,13 +3,24 @@ # Used by: # Ship: Leviathan type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosiveDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "thermalDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "explosiveDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "thermalDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "emDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "thermalDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "emDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "explosiveDamage", src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosiveDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "thermalDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "explosiveDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "thermalDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "emDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "thermalDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "emDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "explosiveDamage", + src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitang1damagebonus.py b/eos/effects/shipbonustitang1damagebonus.py index 065bb43fb..e44f41f53 100644 --- a/eos/effects/shipbonustitang1damagebonus.py +++ b/eos/effects/shipbonustitang1damagebonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Erebus type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") diff --git a/eos/effects/shipbonustitang2rofbonus.py b/eos/effects/shipbonustitang2rofbonus.py index 5238d286c..87c12394d 100644 --- a/eos/effects/shipbonustitang2rofbonus.py +++ b/eos/effects/shipbonustitang2rofbonus.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Erebus (2 of 2) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "speed", src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "speed", + src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") diff --git a/eos/effects/shipbonustitang3warpstrength.py b/eos/effects/shipbonustitang3warpstrength.py index 658670607..003c1be4a 100644 --- a/eos/effects/shipbonustitang3warpstrength.py +++ b/eos/effects/shipbonustitang3warpstrength.py @@ -3,5 +3,7 @@ # Used by: # Variations of ship: Erebus (2 of 2) type = "passive" + + def handler(fit, src, context): fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusTitanG3"), skill="Gallente Titan") diff --git a/eos/effects/shipbonustitang4fleetbonus.py b/eos/effects/shipbonustitang4fleetbonus.py index 7edfdce02..2c4a35c0f 100644 --- a/eos/effects/shipbonustitang4fleetbonus.py +++ b/eos/effects/shipbonustitang4fleetbonus.py @@ -8,7 +8,8 @@ gangBonus = "shipBonusTitanG4" gangBonusSkill = "Gallente Titan" runTime = "late" + def handler(fit, src, context): if "gang" not in context: return - fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) - + fit.ship.boostItemAttr(gangBoost, + src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitanm1damagebonus.py b/eos/effects/shipbonustitanm1damagebonus.py index f011547f2..538a0d8fc 100644 --- a/eos/effects/shipbonustitanm1damagebonus.py +++ b/eos/effects/shipbonustitanm1damagebonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Ragnarok type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusTitanM1"), skill="Minmatar Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusTitanM1"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustitanm1webbonus.py b/eos/effects/shipbonustitanm1webbonus.py index 7a8d72d39..6abfca9dd 100644 --- a/eos/effects/shipbonustitanm1webbonus.py +++ b/eos/effects/shipbonustitanm1webbonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vanquisher type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", src.getModifiedItemAttr("shipBonusTitanM1"), skill="Minmatar Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", + src.getModifiedItemAttr("shipBonusTitanM1"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustitanm2rofbonus.py b/eos/effects/shipbonustitanm2rofbonus.py index ba663cf9f..477698082 100644 --- a/eos/effects/shipbonustitanm2rofbonus.py +++ b/eos/effects/shipbonustitanm2rofbonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Ragnarok type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "speed", src.getModifiedItemAttr("shipBonusTitanM2"), skill="Minmatar Titan") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "speed", + src.getModifiedItemAttr("shipBonusTitanM2"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustitanm3warpstrength.py b/eos/effects/shipbonustitanm3warpstrength.py index 3d1c82e91..de59fc61e 100644 --- a/eos/effects/shipbonustitanm3warpstrength.py +++ b/eos/effects/shipbonustitanm3warpstrength.py @@ -4,5 +4,7 @@ # Ship: Ragnarok # Ship: Vanquisher type = "passive" + + def handler(fit, src, context): fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusTitanM3"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustitanm4fleetbonus.py b/eos/effects/shipbonustitanm4fleetbonus.py index 931775bb2..c99b0523c 100644 --- a/eos/effects/shipbonustitanm4fleetbonus.py +++ b/eos/effects/shipbonustitanm4fleetbonus.py @@ -8,7 +8,8 @@ gangBonus = "shipBonusTitanM4" gangBonusSkill = "Minmatar Titan" runTime = "late" + def handler(fit, src, context): if "gang" not in context: return - fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) - + fit.ship.boostItemAttr(gangBoost, + src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitanrole1numwarfarelinks.py b/eos/effects/shipbonustitanrole1numwarfarelinks.py index 0f3aa4c4d..67a017e32 100644 --- a/eos/effects/shipbonustitanrole1numwarfarelinks.py +++ b/eos/effects/shipbonustitanrole1numwarfarelinks.py @@ -3,5 +3,8 @@ # Used by: # Ships from group: Titan (5 of 5) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", src.getModifiedItemAttr("shipBonusRole1")) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", + src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonustitanrole2armorshieldmodulebonus.py b/eos/effects/shipbonustitanrole2armorshieldmodulebonus.py index ca4a8baf9..a964d0635 100644 --- a/eos/effects/shipbonustitanrole2armorshieldmodulebonus.py +++ b/eos/effects/shipbonustitanrole2armorshieldmodulebonus.py @@ -3,6 +3,10 @@ # Used by: # Ships from group: Titan (5 of 5) type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "armorHPBonusAdd", src.getModifiedItemAttr("shipBonusRole2")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Upgrades"), "capacityBonus", src.getModifiedItemAttr("shipBonusRole2")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "armorHPBonusAdd", + src.getModifiedItemAttr("shipBonusRole2")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Upgrades"), "capacityBonus", + src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonustitanrole3damagebonus.py b/eos/effects/shipbonustitanrole3damagebonus.py index 20b7544bb..1bb3e16a6 100644 --- a/eos/effects/shipbonustitanrole3damagebonus.py +++ b/eos/effects/shipbonustitanrole3damagebonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vanquisher type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusRole3")) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/shipbonustitanrole3torpdeovelocitybonus.py b/eos/effects/shipbonustitanrole3torpdeovelocitybonus.py index 75d2a4cdd..ef1b441ff 100644 --- a/eos/effects/shipbonustitanrole3torpdeovelocitybonus.py +++ b/eos/effects/shipbonustitanrole3torpdeovelocitybonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Leviathan type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", src.getModifiedItemAttr("shipBonusRole3")) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", + src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/shipbonustorpedomissileemdmgmb.py b/eos/effects/shipbonustorpedomissileemdmgmb.py index 6659b52d2..d0035967d 100644 --- a/eos/effects/shipbonustorpedomissileemdmgmb.py +++ b/eos/effects/shipbonustorpedomissileemdmgmb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedomissileexplodmgmb.py b/eos/effects/shipbonustorpedomissileexplodmgmb.py index 284046faa..75ddfe45e 100644 --- a/eos/effects/shipbonustorpedomissileexplodmgmb.py +++ b/eos/effects/shipbonustorpedomissileexplodmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedomissilekineticdmgmb.py b/eos/effects/shipbonustorpedomissilekineticdmgmb.py index f13096e49..34aaf86f6 100644 --- a/eos/effects/shipbonustorpedomissilekineticdmgmb.py +++ b/eos/effects/shipbonustorpedomissilekineticdmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedomissilethermdmgmb.py b/eos/effects/shipbonustorpedomissilethermdmgmb.py index 693f6ee7a..ea7d1baff 100644 --- a/eos/effects/shipbonustorpedomissilethermdmgmb.py +++ b/eos/effects/shipbonustorpedomissilethermdmgmb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedorofmb.py b/eos/effects/shipbonustorpedorofmb.py index 3234d5a2a..2695607ea 100644 --- a/eos/effects/shipbonustorpedorofmb.py +++ b/eos/effects/shipbonustorpedorofmb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Typhoon type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", "speed", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedovelocity2af.py b/eos/effects/shipbonustorpedovelocity2af.py index 7f0bc64ac..0109217d5 100644 --- a/eos/effects/shipbonustorpedovelocity2af.py +++ b/eos/effects/shipbonustorpedovelocity2af.py @@ -3,6 +3,8 @@ # Used by: # Ship: Purifier type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonustorpedovelocitycf2.py b/eos/effects/shipbonustorpedovelocitycf2.py index 374186aa2..5c779651b 100644 --- a/eos/effects/shipbonustorpedovelocitycf2.py +++ b/eos/effects/shipbonustorpedovelocitycf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Manticore type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonustorpedovelocitygf2.py b/eos/effects/shipbonustorpedovelocitygf2.py index 91a13f1fa..188c679d5 100644 --- a/eos/effects/shipbonustorpedovelocitygf2.py +++ b/eos/effects/shipbonustorpedovelocitygf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Nemesis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonustorpedovelocitymf2.py b/eos/effects/shipbonustorpedovelocitymf2.py index e74cb86bf..cf5a4385a 100644 --- a/eos/effects/shipbonustorpedovelocitymf2.py +++ b/eos/effects/shipbonustorpedovelocitymf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Hound type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusvelocityci.py b/eos/effects/shipbonusvelocityci.py index ed272f31a..9f34a3e72 100644 --- a/eos/effects/shipbonusvelocityci.py +++ b/eos/effects/shipbonusvelocityci.py @@ -4,5 +4,7 @@ # Variations of ship: Tayra (2 of 2) # Ship: Crane type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("shipBonusCI"), skill="Caldari Industrial") diff --git a/eos/effects/shipbonusvelocitygi.py b/eos/effects/shipbonusvelocitygi.py index 5e06833d1..b032ee1d1 100644 --- a/eos/effects/shipbonusvelocitygi.py +++ b/eos/effects/shipbonusvelocitygi.py @@ -7,6 +7,8 @@ # Ship: Kryos # Ship: Viator type = "passive" + + def handler(fit, ship, context): # TODO: investigate if we can live without such ifs or hardcoding # Viator doesn't have GI bonus diff --git a/eos/effects/shipbonuswarpscramblemaxrangegb.py b/eos/effects/shipbonuswarpscramblemaxrangegb.py index 36586ab3c..a26ffadbe 100644 --- a/eos/effects/shipbonuswarpscramblemaxrangegb.py +++ b/eos/effects/shipbonuswarpscramblemaxrangegb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Barghest type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", "maxRange", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonuswarpscramblermaxrangegc2.py b/eos/effects/shipbonuswarpscramblermaxrangegc2.py index 34df40cdb..84afce09b 100644 --- a/eos/effects/shipbonuswarpscramblermaxrangegc2.py +++ b/eos/effects/shipbonuswarpscramblermaxrangegc2.py @@ -4,6 +4,8 @@ # Ship: Adrestia # Ship: Orthrus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", "maxRange", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuswarpscramblermaxrangegf2.py b/eos/effects/shipbonuswarpscramblermaxrangegf2.py index 9587eee65..77fd29e73 100644 --- a/eos/effects/shipbonuswarpscramblermaxrangegf2.py +++ b/eos/effects/shipbonuswarpscramblermaxrangegf2.py @@ -4,6 +4,8 @@ # Ship: Garmur # Ship: Utu type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", "maxRange", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonuswdfgnullpenalties.py b/eos/effects/shipbonuswdfgnullpenalties.py index da395b9b6..0a1050711 100644 --- a/eos/effects/shipbonuswdfgnullpenalties.py +++ b/eos/effects/shipbonuswdfgnullpenalties.py @@ -4,6 +4,8 @@ # Ship: Fiend runTime = "early" type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Propulsion Jamming"), "speedFactorBonus", ship.getModifiedItemAttr("shipBonusAT")) diff --git a/eos/effects/shipcapitalagilitybonus.py b/eos/effects/shipcapitalagilitybonus.py index 4d41a83e6..71c8e0ca4 100644 --- a/eos/effects/shipcapitalagilitybonus.py +++ b/eos/effects/shipcapitalagilitybonus.py @@ -8,5 +8,7 @@ # Ships from group: Titan (5 of 5) # Ship: Rorqual type = "passive" + + def handler(fit, src, context): fit.ship.multiplyItemAttr("agility", src.getModifiedItemAttr("advancedCapitalAgility"), stackingPenalties=True) diff --git a/eos/effects/shipcapneedbonusab.py b/eos/effects/shipcapneedbonusab.py index 696b60ec4..84fb447cc 100644 --- a/eos/effects/shipcapneedbonusab.py +++ b/eos/effects/shipcapneedbonusab.py @@ -4,6 +4,8 @@ # Variations of ship: Armageddon (3 of 5) # Ship: Apocalypse Imperial Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "capacitorNeed", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipcappropulsionjamming.py b/eos/effects/shipcappropulsionjamming.py index 1b3bb08c1..eb349db5c 100644 --- a/eos/effects/shipcappropulsionjamming.py +++ b/eos/effects/shipcappropulsionjamming.py @@ -7,6 +7,8 @@ # Ship: Executioner # Ship: Slasher type = "passive" + + def handler(fit, ship, context): groups = ("Stasis Web", "Warp Scrambler") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/shipcaprecharge2af.py b/eos/effects/shipcaprecharge2af.py index 436742c4f..5822015f5 100644 --- a/eos/effects/shipcaprecharge2af.py +++ b/eos/effects/shipcaprecharge2af.py @@ -3,5 +3,7 @@ # Used by: # Ship: Anathema type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipcargobonusai.py b/eos/effects/shipcargobonusai.py index d035e20d8..8e4dcae18 100644 --- a/eos/effects/shipcargobonusai.py +++ b/eos/effects/shipcargobonusai.py @@ -4,5 +4,7 @@ # Variations of ship: Sigil (2 of 2) # Ship: Bestower type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("shipBonusAI"), skill="Amarr Industrial") diff --git a/eos/effects/shipcommandbonuseffectivemultiplierorecapital2.py b/eos/effects/shipcommandbonuseffectivemultiplierorecapital2.py index 9a4de1129..f865e5ea2 100644 --- a/eos/effects/shipcommandbonuseffectivemultiplierorecapital2.py +++ b/eos/effects/shipcommandbonuseffectivemultiplierorecapital2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): if fit.extraAttributes["siege"]: - fit.ship.increaseItemAttr("commandBonusEffective", ship.getModifiedItemAttr("shipBonusORECapital2"), skill="Capital Industrial Ships") + fit.ship.increaseItemAttr("commandBonusEffective", ship.getModifiedItemAttr("shipBonusORECapital2"), + skill="Capital Industrial Ships") diff --git a/eos/effects/shipconsumptionquantitybonusindustrialreconfigurationorecapital1.py b/eos/effects/shipconsumptionquantitybonusindustrialreconfigurationorecapital1.py index 8d85bebf5..fd57fb534 100644 --- a/eos/effects/shipconsumptionquantitybonusindustrialreconfigurationorecapital1.py +++ b/eos/effects/shipconsumptionquantitybonusindustrialreconfigurationorecapital1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Rorqual type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Industrial Reconfiguration"), - "consumptionQuantity", ship.getModifiedItemAttr("shipBonusORECapital1"), skill="Capital Industrial Ships") + "consumptionQuantity", ship.getModifiedItemAttr("shipBonusORECapital1"), + skill="Capital Industrial Ships") diff --git a/eos/effects/shipcruiseandsiegelauncherrofbonus2cb.py b/eos/effects/shipcruiseandsiegelauncherrofbonus2cb.py index 9faf7b6a4..755ca5cae 100644 --- a/eos/effects/shipcruiseandsiegelauncherrofbonus2cb.py +++ b/eos/effects/shipcruiseandsiegelauncherrofbonus2cb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Widow type = "passive" + + def handler(fit, ship, context): affectedGroups = ("Missile Launcher Cruise", "Missile Launcher Torpedo") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in affectedGroups, diff --git a/eos/effects/shipcruiseandtorpedovelocitybonuscb3.py b/eos/effects/shipcruiseandtorpedovelocitybonuscb3.py index e932a7a61..e3b31c683 100644 --- a/eos/effects/shipcruiseandtorpedovelocitybonuscb3.py +++ b/eos/effects/shipcruiseandtorpedovelocitybonuscb3.py @@ -4,6 +4,9 @@ # Ship: Golem # Ship: Widow type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), + "maxVelocity", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruiselauncherrofbonus2cb.py b/eos/effects/shipcruiselauncherrofbonus2cb.py index 874ce2cc1..e525b593f 100644 --- a/eos/effects/shipcruiselauncherrofbonus2cb.py +++ b/eos/effects/shipcruiselauncherrofbonus2cb.py @@ -4,6 +4,8 @@ # Ship: Raven # Ship: Raven State Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Cruise", "speed", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruisemissileaoecloudsize1cb.py b/eos/effects/shipcruisemissileaoecloudsize1cb.py index 55123d328..e1d7c2557 100644 --- a/eos/effects/shipcruisemissileaoecloudsize1cb.py +++ b/eos/effects/shipcruisemissileaoecloudsize1cb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Raven Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruisemissilerofcb.py b/eos/effects/shipcruisemissilerofcb.py index 181825801..268e7d96a 100644 --- a/eos/effects/shipcruisemissilerofcb.py +++ b/eos/effects/shipcruisemissilerofcb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scorpion Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Cruise", "speed", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruisemissilevelocitybonuscb3.py b/eos/effects/shipcruisemissilevelocitybonuscb3.py index 7d7819cb8..b690761be 100644 --- a/eos/effects/shipcruisemissilevelocitybonuscb3.py +++ b/eos/effects/shipcruisemissilevelocitybonuscb3.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Raven (3 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/shipdronemwdspeedbonusrookie.py b/eos/effects/shipdronemwdspeedbonusrookie.py index 201f90524..0bb5910d9 100644 --- a/eos/effects/shipdronemwdspeedbonusrookie.py +++ b/eos/effects/shipdronemwdspeedbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Taipan type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda mod: True, "maxVelocity", ship.getModifiedItemAttr("rookieDroneMWDspeed")) diff --git a/eos/effects/shipdronescoutthermaldamagegf2.py b/eos/effects/shipdronescoutthermaldamagegf2.py index 85266c809..afe18cb9d 100644 --- a/eos/effects/shipdronescoutthermaldamagegf2.py +++ b/eos/effects/shipdronescoutthermaldamagegf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Helios type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drone Avionics"), "thermalDamage", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipdronesmaxgc2.py b/eos/effects/shipdronesmaxgc2.py index 7ae2e2f58..16390827e 100644 --- a/eos/effects/shipdronesmaxgc2.py +++ b/eos/effects/shipdronesmaxgc2.py @@ -3,5 +3,7 @@ # Used by: # Ship: Guardian-Vexor type = "passive" + + def handler(fit, ship, context): fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipecmscanstrengthbonuscf.py b/eos/effects/shipecmscanstrengthbonuscf.py index 544c9854e..6d1640619 100644 --- a/eos/effects/shipecmscanstrengthbonuscf.py +++ b/eos/effects/shipecmscanstrengthbonuscf.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Griffin (3 of 3) type = "passive" + + def handler(fit, ship, context): for type in ("Gravimetric", "Ladar", "Radar", "Magnetometric"): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", diff --git a/eos/effects/shipecmscanstrengthbonusrookie.py b/eos/effects/shipecmscanstrengthbonusrookie.py index 7ee271bae..312932605 100644 --- a/eos/effects/shipecmscanstrengthbonusrookie.py +++ b/eos/effects/shipecmscanstrengthbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ibis type = "passive" + + def handler(fit, ship, context): for type in ("Gravimetric", "Ladar", "Radar", "Magnetometric"): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", diff --git a/eos/effects/shipenergydrainamountaf1.py b/eos/effects/shipenergydrainamountaf1.py index 21239c039..8dc8e60bc 100644 --- a/eos/effects/shipenergydrainamountaf1.py +++ b/eos/effects/shipenergydrainamountaf1.py @@ -4,6 +4,8 @@ # Ship: Cruor # Ship: Sentinel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "powerTransferAmount", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipenergyneutralizertransferamountbonusab.py b/eos/effects/shipenergyneutralizertransferamountbonusab.py index a331c58d4..c814b51b5 100644 --- a/eos/effects/shipenergyneutralizertransferamountbonusab.py +++ b/eos/effects/shipenergyneutralizertransferamountbonusab.py @@ -3,6 +3,9 @@ # Used by: # Ship: Bhaalgorn type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") + "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAB"), + skill="Amarr Battleship") diff --git a/eos/effects/shipenergyneutralizertransferamountbonusac.py b/eos/effects/shipenergyneutralizertransferamountbonusac.py index 58fb9bb96..4dfc4dc87 100644 --- a/eos/effects/shipenergyneutralizertransferamountbonusac.py +++ b/eos/effects/shipenergyneutralizertransferamountbonusac.py @@ -4,6 +4,9 @@ # Ship: Ashimmu # Ship: Vangel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAC"), + skill="Amarr Cruiser") diff --git a/eos/effects/shipenergyneutralizertransferamountbonusaf.py b/eos/effects/shipenergyneutralizertransferamountbonusaf.py index 11116d5a2..e8f6ec3aa 100644 --- a/eos/effects/shipenergyneutralizertransferamountbonusaf.py +++ b/eos/effects/shipenergyneutralizertransferamountbonusaf.py @@ -4,6 +4,9 @@ # Ship: Cruor # Ship: Sentinel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") + "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAF"), + skill="Amarr Frigate") diff --git a/eos/effects/shipenergyneutralizertransferamountbonusaf2.py b/eos/effects/shipenergyneutralizertransferamountbonusaf2.py index 16c62b8a1..529e6651e 100644 --- a/eos/effects/shipenergyneutralizertransferamountbonusaf2.py +++ b/eos/effects/shipenergyneutralizertransferamountbonusaf2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Malice type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonus2AF"), + skill="Amarr Frigate") diff --git a/eos/effects/shipenergytcapneedbonusaf.py b/eos/effects/shipenergytcapneedbonusaf.py index b40fa69fb..ecac0f30c 100644 --- a/eos/effects/shipenergytcapneedbonusaf.py +++ b/eos/effects/shipenergytcapneedbonusaf.py @@ -9,6 +9,8 @@ # Ship: Silver Magnate # Ship: Tormentor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "capacitorNeed", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipenergytcapneedbonusrookie.py b/eos/effects/shipenergytcapneedbonusrookie.py index 282f1df22..4372da104 100644 --- a/eos/effects/shipenergytcapneedbonusrookie.py +++ b/eos/effects/shipenergytcapneedbonusrookie.py @@ -4,6 +4,8 @@ # Ship: Hematos # Ship: Impairor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "capacitorNeed", ship.getModifiedItemAttr("rookieSETCapBonus")) diff --git a/eos/effects/shipenergytrackingabc1.py b/eos/effects/shipenergytrackingabc1.py index 3384bdee5..f88ec12de 100644 --- a/eos/effects/shipenergytrackingabc1.py +++ b/eos/effects/shipenergytrackingabc1.py @@ -4,6 +4,9 @@ # Ship: Harbinger Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusABC1"), skill="Amarr Battlecruiser") + "trackingSpeed", ship.getModifiedItemAttr("shipBonusABC1"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shipenergytransferrange1.py b/eos/effects/shipenergytransferrange1.py index 7a8182c86..95b5cac92 100644 --- a/eos/effects/shipenergytransferrange1.py +++ b/eos/effects/shipenergytransferrange1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Guardian type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", "maxRange", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipenergytransferrange2.py b/eos/effects/shipenergytransferrange2.py index a80259cb2..3f65366f2 100644 --- a/eos/effects/shipenergytransferrange2.py +++ b/eos/effects/shipenergytransferrange2.py @@ -4,6 +4,8 @@ # Ship: Basilisk # Ship: Etana type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", "maxRange", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipenergyvampireamountbonusfixedaf2.py b/eos/effects/shipenergyvampireamountbonusfixedaf2.py index 09ca0424d..e48b89b06 100644 --- a/eos/effects/shipenergyvampireamountbonusfixedaf2.py +++ b/eos/effects/shipenergyvampireamountbonusfixedaf2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Malice type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") + "powerTransferAmount", ship.getModifiedItemAttr("shipBonus2AF"), + skill="Amarr Frigate") diff --git a/eos/effects/shipenergyvampiretransferamountbonusab.py b/eos/effects/shipenergyvampiretransferamountbonusab.py index 012d52331..288f21609 100644 --- a/eos/effects/shipenergyvampiretransferamountbonusab.py +++ b/eos/effects/shipenergyvampiretransferamountbonusab.py @@ -3,6 +3,9 @@ # Used by: # Ship: Bhaalgorn type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") + "powerTransferAmount", ship.getModifiedItemAttr("shipBonusAB"), + skill="Amarr Battleship") diff --git a/eos/effects/shipenergyvampiretransferamountbonusac.py b/eos/effects/shipenergyvampiretransferamountbonusac.py index e7bb68862..71f2d5a67 100644 --- a/eos/effects/shipenergyvampiretransferamountbonusac.py +++ b/eos/effects/shipenergyvampiretransferamountbonusac.py @@ -4,6 +4,8 @@ # Ship: Ashimmu # Ship: Vangel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "powerTransferAmount", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipetdamageaf.py b/eos/effects/shipetdamageaf.py index 4be3ab94c..bc11bd6b9 100644 --- a/eos/effects/shipetdamageaf.py +++ b/eos/effects/shipetdamageaf.py @@ -5,5 +5,8 @@ # Ship: Crusader # Ship: Imperial Navy Slicer type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "damageMultiplier", + src.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipetoptimalrange2af.py b/eos/effects/shipetoptimalrange2af.py index 593ee452f..49602fd47 100644 --- a/eos/effects/shipetoptimalrange2af.py +++ b/eos/effects/shipetoptimalrange2af.py @@ -3,6 +3,8 @@ # Used by: # Ship: Imperial Navy Slicer type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipetspeedbonusab2.py b/eos/effects/shipetspeedbonusab2.py index ccec8f55f..73ffd229d 100644 --- a/eos/effects/shipetspeedbonusab2.py +++ b/eos/effects/shipetspeedbonusab2.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Armageddon (3 of 5) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "speed", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") \ No newline at end of file + "speed", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipfalloffbonusgf.py b/eos/effects/shipfalloffbonusgf.py index 177b5695e..09fbcf7e7 100644 --- a/eos/effects/shipfalloffbonusgf.py +++ b/eos/effects/shipfalloffbonusgf.py @@ -4,6 +4,8 @@ # Ship: Atron # Ship: Daredevil type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "falloff", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipfalloffbonusmf.py b/eos/effects/shipfalloffbonusmf.py index 25be55819..39ec4e71d 100644 --- a/eos/effects/shipfalloffbonusmf.py +++ b/eos/effects/shipfalloffbonusmf.py @@ -4,6 +4,8 @@ # Ship: Chremoas # Ship: Dramiel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "falloff", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipfighterbomberdamagepiratesupercarrier.py b/eos/effects/shipfighterbomberdamagepiratesupercarrier.py index 2bea423f5..e19eb7df1 100644 --- a/eos/effects/shipfighterbomberdamagepiratesupercarrier.py +++ b/eos/effects/shipfighterbomberdamagepiratesupercarrier.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Supercarrier (5 of 5) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighter Bombers"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipfighterbomberhitpointspiratesupercarrier.py b/eos/effects/shipfighterbomberhitpointspiratesupercarrier.py index 03416d5f4..d54369c31 100644 --- a/eos/effects/shipfighterbomberhitpointspiratesupercarrier.py +++ b/eos/effects/shipfighterbomberhitpointspiratesupercarrier.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Supercarrier (5 of 5) type = "passive" + + def handler(fit, ship, context): for type in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighter Bombers"), diff --git a/eos/effects/shipfighterdamagepiratesupercarrier.py b/eos/effects/shipfighterdamagepiratesupercarrier.py index 485db254b..e4321a4d6 100644 --- a/eos/effects/shipfighterdamagepiratesupercarrier.py +++ b/eos/effects/shipfighterdamagepiratesupercarrier.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Supercarrier (5 of 5) type = "passive" + + def handler(fit, ship, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighters"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipfighterhitpointspiratesupercarrier.py b/eos/effects/shipfighterhitpointspiratesupercarrier.py index 14b4f888b..c184f8b32 100644 --- a/eos/effects/shipfighterhitpointspiratesupercarrier.py +++ b/eos/effects/shipfighterhitpointspiratesupercarrier.py @@ -3,6 +3,8 @@ # Used by: # Ships from group: Supercarrier (5 of 5) type = "passive" + + def handler(fit, ship, context): for type in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighters"), diff --git a/eos/effects/shipgchyieldbonusorefrig2.py b/eos/effects/shipgchyieldbonusorefrig2.py index ce9cdbe44..23749fa44 100644 --- a/eos/effects/shipgchyieldbonusorefrig2.py +++ b/eos/effects/shipgchyieldbonusorefrig2.py @@ -4,6 +4,8 @@ # Ship: Prospect # Ship: Venture type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Gas Cloud Harvester", "duration", module.getModifiedItemAttr("shipBonusOREfrig2"), skill="Mining Frigate") diff --git a/eos/effects/shipheatdamageamarrtacticaldestroyer3.py b/eos/effects/shipheatdamageamarrtacticaldestroyer3.py index 2a758f92b..60007905d 100644 --- a/eos/effects/shipheatdamageamarrtacticaldestroyer3.py +++ b/eos/effects/shipheatdamageamarrtacticaldestroyer3.py @@ -3,6 +3,9 @@ # Used by: # Ship: Confessor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr3"), skill="Amarr Tactical Destroyer") + ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr3"), + skill="Amarr Tactical Destroyer") diff --git a/eos/effects/shipheatdamagecaldaritacticaldestroyer3.py b/eos/effects/shipheatdamagecaldaritacticaldestroyer3.py index 488035544..afe1aa44d 100644 --- a/eos/effects/shipheatdamagecaldaritacticaldestroyer3.py +++ b/eos/effects/shipheatdamagecaldaritacticaldestroyer3.py @@ -3,6 +3,9 @@ # Used by: # Ship: Jackdaw type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari3"), skill="Caldari Tactical Destroyer") + ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari3"), + skill="Caldari Tactical Destroyer") diff --git a/eos/effects/shipheatdamagegallentetacticaldestroyer3.py b/eos/effects/shipheatdamagegallentetacticaldestroyer3.py index 7bbad6ac3..b5854c3fb 100644 --- a/eos/effects/shipheatdamagegallentetacticaldestroyer3.py +++ b/eos/effects/shipheatdamagegallentetacticaldestroyer3.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hecate type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente3"), skill="Gallente Tactical Destroyer") + ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente3"), + skill="Gallente Tactical Destroyer") diff --git a/eos/effects/shipheatdamageminmatartacticaldestroyer3.py b/eos/effects/shipheatdamageminmatartacticaldestroyer3.py index 53ef8c983..30b0d22fb 100644 --- a/eos/effects/shipheatdamageminmatartacticaldestroyer3.py +++ b/eos/effects/shipheatdamageminmatartacticaldestroyer3.py @@ -3,6 +3,9 @@ # Used by: # Ship: Svipul type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar3"), skill="Minmatar Tactical Destroyer") + ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar3"), + skill="Minmatar Tactical Destroyer") diff --git a/eos/effects/shipheavyassaultmissileaoecloudsizecbc1.py b/eos/effects/shipheavyassaultmissileaoecloudsizecbc1.py index 43b6fa99c..2ef68bd9f 100644 --- a/eos/effects/shipheavyassaultmissileaoecloudsizecbc1.py +++ b/eos/effects/shipheavyassaultmissileaoecloudsizecbc1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Drake Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCBC1"), skill="Caldari Battlecruiser") + "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCBC1"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shipheavyassaultmissileaoecloudsizecc2.py b/eos/effects/shipheavyassaultmissileaoecloudsizecc2.py index be654846f..f9cbb40c3 100644 --- a/eos/effects/shipheavyassaultmissileaoecloudsizecc2.py +++ b/eos/effects/shipheavyassaultmissileaoecloudsizecc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Caracal Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipheavyassaultmissileemandexpandkinandthmdmgac1.py b/eos/effects/shipheavyassaultmissileemandexpandkinandthmdmgac1.py index 9b722170d..c75875c24 100644 --- a/eos/effects/shipheavyassaultmissileemandexpandkinandthmdmgac1.py +++ b/eos/effects/shipheavyassaultmissileemandexpandkinandthmdmgac1.py @@ -3,8 +3,11 @@ # Used by: # Ship: Sacrilege type = "passive" + + def handler(fit, ship, context): damageTypes = ("em", "explosive", "kinetic", "thermal") for damageType in damageTypes: fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") + "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusAC"), + skill="Amarr Cruiser") diff --git a/eos/effects/shipheavyassaultmissileemdmgpiratecruiser.py b/eos/effects/shipheavyassaultmissileemdmgpiratecruiser.py index d49110690..50aecade1 100644 --- a/eos/effects/shipheavyassaultmissileemdmgpiratecruiser.py +++ b/eos/effects/shipheavyassaultmissileemdmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "emDamage", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipheavyassaultmissileexpdmgpiratecruiser.py b/eos/effects/shipheavyassaultmissileexpdmgpiratecruiser.py index 27b2a0f84..089ec066b 100644 --- a/eos/effects/shipheavyassaultmissileexpdmgpiratecruiser.py +++ b/eos/effects/shipheavyassaultmissileexpdmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "explosiveDamage", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipheavyassaultmissilekindmgpiratecruiser.py b/eos/effects/shipheavyassaultmissilekindmgpiratecruiser.py index bd9d667d8..81706525a 100644 --- a/eos/effects/shipheavyassaultmissilekindmgpiratecruiser.py +++ b/eos/effects/shipheavyassaultmissilekindmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "kineticDamage", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipheavyassaultmissilethermdmgpiratecruiser.py b/eos/effects/shipheavyassaultmissilethermdmgpiratecruiser.py index 0e441c5ca..15d354e63 100644 --- a/eos/effects/shipheavyassaultmissilethermdmgpiratecruiser.py +++ b/eos/effects/shipheavyassaultmissilethermdmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "thermalDamage", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipheavymissileaoecloudsizecbc1.py b/eos/effects/shipheavymissileaoecloudsizecbc1.py index b752147db..e7046f2ad 100644 --- a/eos/effects/shipheavymissileaoecloudsizecbc1.py +++ b/eos/effects/shipheavymissileaoecloudsizecbc1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Drake Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCBC1"), skill="Caldari Battlecruiser") + "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCBC1"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shipheavymissileaoecloudsizecc2.py b/eos/effects/shipheavymissileaoecloudsizecc2.py index d9e4f36e5..971e15bae 100644 --- a/eos/effects/shipheavymissileaoecloudsizecc2.py +++ b/eos/effects/shipheavymissileaoecloudsizecc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Caracal Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipheavymissileemdmgpiratecruiser.py b/eos/effects/shipheavymissileemdmgpiratecruiser.py index 5cf9a6bc4..567d8a110 100644 --- a/eos/effects/shipheavymissileemdmgpiratecruiser.py +++ b/eos/effects/shipheavymissileemdmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "emDamage", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipheavymissileexpdmgpiratecruiser.py b/eos/effects/shipheavymissileexpdmgpiratecruiser.py index c03c2deee..b2f3179cb 100644 --- a/eos/effects/shipheavymissileexpdmgpiratecruiser.py +++ b/eos/effects/shipheavymissileexpdmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "explosiveDamage", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipheavymissilekindmgpiratecruiser.py b/eos/effects/shipheavymissilekindmgpiratecruiser.py index bbb6d6358..0d3543ddd 100644 --- a/eos/effects/shipheavymissilekindmgpiratecruiser.py +++ b/eos/effects/shipheavymissilekindmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "kineticDamage", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipheavymissilethermdmgpiratecruiser.py b/eos/effects/shipheavymissilethermdmgpiratecruiser.py index 54e5bb5ef..f50b05771 100644 --- a/eos/effects/shipheavymissilethermdmgpiratecruiser.py +++ b/eos/effects/shipheavymissilethermdmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "thermalDamage", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shiphrangebonuscc.py b/eos/effects/shiphrangebonuscc.py index bf9572d39..644ee7a88 100644 --- a/eos/effects/shiphrangebonuscc.py +++ b/eos/effects/shiphrangebonuscc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Eagle type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shiphtdamagebonuscc.py b/eos/effects/shiphtdamagebonuscc.py index 4c315d558..1cc54e2c7 100644 --- a/eos/effects/shiphtdamagebonuscc.py +++ b/eos/effects/shiphtdamagebonuscc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Moa type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shiphtdmgbonusfixedgc.py b/eos/effects/shiphtdmgbonusfixedgc.py index 1268a1938..39ebd7b33 100644 --- a/eos/effects/shiphtdmgbonusfixedgc.py +++ b/eos/effects/shiphtdmgbonusfixedgc.py @@ -9,6 +9,8 @@ # Ship: Thorax # Ship: Vexor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shiphtdmgbonusgb.py b/eos/effects/shiphtdmgbonusgb.py index 3921d7ea2..100ac123b 100644 --- a/eos/effects/shiphtdmgbonusgb.py +++ b/eos/effects/shiphtdmgbonusgb.py @@ -7,6 +7,9 @@ # Ship: Megathron Federate Issue # Ship: Sin type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusGB"), + skill="Gallente Battleship") diff --git a/eos/effects/shiphttrackingbonusgb.py b/eos/effects/shiphttrackingbonusgb.py index fdc2fd40d..60c79d649 100644 --- a/eos/effects/shiphttrackingbonusgb.py +++ b/eos/effects/shiphttrackingbonusgb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vindicator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shiphttrackingbonusgb2.py b/eos/effects/shiphttrackingbonusgb2.py index 183f69931..b64d66c6b 100644 --- a/eos/effects/shiphttrackingbonusgb2.py +++ b/eos/effects/shiphttrackingbonusgb2.py @@ -3,6 +3,9 @@ # Used by: # Ships named like: Megathron (3 of 3) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGB2"), skill="Gallente Battleship") + "trackingSpeed", ship.getModifiedItemAttr("shipBonusGB2"), + skill="Gallente Battleship") diff --git a/eos/effects/shiphturretfalloffbonusgc.py b/eos/effects/shiphturretfalloffbonusgc.py index 836c1a921..78e2987cf 100644 --- a/eos/effects/shiphturretfalloffbonusgc.py +++ b/eos/effects/shiphturretfalloffbonusgc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vigilant type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "falloff", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shiphybriddamagebonuscbc2.py b/eos/effects/shiphybriddamagebonuscbc2.py index 8bdc20cba..50f4304ce 100644 --- a/eos/effects/shiphybriddamagebonuscbc2.py +++ b/eos/effects/shiphybriddamagebonuscbc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Naga type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusCBC2"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shiphybriddamagebonuscf.py b/eos/effects/shiphybriddamagebonuscf.py index 6c514a895..a10dafe76 100644 --- a/eos/effects/shiphybriddamagebonuscf.py +++ b/eos/effects/shiphybriddamagebonuscf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Raptor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") \ No newline at end of file + "damageMultiplier", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shiphybriddamagebonuscf2.py b/eos/effects/shiphybriddamagebonuscf2.py index 6a579df62..3ea6ddc9f 100644 --- a/eos/effects/shiphybriddamagebonuscf2.py +++ b/eos/effects/shiphybriddamagebonuscf2.py @@ -4,6 +4,8 @@ # Ship: Griffin Navy Issue # Ship: Merlin type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shiphybriddamagebonusgbc2.py b/eos/effects/shiphybriddamagebonusgbc2.py index 9745804a8..7ae28ba58 100644 --- a/eos/effects/shiphybriddamagebonusgbc2.py +++ b/eos/effects/shiphybriddamagebonusgbc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Talos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC2"), skill="Gallente Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC2"), + skill="Gallente Battlecruiser") diff --git a/eos/effects/shiphybriddmg1cbc2.py b/eos/effects/shiphybriddmg1cbc2.py index 82b916baa..825685ea1 100644 --- a/eos/effects/shiphybriddmg1cbc2.py +++ b/eos/effects/shiphybriddmg1cbc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Ferox type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusCBC2"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shiphybriddmg1gbc1.py b/eos/effects/shiphybriddmg1gbc1.py index 71be2a3e8..d99d40c26 100644 --- a/eos/effects/shiphybriddmg1gbc1.py +++ b/eos/effects/shiphybriddmg1gbc1.py @@ -3,6 +3,9 @@ # Used by: # Variations of ship: Brutix (3 of 3) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC1"), skill="Gallente Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC1"), + skill="Gallente Battlecruiser") diff --git a/eos/effects/shiphybriddmgpiratebattleship.py b/eos/effects/shiphybriddmgpiratebattleship.py index 211a1375e..dd959b187 100644 --- a/eos/effects/shiphybriddmgpiratebattleship.py +++ b/eos/effects/shiphybriddmgpiratebattleship.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vindicator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shiphybriddmgpiratecruiser.py b/eos/effects/shiphybriddmgpiratecruiser.py index 3ce9f855a..b0987b4b4 100644 --- a/eos/effects/shiphybriddmgpiratecruiser.py +++ b/eos/effects/shiphybriddmgpiratecruiser.py @@ -4,6 +4,8 @@ # Ship: Gnosis # Ship: Vigilant type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shiphybridfalloff1gd1.py b/eos/effects/shiphybridfalloff1gd1.py index c81bc6a0f..69a04334d 100644 --- a/eos/effects/shiphybridfalloff1gd1.py +++ b/eos/effects/shiphybridfalloff1gd1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Catalyst type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "falloff", ship.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") diff --git a/eos/effects/shiphybridoptimal1cbc1.py b/eos/effects/shiphybridoptimal1cbc1.py index 54bec4ce6..28f6a8c2e 100644 --- a/eos/effects/shiphybridoptimal1cbc1.py +++ b/eos/effects/shiphybridoptimal1cbc1.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Ferox (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusCBC1"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shiphybridoptimalgd1.py b/eos/effects/shiphybridoptimalgd1.py index 3ba0cb846..0124b48cd 100644 --- a/eos/effects/shiphybridoptimalgd1.py +++ b/eos/effects/shiphybridoptimalgd1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Eris type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") diff --git a/eos/effects/shiphybridrange1cd1.py b/eos/effects/shiphybridrange1cd1.py index fc6588175..ea35b9785 100644 --- a/eos/effects/shiphybridrange1cd1.py +++ b/eos/effects/shiphybridrange1cd1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Cormorant type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shiphybridrangebonuscbc1.py b/eos/effects/shiphybridrangebonuscbc1.py index 36bce0282..ec1572d8b 100644 --- a/eos/effects/shiphybridrangebonuscbc1.py +++ b/eos/effects/shiphybridrangebonuscbc1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Naga type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusCBC1"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shiphybridrangebonuscf2.py b/eos/effects/shiphybridrangebonuscf2.py index 2823c2a65..08e85c17c 100644 --- a/eos/effects/shiphybridrangebonuscf2.py +++ b/eos/effects/shiphybridrangebonuscf2.py @@ -4,6 +4,8 @@ # Ship: Harpy # Ship: Raptor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shiphybridrangebonusrookie.py b/eos/effects/shiphybridrangebonusrookie.py index f192be464..417e8cc67 100644 --- a/eos/effects/shiphybridrangebonusrookie.py +++ b/eos/effects/shiphybridrangebonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ibis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("rookieSHTOptimalBonus")) \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("rookieSHTOptimalBonus")) diff --git a/eos/effects/shiphybridtracking1gd2.py b/eos/effects/shiphybridtracking1gd2.py index 0bd5a3fac..029dfaa35 100644 --- a/eos/effects/shiphybridtracking1gd2.py +++ b/eos/effects/shiphybridtracking1gd2.py @@ -4,6 +4,8 @@ # Variations of ship: Catalyst (2 of 2) # Ship: Algos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGD2"), skill="Gallente Destroyer") diff --git a/eos/effects/shiphybridtrackingcd2.py b/eos/effects/shiphybridtrackingcd2.py index 151686d6d..20dc8ef34 100644 --- a/eos/effects/shiphybridtrackingcd2.py +++ b/eos/effects/shiphybridtrackingcd2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Cormorant type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") diff --git a/eos/effects/shiphybridtrackinggbc2.py b/eos/effects/shiphybridtrackinggbc2.py index 3dd329916..ee9309f0a 100644 --- a/eos/effects/shiphybridtrackinggbc2.py +++ b/eos/effects/shiphybridtrackinggbc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Brutix Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGBC2"), skill="Gallente Battlecruiser") + "trackingSpeed", ship.getModifiedItemAttr("shipBonusGBC2"), + skill="Gallente Battlecruiser") diff --git a/eos/effects/shiphybridtrackinggc.py b/eos/effects/shiphybridtrackinggc.py index 53dddd898..e6708839e 100644 --- a/eos/effects/shiphybridtrackinggc.py +++ b/eos/effects/shiphybridtrackinggc.py @@ -4,6 +4,8 @@ # Ship: Lachesis # Ship: Phobos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shiphybridtrackinggc2.py b/eos/effects/shiphybridtrackinggc2.py index b90f1fa22..5f2eac55a 100644 --- a/eos/effects/shiphybridtrackinggc2.py +++ b/eos/effects/shiphybridtrackinggc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Thorax type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shiphybridturretrofbonusgc2.py b/eos/effects/shiphybridturretrofbonusgc2.py index f05666255..ab847b685 100644 --- a/eos/effects/shiphybridturretrofbonusgc2.py +++ b/eos/effects/shiphybridturretrofbonusgc2.py @@ -4,6 +4,8 @@ # Ship: Exequror Navy Issue # Ship: Phobos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "speed", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shiplargehybridtrackingbonusgbc1.py b/eos/effects/shiplargehybridtrackingbonusgbc1.py index 0a6349db2..ed177a5c9 100644 --- a/eos/effects/shiplargehybridtrackingbonusgbc1.py +++ b/eos/effects/shiplargehybridtrackingbonusgbc1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Talos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGBC1"), skill="Gallente Battlecruiser") + "trackingSpeed", ship.getModifiedItemAttr("shipBonusGBC1"), + skill="Gallente Battlecruiser") diff --git a/eos/effects/shiplargehybridturretrofgb.py b/eos/effects/shiplargehybridturretrofgb.py index cbd73aca3..51045e22f 100644 --- a/eos/effects/shiplargehybridturretrofgb.py +++ b/eos/effects/shiplargehybridturretrofgb.py @@ -4,6 +4,8 @@ # Ship: Megathron # Ship: Megathron Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "speed", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shiplargelasercapabc1.py b/eos/effects/shiplargelasercapabc1.py index 5f25cc664..facc0461d 100644 --- a/eos/effects/shiplargelasercapabc1.py +++ b/eos/effects/shiplargelasercapabc1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Oracle type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC1"), skill="Amarr Battlecruiser") + "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC1"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplargelaserdamagebonusabc2.py b/eos/effects/shiplargelaserdamagebonusabc2.py index 97f8a00ab..ced27165b 100644 --- a/eos/effects/shiplargelaserdamagebonusabc2.py +++ b/eos/effects/shiplargelaserdamagebonusabc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Oracle type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), skill="Amarr Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplasercap1abc2.py b/eos/effects/shiplasercap1abc2.py index 4041e972d..6517f6351 100644 --- a/eos/effects/shiplasercap1abc2.py +++ b/eos/effects/shiplasercap1abc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Absolution type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC2"), skill="Amarr Battlecruiser") + "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC2"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplasercapabc1.py b/eos/effects/shiplasercapabc1.py index a6bbcc175..e733f3709 100644 --- a/eos/effects/shiplasercapabc1.py +++ b/eos/effects/shiplasercapabc1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Harbinger type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC1"), skill="Amarr Battlecruiser") + "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC1"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplasercapneed2ad1.py b/eos/effects/shiplasercapneed2ad1.py index 749a631d7..ae8265d4f 100644 --- a/eos/effects/shiplasercapneed2ad1.py +++ b/eos/effects/shiplasercapneed2ad1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Coercer type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "capacitorNeed", ship.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shiplaserdamagebonusabc2.py b/eos/effects/shiplaserdamagebonusabc2.py index 5fadbd604..c750cbd31 100644 --- a/eos/effects/shiplaserdamagebonusabc2.py +++ b/eos/effects/shiplaserdamagebonusabc2.py @@ -3,6 +3,9 @@ # Used by: # Ships named like: Harbinger (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), skill="Amarr Battlecruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplaserdamagepiratebattleship.py b/eos/effects/shiplaserdamagepiratebattleship.py index d5f48b323..7625b2383 100644 --- a/eos/effects/shiplaserdamagepiratebattleship.py +++ b/eos/effects/shiplaserdamagepiratebattleship.py @@ -4,6 +4,8 @@ # Ship: Bhaalgorn # Ship: Nightmare type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shiplaserrofac2.py b/eos/effects/shiplaserrofac2.py index c5b18f010..dbb11d779 100644 --- a/eos/effects/shiplaserrofac2.py +++ b/eos/effects/shiplaserrofac2.py @@ -4,6 +4,8 @@ # Ship: Omen # Ship: Zealot type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "speed", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shiplasertracking2ad2.py b/eos/effects/shiplasertracking2ad2.py index 6d751cfda..03f58cb78 100644 --- a/eos/effects/shiplasertracking2ad2.py +++ b/eos/effects/shiplasertracking2ad2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Coercer type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shiplightmissilemaxvelocitybonusrookie.py b/eos/effects/shiplightmissilemaxvelocitybonusrookie.py index 144f59edb..9d3630a61 100644 --- a/eos/effects/shiplightmissilemaxvelocitybonusrookie.py +++ b/eos/effects/shiplightmissilemaxvelocitybonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Taipan type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), "maxVelocity", ship.getModifiedItemAttr("rookieLightMissileVelocity")) diff --git a/eos/effects/shipmaxlockedtargetsbonusaddonline.py b/eos/effects/shipmaxlockedtargetsbonusaddonline.py index 69d7e48cb..5e33906ff 100644 --- a/eos/effects/shipmaxlockedtargetsbonusaddonline.py +++ b/eos/effects/shipmaxlockedtargetsbonusaddonline.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Signal Amplifier (7 of 7) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("maxLockedTargets", module.getModifiedItemAttr("maxLockedTargetsBonus")) diff --git a/eos/effects/shipmaxtargetrangebonusonline.py b/eos/effects/shipmaxtargetrangebonusonline.py index 48a6d92e1..520230668 100644 --- a/eos/effects/shipmaxtargetrangebonusonline.py +++ b/eos/effects/shipmaxtargetrangebonusonline.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Signal Amplifier (7 of 7) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/shipmetcdamagebonusac.py b/eos/effects/shipmetcdamagebonusac.py index 7e0a51252..485d71457 100644 --- a/eos/effects/shipmetcdamagebonusac.py +++ b/eos/effects/shipmetcdamagebonusac.py @@ -5,6 +5,8 @@ # Ship: Maller # Ship: Omen Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipmetdamagebonusac2.py b/eos/effects/shipmetdamagebonusac2.py index 9e356bfb0..d8b44d2b8 100644 --- a/eos/effects/shipmetdamagebonusac2.py +++ b/eos/effects/shipmetdamagebonusac2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Devoter type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipminingbonusorefrig1.py b/eos/effects/shipminingbonusorefrig1.py index c67495295..ca0981dc7 100644 --- a/eos/effects/shipminingbonusorefrig1.py +++ b/eos/effects/shipminingbonusorefrig1.py @@ -3,6 +3,9 @@ # Used by: # Variations of ship: Venture (3 of 3) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedItemAttr("shipBonusOREfrig1"), skill="Mining Frigate") + "miningAmount", module.getModifiedItemAttr("shipBonusOREfrig1"), + skill="Mining Frigate") diff --git a/eos/effects/shipmissileassaultmissilevelocitybonuscc2.py b/eos/effects/shipmissileassaultmissilevelocitybonuscc2.py index f384e3b83..b66bb9cac 100644 --- a/eos/effects/shipmissileassaultmissilevelocitybonuscc2.py +++ b/eos/effects/shipmissileassaultmissilevelocitybonuscc2.py @@ -4,6 +4,8 @@ # Ship: Caracal # Ship: Osprey Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissileemdamagecb.py b/eos/effects/shipmissileemdamagecb.py index 43869cffa..855ce53f4 100644 --- a/eos/effects/shipmissileemdamagecb.py +++ b/eos/effects/shipmissileemdamagecb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Barghest type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipmissileemdamagecc.py b/eos/effects/shipmissileemdamagecc.py index 484ed5b38..4fb493160 100644 --- a/eos/effects/shipmissileemdamagecc.py +++ b/eos/effects/shipmissileemdamagecc.py @@ -4,6 +4,8 @@ # Ship: Orthrus # Ship: Osprey Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissileemdamagecf2.py b/eos/effects/shipmissileemdamagecf2.py index 0b6ef4a07..62e2e0fb3 100644 --- a/eos/effects/shipmissileemdamagecf2.py +++ b/eos/effects/shipmissileemdamagecf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Garmur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissileexpdamagecc.py b/eos/effects/shipmissileexpdamagecc.py index 1e0a584c6..4ba61cc88 100644 --- a/eos/effects/shipmissileexpdamagecc.py +++ b/eos/effects/shipmissileexpdamagecc.py @@ -4,6 +4,8 @@ # Ship: Orthrus # Ship: Osprey Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "explosiveDamage", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissileexplodamagecb.py b/eos/effects/shipmissileexplodamagecb.py index 73deda312..0d5a3a588 100644 --- a/eos/effects/shipmissileexplodamagecb.py +++ b/eos/effects/shipmissileexplodamagecb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Barghest type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") + "explosiveDamage", ship.getModifiedItemAttr("shipBonusCB"), + skill="Caldari Battleship") diff --git a/eos/effects/shipmissileexplosivedamagecf2.py b/eos/effects/shipmissileexplosivedamagecf2.py index 9290e691f..ba61d0f47 100644 --- a/eos/effects/shipmissileexplosivedamagecf2.py +++ b/eos/effects/shipmissileexplosivedamagecf2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Garmur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") + "explosiveDamage", ship.getModifiedItemAttr("shipBonusCF2"), + skill="Caldari Frigate") diff --git a/eos/effects/shipmissileheavyassaultvelocityabc2.py b/eos/effects/shipmissileheavyassaultvelocityabc2.py index 39eb421b1..a43ad0c44 100644 --- a/eos/effects/shipmissileheavyassaultvelocityabc2.py +++ b/eos/effects/shipmissileheavyassaultvelocityabc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Damnation type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusABC2"), skill="Amarr Battlecruiser") + "maxVelocity", ship.getModifiedItemAttr("shipBonusABC2"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shipmissileheavyvelocityabc2.py b/eos/effects/shipmissileheavyvelocityabc2.py index 2a6d1cd08..a2cfa0bef 100644 --- a/eos/effects/shipmissileheavyvelocityabc2.py +++ b/eos/effects/shipmissileheavyvelocityabc2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Damnation type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusABC2"), skill="Amarr Battlecruiser") + "maxVelocity", ship.getModifiedItemAttr("shipBonusABC2"), + skill="Amarr Battlecruiser") diff --git a/eos/effects/shipmissileheavyvelocitybonuscc2.py b/eos/effects/shipmissileheavyvelocitybonuscc2.py index 23a0d49c2..aaf6de930 100644 --- a/eos/effects/shipmissileheavyvelocitybonuscc2.py +++ b/eos/effects/shipmissileheavyvelocitybonuscc2.py @@ -4,6 +4,8 @@ # Ship: Caracal # Ship: Osprey Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilekindamagecb.py b/eos/effects/shipmissilekindamagecb.py index 49b58f307..32d10f8f5 100644 --- a/eos/effects/shipmissilekindamagecb.py +++ b/eos/effects/shipmissilekindamagecb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Barghest type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") + "kineticDamage", ship.getModifiedItemAttr("shipBonusCB"), + skill="Caldari Battleship") diff --git a/eos/effects/shipmissilekindamagecc2.py b/eos/effects/shipmissilekindamagecc2.py index 78a95f84e..2a9b2ef96 100644 --- a/eos/effects/shipmissilekindamagecc2.py +++ b/eos/effects/shipmissilekindamagecc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Rook type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilekindamagecc3.py b/eos/effects/shipmissilekindamagecc3.py index e1958c308..e78580e80 100644 --- a/eos/effects/shipmissilekindamagecc3.py +++ b/eos/effects/shipmissilekindamagecc3.py @@ -4,5 +4,8 @@ # Ship: Osprey Navy Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", src.getModifiedItemAttr("shipBonusCC3"), skill="Caldari Cruiser") \ No newline at end of file + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", + src.getModifiedItemAttr("shipBonusCC3"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilekineticdamagecc.py b/eos/effects/shipmissilekineticdamagecc.py index c0b145770..e656053e6 100644 --- a/eos/effects/shipmissilekineticdamagecc.py +++ b/eos/effects/shipmissilekineticdamagecc.py @@ -5,6 +5,8 @@ # Ship: Onyx # Ship: Orthrus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilekineticdamagecf.py b/eos/effects/shipmissilekineticdamagecf.py index 665c22f84..3718e1666 100644 --- a/eos/effects/shipmissilekineticdamagecf.py +++ b/eos/effects/shipmissilekineticdamagecf.py @@ -5,6 +5,8 @@ # Ship: Condor # Ship: Hawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilekineticdamagecf2.py b/eos/effects/shipmissilekineticdamagecf2.py index c5a2c0f0a..c5a047761 100644 --- a/eos/effects/shipmissilekineticdamagecf2.py +++ b/eos/effects/shipmissilekineticdamagecf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Garmur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilekineticdamagerookie.py b/eos/effects/shipmissilekineticdamagerookie.py index dd9e1f1ee..4ab352344 100644 --- a/eos/effects/shipmissilekineticdamagerookie.py +++ b/eos/effects/shipmissilekineticdamagerookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ibis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", ship.getModifiedItemAttr("rookieMissileKinDamageBonus")) diff --git a/eos/effects/shipmissilelauncherrofad1fixed.py b/eos/effects/shipmissilelauncherrofad1fixed.py index 7c28cce64..37b8abfc7 100644 --- a/eos/effects/shipmissilelauncherrofad1fixed.py +++ b/eos/effects/shipmissilelauncherrofad1fixed.py @@ -3,6 +3,8 @@ # Used by: # Ship: Heretic type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", ship.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") \ No newline at end of file + "speed", ship.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipmissilelauncherrofcc2.py b/eos/effects/shipmissilelauncherrofcc2.py index a73513db6..1c1ce33d4 100644 --- a/eos/effects/shipmissilelauncherrofcc2.py +++ b/eos/effects/shipmissilelauncherrofcc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Onyx type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "speed", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilelauncherspeedbonusmc2.py b/eos/effects/shipmissilelauncherspeedbonusmc2.py index 93c9bb262..b070d3b2c 100644 --- a/eos/effects/shipmissilelauncherspeedbonusmc2.py +++ b/eos/effects/shipmissilelauncherspeedbonusmc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Bellicose type = "passive" + + def handler(fit, ship, context): groups = ("Missile Launcher Rapid Light", "Missile Launcher Heavy", "Missile Launcher Heavy Assault") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/shipmissilelightvelocitybonuscc2.py b/eos/effects/shipmissilelightvelocitybonuscc2.py index 5c746a81d..32a307ef8 100644 --- a/eos/effects/shipmissilelightvelocitybonuscc2.py +++ b/eos/effects/shipmissilelightvelocitybonuscc2.py @@ -4,6 +4,8 @@ # Ship: Caracal # Ship: Osprey Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilereloadtimecaldaritacticaldestroyer2.py b/eos/effects/shipmissilereloadtimecaldaritacticaldestroyer2.py index f135240bf..7dbed2442 100644 --- a/eos/effects/shipmissilereloadtimecaldaritacticaldestroyer2.py +++ b/eos/effects/shipmissilereloadtimecaldaritacticaldestroyer2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Jackdaw type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "reloadTime", ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari2"), skill="Caldari Tactical Destroyer") + "reloadTime", ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari2"), + skill="Caldari Tactical Destroyer") diff --git a/eos/effects/shipmissilerofcaldaritacticaldestroyer1.py b/eos/effects/shipmissilerofcaldaritacticaldestroyer1.py index 9bb6ba979..f0d7c2926 100644 --- a/eos/effects/shipmissilerofcaldaritacticaldestroyer1.py +++ b/eos/effects/shipmissilerofcaldaritacticaldestroyer1.py @@ -3,8 +3,9 @@ # Used by: # Ship: Jackdaw type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari1"), skill="Caldari Tactical Destroyer") - - + "speed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari1"), + skill="Caldari Tactical Destroyer") diff --git a/eos/effects/shipmissilerofcc.py b/eos/effects/shipmissilerofcc.py index 933fe04ac..785726f9c 100644 --- a/eos/effects/shipmissilerofcc.py +++ b/eos/effects/shipmissilerofcc.py @@ -3,6 +3,8 @@ # Used by: # Ships named like: Caracal (2 of 2) type = "passive" + + def handler(fit, ship, context): groups = ("Missile Launcher Heavy", "Missile Launcher Rapid Light", "Missile Launcher Heavy Assault") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/shipmissilerofmf2.py b/eos/effects/shipmissilerofmf2.py index 04ac24d59..140e856db 100644 --- a/eos/effects/shipmissilerofmf2.py +++ b/eos/effects/shipmissilerofmf2.py @@ -3,8 +3,8 @@ # Used by: # Ship: Breacher type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "speed", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") - - diff --git a/eos/effects/shipmissilespeedbonusaf.py b/eos/effects/shipmissilespeedbonusaf.py index 39dfb807f..b99ef42a4 100644 --- a/eos/effects/shipmissilespeedbonusaf.py +++ b/eos/effects/shipmissilespeedbonusaf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "speed", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipmissilespeedbonuscf.py b/eos/effects/shipmissilespeedbonuscf.py index 5351d8045..c73d8a7db 100644 --- a/eos/effects/shipmissilespeedbonuscf.py +++ b/eos/effects/shipmissilespeedbonuscf.py @@ -4,6 +4,8 @@ # Ship: Buzzard # Ship: Hawk type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "speed", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilethermaldamagecf2.py b/eos/effects/shipmissilethermaldamagecf2.py index 80af650d9..c61c29ee1 100644 --- a/eos/effects/shipmissilethermaldamagecf2.py +++ b/eos/effects/shipmissilethermaldamagecf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Garmur type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilethermdamagecb.py b/eos/effects/shipmissilethermdamagecb.py index 6a6dde8b8..ccf2ec27e 100644 --- a/eos/effects/shipmissilethermdamagecb.py +++ b/eos/effects/shipmissilethermdamagecb.py @@ -3,6 +3,9 @@ # Used by: # Ship: Barghest type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") + "thermalDamage", ship.getModifiedItemAttr("shipBonusCB"), + skill="Caldari Battleship") diff --git a/eos/effects/shipmissilethermdamagecc.py b/eos/effects/shipmissilethermdamagecc.py index 6bef70ccf..175af5266 100644 --- a/eos/effects/shipmissilethermdamagecc.py +++ b/eos/effects/shipmissilethermdamagecc.py @@ -4,6 +4,8 @@ # Ship: Orthrus # Ship: Osprey Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilevelocitycd1.py b/eos/effects/shipmissilevelocitycd1.py index 545668606..370f666b2 100644 --- a/eos/effects/shipmissilevelocitycd1.py +++ b/eos/effects/shipmissilevelocitycd1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Flycatcher type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shipmissilevelocitycf.py b/eos/effects/shipmissilevelocitycf.py index 3bb7fe4c6..1e884505d 100644 --- a/eos/effects/shipmissilevelocitycf.py +++ b/eos/effects/shipmissilevelocitycf.py @@ -5,6 +5,8 @@ # Ship: Crow # Ship: Kestrel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilevelocitypiratefactionfrigate.py b/eos/effects/shipmissilevelocitypiratefactionfrigate.py index c22cfb6ca..4e4e03685 100644 --- a/eos/effects/shipmissilevelocitypiratefactionfrigate.py +++ b/eos/effects/shipmissilevelocitypiratefactionfrigate.py @@ -5,6 +5,8 @@ # Ship: Garmur # Ship: Orthrus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipmissilevelocitypiratefactionlight.py b/eos/effects/shipmissilevelocitypiratefactionlight.py index 3e073e3a2..ece99d75b 100644 --- a/eos/effects/shipmissilevelocitypiratefactionlight.py +++ b/eos/effects/shipmissilevelocitypiratefactionlight.py @@ -4,6 +4,8 @@ # Ship: Corax # Ship: Talwar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), "maxVelocity", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipmissilevelocitypiratefactionrocket.py b/eos/effects/shipmissilevelocitypiratefactionrocket.py index 0f181ed66..23cf6f34b 100644 --- a/eos/effects/shipmissilevelocitypiratefactionrocket.py +++ b/eos/effects/shipmissilevelocitypiratefactionrocket.py @@ -4,6 +4,8 @@ # Ship: Corax # Ship: Talwar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "maxVelocity", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipmodemaxtargetrangepostdiv.py b/eos/effects/shipmodemaxtargetrangepostdiv.py index e38ed8dfe..d6f46f428 100644 --- a/eos/effects/shipmodemaxtargetrangepostdiv.py +++ b/eos/effects/shipmodemaxtargetrangepostdiv.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Sharpshooter Mode (4 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr( "maxTargetRange", diff --git a/eos/effects/shipmodemissilevelocitypostdiv.py b/eos/effects/shipmodemissilevelocitypostdiv.py index e713dd801..994a5bf74 100644 --- a/eos/effects/shipmodemissilevelocitypostdiv.py +++ b/eos/effects/shipmodemissilevelocitypostdiv.py @@ -3,6 +3,8 @@ # Used by: # Module: Jackdaw Sharpshooter Mode type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeMultiply( lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), diff --git a/eos/effects/shipmodescanrespostdiv.py b/eos/effects/shipmodescanrespostdiv.py index f89c8152f..fd156dee4 100644 --- a/eos/effects/shipmodescanrespostdiv.py +++ b/eos/effects/shipmodescanrespostdiv.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Sharpshooter Mode (4 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.multiplyItemAttr( "scanResolution", diff --git a/eos/effects/shipmodescanstrengthpostdiv.py b/eos/effects/shipmodescanstrengthpostdiv.py index eac3f8b61..544eac1b2 100644 --- a/eos/effects/shipmodescanstrengthpostdiv.py +++ b/eos/effects/shipmodescanstrengthpostdiv.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Sharpshooter Mode (4 of 4) type = "passive" + + def handler(fit, module, context): for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): fit.ship.multiplyItemAttr( diff --git a/eos/effects/shipmodesetoptimalrangepostdiv.py b/eos/effects/shipmodesetoptimalrangepostdiv.py index a4aadbee8..4279bc167 100644 --- a/eos/effects/shipmodesetoptimalrangepostdiv.py +++ b/eos/effects/shipmodesetoptimalrangepostdiv.py @@ -3,6 +3,8 @@ # Used by: # Module: Confessor Sharpshooter Mode type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply( lambda mod: mod.item.requiresSkill("Small Energy Turret"), diff --git a/eos/effects/shipmodeshtoptimalrangepostdiv.py b/eos/effects/shipmodeshtoptimalrangepostdiv.py index 4b38fdd71..724cad5de 100644 --- a/eos/effects/shipmodeshtoptimalrangepostdiv.py +++ b/eos/effects/shipmodeshtoptimalrangepostdiv.py @@ -3,6 +3,8 @@ # Used by: # Module: Hecate Sharpshooter Mode type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply( lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), diff --git a/eos/effects/shipmodespttrackingpostdiv.py b/eos/effects/shipmodespttrackingpostdiv.py index 40c5cdaeb..6e3563316 100644 --- a/eos/effects/shipmodespttrackingpostdiv.py +++ b/eos/effects/shipmodespttrackingpostdiv.py @@ -3,6 +3,8 @@ # Used by: # Module: Svipul Sharpshooter Mode type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemMultiply( lambda mod: mod.item.requiresSkill("Small Projectile Turret"), diff --git a/eos/effects/shipmtfalloffbonusatc.py b/eos/effects/shipmtfalloffbonusatc.py index d34021453..199209b3a 100644 --- a/eos/effects/shipmtfalloffbonusatc.py +++ b/eos/effects/shipmtfalloffbonusatc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Mimir type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "falloff", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipmtfalloffbonusatf.py b/eos/effects/shipmtfalloffbonusatf.py index 27493c060..737efa570 100644 --- a/eos/effects/shipmtfalloffbonusatf.py +++ b/eos/effects/shipmtfalloffbonusatf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Freki type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusATF2")) \ No newline at end of file + "falloff", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipmtmaxrangebonusatc.py b/eos/effects/shipmtmaxrangebonusatc.py index 2219baabe..0cc9e309a 100644 --- a/eos/effects/shipmtmaxrangebonusatc.py +++ b/eos/effects/shipmtmaxrangebonusatc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Mimir type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipmtmaxrangebonusatf.py b/eos/effects/shipmtmaxrangebonusatf.py index a773a9f8b..e59725ea0 100644 --- a/eos/effects/shipmtmaxrangebonusatf.py +++ b/eos/effects/shipmtmaxrangebonusatf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Freki type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipneutdestabilizationamountbonusrookie.py b/eos/effects/shipneutdestabilizationamountbonusrookie.py index 1d1aa57ad..3a98a9e7c 100644 --- a/eos/effects/shipneutdestabilizationamountbonusrookie.py +++ b/eos/effects/shipneutdestabilizationamountbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Hematos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "energyNeutralizerAmount", ship.getModifiedItemAttr("rookieNeutDrain")) diff --git a/eos/effects/shipnostransferamountbonusrookie.py b/eos/effects/shipnostransferamountbonusrookie.py index 810539815..fbbe40fc0 100644 --- a/eos/effects/shipnostransferamountbonusrookie.py +++ b/eos/effects/shipnostransferamountbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Hematos type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "powerTransferAmount", ship.getModifiedItemAttr("rookieNosDrain")) diff --git a/eos/effects/shippdmgbonusmf.py b/eos/effects/shippdmgbonusmf.py index b9f221871..4fa2ee88e 100644 --- a/eos/effects/shippdmgbonusmf.py +++ b/eos/effects/shippdmgbonusmf.py @@ -7,6 +7,8 @@ # Ship: Freki # Ship: Republic Fleet Firetail type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipprojectiledamagemd1.py b/eos/effects/shipprojectiledamagemd1.py index 3aca825cd..171332da4 100644 --- a/eos/effects/shipprojectiledamagemd1.py +++ b/eos/effects/shipprojectiledamagemd1.py @@ -3,6 +3,9 @@ # Used by: # Variations of ship: Thrasher (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusMD1"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shipprojectiledmgmc.py b/eos/effects/shipprojectiledmgmc.py index 843de102e..4a236b998 100644 --- a/eos/effects/shipprojectiledmgmc.py +++ b/eos/effects/shipprojectiledmgmc.py @@ -3,6 +3,8 @@ # Used by: # Ship: Mimir type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipprojectiledmgmc2.py b/eos/effects/shipprojectiledmgmc2.py index d12ee574b..c313f8e7e 100644 --- a/eos/effects/shipprojectiledmgmc2.py +++ b/eos/effects/shipprojectiledmgmc2.py @@ -5,6 +5,9 @@ # Ship: Cynabal # Ship: Moracha type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shipprojectiledmgpiratecruiser.py b/eos/effects/shipprojectiledmgpiratecruiser.py index d7f8502a2..6753262b9 100644 --- a/eos/effects/shipprojectiledmgpiratecruiser.py +++ b/eos/effects/shipprojectiledmgpiratecruiser.py @@ -3,6 +3,8 @@ # Used by: # Ship: Gnosis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipprojectilefalloffbonusmbc2.py b/eos/effects/shipprojectilefalloffbonusmbc2.py index ba1715a21..cd9fc15ae 100644 --- a/eos/effects/shipprojectilefalloffbonusmbc2.py +++ b/eos/effects/shipprojectilefalloffbonusmbc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Tornado type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "falloff", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipprojectileoptimalbonusemf2.py b/eos/effects/shipprojectileoptimalbonusemf2.py index fe1aa2fbf..d4245be72 100644 --- a/eos/effects/shipprojectileoptimalbonusemf2.py +++ b/eos/effects/shipprojectileoptimalbonusemf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Cheetah type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipprojectilerof1mbc2.py b/eos/effects/shipprojectilerof1mbc2.py index 691116b52..da832307f 100644 --- a/eos/effects/shipprojectilerof1mbc2.py +++ b/eos/effects/shipprojectilerof1mbc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Hurricane type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "speed", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipprojectilerofbonusmbc1.py b/eos/effects/shipprojectilerofbonusmbc1.py index bdac0bc58..6df3698af 100644 --- a/eos/effects/shipprojectilerofbonusmbc1.py +++ b/eos/effects/shipprojectilerofbonusmbc1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Tornado type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "speed", ship.getModifiedItemAttr("shipBonusMBC1"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipprojectilerofpiratebattleship.py b/eos/effects/shipprojectilerofpiratebattleship.py index 7cf436feb..dac3c2544 100644 --- a/eos/effects/shipprojectilerofpiratebattleship.py +++ b/eos/effects/shipprojectilerofpiratebattleship.py @@ -3,6 +3,8 @@ # Used by: # Ship: Machariel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "speed", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipprojectilerofpiratecruiser.py b/eos/effects/shipprojectilerofpiratecruiser.py index 85f5f2bab..fae33e206 100644 --- a/eos/effects/shipprojectilerofpiratecruiser.py +++ b/eos/effects/shipprojectilerofpiratecruiser.py @@ -4,6 +4,8 @@ # Ship: Cynabal # Ship: Moracha type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "speed", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipprojectiletracking1md2.py b/eos/effects/shipprojectiletracking1md2.py index 8ccf42bd8..a2b7e2371 100644 --- a/eos/effects/shipprojectiletracking1md2.py +++ b/eos/effects/shipprojectiletracking1md2.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Thrasher (2 of 2) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusMD2"), skill="Minmatar Destroyer") diff --git a/eos/effects/shipprojectiletrackinggf.py b/eos/effects/shipprojectiletrackinggf.py index 0085c314a..f4f73849f 100644 --- a/eos/effects/shipprojectiletrackinggf.py +++ b/eos/effects/shipprojectiletrackinggf.py @@ -4,6 +4,8 @@ # Ship: Chremoas # Ship: Dramiel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipprojectiletrackingmf2.py b/eos/effects/shipprojectiletrackingmf2.py index 03dc39d2e..88b8f6226 100644 --- a/eos/effects/shipprojectiletrackingmf2.py +++ b/eos/effects/shipprojectiletrackingmf2.py @@ -6,6 +6,8 @@ # Ship: Republic Fleet Firetail # Ship: Wolf type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipptdmgbonusmb.py b/eos/effects/shipptdmgbonusmb.py index bfd3d4028..f6809435e 100644 --- a/eos/effects/shipptdmgbonusmb.py +++ b/eos/effects/shipptdmgbonusmb.py @@ -5,6 +5,9 @@ # Ship: Machariel # Ship: Panther type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusMB"), + skill="Minmatar Battleship") diff --git a/eos/effects/shipptspeedbonusmb2.py b/eos/effects/shipptspeedbonusmb2.py index c403ee452..79d00479b 100644 --- a/eos/effects/shipptspeedbonusmb2.py +++ b/eos/effects/shipptspeedbonusmb2.py @@ -6,6 +6,8 @@ # Ship: Panther # Ship: Typhoon Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "speed", ship.getModifiedItemAttr("shipBonusMB2"), skill="Minmatar Battleship") diff --git a/eos/effects/shippturretfalloffbonusgb.py b/eos/effects/shippturretfalloffbonusgb.py index 2ee55dd4d..18a7dfc80 100644 --- a/eos/effects/shippturretfalloffbonusgb.py +++ b/eos/effects/shippturretfalloffbonusgb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Machariel type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "falloff", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shippturretfalloffbonusgc.py b/eos/effects/shippturretfalloffbonusgc.py index 315df7bf3..ba5f3f80d 100644 --- a/eos/effects/shippturretfalloffbonusgc.py +++ b/eos/effects/shippturretfalloffbonusgc.py @@ -4,6 +4,8 @@ # Ship: Cynabal # Ship: Moracha type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "falloff", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shippturretfalloffbonusmc2.py b/eos/effects/shippturretfalloffbonusmc2.py index 390742d77..b47f36f1d 100644 --- a/eos/effects/shippturretfalloffbonusmc2.py +++ b/eos/effects/shippturretfalloffbonusmc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Stabber type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "falloff", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shippturretspeedbonusmc.py b/eos/effects/shippturretspeedbonusmc.py index 608073c62..713a2b7de 100644 --- a/eos/effects/shippturretspeedbonusmc.py +++ b/eos/effects/shippturretspeedbonusmc.py @@ -6,6 +6,8 @@ # Ship: Huginn # Ship: Scythe Fleet Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), "speed", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipremotearmorfalloffac2.py b/eos/effects/shipremotearmorfalloffac2.py index 4194a0eee..8b86803ea 100644 --- a/eos/effects/shipremotearmorfalloffac2.py +++ b/eos/effects/shipremotearmorfalloffac2.py @@ -3,5 +3,9 @@ # Used by: # Ship: Guardian type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), + "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAC2"), + skill="Amarr Cruiser") diff --git a/eos/effects/shipremotearmorfalloffgc1.py b/eos/effects/shipremotearmorfalloffgc1.py index 03a5b8b3c..956f3158e 100644 --- a/eos/effects/shipremotearmorfalloffgc1.py +++ b/eos/effects/shipremotearmorfalloffgc1.py @@ -3,5 +3,9 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "falloffEffectiveness", src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), + "falloffEffectiveness", src.getModifiedItemAttr("shipBonusGC"), + skill="Gallente Cruiser") diff --git a/eos/effects/shipremotearmorrange1.py b/eos/effects/shipremotearmorrange1.py index 6db4e683e..0523c9f95 100644 --- a/eos/effects/shipremotearmorrange1.py +++ b/eos/effects/shipremotearmorrange1.py @@ -3,6 +3,8 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", - "maxRange", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipremotearmorrange2.py b/eos/effects/shipremotearmorrange2.py index 457cd5134..f54471069 100644 --- a/eos/effects/shipremotearmorrange2.py +++ b/eos/effects/shipremotearmorrange2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Guardian type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", "maxRange", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipremotearmorrangeac2.py b/eos/effects/shipremotearmorrangeac2.py index d06c6912e..05e10ee65 100644 --- a/eos/effects/shipremotearmorrangeac2.py +++ b/eos/effects/shipremotearmorrangeac2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Guardian type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange", src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange", + src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipremotearmorrangegc1.py b/eos/effects/shipremotearmorrangegc1.py index 718c4503b..737631924 100644 --- a/eos/effects/shipremotearmorrangegc1.py +++ b/eos/effects/shipremotearmorrangegc1.py @@ -3,5 +3,8 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange", src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange", + src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipremotesensordampenercapneedgf.py b/eos/effects/shipremotesensordampenercapneedgf.py index 65a8e0524..ac0d80650 100644 --- a/eos/effects/shipremotesensordampenercapneedgf.py +++ b/eos/effects/shipremotesensordampenercapneedgf.py @@ -4,6 +4,8 @@ # Ship: Keres # Ship: Maulus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", "capacitorNeed", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shiprocketemdmgaf.py b/eos/effects/shiprocketemdmgaf.py index 4e2cf3ff7..440ae90cb 100644 --- a/eos/effects/shiprocketemdmgaf.py +++ b/eos/effects/shiprocketemdmgaf.py @@ -4,6 +4,8 @@ # Ship: Anathema # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "emDamage", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiprocketemthermkindmgmf2.py b/eos/effects/shiprocketemthermkindmgmf2.py index f5a3e3f79..0508f7f78 100644 --- a/eos/effects/shiprocketemthermkindmgmf2.py +++ b/eos/effects/shiprocketemthermkindmgmf2.py @@ -3,7 +3,12 @@ # Used by: # Ship: Vigil Fleet Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "emDamage", src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "thermalDamage", src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "kineticDamage", src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "emDamage", + src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "thermalDamage", + src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "kineticDamage", + src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shiprocketexpdmgmf3.py b/eos/effects/shiprocketexpdmgmf3.py index 2ba97c41d..022036560 100644 --- a/eos/effects/shiprocketexpdmgmf3.py +++ b/eos/effects/shiprocketexpdmgmf3.py @@ -3,5 +3,8 @@ # Used by: # Ship: Vigil Fleet Issue type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "explosiveDamage", src.getModifiedItemAttr("shipBonus3MF"), skill="Minmatar Frigate") + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "explosiveDamage", + src.getModifiedItemAttr("shipBonus3MF"), skill="Minmatar Frigate") diff --git a/eos/effects/shiprocketexplosivedmgaf.py b/eos/effects/shiprocketexplosivedmgaf.py index 94c1b5bae..4ff2ef7f2 100644 --- a/eos/effects/shiprocketexplosivedmgaf.py +++ b/eos/effects/shiprocketexplosivedmgaf.py @@ -4,6 +4,8 @@ # Ship: Anathema # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "explosiveDamage", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiprocketexplosivedmgmd1.py b/eos/effects/shiprocketexplosivedmgmd1.py index d2ee8f419..73c57b8aa 100644 --- a/eos/effects/shiprocketexplosivedmgmd1.py +++ b/eos/effects/shiprocketexplosivedmgmd1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Talwar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") + "explosiveDamage", ship.getModifiedItemAttr("shipBonusMD1"), + skill="Minmatar Destroyer") diff --git a/eos/effects/shiprocketkineticdmgaf.py b/eos/effects/shiprocketkineticdmgaf.py index 5198af656..f3b178535 100644 --- a/eos/effects/shiprocketkineticdmgaf.py +++ b/eos/effects/shiprocketkineticdmgaf.py @@ -4,6 +4,8 @@ # Ship: Anathema # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "kineticDamage", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiprocketkineticdmgcd1.py b/eos/effects/shiprocketkineticdmgcd1.py index 9e34cee8f..79de18da3 100644 --- a/eos/effects/shiprocketkineticdmgcd1.py +++ b/eos/effects/shiprocketkineticdmgcd1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Corax type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") + "kineticDamage", ship.getModifiedItemAttr("shipBonusCD1"), + skill="Caldari Destroyer") diff --git a/eos/effects/shiprocketmaxvelocitybonusrookie.py b/eos/effects/shiprocketmaxvelocitybonusrookie.py index 0ea86b89a..998eb54e8 100644 --- a/eos/effects/shiprocketmaxvelocitybonusrookie.py +++ b/eos/effects/shiprocketmaxvelocitybonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Taipan type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "maxVelocity", ship.getModifiedItemAttr("rookieRocketVelocity")) diff --git a/eos/effects/shiprocketrofbonusaf2.py b/eos/effects/shiprocketrofbonusaf2.py index 3f4ebc575..d272d6ec7 100644 --- a/eos/effects/shiprocketrofbonusaf2.py +++ b/eos/effects/shiprocketrofbonusaf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Malediction type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rocket", "speed", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shiprocketthermaldmgaf.py b/eos/effects/shiprocketthermaldmgaf.py index a524f2a43..b937c6760 100644 --- a/eos/effects/shiprocketthermaldmgaf.py +++ b/eos/effects/shiprocketthermaldmgaf.py @@ -4,6 +4,8 @@ # Ship: Anathema # Ship: Vengeance type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "thermalDamage", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipscanprobestrengthbonuspiratecruiser.py b/eos/effects/shipscanprobestrengthbonuspiratecruiser.py index 83f41c003..8672aad79 100644 --- a/eos/effects/shipscanprobestrengthbonuspiratecruiser.py +++ b/eos/effects/shipscanprobestrengthbonuspiratecruiser.py @@ -5,6 +5,8 @@ # Ship: Astero # Ship: Gnosis type = "passive" + + def handler(fit, container, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), "baseSensorStrength", container.getModifiedItemAttr("shipBonusPirateFaction2")) diff --git a/eos/effects/shipscanprobestrengthbonuspiratefaction.py b/eos/effects/shipscanprobestrengthbonuspiratefaction.py index a70cee109..c5146f252 100644 --- a/eos/effects/shipscanprobestrengthbonuspiratefaction.py +++ b/eos/effects/shipscanprobestrengthbonuspiratefaction.py @@ -3,6 +3,8 @@ # Used by: # Ship: Nestor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), "baseSensorStrength", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipscanresolutionbonusonline.py b/eos/effects/shipscanresolutionbonusonline.py index 280cd188e..1de730658 100644 --- a/eos/effects/shipscanresolutionbonusonline.py +++ b/eos/effects/shipscanresolutionbonusonline.py @@ -4,6 +4,8 @@ # Modules from group: Signal Amplifier (7 of 7) # Module: QA Damage Module type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/shipsetcapneedamarrtacticaldestroyer2.py b/eos/effects/shipsetcapneedamarrtacticaldestroyer2.py index 1efdfc0d0..3cf50a439 100644 --- a/eos/effects/shipsetcapneedamarrtacticaldestroyer2.py +++ b/eos/effects/shipsetcapneedamarrtacticaldestroyer2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Confessor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr2"), skill="Amarr Tactical Destroyer") + "capacitorNeed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr2"), + skill="Amarr Tactical Destroyer") diff --git a/eos/effects/shipsetdamageamarrtacticaldestroyer1.py b/eos/effects/shipsetdamageamarrtacticaldestroyer1.py index 61ce24b4f..ce45c042a 100644 --- a/eos/effects/shipsetdamageamarrtacticaldestroyer1.py +++ b/eos/effects/shipsetdamageamarrtacticaldestroyer1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Confessor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr1"), skill="Amarr Tactical Destroyer") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr1"), + skill="Amarr Tactical Destroyer") diff --git a/eos/effects/shipsetdmgbonusaf.py b/eos/effects/shipsetdmgbonusaf.py index 920aae96c..5ecc4f4a2 100644 --- a/eos/effects/shipsetdmgbonusaf.py +++ b/eos/effects/shipsetdmgbonusaf.py @@ -6,6 +6,8 @@ # Ship: Silver Magnate # Ship: Tormentor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipsetdmgbonusrookie.py b/eos/effects/shipsetdmgbonusrookie.py index 658262897..d32fd04e7 100644 --- a/eos/effects/shipsetdmgbonusrookie.py +++ b/eos/effects/shipsetdmgbonusrookie.py @@ -5,6 +5,8 @@ # Ship: Immolator # Ship: Impairor type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("rookieSETDamageBonus")) diff --git a/eos/effects/shipsetoptimalbonusrookie.py b/eos/effects/shipsetoptimalbonusrookie.py index d64510404..771ffbc65 100644 --- a/eos/effects/shipsetoptimalbonusrookie.py +++ b/eos/effects/shipsetoptimalbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Immolator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "maxRange", ship.getModifiedItemAttr("rookieSETOptimal")) diff --git a/eos/effects/shipsettrackingbonusaf.py b/eos/effects/shipsettrackingbonusaf.py index 3d5f3e671..f14d24419 100644 --- a/eos/effects/shipsettrackingbonusaf.py +++ b/eos/effects/shipsettrackingbonusaf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Retribution type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipsettrackingbonusrookie.py b/eos/effects/shipsettrackingbonusrookie.py index dc3c4a875..c901d1374 100644 --- a/eos/effects/shipsettrackingbonusrookie.py +++ b/eos/effects/shipsettrackingbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Immolator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "trackingSpeed", ship.getModifiedItemAttr("rookieSETTracking")) diff --git a/eos/effects/shipshieldboost1mbc1.py b/eos/effects/shipshieldboost1mbc1.py index 22f5ccf36..5f9abe465 100644 --- a/eos/effects/shipshieldboost1mbc1.py +++ b/eos/effects/shipshieldboost1mbc1.py @@ -4,6 +4,9 @@ # Variations of ship: Cyclone (2 of 2) # Ship: Sleipnir type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusMBC1"), skill="Minmatar Battlecruiser") + "shieldBonus", ship.getModifiedItemAttr("shipBonusMBC1"), + skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipshieldboostmf.py b/eos/effects/shipshieldboostmf.py index 3eac982bb..1931f684d 100644 --- a/eos/effects/shipshieldboostmf.py +++ b/eos/effects/shipshieldboostmf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Breacher type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipshieldboostrookie.py b/eos/effects/shipshieldboostrookie.py index 5a68e719a..55cf58a78 100644 --- a/eos/effects/shipshieldboostrookie.py +++ b/eos/effects/shipshieldboostrookie.py @@ -4,6 +4,8 @@ # Ship: Immolator # Ship: Reaper type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", ship.getModifiedItemAttr("rookieShieldBoostBonus")) diff --git a/eos/effects/shipshieldemresistance1cbc2.py b/eos/effects/shipshieldemresistance1cbc2.py index 596be5ef5..83a19ed65 100644 --- a/eos/effects/shipshieldemresistance1cbc2.py +++ b/eos/effects/shipshieldemresistance1cbc2.py @@ -4,5 +4,8 @@ # Variations of ship: Drake (3 of 3) # Ship: Vulture type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") + fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shipshieldemresistancecc2.py b/eos/effects/shipshieldemresistancecc2.py index 13fc8fef3..20a8e86a3 100644 --- a/eos/effects/shipshieldemresistancecc2.py +++ b/eos/effects/shipshieldemresistancecc2.py @@ -3,5 +3,7 @@ # Used by: # Variations of ship: Moa (3 of 4) type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldemresistancecf2.py b/eos/effects/shipshieldemresistancecf2.py index 9fd39ede5..4e68a86aa 100644 --- a/eos/effects/shipshieldemresistancecf2.py +++ b/eos/effects/shipshieldemresistancecf2.py @@ -5,5 +5,7 @@ # Ship: Cambion # Ship: Whiptail type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipshieldemresistancerookie.py b/eos/effects/shipshieldemresistancerookie.py index c767db3fd..7005269f0 100644 --- a/eos/effects/shipshieldemresistancerookie.py +++ b/eos/effects/shipshieldemresistancerookie.py @@ -5,5 +5,7 @@ # Ship: Ibis # Ship: Taipan type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("rookieShieldResistBonus")) diff --git a/eos/effects/shipshieldexplosiveresistance1cbc2.py b/eos/effects/shipshieldexplosiveresistance1cbc2.py index b682971f3..5f5559e19 100644 --- a/eos/effects/shipshieldexplosiveresistance1cbc2.py +++ b/eos/effects/shipshieldexplosiveresistance1cbc2.py @@ -4,5 +4,8 @@ # Variations of ship: Drake (3 of 3) # Ship: Vulture type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shipshieldexplosiveresistancecc2.py b/eos/effects/shipshieldexplosiveresistancecc2.py index e40a36269..203b2676a 100644 --- a/eos/effects/shipshieldexplosiveresistancecc2.py +++ b/eos/effects/shipshieldexplosiveresistancecc2.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Moa (3 of 4) type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), + skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldexplosiveresistancecf2.py b/eos/effects/shipshieldexplosiveresistancecf2.py index d71caf7c9..264c2b94d 100644 --- a/eos/effects/shipshieldexplosiveresistancecf2.py +++ b/eos/effects/shipshieldexplosiveresistancecf2.py @@ -5,5 +5,8 @@ # Ship: Cambion # Ship: Whiptail type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), + skill="Caldari Frigate") diff --git a/eos/effects/shipshieldexplosiveresistancerookie.py b/eos/effects/shipshieldexplosiveresistancerookie.py index 7ef2c5713..fc80e979d 100644 --- a/eos/effects/shipshieldexplosiveresistancerookie.py +++ b/eos/effects/shipshieldexplosiveresistancerookie.py @@ -5,5 +5,7 @@ # Ship: Ibis # Ship: Taipan type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("rookieShieldResistBonus")) diff --git a/eos/effects/shipshieldkineticresistance1cbc2.py b/eos/effects/shipshieldkineticresistance1cbc2.py index e6e90197e..4fccf027e 100644 --- a/eos/effects/shipshieldkineticresistance1cbc2.py +++ b/eos/effects/shipshieldkineticresistance1cbc2.py @@ -4,5 +4,8 @@ # Variations of ship: Drake (3 of 3) # Ship: Vulture type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") + fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shipshieldkineticresistancecc2.py b/eos/effects/shipshieldkineticresistancecc2.py index ee429305f..d8477420c 100644 --- a/eos/effects/shipshieldkineticresistancecc2.py +++ b/eos/effects/shipshieldkineticresistancecc2.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Moa (3 of 4) type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") + fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), + skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldkineticresistancecf2.py b/eos/effects/shipshieldkineticresistancecf2.py index efbdbb184..3fd3ebb89 100644 --- a/eos/effects/shipshieldkineticresistancecf2.py +++ b/eos/effects/shipshieldkineticresistancecf2.py @@ -5,5 +5,8 @@ # Ship: Cambion # Ship: Whiptail type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") + fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), + skill="Caldari Frigate") diff --git a/eos/effects/shipshieldkineticresistancerookie.py b/eos/effects/shipshieldkineticresistancerookie.py index 5ede0d774..1d9a00d39 100644 --- a/eos/effects/shipshieldkineticresistancerookie.py +++ b/eos/effects/shipshieldkineticresistancerookie.py @@ -5,5 +5,7 @@ # Ship: Ibis # Ship: Taipan type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("rookieShieldResistBonus")) diff --git a/eos/effects/shipshieldthermalresistance1cbc2.py b/eos/effects/shipshieldthermalresistance1cbc2.py index db0da414a..fad8935c7 100644 --- a/eos/effects/shipshieldthermalresistance1cbc2.py +++ b/eos/effects/shipshieldthermalresistance1cbc2.py @@ -4,5 +4,8 @@ # Variations of ship: Drake (3 of 3) # Ship: Vulture type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") + fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), + skill="Caldari Battlecruiser") diff --git a/eos/effects/shipshieldthermalresistancecc2.py b/eos/effects/shipshieldthermalresistancecc2.py index c84d5007a..9c9328d43 100644 --- a/eos/effects/shipshieldthermalresistancecc2.py +++ b/eos/effects/shipshieldthermalresistancecc2.py @@ -3,5 +3,8 @@ # Used by: # Variations of ship: Moa (3 of 4) type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") + fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), + skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldthermalresistancecf2.py b/eos/effects/shipshieldthermalresistancecf2.py index df75d3e00..739d4033f 100644 --- a/eos/effects/shipshieldthermalresistancecf2.py +++ b/eos/effects/shipshieldthermalresistancecf2.py @@ -5,5 +5,8 @@ # Ship: Cambion # Ship: Whiptail type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") + fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), + skill="Caldari Frigate") diff --git a/eos/effects/shipshieldthermalresistancerookie.py b/eos/effects/shipshieldthermalresistancerookie.py index 4190a1a32..6b270aa7d 100644 --- a/eos/effects/shipshieldthermalresistancerookie.py +++ b/eos/effects/shipshieldthermalresistancerookie.py @@ -5,5 +5,7 @@ # Ship: Ibis # Ship: Taipan type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("rookieShieldResistBonus")) diff --git a/eos/effects/shipshieldtransferfalloffcc1.py b/eos/effects/shipshieldtransferfalloffcc1.py index 515f25bd2..64acc7099 100644 --- a/eos/effects/shipshieldtransferfalloffcc1.py +++ b/eos/effects/shipshieldtransferfalloffcc1.py @@ -4,5 +4,8 @@ # Ship: Basilisk # Ship: Etana type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "falloffEffectiveness", src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "falloffEffectiveness", + src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldtransferfalloffmc2.py b/eos/effects/shipshieldtransferfalloffmc2.py index 5f5afb211..23a27ca85 100644 --- a/eos/effects/shipshieldtransferfalloffmc2.py +++ b/eos/effects/shipshieldtransferfalloffmc2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "falloffEffectiveness", src.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "falloffEffectiveness", + src.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipshieldtransferrange1.py b/eos/effects/shipshieldtransferrange1.py index aee106097..15d4c644d 100644 --- a/eos/effects/shipshieldtransferrange1.py +++ b/eos/effects/shipshieldtransferrange1.py @@ -4,6 +4,9 @@ # Ship: Basilisk # Ship: Etana type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", - "shieldTransferRange", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") + "shieldTransferRange", ship.getModifiedItemAttr("shipBonusCC"), + skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldtransferrange2.py b/eos/effects/shipshieldtransferrange2.py index 9246c9005..f86fee17f 100644 --- a/eos/effects/shipshieldtransferrange2.py +++ b/eos/effects/shipshieldtransferrange2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", - "shieldTransferRange", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + "shieldTransferRange", ship.getModifiedItemAttr("shipBonusMC2"), + skill="Minmatar Cruiser") diff --git a/eos/effects/shipshieldtransferrangecc1.py b/eos/effects/shipshieldtransferrangecc1.py index e3db5f4d7..fc9ef4cfd 100644 --- a/eos/effects/shipshieldtransferrangecc1.py +++ b/eos/effects/shipshieldtransferrangecc1.py @@ -4,5 +4,8 @@ # Ship: Basilisk # Ship: Etana type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "maxRange", src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "maxRange", + src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldtransferrangemc2.py b/eos/effects/shipshieldtransferrangemc2.py index 95af8e157..f7096dea4 100644 --- a/eos/effects/shipshieldtransferrangemc2.py +++ b/eos/effects/shipshieldtransferrangemc2.py @@ -3,5 +3,8 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "maxRange", src.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "maxRange", + src.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipshtdmgbonusgf.py b/eos/effects/shipshtdmgbonusgf.py index d5bd3f266..3162880ba 100644 --- a/eos/effects/shipshtdmgbonusgf.py +++ b/eos/effects/shipshtdmgbonusgf.py @@ -7,6 +7,8 @@ # Ship: Helios # Ship: Taranis type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipshtdmgbonusrookie.py b/eos/effects/shipshtdmgbonusrookie.py index 22af93125..27939cc52 100644 --- a/eos/effects/shipshtdmgbonusrookie.py +++ b/eos/effects/shipshtdmgbonusrookie.py @@ -4,6 +4,8 @@ # Ship: Velator # Ship: Violator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "damageMultiplier", ship.getModifiedItemAttr("rookieSHTDamageBonus")) diff --git a/eos/effects/shipshtfalloffbonusrookie.py b/eos/effects/shipshtfalloffbonusrookie.py index 8f4bf4212..b4083f4d3 100644 --- a/eos/effects/shipshtfalloffbonusrookie.py +++ b/eos/effects/shipshtfalloffbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Violator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "falloff", ship.getModifiedItemAttr("rookieSHTFalloff")) diff --git a/eos/effects/shipshtoptimalbonusgf.py b/eos/effects/shipshtoptimalbonusgf.py index 0a64f25d8..e6682472b 100644 --- a/eos/effects/shipshtoptimalbonusgf.py +++ b/eos/effects/shipshtoptimalbonusgf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ares type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipshtrofgallentetacticaldestroyer1.py b/eos/effects/shipshtrofgallentetacticaldestroyer1.py index 989706ef0..64e164ab9 100644 --- a/eos/effects/shipshtrofgallentetacticaldestroyer1.py +++ b/eos/effects/shipshtrofgallentetacticaldestroyer1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hecate type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "speed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente1"), skill="Gallente Tactical Destroyer") + "speed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente1"), + skill="Gallente Tactical Destroyer") diff --git a/eos/effects/shipshttrackinggallentetacticaldestroyer2.py b/eos/effects/shipshttrackinggallentetacticaldestroyer2.py index b78f3e29f..dfcd8d7f2 100644 --- a/eos/effects/shipshttrackinggallentetacticaldestroyer2.py +++ b/eos/effects/shipshttrackinggallentetacticaldestroyer2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Hecate type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente2"), skill="Gallente Tactical Destroyer") + "trackingSpeed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente2"), + skill="Gallente Tactical Destroyer") diff --git a/eos/effects/shipshttrackingspeedbonusrookie.py b/eos/effects/shipshttrackingspeedbonusrookie.py index 0bb4dfe63..48b2da45f 100644 --- a/eos/effects/shipshttrackingspeedbonusrookie.py +++ b/eos/effects/shipshttrackingspeedbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Violator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "trackingSpeed", ship.getModifiedItemAttr("rookieSHTTracking")) diff --git a/eos/effects/shipsiegelauncherrofbonus2cb.py b/eos/effects/shipsiegelauncherrofbonus2cb.py index a3a4a2123..9ab173443 100644 --- a/eos/effects/shipsiegelauncherrofbonus2cb.py +++ b/eos/effects/shipsiegelauncherrofbonus2cb.py @@ -4,6 +4,8 @@ # Ship: Raven # Ship: Raven State Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", "speed", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipsmallmissiledmgpiratefaction.py b/eos/effects/shipsmallmissiledmgpiratefaction.py index ecafce21e..9496ef0bb 100644 --- a/eos/effects/shipsmallmissiledmgpiratefaction.py +++ b/eos/effects/shipsmallmissiledmgpiratefaction.py @@ -3,7 +3,10 @@ # Used by: # Ship: Jackdaw type = "passive" + + def handler(fit, ship, context): for damageType in ("em", "explosive", "kinetic", "thermal"): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusPirateFaction")) + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), + "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shipsmallmissileemdmgcf2.py b/eos/effects/shipsmallmissileemdmgcf2.py index 0e8db486a..3a08f5b10 100644 --- a/eos/effects/shipsmallmissileemdmgcf2.py +++ b/eos/effects/shipsmallmissileemdmgcf2.py @@ -4,6 +4,9 @@ # Ship: Caldari Navy Hookbill # Ship: Kestrel type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "emDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), + "emDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipsmallmissileexpdmgcf2.py b/eos/effects/shipsmallmissileexpdmgcf2.py index 4a79cab54..2c03823e6 100644 --- a/eos/effects/shipsmallmissileexpdmgcf2.py +++ b/eos/effects/shipsmallmissileexpdmgcf2.py @@ -4,6 +4,9 @@ # Ship: Caldari Navy Hookbill # Ship: Kestrel type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), + "explosiveDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipsmallmissilekindmgcf2.py b/eos/effects/shipsmallmissilekindmgcf2.py index 946429934..9adc59089 100644 --- a/eos/effects/shipsmallmissilekindmgcf2.py +++ b/eos/effects/shipsmallmissilekindmgcf2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Kestrel type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), + "kineticDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipsmallmissilekindmgcf3.py b/eos/effects/shipsmallmissilekindmgcf3.py index 3e8ea0e3a..bdef8ba12 100644 --- a/eos/effects/shipsmallmissilekindmgcf3.py +++ b/eos/effects/shipsmallmissilekindmgcf3.py @@ -4,5 +4,9 @@ # Ship: Caldari Navy Hookbill type = "passive" + + def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles") or mod.charge.requiresSkill("Rockets"), "kineticDamage", src.getModifiedItemAttr("shipBonus3CF"), skill="Caldari Frigate") \ No newline at end of file + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Light Missiles") or mod.charge.requiresSkill("Rockets"), "kineticDamage", + src.getModifiedItemAttr("shipBonus3CF"), skill="Caldari Frigate") diff --git a/eos/effects/shipsmallmissilethermdmgcf2.py b/eos/effects/shipsmallmissilethermdmgcf2.py index 02d5e185e..e336853e6 100644 --- a/eos/effects/shipsmallmissilethermdmgcf2.py +++ b/eos/effects/shipsmallmissilethermdmgcf2.py @@ -4,6 +4,9 @@ # Ship: Caldari Navy Hookbill # Ship: Kestrel type = "passive" + + def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), + "thermalDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipsptdamageminmatartacticaldestroyer1.py b/eos/effects/shipsptdamageminmatartacticaldestroyer1.py index 6d6f26a27..9c435c7de 100644 --- a/eos/effects/shipsptdamageminmatartacticaldestroyer1.py +++ b/eos/effects/shipsptdamageminmatartacticaldestroyer1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Svipul type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar1"), skill="Minmatar Tactical Destroyer") + "damageMultiplier", ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar1"), + skill="Minmatar Tactical Destroyer") diff --git a/eos/effects/shipsptdmgbonusrookie.py b/eos/effects/shipsptdmgbonusrookie.py index c3bfd0ae7..3646da72c 100644 --- a/eos/effects/shipsptdmgbonusrookie.py +++ b/eos/effects/shipsptdmgbonusrookie.py @@ -4,6 +4,8 @@ # Ship: Echo # Ship: Reaper type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "damageMultiplier", ship.getModifiedItemAttr("rookieSPTDamageBonus")) diff --git a/eos/effects/shipsptfalloffbonusrookie.py b/eos/effects/shipsptfalloffbonusrookie.py index e5f2a5c4a..0509c7dde 100644 --- a/eos/effects/shipsptfalloffbonusrookie.py +++ b/eos/effects/shipsptfalloffbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Echo type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "falloff", ship.getModifiedItemAttr("rookieSPTFalloff")) diff --git a/eos/effects/shipsptoptimalbonusmf.py b/eos/effects/shipsptoptimalbonusmf.py index 66d544a58..1f7255f44 100644 --- a/eos/effects/shipsptoptimalbonusmf.py +++ b/eos/effects/shipsptoptimalbonusmf.py @@ -3,6 +3,8 @@ # Used by: # Ship: Chremoas type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "maxRange", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipsptoptimalminmatartacticaldestroyer2.py b/eos/effects/shipsptoptimalminmatartacticaldestroyer2.py index 9eae30565..0668d5b00 100644 --- a/eos/effects/shipsptoptimalminmatartacticaldestroyer2.py +++ b/eos/effects/shipsptoptimalminmatartacticaldestroyer2.py @@ -3,6 +3,9 @@ # Used by: # Ship: Svipul type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar2"), skill="Minmatar Tactical Destroyer") + "maxRange", ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar2"), + skill="Minmatar Tactical Destroyer") diff --git a/eos/effects/shipsptoptimalrangebonusrookie.py b/eos/effects/shipsptoptimalrangebonusrookie.py index 49cb01456..a7c289fea 100644 --- a/eos/effects/shipsptoptimalrangebonusrookie.py +++ b/eos/effects/shipsptoptimalrangebonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Echo type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "maxRange", ship.getModifiedItemAttr("rookieSPTOptimal")) diff --git a/eos/effects/shipspttrackingspeedbonusrookie.py b/eos/effects/shipspttrackingspeedbonusrookie.py index 22595b871..c6a0bca15 100644 --- a/eos/effects/shipspttrackingspeedbonusrookie.py +++ b/eos/effects/shipspttrackingspeedbonusrookie.py @@ -3,6 +3,8 @@ # Used by: # Ship: Echo type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "trackingSpeed", ship.getModifiedItemAttr("rookieSPTTracking")) diff --git a/eos/effects/shipstasiswebrangebonusmb.py b/eos/effects/shipstasiswebrangebonusmb.py index d1f250b1a..b7513bbda 100644 --- a/eos/effects/shipstasiswebrangebonusmb.py +++ b/eos/effects/shipstasiswebrangebonusmb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Bhaalgorn type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipstasiswebrangebonusmc2.py b/eos/effects/shipstasiswebrangebonusmc2.py index 059a9dc7c..3b43a9b64 100644 --- a/eos/effects/shipstasiswebrangebonusmc2.py +++ b/eos/effects/shipstasiswebrangebonusmc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Ashimmu type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipstasiswebstrengthbonusmc2.py b/eos/effects/shipstasiswebstrengthbonusmc2.py index a52165853..65e9bb3b8 100644 --- a/eos/effects/shipstasiswebstrengthbonusmc2.py +++ b/eos/effects/shipstasiswebstrengthbonusmc2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Vigilant type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipstasiswebstrengthbonusmf2.py b/eos/effects/shipstasiswebstrengthbonusmf2.py index fc1185cf1..d2f5b1ad4 100644 --- a/eos/effects/shipstasiswebstrengthbonusmf2.py +++ b/eos/effects/shipstasiswebstrengthbonusmf2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Daredevil type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shiptcapneedbonusac.py b/eos/effects/shiptcapneedbonusac.py index 8bece86f4..00e4ac757 100644 --- a/eos/effects/shiptcapneedbonusac.py +++ b/eos/effects/shiptcapneedbonusac.py @@ -5,6 +5,8 @@ # Ship: Omen # Ship: Zealot type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), "capacitorNeed", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shiptorpedoaoecloudsize1cb.py b/eos/effects/shiptorpedoaoecloudsize1cb.py index b079f5663..ca8a1b166 100644 --- a/eos/effects/shiptorpedoaoecloudsize1cb.py +++ b/eos/effects/shiptorpedoaoecloudsize1cb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Raven Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shiptorpedorofcb.py b/eos/effects/shiptorpedorofcb.py index 86d0e30e3..22d81e5fa 100644 --- a/eos/effects/shiptorpedorofcb.py +++ b/eos/effects/shiptorpedorofcb.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scorpion Navy Issue type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", "speed", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shiptorpedosvelocitybonuscb3.py b/eos/effects/shiptorpedosvelocitybonuscb3.py index 6c4f582a5..6bedfb8c6 100644 --- a/eos/effects/shiptorpedosvelocitybonuscb3.py +++ b/eos/effects/shiptorpedosvelocitybonuscb3.py @@ -3,6 +3,8 @@ # Used by: # Variations of ship: Raven (3 of 4) type = "passive" + + def handler(fit, ship, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/shiptrackingbonusab.py b/eos/effects/shiptrackingbonusab.py index 25368aff4..ad820e01d 100644 --- a/eos/effects/shiptrackingbonusab.py +++ b/eos/effects/shiptrackingbonusab.py @@ -3,6 +3,8 @@ # Used by: # Ship: Nightmare type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "trackingSpeed", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shiptrackinglinkrange1fixed.py b/eos/effects/shiptrackinglinkrange1fixed.py index be139ea71..233590460 100644 --- a/eos/effects/shiptrackinglinkrange1fixed.py +++ b/eos/effects/shiptrackinglinkrange1fixed.py @@ -3,6 +3,8 @@ # Used by: # Ship: Scimitar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", "maxRange", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shiptrackinglinkrange2group.py b/eos/effects/shiptrackinglinkrange2group.py index 537d0d46e..42ef76a23 100644 --- a/eos/effects/shiptrackinglinkrange2group.py +++ b/eos/effects/shiptrackinglinkrange2group.py @@ -3,6 +3,8 @@ # Used by: # Ship: Oneiros type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", "maxRange", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipvelocitybonusai.py b/eos/effects/shipvelocitybonusai.py index b9f5257d9..3ba16182d 100644 --- a/eos/effects/shipvelocitybonusai.py +++ b/eos/effects/shipvelocitybonusai.py @@ -4,5 +4,7 @@ # Variations of ship: Bestower (2 of 2) # Ship: Prorator type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("shipBonusAI"), skill="Amarr Industrial") diff --git a/eos/effects/shipvelocitybonusatc1.py b/eos/effects/shipvelocitybonusatc1.py index 6f4a4cc41..7b2c31830 100644 --- a/eos/effects/shipvelocitybonusatc1.py +++ b/eos/effects/shipvelocitybonusatc1.py @@ -4,5 +4,7 @@ # Ship: Adrestia # Ship: Mimir type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("shipBonusATC1")) diff --git a/eos/effects/shipvelocitybonusmi.py b/eos/effects/shipvelocitybonusmi.py index a29a8295d..fe05cb921 100644 --- a/eos/effects/shipvelocitybonusmi.py +++ b/eos/effects/shipvelocitybonusmi.py @@ -5,5 +5,7 @@ # Ship: Hoarder # Ship: Prowler type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("shipBonusMI"), skill="Minmatar Industrial") diff --git a/eos/effects/shipvelocitybonusrookie.py b/eos/effects/shipvelocitybonusrookie.py index 34b77de68..b0634e3f3 100644 --- a/eos/effects/shipvelocitybonusrookie.py +++ b/eos/effects/shipvelocitybonusrookie.py @@ -3,5 +3,7 @@ # Used by: # Ship: Reaper type = "passive" + + def handler(fit, ship, context): fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("rookieShipVelocityBonus")) diff --git a/eos/effects/shipwebvelocitybonusrookie.py b/eos/effects/shipwebvelocitybonusrookie.py index 4b6aabb13..d8f5468c8 100644 --- a/eos/effects/shipwebvelocitybonusrookie.py +++ b/eos/effects/shipwebvelocitybonusrookie.py @@ -4,6 +4,8 @@ # Ship: Hematos # Ship: Violator type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", ship.getModifiedItemAttr("rookieWebAmount")) diff --git a/eos/effects/shipxlprojectiledamagerole.py b/eos/effects/shipxlprojectiledamagerole.py index e79fcfda7..62f670f18 100644 --- a/eos/effects/shipxlprojectiledamagerole.py +++ b/eos/effects/shipxlprojectiledamagerole.py @@ -1,5 +1,7 @@ # Not used by any item type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", ship.getModifiedItemAttr("shipBonusPirateFaction")) diff --git a/eos/effects/shirmishwarfaremindlink.py b/eos/effects/shirmishwarfaremindlink.py index 52cda4c11..d0b60a62e 100644 --- a/eos/effects/shirmishwarfaremindlink.py +++ b/eos/effects/shirmishwarfaremindlink.py @@ -5,6 +5,8 @@ # Implant: Republic Fleet Warfare Mindlink # Implant: Skirmish Warfare Mindlink type = "passive" + + def handler(fit, implant, context): fit.character.getSkill("Skirmish Warfare Specialist").suppress() fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), diff --git a/eos/effects/siegemodeeffect6.py b/eos/effects/siegemodeeffect6.py index 8b27e7809..25fc5afb4 100644 --- a/eos/effects/siegemodeeffect6.py +++ b/eos/effects/siegemodeeffect6.py @@ -4,29 +4,31 @@ # Variations of module: Siege Module I (2 of 2) type = "active" runTime = "early" + + def handler(fit, module, context): - #Turrets + # Turrets fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret") or \ - mod.item.requiresSkill("Capital Hybrid Turret") or \ - mod.item.requiresSkill("Capital Projectile Turret"), + mod.item.requiresSkill("Capital Hybrid Turret") or \ + mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", module.getModifiedItemAttr("damageMultiplierBonus")) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret") or \ - mod.item.requiresSkill("Capital Hybrid Turret") or \ - mod.item.requiresSkill("Capital Projectile Turret"), + mod.item.requiresSkill("Capital Hybrid Turret") or \ + mod.item.requiresSkill("Capital Projectile Turret"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus")) - #Missiles + # Missiles for type in ("kinetic", "thermal", "explosive", "em"): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes") or \ - mod.charge.requiresSkill("XL Cruise Missiles"), + mod.charge.requiresSkill("XL Cruise Missiles"), "%sDamage" % type, module.getModifiedItemAttr("damageMultiplierBonus")) fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes") or \ - mod.charge.requiresSkill("XL Cruise Missiles"), + mod.charge.requiresSkill("XL Cruise Missiles"), "aoeVelocity", module.getModifiedItemAttr("aoeVelocityBonus")) - #Shield Boosters + # Shield Boosters fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), "duration", module.getModifiedItemAttr("shieldBonusDurationBonus"), stackingPenalties=True) @@ -34,7 +36,7 @@ def handler(fit, module, context): "shieldBonus", module.getModifiedItemAttr("shieldBoostMultiplier"), stackingPenalties=True) - #Armor Reppers + # Armor Reppers fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Repair Unit", "armorDamageAmount", module.getModifiedItemAttr("armorDamageAmountBonus"), stackingPenalties=True) @@ -42,19 +44,19 @@ def handler(fit, module, context): "duration", module.getModifiedItemAttr("armorDamageDurationBonus"), stackingPenalties=True) - #Speed penalty + # Speed penalty fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor")) - #Mass + # Mass fit.ship.multiplyItemAttr("mass", module.getModifiedItemAttr("siegeMassMultiplier")) - #Scan resolution + # Scan resolution fit.ship.multiplyItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionMultiplier"), stackingPenalties=True) - #Max locked targets + # Max locked targets fit.ship.forceItemAttr("maxLockedTargets", module.getModifiedItemAttr("maxLockedTargets")) - #Block Hostile EWAR and friendly effects + # Block Hostile EWAR and friendly effects fit.ship.forceItemAttr("disallowOffensiveModifiers", module.getModifiedItemAttr("disallowOffensiveModifiers")) fit.ship.forceItemAttr("disallowAssistance", module.getModifiedItemAttr("disallowAssistance")) diff --git a/eos/effects/siegesquadroncommand.py b/eos/effects/siegesquadroncommand.py index fb4cc528a..d48e18cf5 100644 --- a/eos/effects/siegesquadroncommand.py +++ b/eos/effects/siegesquadroncommand.py @@ -4,6 +4,8 @@ # Skill: Siege Warfare Specialist runTime = "early" type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), "commandBonus", skill.getModifiedItemAttr("squadronCommandBonus") * skill.level) diff --git a/eos/effects/siegewarfaremindlink.py b/eos/effects/siegewarfaremindlink.py index 6160a2507..a071291c1 100644 --- a/eos/effects/siegewarfaremindlink.py +++ b/eos/effects/siegewarfaremindlink.py @@ -5,6 +5,8 @@ # Implant: Republic Fleet Warfare Mindlink # Implant: Siege Warfare Mindlink type = "passive" + + def handler(fit, implant, context): fit.character.getSkill("Siege Warfare Specialist").suppress() fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), diff --git a/eos/effects/siegewarfareshieldcapacitybonusreplacer.py b/eos/effects/siegewarfareshieldcapacitybonusreplacer.py index 338de9c81..e2c1223e1 100644 --- a/eos/effects/siegewarfareshieldcapacitybonusreplacer.py +++ b/eos/effects/siegewarfareshieldcapacitybonusreplacer.py @@ -7,5 +7,7 @@ type = "gang" gangBoost = "shieldCapacity" gangBonus = "shieldCapacityBonus" + + def handler(fit, container, context): fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus)) diff --git a/eos/effects/signatureanalysisscanresolutionbonuspostpercentscanresolutionship.py b/eos/effects/signatureanalysisscanresolutionbonuspostpercentscanresolutionship.py index 375cd3ac1..5401527b9 100644 --- a/eos/effects/signatureanalysisscanresolutionbonuspostpercentscanresolutionship.py +++ b/eos/effects/signatureanalysisscanresolutionbonuspostpercentscanresolutionship.py @@ -6,6 +6,8 @@ # Implant: Quafe Zero # Skill: Signature Analysis type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 penalized = False if "skill" in context or "implant" in context or "booster" in context else True diff --git a/eos/effects/signatureradiuspreassignment.py b/eos/effects/signatureradiuspreassignment.py index 3280bf78c..e3f48fb5a 100644 --- a/eos/effects/signatureradiuspreassignment.py +++ b/eos/effects/signatureradiuspreassignment.py @@ -4,5 +4,7 @@ # Subsystems from group: Defensive Systems (16 of 16) type = "passive" runTime = "early" + + def handler(fit, module, context): fit.ship.preAssignItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadius")) diff --git a/eos/effects/skilladvancedweaponupgradespowerneedbonus.py b/eos/effects/skilladvancedweaponupgradespowerneedbonus.py index 2764a0fd4..6cd2337c9 100644 --- a/eos/effects/skilladvancedweaponupgradespowerneedbonus.py +++ b/eos/effects/skilladvancedweaponupgradespowerneedbonus.py @@ -3,6 +3,9 @@ # Used by: # Skill: Advanced Weapon Upgrades type = "passive" + + def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery") or mod.item.requiresSkill("Missile Launcher Operation"), - "power", skill.getModifiedItemAttr("powerNeedBonus") * skill.level) + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill("Gunnery") or mod.item.requiresSkill("Missile Launcher Operation"), + "power", skill.getModifiedItemAttr("powerNeedBonus") * skill.level) diff --git a/eos/effects/skilladvancedweaponupgradespowerneedbonusbomblaunchers.py b/eos/effects/skilladvancedweaponupgradespowerneedbonusbomblaunchers.py index b442eac9c..769b0327f 100644 --- a/eos/effects/skilladvancedweaponupgradespowerneedbonusbomblaunchers.py +++ b/eos/effects/skilladvancedweaponupgradespowerneedbonusbomblaunchers.py @@ -3,6 +3,8 @@ # Used by: # Skill: Advanced Weapon Upgrades type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Bomb Deployment"), "power", skill.getModifiedItemAttr("powerNeedBonus") * skill.level) diff --git a/eos/effects/skillbombdeploymentmodulereactivationdelaybonus.py b/eos/effects/skillbombdeploymentmodulereactivationdelaybonus.py index e45268bb7..e56b2fb94 100644 --- a/eos/effects/skillbombdeploymentmodulereactivationdelaybonus.py +++ b/eos/effects/skillbombdeploymentmodulereactivationdelaybonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Bomb Deployment type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Bomb", "moduleReactivationDelay", skill.getModifiedItemAttr("rofBonus") * skill.level) diff --git a/eos/effects/skillbonuscapitalartilleryspecialization.py b/eos/effects/skillbonuscapitalartilleryspecialization.py index 521c6e8d2..3a2f7b5c9 100644 --- a/eos/effects/skillbonuscapitalartilleryspecialization.py +++ b/eos/effects/skillbonuscapitalartilleryspecialization.py @@ -3,6 +3,9 @@ # Used by: # Skill: Capital Artillery Specialization type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Artillery Specialization"), "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Artillery Specialization"), + "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalautocannonspecialization.py b/eos/effects/skillbonuscapitalautocannonspecialization.py index d4fda1400..9077ff379 100644 --- a/eos/effects/skillbonuscapitalautocannonspecialization.py +++ b/eos/effects/skillbonuscapitalautocannonspecialization.py @@ -3,6 +3,9 @@ # Used by: # Skill: Capital Autocannon Specialization type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Autocannon Specialization"), "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Autocannon Specialization"), + "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalbeamlaserspecialization.py b/eos/effects/skillbonuscapitalbeamlaserspecialization.py index 6fcecf510..82ff0a0c1 100644 --- a/eos/effects/skillbonuscapitalbeamlaserspecialization.py +++ b/eos/effects/skillbonuscapitalbeamlaserspecialization.py @@ -3,6 +3,9 @@ # Used by: # Skill: Capital Beam Laser Specialization type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Beam Laser Specialization"), "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Beam Laser Specialization"), + "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalblasterspecialization.py b/eos/effects/skillbonuscapitalblasterspecialization.py index 93f0c5624..41d923389 100644 --- a/eos/effects/skillbonuscapitalblasterspecialization.py +++ b/eos/effects/skillbonuscapitalblasterspecialization.py @@ -3,6 +3,9 @@ # Used by: # Skill: Capital Blaster Specialization type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Blaster Specialization"), "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Blaster Specialization"), + "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalpulselaserspecialization.py b/eos/effects/skillbonuscapitalpulselaserspecialization.py index d658a3ce1..514eb5b2a 100644 --- a/eos/effects/skillbonuscapitalpulselaserspecialization.py +++ b/eos/effects/skillbonuscapitalpulselaserspecialization.py @@ -3,6 +3,9 @@ # Used by: # Skill: Capital Pulse Laser Specialization type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Pulse Laser Specialization"), "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Pulse Laser Specialization"), + "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalrailgunspecialization.py b/eos/effects/skillbonuscapitalrailgunspecialization.py index f341c1e1a..98d17a9bb 100644 --- a/eos/effects/skillbonuscapitalrailgunspecialization.py +++ b/eos/effects/skillbonuscapitalrailgunspecialization.py @@ -3,6 +3,9 @@ # Used by: # Skill: Capital Railgun Specialization type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Railgun Specialization"), "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Railgun Specialization"), + "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonusdoomsdayrapidfiring.py b/eos/effects/skillbonusdoomsdayrapidfiring.py index 27c182a16..89e206f6d 100644 --- a/eos/effects/skillbonusdoomsdayrapidfiring.py +++ b/eos/effects/skillbonusdoomsdayrapidfiring.py @@ -3,6 +3,9 @@ # Used by: # Skill: Doomsday Rapid Firing type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Doomsday Operation"), "duration", src.getModifiedItemAttr("rofBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Doomsday Operation"), "duration", + src.getModifiedItemAttr("rofBonus") * lvl) diff --git a/eos/effects/skillbonusdronedurability.py b/eos/effects/skillbonusdronedurability.py index aa0261990..1023c8412 100644 --- a/eos/effects/skillbonusdronedurability.py +++ b/eos/effects/skillbonusdronedurability.py @@ -3,9 +3,15 @@ # Used by: # Skill: Drone Durability type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", src.getModifiedItemAttr("hullHpBonus") * lvl) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", src.getModifiedItemAttr("armorHpBonus") * lvl) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", src.getModifiedItemAttr("shieldCapacityBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", src.getModifiedItemAttr("shieldCapacityBonus") * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", + src.getModifiedItemAttr("hullHpBonus") * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", + src.getModifiedItemAttr("armorHpBonus") * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", + src.getModifiedItemAttr("shieldCapacityBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", + src.getModifiedItemAttr("shieldCapacityBonus") * lvl) diff --git a/eos/effects/skillbonusdroneinterfacing.py b/eos/effects/skillbonusdroneinterfacing.py index a71416ce6..405435a71 100644 --- a/eos/effects/skillbonusdroneinterfacing.py +++ b/eos/effects/skillbonusdroneinterfacing.py @@ -3,10 +3,20 @@ # Used by: # Skill: Drone Interfacing type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Mining Drone", "miningDroneAmountPercent", src.getModifiedItemAttr("miningAmountBonus") * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Mining Drone", "miningDroneAmountPercent", + src.getModifiedItemAttr("miningAmountBonus") * lvl) diff --git a/eos/effects/skillbonusdronenavigation.py b/eos/effects/skillbonusdronenavigation.py index bcd65fb81..01453e891 100644 --- a/eos/effects/skillbonusdronenavigation.py +++ b/eos/effects/skillbonusdronenavigation.py @@ -3,7 +3,11 @@ # Used by: # Skill: Drone Navigation type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", src.getModifiedItemAttr("maxVelocityBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", src.getModifiedItemAttr("maxVelocityBonus") * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", + src.getModifiedItemAttr("maxVelocityBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", + src.getModifiedItemAttr("maxVelocityBonus") * lvl) diff --git a/eos/effects/skillbonusdronesharpshooting.py b/eos/effects/skillbonusdronesharpshooting.py index 666ffed05..29654615c 100644 --- a/eos/effects/skillbonusdronesharpshooting.py +++ b/eos/effects/skillbonusdronesharpshooting.py @@ -3,9 +3,17 @@ # Used by: # Skill: Drone Sharpshooting type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", src.getModifiedItemAttr("rangeSkillBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", src.getModifiedItemAttr("rangeSkillBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("rangeSkillBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileRangeOptimal", src.getModifiedItemAttr("rangeSkillBonus") * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", + src.getModifiedItemAttr("rangeSkillBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", + src.getModifiedItemAttr("rangeSkillBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretRangeOptimal", + src.getModifiedItemAttr("rangeSkillBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileRangeOptimal", + src.getModifiedItemAttr("rangeSkillBonus") * lvl) diff --git a/eos/effects/skillbonusfighterhangarmanagement.py b/eos/effects/skillbonusfighterhangarmanagement.py index 566a69d17..8cf44cbe8 100644 --- a/eos/effects/skillbonusfighterhangarmanagement.py +++ b/eos/effects/skillbonusfighterhangarmanagement.py @@ -3,6 +3,8 @@ # Used by: # Skill: Fighter Hangar Management type = "passive" + + def handler(fit, src, context): lvl = src.level fit.ship.boostItemAttr("fighterCapacity", src.getModifiedItemAttr("skillBonusFighterHangarSize") * lvl) diff --git a/eos/effects/skillbonusfighters.py b/eos/effects/skillbonusfighters.py index 7a362a669..4d22c78ae 100644 --- a/eos/effects/skillbonusfighters.py +++ b/eos/effects/skillbonusfighters.py @@ -3,8 +3,16 @@ # Used by: # Skill: Fighters type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonusfightersdamage.py b/eos/effects/skillbonusfightersdamage.py index a887ab0c5..d9bc39cb3 100644 --- a/eos/effects/skillbonusfightersdamage.py +++ b/eos/effects/skillbonusfightersdamage.py @@ -3,8 +3,16 @@ # Used by: # Skill: Fighters type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonusheavyfighters.py b/eos/effects/skillbonusheavyfighters.py index ffbb419fc..7c19ebb2d 100644 --- a/eos/effects/skillbonusheavyfighters.py +++ b/eos/effects/skillbonusheavyfighters.py @@ -3,8 +3,16 @@ # Used by: # Skill: Heavy Fighters type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonusheavyfightersdamage.py b/eos/effects/skillbonusheavyfightersdamage.py index 786b1985e..d5dcca51d 100644 --- a/eos/effects/skillbonusheavyfightersdamage.py +++ b/eos/effects/skillbonusheavyfightersdamage.py @@ -3,8 +3,16 @@ # Used by: # Skill: Heavy Fighters type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), "fighterAbilityAttackMissileDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), "fighterAbilityMissilesDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), "fighterAbilityAttackTurretDamageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), + "fighterAbilityAttackMissileDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), + "fighterAbilityMissilesDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), + "fighterAbilityAttackTurretDamageMultiplier", + src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuslightfighters.py b/eos/effects/skillbonuslightfighters.py index 9a2e0d014..d41e21428 100644 --- a/eos/effects/skillbonuslightfighters.py +++ b/eos/effects/skillbonuslightfighters.py @@ -3,6 +3,9 @@ # Used by: # Skill: Light Fighters type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Light Fighters"), "maxVelocity", src.getModifiedItemAttr("maxVelocityBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Light Fighters"), "maxVelocity", + src.getModifiedItemAttr("maxVelocityBonus") * lvl) diff --git a/eos/effects/skillbonuslightfightersvelocity.py b/eos/effects/skillbonuslightfightersvelocity.py index dfcb2dd6f..4d254063a 100644 --- a/eos/effects/skillbonuslightfightersvelocity.py +++ b/eos/effects/skillbonuslightfightersvelocity.py @@ -3,6 +3,9 @@ # Used by: # Skill: Light Fighters type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Light Fighters"), "maxVelocity", src.getModifiedItemAttr("maxVelocityBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Light Fighters"), "maxVelocity", + src.getModifiedItemAttr("maxVelocityBonus") * lvl) diff --git a/eos/effects/skillbonussupportfightersshield.py b/eos/effects/skillbonussupportfightersshield.py index bfcb0360c..d6758f279 100644 --- a/eos/effects/skillbonussupportfightersshield.py +++ b/eos/effects/skillbonussupportfightersshield.py @@ -3,6 +3,9 @@ # Used by: # Skill: Support Fighters type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "shieldCapacity", src.getModifiedItemAttr("shieldBonus") * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "shieldCapacity", + src.getModifiedItemAttr("shieldBonus") * lvl) diff --git a/eos/effects/skillbonusxlcruisemissilespecialization.py b/eos/effects/skillbonusxlcruisemissilespecialization.py index a2adfc740..cc51709e3 100644 --- a/eos/effects/skillbonusxlcruisemissilespecialization.py +++ b/eos/effects/skillbonusxlcruisemissilespecialization.py @@ -3,6 +3,9 @@ # Used by: # Skill: XL Cruise Missile Specialization type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missile Specialization"), "speed", src.getModifiedItemAttr("rofBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missile Specialization"), "speed", + src.getModifiedItemAttr("rofBonus") * lvl) diff --git a/eos/effects/skillbonusxltorpedospecialization.py b/eos/effects/skillbonusxltorpedospecialization.py index af620d036..7393d111e 100644 --- a/eos/effects/skillbonusxltorpedospecialization.py +++ b/eos/effects/skillbonusxltorpedospecialization.py @@ -3,6 +3,9 @@ # Used by: # Skill: XL Torpedo Specialization type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("XL Torpedo Specialization"), "speed", src.getModifiedItemAttr("rofBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("XL Torpedo Specialization"), "speed", + src.getModifiedItemAttr("rofBonus") * lvl) diff --git a/eos/effects/skillcapitalremotehullrepairsystemscapneedbonus.py b/eos/effects/skillcapitalremotehullrepairsystemscapneedbonus.py index a7d4e44d1..984efa65e 100644 --- a/eos/effects/skillcapitalremotehullrepairsystemscapneedbonus.py +++ b/eos/effects/skillcapitalremotehullrepairsystemscapneedbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Capital Remote Hull Repair Systems type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Hull Repair Systems"), "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/skillcapitalshipsadvancedagility.py b/eos/effects/skillcapitalshipsadvancedagility.py index e32f456c6..5a0846335 100644 --- a/eos/effects/skillcapitalshipsadvancedagility.py +++ b/eos/effects/skillcapitalshipsadvancedagility.py @@ -3,6 +3,8 @@ # Used by: # Skill: Capital Ships type = "passive" + + def handler(fit, skill, context): if fit.ship.item.requiresSkill("Capital Ships"): fit.ship.boostItemAttr("agility", skill.getModifiedItemAttr("agilityBonus") * skill.level) diff --git a/eos/effects/skillfighterbombersdmgbonus.py b/eos/effects/skillfighterbombersdmgbonus.py index 8d5199963..2cbb0dda9 100644 --- a/eos/effects/skillfighterbombersdmgbonus.py +++ b/eos/effects/skillfighterbombersdmgbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Fighter Bombers type = "passive" + + def handler(fit, skill, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighter Bombers"), "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/skillfreightbonus.py b/eos/effects/skillfreightbonus.py index 68d1637c3..93f4c33cf 100644 --- a/eos/effects/skillfreightbonus.py +++ b/eos/effects/skillfreightbonus.py @@ -3,5 +3,7 @@ # Used by: # Modules named like: Cargohold Optimization (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("capacity", module.getModifiedItemAttr("cargoCapacityBonus")) diff --git a/eos/effects/skillindustrialreconfigurationconsumptionquantitybonus.py b/eos/effects/skillindustrialreconfigurationconsumptionquantitybonus.py index 116bc51e4..e6b8f558b 100644 --- a/eos/effects/skillindustrialreconfigurationconsumptionquantitybonus.py +++ b/eos/effects/skillindustrialreconfigurationconsumptionquantitybonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Industrial Reconfiguration type = "passive" + + def handler(fit, skill, context): amount = -skill.getModifiedItemAttr("consumptionQuantityBonus") fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), diff --git a/eos/effects/skilljumpdriveconsumptionamountbonuspercentage.py b/eos/effects/skilljumpdriveconsumptionamountbonuspercentage.py index e22b370d0..5cb2d9654 100644 --- a/eos/effects/skilljumpdriveconsumptionamountbonuspercentage.py +++ b/eos/effects/skilljumpdriveconsumptionamountbonuspercentage.py @@ -3,5 +3,8 @@ # Used by: # Skill: Jump Fuel Conservation type = "passive" + + def handler(fit, skill, context): - fit.ship.boostItemAttr("jumpDriveConsumptionAmount", skill.getModifiedItemAttr("consumptionQuantityBonusPercentage") * skill.level) \ No newline at end of file + fit.ship.boostItemAttr("jumpDriveConsumptionAmount", + skill.getModifiedItemAttr("consumptionQuantityBonusPercentage") * skill.level) diff --git a/eos/effects/skillmjddurationbonus.py b/eos/effects/skillmjddurationbonus.py index 4a2224260..ec949212a 100644 --- a/eos/effects/skillmjddurationbonus.py +++ b/eos/effects/skillmjddurationbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Micro Jump Drive Operation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Micro Jump Drive Operation"), "duration", skill.getModifiedItemAttr("durationBonus") * skill.level) diff --git a/eos/effects/skillreactivearmorhardenercapneedbonus.py b/eos/effects/skillreactivearmorhardenercapneedbonus.py index e377cd9a9..22b9f94c4 100644 --- a/eos/effects/skillreactivearmorhardenercapneedbonus.py +++ b/eos/effects/skillreactivearmorhardenercapneedbonus.py @@ -3,7 +3,11 @@ # Used by: # Skill: Resistance Phasing type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Resistance Shift Hardener", "capacitorNeed", src.getModifiedItemAttr("capNeedBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Resistance Phasing"), "capacitorNeed", src.getModifiedItemAttr("capNeedBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Resistance Shift Hardener", "capacitorNeed", + src.getModifiedItemAttr("capNeedBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Resistance Phasing"), "capacitorNeed", + src.getModifiedItemAttr("capNeedBonus") * lvl) diff --git a/eos/effects/skillreactivearmorhardenerdurationbonus.py b/eos/effects/skillreactivearmorhardenerdurationbonus.py index 45e4c0b91..9ecabd1ca 100644 --- a/eos/effects/skillreactivearmorhardenerdurationbonus.py +++ b/eos/effects/skillreactivearmorhardenerdurationbonus.py @@ -3,7 +3,11 @@ # Used by: # Skill: Resistance Phasing type = "passive" + + def handler(fit, src, context): lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Resistance Shift Hardener", "duration", src.getModifiedItemAttr("durationBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Resistance Phasing"), "duration", src.getModifiedItemAttr("durationBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Resistance Shift Hardener", "duration", + src.getModifiedItemAttr("durationBonus") * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Resistance Phasing"), "duration", + src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/skillremoteecmdurationbonus.py b/eos/effects/skillremoteecmdurationbonus.py index 6f48b8369..d2b13bdad 100644 --- a/eos/effects/skillremoteecmdurationbonus.py +++ b/eos/effects/skillremoteecmdurationbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Burst Projector Operation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Projectors", "duration", skill.getModifiedItemAttr("projECMDurationBonus") * skill.level) diff --git a/eos/effects/skillremotehullrepairsystemscapneedbonus.py b/eos/effects/skillremotehullrepairsystemscapneedbonus.py index 181ab2239..e5f173bbe 100644 --- a/eos/effects/skillremotehullrepairsystemscapneedbonus.py +++ b/eos/effects/skillremotehullrepairsystemscapneedbonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Remote Hull Repair Systems type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Hull Repair Systems"), "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/skillsiegemoduleconsumptionquantitybonus.py b/eos/effects/skillsiegemoduleconsumptionquantitybonus.py index ef8d522b5..119ed3072 100644 --- a/eos/effects/skillsiegemoduleconsumptionquantitybonus.py +++ b/eos/effects/skillsiegemoduleconsumptionquantitybonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Tactical Weapon Reconfiguration type = "passive" + + def handler(fit, skill, context): amount = -skill.getModifiedItemAttr("consumptionQuantityBonus") fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), diff --git a/eos/effects/skillstructuredoomsdaydurationbonus.py b/eos/effects/skillstructuredoomsdaydurationbonus.py index b7d8f10d1..e5c0d43c1 100644 --- a/eos/effects/skillstructuredoomsdaydurationbonus.py +++ b/eos/effects/skillstructuredoomsdaydurationbonus.py @@ -3,6 +3,9 @@ # Used by: # Skill: Structure Doomsday Operation type = "passive", "structure" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Doomsday Weapon", - "duration", src.getModifiedItemAttr("durationBonus"), skill="Structure Doomsday Operation") + "duration", src.getModifiedItemAttr("durationBonus"), + skill="Structure Doomsday Operation") diff --git a/eos/effects/skillstructureelectronicsystemscapneedbonus.py b/eos/effects/skillstructureelectronicsystemscapneedbonus.py index cacffb686..ee898cbc0 100644 --- a/eos/effects/skillstructureelectronicsystemscapneedbonus.py +++ b/eos/effects/skillstructureelectronicsystemscapneedbonus.py @@ -3,7 +3,10 @@ # Used by: # Skill: Structure Electronic Systems type = "passive", "structure" + + def handler(fit, src, context): groups = ("Structure Warp Scrambler", "Structure Disruption Battery", "Structure Stasis Webifier") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "capacitorNeed", src.getModifiedItemAttr("capNeedBonus"), skill="Structure Electronic Systems") + "capacitorNeed", src.getModifiedItemAttr("capNeedBonus"), + skill="Structure Electronic Systems") diff --git a/eos/effects/skillstructureengineeringsystemscapneedbonus.py b/eos/effects/skillstructureengineeringsystemscapneedbonus.py index 91b025176..c58dea119 100644 --- a/eos/effects/skillstructureengineeringsystemscapneedbonus.py +++ b/eos/effects/skillstructureengineeringsystemscapneedbonus.py @@ -3,7 +3,10 @@ # Used by: # Skill: Structure Engineering Systems type = "passive", "structure" + + def handler(fit, src, context): groups = ("Structure Energy Neutralizer", "Structure Area Denial Module") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "capacitorNeed", src.getModifiedItemAttr("capNeedBonus"), skill="Structure Engineering Systems") + "capacitorNeed", src.getModifiedItemAttr("capNeedBonus"), + skill="Structure Engineering Systems") diff --git a/eos/effects/skillstructuremissiledamagebonus.py b/eos/effects/skillstructuremissiledamagebonus.py index 63b189a91..114a831b6 100644 --- a/eos/effects/skillstructuremissiledamagebonus.py +++ b/eos/effects/skillstructuremissiledamagebonus.py @@ -3,8 +3,11 @@ # Used by: # Skill: Structure Missile Systems type = "passive", "structure" + + def handler(fit, src, context): groups = ("Structure Anti-Capital Missile", "Structure Anti-Subcapital Missile", "Structure Guided Bomb") for damageType in ("em", "thermal", "explosive", "kinetic"): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, - "%sDamage"%damageType, src.getModifiedItemAttr("damageMultiplierBonus"), skill="Structure Missile Systems") + "%sDamage" % damageType, src.getModifiedItemAttr("damageMultiplierBonus"), + skill="Structure Missile Systems") diff --git a/eos/effects/skillsuperweapondmgbonus.py b/eos/effects/skillsuperweapondmgbonus.py index e0ed11a43..e2952621f 100644 --- a/eos/effects/skillsuperweapondmgbonus.py +++ b/eos/effects/skillsuperweapondmgbonus.py @@ -3,9 +3,12 @@ # Used by: # Skill: Doomsday Operation type = "passive" + + def handler(fit, skill, context): damageTypes = ("em", "explosive", "kinetic", "thermal") for dmgType in damageTypes: dmgAttr = "{0}Damage".format(dmgType) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Super Weapon" and dmgAttr in mod.itemModifiedAttributes, - dmgAttr, skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) + fit.modules.filteredItemBoost( + lambda mod: mod.item.group.name == "Super Weapon" and dmgAttr in mod.itemModifiedAttributes, + dmgAttr, skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/skilltargetbreakercapneedbonus2.py b/eos/effects/skilltargetbreakercapneedbonus2.py index d42e8bf1c..1bd8dbdfe 100644 --- a/eos/effects/skilltargetbreakercapneedbonus2.py +++ b/eos/effects/skilltargetbreakercapneedbonus2.py @@ -3,6 +3,8 @@ # Used by: # Skill: Target Breaker Amplification type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Breaker", "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/skilltargetbreakerdurationbonus2.py b/eos/effects/skilltargetbreakerdurationbonus2.py index 337c509c1..13cee98c8 100644 --- a/eos/effects/skilltargetbreakerdurationbonus2.py +++ b/eos/effects/skilltargetbreakerdurationbonus2.py @@ -3,6 +3,8 @@ # Used by: # Skill: Target Breaker Amplification type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Breaker", "duration", skill.getModifiedItemAttr("durationBonus") * skill.level) diff --git a/eos/effects/skilltriagemoduleconsumptionquantitybonus.py b/eos/effects/skilltriagemoduleconsumptionquantitybonus.py index f7d482f38..3682128c1 100644 --- a/eos/effects/skilltriagemoduleconsumptionquantitybonus.py +++ b/eos/effects/skilltriagemoduleconsumptionquantitybonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Tactical Logistics Reconfiguration type = "passive" + + def handler(fit, skill, context): amount = -skill.getModifiedItemAttr("consumptionQuantityBonus") fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), diff --git a/eos/effects/skirmishsquadroncommand.py b/eos/effects/skirmishsquadroncommand.py index b5f343def..d52708c7e 100644 --- a/eos/effects/skirmishsquadroncommand.py +++ b/eos/effects/skirmishsquadroncommand.py @@ -4,6 +4,8 @@ # Skill: Skirmish Warfare Specialist runTime = "early" type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), "commandBonus", skill.getModifiedItemAttr("squadronCommandBonus") * skill.level) diff --git a/eos/effects/skirmishwarfareagilitybonus.py b/eos/effects/skirmishwarfareagilitybonus.py index 9c2065482..d35cd2c23 100644 --- a/eos/effects/skirmishwarfareagilitybonus.py +++ b/eos/effects/skirmishwarfareagilitybonus.py @@ -5,6 +5,8 @@ type = "gang" gangBoost = "agility" gangBonus = "agilityBonus" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus) * level, stackingPenalties = True) + fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus) * level, stackingPenalties=True) diff --git a/eos/effects/skirmishwarfareagilitybonusreplacer.py b/eos/effects/skirmishwarfareagilitybonusreplacer.py index 0968c14e5..e7b0263ee 100644 --- a/eos/effects/skirmishwarfareagilitybonusreplacer.py +++ b/eos/effects/skirmishwarfareagilitybonusreplacer.py @@ -7,5 +7,7 @@ type = "gang" gangBoost = "agility" gangBonus = "agilityBonus" + + def handler(fit, container, context): fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus)) diff --git a/eos/effects/slotmodifier.py b/eos/effects/slotmodifier.py index 7ba0dee73..f58f21d3b 100644 --- a/eos/effects/slotmodifier.py +++ b/eos/effects/slotmodifier.py @@ -3,6 +3,8 @@ # Used by: # Items from category: Subsystem (80 of 80) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("hiSlots", module.getModifiedItemAttr("hiSlotModifier")) fit.ship.increaseItemAttr("medSlots", module.getModifiedItemAttr("medSlotModifier")) diff --git a/eos/effects/smallenergymaxrangebonus.py b/eos/effects/smallenergymaxrangebonus.py index 4e3ea5f31..4c13361f6 100644 --- a/eos/effects/smallenergymaxrangebonus.py +++ b/eos/effects/smallenergymaxrangebonus.py @@ -5,6 +5,8 @@ # Ship: Gold Magnate # Ship: Silver Magnate type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/smallenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallenergyturret.py b/eos/effects/smallenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallenergyturret.py index 97ddbf511..496efc986 100644 --- a/eos/effects/smallenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallenergyturret.py +++ b/eos/effects/smallenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallenergyturret.py @@ -4,6 +4,8 @@ # Implants named like: Inherent Implants 'Lancer' Small Energy Turret SE (6 of 6) # Skill: Small Energy Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), diff --git a/eos/effects/smallhybridmaxrangebonus.py b/eos/effects/smallhybridmaxrangebonus.py index ac39f763e..86e95036d 100644 --- a/eos/effects/smallhybridmaxrangebonus.py +++ b/eos/effects/smallhybridmaxrangebonus.py @@ -4,6 +4,8 @@ # Ship: Catalyst # Ship: Cormorant type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) \ No newline at end of file + "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/smallhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallhybridturret.py b/eos/effects/smallhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallhybridturret.py index 42ecd683a..f317f297b 100644 --- a/eos/effects/smallhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallhybridturret.py +++ b/eos/effects/smallhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallhybridturret.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Deadeye' Small Hybrid Turret SH (6 of 6) # Skill: Small Hybrid Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), diff --git a/eos/effects/smallprojectilemaxrangebonus.py b/eos/effects/smallprojectilemaxrangebonus.py index d495785b3..b94e016be 100644 --- a/eos/effects/smallprojectilemaxrangebonus.py +++ b/eos/effects/smallprojectilemaxrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Thrasher type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/smallprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallprojectileturret.py b/eos/effects/smallprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallprojectileturret.py index eac4416da..a77f76806 100644 --- a/eos/effects/smallprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallprojectileturret.py +++ b/eos/effects/smallprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallprojectileturret.py @@ -4,6 +4,8 @@ # Implants named like: Eifyr and Co. 'Gunslinger' Small Projectile Turret SP (6 of 6) # Skill: Small Projectile Turret type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), diff --git a/eos/effects/speedboostmassaddition.py b/eos/effects/speedboostmassaddition.py index 950c1abb5..f2eb76ebe 100644 --- a/eos/effects/speedboostmassaddition.py +++ b/eos/effects/speedboostmassaddition.py @@ -4,6 +4,8 @@ # Modules from group: Propulsion Module (62 of 127) type = "active" runTime = "late" + + def handler(fit, module, context): fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("massAddition")) speedBoost = module.getModifiedItemAttr("speedFactor") diff --git a/eos/effects/speedboostmasssigrad.py b/eos/effects/speedboostmasssigrad.py index 11051b5a9..9bf213638 100644 --- a/eos/effects/speedboostmasssigrad.py +++ b/eos/effects/speedboostmasssigrad.py @@ -4,10 +4,13 @@ # Modules from group: Propulsion Module (65 of 127) type = "active" runTime = "late" + + def handler(fit, module, context): fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("massAddition")) speedBoost = module.getModifiedItemAttr("speedFactor") mass = fit.ship.getModifiedItemAttr("mass") thrust = module.getModifiedItemAttr("speedBoostFactor") fit.ship.boostItemAttr("maxVelocity", speedBoost * thrust / mass) - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonus"), stackingPenalties = True) + fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonus"), + stackingPenalties=True) diff --git a/eos/effects/squadroncommand.py b/eos/effects/squadroncommand.py index 19c6606a8..cf5939f9a 100644 --- a/eos/effects/squadroncommand.py +++ b/eos/effects/squadroncommand.py @@ -3,6 +3,8 @@ # Used by: # Skill: Warfare Link Specialist type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Gang Coordinator", "commandBonus", skill.getModifiedItemAttr("squadronCommandBonus") * skill.level) diff --git a/eos/effects/squadroncommandhidden.py b/eos/effects/squadroncommandhidden.py index e42ccf645..509541d05 100644 --- a/eos/effects/squadroncommandhidden.py +++ b/eos/effects/squadroncommandhidden.py @@ -3,6 +3,8 @@ # Used by: # Skill: Warfare Link Specialist type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Gang Coordinator", "commandBonusHidden", skill.getModifiedItemAttr("squadronCommandBonus") * skill.level) diff --git a/eos/effects/standardmissilesskillboostmissilevelocitybonus.py b/eos/effects/standardmissilesskillboostmissilevelocitybonus.py index 3728b052c..f65a5bc34 100644 --- a/eos/effects/standardmissilesskillboostmissilevelocitybonus.py +++ b/eos/effects/standardmissilesskillboostmissilevelocitybonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Defender Missiles type = "passive" + + def handler(fit, skill, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Defender Missiles"), - "maxVelocity", skill.getModifiedItemAttr("missileVelocityBonus") * skill.level) \ No newline at end of file + "maxVelocity", skill.getModifiedItemAttr("missileVelocityBonus") * skill.level) diff --git a/eos/effects/stripminermaxrangebonus.py b/eos/effects/stripminermaxrangebonus.py index d7d1a86ff..781f523f4 100644 --- a/eos/effects/stripminermaxrangebonus.py +++ b/eos/effects/stripminermaxrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Implants named like: grade Harvest (10 of 12) type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Strip Miner", "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/structuralanalysiseffect.py b/eos/effects/structuralanalysiseffect.py index 9cab58b3e..de26cb71b 100644 --- a/eos/effects/structuralanalysiseffect.py +++ b/eos/effects/structuralanalysiseffect.py @@ -6,6 +6,8 @@ # Modules named like: QA Multiship Module Players (4 of 4) # Implant: Imperial Navy Modified 'Noble' Implant type = "passive" + + def handler(fit, container, context): penalized = "implant" not in context fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), diff --git a/eos/effects/structureMissileGuidanceEnhancer.py b/eos/effects/structureMissileGuidanceEnhancer.py index 3e06f4488..9a5516ada 100644 --- a/eos/effects/structureMissileGuidanceEnhancer.py +++ b/eos/effects/structureMissileGuidanceEnhancer.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Missile Guidance Enhancer (3 of 3) type = "passive" + + def handler(fit, module, context): groups = ("Structure Anti-Capital Missile", "Structure Anti-Subcapital Missile") fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, @@ -16,4 +18,4 @@ def handler(fit, module, context): stackingPenalties=True) fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, "maxVelocity", module.getModifiedItemAttr("missileVelocityBonus"), - stackingPenalties=True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/structureballisticcontrolsystem.py b/eos/effects/structureballisticcontrolsystem.py index e63eb55d8..e075af277 100644 --- a/eos/effects/structureballisticcontrolsystem.py +++ b/eos/effects/structureballisticcontrolsystem.py @@ -1,12 +1,15 @@ # Not used by any item type = "passive" + + def handler(fit, module, context): missileGroups = ("Structure Anti-Capital Missile", "Structure Anti-Subcapital Missile") for dmgType in ("em", "kinetic", "explosive", "thermal"): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.group.name in missileGroups, - "%sDamage" % dmgType, module.getModifiedItemAttr("missileDamageMultiplierBonus"), - stackingPenalties = True) + "%sDamage" % dmgType, + module.getModifiedItemAttr("missileDamageMultiplierBonus"), + stackingPenalties=True) launcherGroups = ("Structure AXL Missile Launcher", "Structure ASML Missile Launcher") fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name in launcherGroups, diff --git a/eos/effects/structurehpmultiply.py b/eos/effects/structurehpmultiply.py index aa7d43c7c..33fc44bf6 100644 --- a/eos/effects/structurehpmultiply.py +++ b/eos/effects/structurehpmultiply.py @@ -5,5 +5,7 @@ # Modules from group: Reinforced Bulkhead (8 of 8) # Modules named like: QA Multiship Module Players (4 of 4) type = "passive" + + def handler(fit, module, context): - fit.ship.multiplyItemAttr("hp", module.getModifiedItemAttr("structureHPMultiplier")) \ No newline at end of file + fit.ship.multiplyItemAttr("hp", module.getModifiedItemAttr("structureHPMultiplier")) diff --git a/eos/effects/structurehpmultiplypassive.py b/eos/effects/structurehpmultiplypassive.py index 89ab600df..543cb488a 100644 --- a/eos/effects/structurehpmultiplypassive.py +++ b/eos/effects/structurehpmultiplypassive.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Expanded Cargohold (7 of 7) type = "passive" + + def handler(fit, module, context): - fit.ship.multiplyItemAttr("hp", module.getModifiedItemAttr("structureHPMultiplier")) \ No newline at end of file + fit.ship.multiplyItemAttr("hp", module.getModifiedItemAttr("structureHPMultiplier")) diff --git a/eos/effects/structuremoduleeffectecm.py b/eos/effects/structuremoduleeffectecm.py index f8201dee1..9a39b452a 100644 --- a/eos/effects/structuremoduleeffectecm.py +++ b/eos/effects/structuremoduleeffectecm.py @@ -1,8 +1,10 @@ # Not used by any item type = "projected", "active" + + def handler(fit, module, context): if "projected" in context: # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType))/fit.scanStrength + strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/structuremoduleeffectremotesensordampener.py b/eos/effects/structuremoduleeffectremotesensordampener.py index 9734734bb..7260ef623 100644 --- a/eos/effects/structuremoduleeffectremotesensordampener.py +++ b/eos/effects/structuremoduleeffectremotesensordampener.py @@ -1,12 +1,14 @@ # Not used by any item -type= "projected", "active" +type = "projected", "active" + + def handler(fit, module, context): if "projected" not in context: return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/structuremoduleeffectstasiswebifier.py b/eos/effects/structuremoduleeffectstasiswebifier.py index bc1a9d6a5..dc4b6f046 100644 --- a/eos/effects/structuremoduleeffectstasiswebifier.py +++ b/eos/effects/structuremoduleeffectstasiswebifier.py @@ -1,6 +1,8 @@ # Not used by any item type = "active", "projected" + + def handler(fit, module, context): if "projected" not in context: return fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/structuremoduleeffecttargetpainter.py b/eos/effects/structuremoduleeffecttargetpainter.py index 4f5683d8b..aac9005ba 100644 --- a/eos/effects/structuremoduleeffecttargetpainter.py +++ b/eos/effects/structuremoduleeffecttargetpainter.py @@ -1,6 +1,8 @@ # Not used by any item type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/structuremoduleeffectweapondisruption.py b/eos/effects/structuremoduleeffectweapondisruption.py index d61d74b11..82e67797e 100644 --- a/eos/effects/structuremoduleeffectweapondisruption.py +++ b/eos/effects/structuremoduleeffectweapondisruption.py @@ -2,24 +2,25 @@ type = "active", "projected" + def handler(fit, module, context): if "projected" in context: for srcAttr, tgtAttr in ( - ("aoeCloudSizeBonus", "aoeCloudSize"), - ("aoeVelocityBonus", "aoeVelocity"), - ("missileVelocityBonus", "maxVelocity"), - ("explosionDelayBonus", "explosionDelay"), + ("aoeCloudSizeBonus", "aoeCloudSize"), + ("aoeVelocityBonus", "aoeVelocity"), + ("missileVelocityBonus", "maxVelocity"), + ("explosionDelayBonus", "explosionDelay"), ): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - tgtAttr, module.getModifiedItemAttr(srcAttr), - stackingPenalties=True, remoteResists=True) + tgtAttr, module.getModifiedItemAttr(srcAttr), + stackingPenalties=True, remoteResists=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties = True, remoteResists=True) + stackingPenalties=True, remoteResists=True) diff --git a/eos/effects/structurerepair.py b/eos/effects/structurerepair.py index 2dcab2688..40a88a261 100644 --- a/eos/effects/structurerepair.py +++ b/eos/effects/structurerepair.py @@ -4,7 +4,9 @@ # Modules from group: Hull Repair Unit (25 of 25) type = "active" runTime = "late" + + def handler(fit, module, context): amount = module.getModifiedItemAttr("structureDamageAmount") speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("hullRepair", amount / speed) \ No newline at end of file + fit.extraAttributes.increase("hullRepair", amount / speed) diff --git a/eos/effects/structurerigaoevelocitybonussingletargetmissiles.py b/eos/effects/structurerigaoevelocitybonussingletargetmissiles.py index 36544fcf0..6d4503ec7 100644 --- a/eos/effects/structurerigaoevelocitybonussingletargetmissiles.py +++ b/eos/effects/structurerigaoevelocitybonussingletargetmissiles.py @@ -1,8 +1,10 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): groups = ("Structure Anti-Subcapital Missile", "Structure Anti-Capital Missile") fit.modules.filteredItemBoost(lambda mod: mod.charge.group.name in groups, - "aoeVelocity", src.getModifiedItemAttr("structureRigMissileExploVeloBonus"), - stackingPenalties=True) + "aoeVelocity", src.getModifiedItemAttr("structureRigMissileExploVeloBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigdoomsdaydamageloss.py b/eos/effects/structurerigdoomsdaydamageloss.py index dc47880dd..e2c6c613b 100644 --- a/eos/effects/structurerigdoomsdaydamageloss.py +++ b/eos/effects/structurerigdoomsdaydamageloss.py @@ -1,5 +1,8 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Structure Doomsday Weapon", - "lightningWeaponDamageLossTarget", src.getModifiedItemAttr("structureRigDoomsdayDamageLossTargetBonus")) + "lightningWeaponDamageLossTarget", + src.getModifiedItemAttr("structureRigDoomsdayDamageLossTargetBonus")) diff --git a/eos/effects/structurerigdoomsdaytargetamountbonus.py b/eos/effects/structurerigdoomsdaytargetamountbonus.py index 5a521f9d0..a68ca1054 100644 --- a/eos/effects/structurerigdoomsdaytargetamountbonus.py +++ b/eos/effects/structurerigdoomsdaytargetamountbonus.py @@ -1,5 +1,8 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Structure Doomsday Weapon", - "lightningWeaponTargetAmount", src.getModifiedItemAttr("structureRigDoomsdayTargetAmountBonus")) + "lightningWeaponTargetAmount", + src.getModifiedItemAttr("structureRigDoomsdayTargetAmountBonus")) diff --git a/eos/effects/structurerigewcapacitorneed.py b/eos/effects/structurerigewcapacitorneed.py index e74009e94..dfeae5753 100644 --- a/eos/effects/structurerigewcapacitorneed.py +++ b/eos/effects/structurerigewcapacitorneed.py @@ -1,7 +1,9 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): groups = ("Structure ECM Battery", "Structure Disruption Battery") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "capacitorNeed", src.getModifiedItemAttr("structureRigEwarCapUseBonus"), - stackingPenalties=True) \ No newline at end of file + "capacitorNeed", src.getModifiedItemAttr("structureRigEwarCapUseBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigewmaxrangefalloff.py b/eos/effects/structurerigewmaxrangefalloff.py index 660aa53b9..fa6ed13c9 100644 --- a/eos/effects/structurerigewmaxrangefalloff.py +++ b/eos/effects/structurerigewmaxrangefalloff.py @@ -1,16 +1,18 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): groups = ("Structure ECM Battery", "Structure Disruption Battery") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "falloff", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), - stackingPenalties=True) + "falloff", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), + stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "maxRange", src.getModifiedItemAttr("structureRigEwarOptimalBonus"), - stackingPenalties=True) + "maxRange", src.getModifiedItemAttr("structureRigEwarOptimalBonus"), + stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "falloffEffectiveness", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), - stackingPenalties=True) \ No newline at end of file + "falloffEffectiveness", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigexplosionradiusbonusaoemissiles.py b/eos/effects/structurerigexplosionradiusbonusaoemissiles.py index 82e306a8e..34e840638 100644 --- a/eos/effects/structurerigexplosionradiusbonusaoemissiles.py +++ b/eos/effects/structurerigexplosionradiusbonusaoemissiles.py @@ -1,6 +1,8 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Structure Guided Bomb", - "aoeCloudSize", src.getModifiedItemAttr("structureRigMissileExplosionRadiusBonus"), - stackingPenalties=True) + "aoeCloudSize", src.getModifiedItemAttr("structureRigMissileExplosionRadiusBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigmaxtargets.py b/eos/effects/structurerigmaxtargets.py index d7444bf10..d7b5ecfe5 100644 --- a/eos/effects/structurerigmaxtargets.py +++ b/eos/effects/structurerigmaxtargets.py @@ -1,4 +1,6 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.ship.increaseItemAttr("maxLockedTargets", src.getModifiedItemAttr("structureRigMaxTargetBonus")) diff --git a/eos/effects/structurerigneutralizercapacitorneed.py b/eos/effects/structurerigneutralizercapacitorneed.py index dd99761b2..c570161fa 100644 --- a/eos/effects/structurerigneutralizercapacitorneed.py +++ b/eos/effects/structurerigneutralizercapacitorneed.py @@ -1,6 +1,8 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer", - "capacitorNeed", src.getModifiedItemAttr("structureRigEwarCapUseBonus"), - stackingPenalties=True) + "capacitorNeed", src.getModifiedItemAttr("structureRigEwarCapUseBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigneutralizermaxrangefalloffeffectiveness.py b/eos/effects/structurerigneutralizermaxrangefalloffeffectiveness.py index ebe35be6f..d123e0278 100644 --- a/eos/effects/structurerigneutralizermaxrangefalloffeffectiveness.py +++ b/eos/effects/structurerigneutralizermaxrangefalloffeffectiveness.py @@ -1,10 +1,12 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer", - "maxRange", src.getModifiedItemAttr("structureRigEwarOptimalBonus"), - stackingPenalties=True) + "maxRange", src.getModifiedItemAttr("structureRigEwarOptimalBonus"), + stackingPenalties=True) fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer", - "falloffEffectiveness", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), - stackingPenalties=True) + "falloffEffectiveness", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigpdbcapacitorneed.py b/eos/effects/structurerigpdbcapacitorneed.py index 273ddedeb..a32e63ecc 100644 --- a/eos/effects/structurerigpdbcapacitorneed.py +++ b/eos/effects/structurerigpdbcapacitorneed.py @@ -1,6 +1,8 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Area Denial Module", - "capacitorNeed", src.getModifiedItemAttr("structureRigPDCapUseBonus"), - stackingPenalties=True) + "capacitorNeed", src.getModifiedItemAttr("structureRigPDCapUseBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigpdbmaxrange.py b/eos/effects/structurerigpdbmaxrange.py index 5c822c103..64994bf26 100644 --- a/eos/effects/structurerigpdbmaxrange.py +++ b/eos/effects/structurerigpdbmaxrange.py @@ -1,6 +1,8 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Area Denial Module", - "empFieldRange", src.getModifiedItemAttr("structureRigPDRangeBonus"), - stackingPenalties=True) + "empFieldRange", src.getModifiedItemAttr("structureRigPDRangeBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigsensorresolution.py b/eos/effects/structurerigsensorresolution.py index e037fc4ea..8d68050e6 100644 --- a/eos/effects/structurerigsensorresolution.py +++ b/eos/effects/structurerigsensorresolution.py @@ -1,4 +1,7 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): - fit.ship.boostItemAttr("scanResolution", src.getModifiedItemAttr("structureRigScanResBonus"), stackingPenalties=True) + fit.ship.boostItemAttr("scanResolution", src.getModifiedItemAttr("structureRigScanResBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigvelocitybonusaoemissiles.py b/eos/effects/structurerigvelocitybonusaoemissiles.py index 5ffd336f8..636134b1f 100644 --- a/eos/effects/structurerigvelocitybonusaoemissiles.py +++ b/eos/effects/structurerigvelocitybonusaoemissiles.py @@ -1,6 +1,8 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Structure Guided Bomb", - "maxVelocity", src.getModifiedItemAttr("structureRigMissileVelocityBonus"), - stackingPenalties=True) + "maxVelocity", src.getModifiedItemAttr("structureRigMissileVelocityBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurerigvelocitybonussingletargetmissiles.py b/eos/effects/structurerigvelocitybonussingletargetmissiles.py index ebece903c..1af82afd0 100644 --- a/eos/effects/structurerigvelocitybonussingletargetmissiles.py +++ b/eos/effects/structurerigvelocitybonussingletargetmissiles.py @@ -1,7 +1,9 @@ # Not used by any item type = "passive" + + def handler(fit, src, context): groups = ("Structure Anti-Subcapital Missile", "Structure Anti-Capital Missile") fit.modules.filteredItemBoost(lambda mod: mod.charge.group.name in groups, - "maxVelocity", src.getModifiedItemAttr("structureRigMissileVelocityBonus"), - stackingPenalties=True) + "maxVelocity", src.getModifiedItemAttr("structureRigMissileVelocityBonus"), + stackingPenalties=True) diff --git a/eos/effects/structurestealthemitterarraysigdecrease.py b/eos/effects/structurestealthemitterarraysigdecrease.py index ec2140edf..c7e19707f 100644 --- a/eos/effects/structurestealthemitterarraysigdecrease.py +++ b/eos/effects/structurestealthemitterarraysigdecrease.py @@ -4,5 +4,7 @@ # Implants named like: X Instinct Booster (4 of 4) # Implants named like: grade Halo (15 of 18) type = "passive" + + def handler(fit, implant, context): fit.ship.boostItemAttr("signatureRadius", implant.getModifiedItemAttr("signatureRadiusBonus")) diff --git a/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py b/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py index be42de8ee..bc2300a68 100644 --- a/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py +++ b/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py @@ -4,6 +4,7 @@ type = "projected", "active" from eos.types import State + def handler(fit, module, context): if "projected" not in context: return diff --git a/eos/effects/subsystembonusamarrdefensive2remotearmorrepairamount.py b/eos/effects/subsystembonusamarrdefensive2remotearmorrepairamount.py index fa0c9a3e8..931ff0190 100644 --- a/eos/effects/subsystembonusamarrdefensive2remotearmorrepairamount.py +++ b/eos/effects/subsystembonusamarrdefensive2remotearmorrepairamount.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Defensive - Adaptive Augmenter type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusAmarrDefensive2"), skill="Amarr Defensive Systems") + "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusAmarrDefensive2"), + skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensivearmoredwarfare.py b/eos/effects/subsystembonusamarrdefensivearmoredwarfare.py index b58cf7521..371873ede 100644 --- a/eos/effects/subsystembonusamarrdefensivearmoredwarfare.py +++ b/eos/effects/subsystembonusamarrdefensivearmoredwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), skill="Amarr Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), + skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensivearmorhp.py b/eos/effects/subsystembonusamarrdefensivearmorhp.py index 73eb74a9e..d28928667 100644 --- a/eos/effects/subsystembonusamarrdefensivearmorhp.py +++ b/eos/effects/subsystembonusamarrdefensivearmorhp.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Defensive - Augmented Plating type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), skill="Amarr Defensive Systems") + fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), + skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensivearmorrepairamount.py b/eos/effects/subsystembonusamarrdefensivearmorrepairamount.py index 79b4176b1..27bb5924b 100644 --- a/eos/effects/subsystembonusamarrdefensivearmorrepairamount.py +++ b/eos/effects/subsystembonusamarrdefensivearmorrepairamount.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Defensive - Nanobot Injector type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), skill="Amarr Defensive Systems") + "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), + skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensivearmorresistance.py b/eos/effects/subsystembonusamarrdefensivearmorresistance.py index d032065e3..0f4538f81 100644 --- a/eos/effects/subsystembonusamarrdefensivearmorresistance.py +++ b/eos/effects/subsystembonusamarrdefensivearmorresistance.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Legion Defensive - Adaptive Augmenter type = "passive" + + def handler(fit, module, context): for type in ("Em", "Explosive", "Kinetic", "Thermal"): - fit.ship.boostItemAttr("armor{0}DamageResonance".format(type), module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), skill="Amarr Defensive Systems") + fit.ship.boostItemAttr("armor{0}DamageResonance".format(type), + module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), + skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensiveinformationwarfare.py b/eos/effects/subsystembonusamarrdefensiveinformationwarfare.py index 0abc92cee..2464c35a8 100644 --- a/eos/effects/subsystembonusamarrdefensiveinformationwarfare.py +++ b/eos/effects/subsystembonusamarrdefensiveinformationwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), skill="Amarr Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), + skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensiveinformationwarfarehidden.py b/eos/effects/subsystembonusamarrdefensiveinformationwarfarehidden.py index c41e0ee70..c4bda3b18 100644 --- a/eos/effects/subsystembonusamarrdefensiveinformationwarfarehidden.py +++ b/eos/effects/subsystembonusamarrdefensiveinformationwarfarehidden.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), - "commandBonusHidden", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), skill="Amarr Defensive Systems") + "commandBonusHidden", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), + skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensiveskirmishwarfare.py b/eos/effects/subsystembonusamarrdefensiveskirmishwarfare.py index 7ba436d07..0eb183b08 100644 --- a/eos/effects/subsystembonusamarrdefensiveskirmishwarfare.py +++ b/eos/effects/subsystembonusamarrdefensiveskirmishwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), skill="Amarr Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), + skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrelectronic2maxtargetingrange.py b/eos/effects/subsystembonusamarrelectronic2maxtargetingrange.py index d27d3e8da..9e8d6b307 100644 --- a/eos/effects/subsystembonusamarrelectronic2maxtargetingrange.py +++ b/eos/effects/subsystembonusamarrelectronic2maxtargetingrange.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Electronics - Dissolution Sequencer type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("subsystemBonusAmarrElectronic2"), skill="Amarr Electronic Systems") + fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("subsystemBonusAmarrElectronic2"), + skill="Amarr Electronic Systems") diff --git a/eos/effects/subsystembonusamarrelectronic2scanresolution.py b/eos/effects/subsystembonusamarrelectronic2scanresolution.py index 781e98f49..ec1ecc2d8 100644 --- a/eos/effects/subsystembonusamarrelectronic2scanresolution.py +++ b/eos/effects/subsystembonusamarrelectronic2scanresolution.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Electronics - Tactical Targeting Network type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("subsystemBonusAmarrElectronic2"), skill="Amarr Electronic Systems") + fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("subsystemBonusAmarrElectronic2"), + skill="Amarr Electronic Systems") diff --git a/eos/effects/subsystembonusamarrelectronic2tractorbeamrange.py b/eos/effects/subsystembonusamarrelectronic2tractorbeamrange.py index becc360d4..ebad7b7fa 100644 --- a/eos/effects/subsystembonusamarrelectronic2tractorbeamrange.py +++ b/eos/effects/subsystembonusamarrelectronic2tractorbeamrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxRange", module.getModifiedItemAttr("subsystemBonusAmarrElectronic2"), skill="Amarr Electronic Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusAmarrElectronic2"), + skill="Amarr Electronic Systems") diff --git a/eos/effects/subsystembonusamarrelectronic2tractorbeamvelocity.py b/eos/effects/subsystembonusamarrelectronic2tractorbeamvelocity.py index 5b2e8e97c..125a00d96 100644 --- a/eos/effects/subsystembonusamarrelectronic2tractorbeamvelocity.py +++ b/eos/effects/subsystembonusamarrelectronic2tractorbeamvelocity.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxTractorVelocity", module.getModifiedItemAttr("subsystemBonusAmarrElectronic2"), skill="Amarr Electronic Systems") + "maxTractorVelocity", module.getModifiedItemAttr("subsystemBonusAmarrElectronic2"), + skill="Amarr Electronic Systems") diff --git a/eos/effects/subsystembonusamarrelectronicenergydestabilizeramount.py b/eos/effects/subsystembonusamarrelectronicenergydestabilizeramount.py index ba29f0b27..fc4295af1 100644 --- a/eos/effects/subsystembonusamarrelectronicenergydestabilizeramount.py +++ b/eos/effects/subsystembonusamarrelectronicenergydestabilizeramount.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Legion Electronics - Energy Parasitic Complex type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", module.getModifiedItemAttr("subsystemBonusAmarrElectronic"), skill="Amarr Electronic Systems") + "energyNeutralizerAmount", + module.getModifiedItemAttr("subsystemBonusAmarrElectronic"), + skill="Amarr Electronic Systems") diff --git a/eos/effects/subsystembonusamarrelectronicenergyvampireamount.py b/eos/effects/subsystembonusamarrelectronicenergyvampireamount.py index 080d3dc92..3c3870675 100644 --- a/eos/effects/subsystembonusamarrelectronicenergyvampireamount.py +++ b/eos/effects/subsystembonusamarrelectronicenergyvampireamount.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Electronics - Energy Parasitic Complex type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", module.getModifiedItemAttr("subsystemBonusAmarrElectronic"), skill="Amarr Electronic Systems") + "powerTransferAmount", module.getModifiedItemAttr("subsystemBonusAmarrElectronic"), + skill="Amarr Electronic Systems") diff --git a/eos/effects/subsystembonusamarrelectronicscanprobestrength.py b/eos/effects/subsystembonusamarrelectronicscanprobestrength.py index 4d3c514a8..094bc05b5 100644 --- a/eos/effects/subsystembonusamarrelectronicscanprobestrength.py +++ b/eos/effects/subsystembonusamarrelectronicscanprobestrength.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", module.getModifiedItemAttr("subsystemBonusAmarrElectronic"), skill="Amarr Electronic Systems") + "baseSensorStrength", module.getModifiedItemAttr("subsystemBonusAmarrElectronic"), + skill="Amarr Electronic Systems") diff --git a/eos/effects/subsystembonusamarrelectronicscanstrengthradar.py b/eos/effects/subsystembonusamarrelectronicscanstrengthradar.py index 1f5b85ce0..ed1e64b13 100644 --- a/eos/effects/subsystembonusamarrelectronicscanstrengthradar.py +++ b/eos/effects/subsystembonusamarrelectronicscanstrengthradar.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Electronics - Dissolution Sequencer type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("scanRadarStrength", module.getModifiedItemAttr("subsystemBonusAmarrElectronic"), skill="Amarr Electronic Systems") + fit.ship.boostItemAttr("scanRadarStrength", module.getModifiedItemAttr("subsystemBonusAmarrElectronic"), + skill="Amarr Electronic Systems") diff --git a/eos/effects/subsystembonusamarrengineeringcapacitorcapacity.py b/eos/effects/subsystembonusamarrengineeringcapacitorcapacity.py index 574478596..421f22d83 100644 --- a/eos/effects/subsystembonusamarrengineeringcapacitorcapacity.py +++ b/eos/effects/subsystembonusamarrengineeringcapacitorcapacity.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Engineering - Augmented Capacitor Reservoir type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("capacitorCapacity", module.getModifiedItemAttr("subsystemBonusAmarrEngineering"), skill="Amarr Engineering Systems") + fit.ship.boostItemAttr("capacitorCapacity", module.getModifiedItemAttr("subsystemBonusAmarrEngineering"), + skill="Amarr Engineering Systems") diff --git a/eos/effects/subsystembonusamarrengineeringcapacitorrecharge.py b/eos/effects/subsystembonusamarrengineeringcapacitorrecharge.py index ff816724a..644a4f1fb 100644 --- a/eos/effects/subsystembonusamarrengineeringcapacitorrecharge.py +++ b/eos/effects/subsystembonusamarrengineeringcapacitorrecharge.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Engineering - Capacitor Regeneration Matrix type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("rechargeRate", module.getModifiedItemAttr("subsystemBonusAmarrEngineering"), skill="Amarr Engineering Systems") + fit.ship.boostItemAttr("rechargeRate", module.getModifiedItemAttr("subsystemBonusAmarrEngineering"), + skill="Amarr Engineering Systems") diff --git a/eos/effects/subsystembonusamarrengineeringheatdamagereduction.py b/eos/effects/subsystembonusamarrengineeringheatdamagereduction.py index bc77e22d1..b05578034 100644 --- a/eos/effects/subsystembonusamarrengineeringheatdamagereduction.py +++ b/eos/effects/subsystembonusamarrengineeringheatdamagereduction.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Engineering - Supplemental Coolant Injector type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - module.getModifiedItemAttr("subsystemBonusAmarrEngineering"), skill="Amarr Engineering Systems") + module.getModifiedItemAttr("subsystemBonusAmarrEngineering"), + skill="Amarr Engineering Systems") diff --git a/eos/effects/subsystembonusamarrengineeringpoweroutput.py b/eos/effects/subsystembonusamarrengineeringpoweroutput.py index 5640abcf6..7c7de3bd4 100644 --- a/eos/effects/subsystembonusamarrengineeringpoweroutput.py +++ b/eos/effects/subsystembonusamarrengineeringpoweroutput.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Engineering - Power Core Multiplier type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("powerOutput", module.getModifiedItemAttr("subsystemBonusAmarrEngineering"), skill="Amarr Engineering Systems") + fit.ship.boostItemAttr("powerOutput", module.getModifiedItemAttr("subsystemBonusAmarrEngineering"), + skill="Amarr Engineering Systems") diff --git a/eos/effects/subsystembonusamarroffensive2energyweaponcapacitorneed.py b/eos/effects/subsystembonusamarroffensive2energyweaponcapacitorneed.py index 2f06ecf2a..804fc8461 100644 --- a/eos/effects/subsystembonusamarroffensive2energyweaponcapacitorneed.py +++ b/eos/effects/subsystembonusamarroffensive2energyweaponcapacitorneed.py @@ -4,6 +4,9 @@ # Subsystem: Legion Offensive - Drone Synthesis Projector # Subsystem: Legion Offensive - Liquid Crystal Magnifiers type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "capacitorNeed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") + "capacitorNeed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive2hamemdamage.py b/eos/effects/subsystembonusamarroffensive2hamemdamage.py index 8178a10a1..efc2542a7 100644 --- a/eos/effects/subsystembonusamarroffensive2hamemdamage.py +++ b/eos/effects/subsystembonusamarroffensive2hamemdamage.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Assault Optimization type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "emDamage", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") + "emDamage", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive2hamexplosivedamage.py b/eos/effects/subsystembonusamarroffensive2hamexplosivedamage.py index f06ee21e8..ff23e5c75 100644 --- a/eos/effects/subsystembonusamarroffensive2hamexplosivedamage.py +++ b/eos/effects/subsystembonusamarroffensive2hamexplosivedamage.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Assault Optimization type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "explosiveDamage", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") + "explosiveDamage", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive2hamkineticdamage.py b/eos/effects/subsystembonusamarroffensive2hamkineticdamage.py index 1fb68f0c8..7e7726476 100644 --- a/eos/effects/subsystembonusamarroffensive2hamkineticdamage.py +++ b/eos/effects/subsystembonusamarroffensive2hamkineticdamage.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Assault Optimization type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "kineticDamage", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") + "kineticDamage", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive2hamthermaldamage.py b/eos/effects/subsystembonusamarroffensive2hamthermaldamage.py index a8d181181..f62bfe09b 100644 --- a/eos/effects/subsystembonusamarroffensive2hamthermaldamage.py +++ b/eos/effects/subsystembonusamarroffensive2hamthermaldamage.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Assault Optimization type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "thermalDamage", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") + "thermalDamage", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive3dronehp.py b/eos/effects/subsystembonusamarroffensive3dronehp.py index 9ca93b374..5160060df 100644 --- a/eos/effects/subsystembonusamarroffensive3dronehp.py +++ b/eos/effects/subsystembonusamarroffensive3dronehp.py @@ -3,7 +3,10 @@ # Used by: # Subsystem: Legion Offensive - Drone Synthesis Projector type = "passive" + + def handler(fit, module, context): for layer in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), layer, - module.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), skill="Amarr Offensive Systems") + module.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive3energyweaponmaxrange.py b/eos/effects/subsystembonusamarroffensive3energyweaponmaxrange.py index 80546ed46..7d001910c 100644 --- a/eos/effects/subsystembonusamarroffensive3energyweaponmaxrange.py +++ b/eos/effects/subsystembonusamarroffensive3energyweaponmaxrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Liquid Crystal Magnifiers type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", module.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), skill="Amarr Offensive Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensiveassaultmissilelauncherrof.py b/eos/effects/subsystembonusamarroffensiveassaultmissilelauncherrof.py index bd48e2863..fe66e0d40 100644 --- a/eos/effects/subsystembonusamarroffensiveassaultmissilelauncherrof.py +++ b/eos/effects/subsystembonusamarroffensiveassaultmissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Assault Optimization type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Light", - "speed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensivedronedamagemultiplier.py b/eos/effects/subsystembonusamarroffensivedronedamagemultiplier.py index 8891c8e23..44b1d4f83 100644 --- a/eos/effects/subsystembonusamarroffensivedronedamagemultiplier.py +++ b/eos/effects/subsystembonusamarroffensivedronedamagemultiplier.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Drone Synthesis Projector type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") + "damageMultiplier", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensiveenergyweaponcapacitorneed.py b/eos/effects/subsystembonusamarroffensiveenergyweaponcapacitorneed.py index 09b73187f..4e6fc9d4c 100644 --- a/eos/effects/subsystembonusamarroffensiveenergyweaponcapacitorneed.py +++ b/eos/effects/subsystembonusamarroffensiveenergyweaponcapacitorneed.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Covert Reconfiguration type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "capacitorNeed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") + "capacitorNeed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensiveenergyweapondamagemultiplier.py b/eos/effects/subsystembonusamarroffensiveenergyweapondamagemultiplier.py index 07dddee5a..3af29dfee 100644 --- a/eos/effects/subsystembonusamarroffensiveenergyweapondamagemultiplier.py +++ b/eos/effects/subsystembonusamarroffensiveenergyweapondamagemultiplier.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Liquid Crystal Magnifiers type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") + "damageMultiplier", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensiveheavyassaultmissilelauncherrof.py b/eos/effects/subsystembonusamarroffensiveheavyassaultmissilelauncherrof.py index 00ffeca45..a857c5f51 100644 --- a/eos/effects/subsystembonusamarroffensiveheavyassaultmissilelauncherrof.py +++ b/eos/effects/subsystembonusamarroffensiveheavyassaultmissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Assault Optimization type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", - "speed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensiveheavymissilelauncherrof.py b/eos/effects/subsystembonusamarroffensiveheavymissilelauncherrof.py index 5feee607c..9a1ef2880 100644 --- a/eos/effects/subsystembonusamarroffensiveheavymissilelauncherrof.py +++ b/eos/effects/subsystembonusamarroffensiveheavymissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Offensive - Assault Optimization type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", - "speed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), + skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarrpropulsionafterburnerspeedfactor.py b/eos/effects/subsystembonusamarrpropulsionafterburnerspeedfactor.py index ac4e70057..d1dc75888 100644 --- a/eos/effects/subsystembonusamarrpropulsionafterburnerspeedfactor.py +++ b/eos/effects/subsystembonusamarrpropulsionafterburnerspeedfactor.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Propulsion - Fuel Catalyst type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), skill="Amarr Propulsion Systems") + "speedFactor", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), + skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonusamarrpropulsionagility.py b/eos/effects/subsystembonusamarrpropulsionagility.py index a2d9dfd56..cdc25a7dd 100644 --- a/eos/effects/subsystembonusamarrpropulsionagility.py +++ b/eos/effects/subsystembonusamarrpropulsionagility.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Propulsion - Interdiction Nullifier type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), skill="Amarr Propulsion Systems") + fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), + skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonusamarrpropulsionmaxvelocity.py b/eos/effects/subsystembonusamarrpropulsionmaxvelocity.py index 05b68be1e..2f928cbac 100644 --- a/eos/effects/subsystembonusamarrpropulsionmaxvelocity.py +++ b/eos/effects/subsystembonusamarrpropulsionmaxvelocity.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Legion Propulsion - Chassis Optimization type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), skill="Amarr Propulsion Systems") + fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), + skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonusamarrpropulsionmwdpenalty.py b/eos/effects/subsystembonusamarrpropulsionmwdpenalty.py index 2276cff1d..46a48e5a1 100644 --- a/eos/effects/subsystembonusamarrpropulsionmwdpenalty.py +++ b/eos/effects/subsystembonusamarrpropulsionmwdpenalty.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Legion Propulsion - Wake Limiter type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), skill="Amarr Propulsion Systems") + "signatureRadiusBonus", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), + skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaridefensive2remoteshieldtransporteramount.py b/eos/effects/subsystembonuscaldaridefensive2remoteshieldtransporteramount.py index d267413eb..ab944172d 100644 --- a/eos/effects/subsystembonuscaldaridefensive2remoteshieldtransporteramount.py +++ b/eos/effects/subsystembonuscaldaridefensive2remoteshieldtransporteramount.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Defensive - Adaptive Shielding type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "shieldBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive2"), skill="Caldari Defensive Systems") + "shieldBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive2"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveinformationwarfare.py b/eos/effects/subsystembonuscaldaridefensiveinformationwarfare.py index 227405494..b9ea652ff 100644 --- a/eos/effects/subsystembonuscaldaridefensiveinformationwarfare.py +++ b/eos/effects/subsystembonuscaldaridefensiveinformationwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), skill="Caldari Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveinformationwarfarehidden.py b/eos/effects/subsystembonuscaldaridefensiveinformationwarfarehidden.py index 36ba1f089..1cd795027 100644 --- a/eos/effects/subsystembonuscaldaridefensiveinformationwarfarehidden.py +++ b/eos/effects/subsystembonuscaldaridefensiveinformationwarfarehidden.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), - "commandBonusHidden", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), skill="Caldari Defensive Systems") + "commandBonusHidden", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveshieldboostamount.py b/eos/effects/subsystembonuscaldaridefensiveshieldboostamount.py index 69edfb54d..da6f96f0b 100644 --- a/eos/effects/subsystembonuscaldaridefensiveshieldboostamount.py +++ b/eos/effects/subsystembonuscaldaridefensiveshieldboostamount.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Defensive - Amplification Node type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), skill="Caldari Defensive Systems") + "shieldBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveshieldhp.py b/eos/effects/subsystembonuscaldaridefensiveshieldhp.py index a1596527d..50ce1043f 100644 --- a/eos/effects/subsystembonuscaldaridefensiveshieldhp.py +++ b/eos/effects/subsystembonuscaldaridefensiveshieldhp.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Defensive - Supplemental Screening type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("shieldCapacity", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), skill="Caldari Defensive Systems") + fit.ship.boostItemAttr("shieldCapacity", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveshieldrechargerate.py b/eos/effects/subsystembonuscaldaridefensiveshieldrechargerate.py index 791898df7..938a268da 100644 --- a/eos/effects/subsystembonuscaldaridefensiveshieldrechargerate.py +++ b/eos/effects/subsystembonuscaldaridefensiveshieldrechargerate.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Defensive - Supplemental Screening type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("shieldRechargeRate", module.getModifiedItemAttr("subsystemBonusCaldariDefensive2"), skill="Caldari Defensive Systems") + fit.ship.boostItemAttr("shieldRechargeRate", module.getModifiedItemAttr("subsystemBonusCaldariDefensive2"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveshieldresistance.py b/eos/effects/subsystembonuscaldaridefensiveshieldresistance.py index 5b010063a..993f99f57 100644 --- a/eos/effects/subsystembonuscaldaridefensiveshieldresistance.py +++ b/eos/effects/subsystembonuscaldaridefensiveshieldresistance.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Tengu Defensive - Adaptive Shielding type = "passive" + + def handler(fit, module, context): for type in ("Em", "Explosive", "Kinetic", "Thermal"): - fit.ship.boostItemAttr("shield{0}DamageResonance".format(type), module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), skill="Caldari Defensive Systems") + fit.ship.boostItemAttr("shield{0}DamageResonance".format(type), + module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensivesiegewarfare.py b/eos/effects/subsystembonuscaldaridefensivesiegewarfare.py index 83bd125dc..9895e8753 100644 --- a/eos/effects/subsystembonuscaldaridefensivesiegewarfare.py +++ b/eos/effects/subsystembonuscaldaridefensivesiegewarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), skill="Caldari Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveskirmishwarfare.py b/eos/effects/subsystembonuscaldaridefensiveskirmishwarfare.py index f6cc7baa2..8ed05b0f0 100644 --- a/eos/effects/subsystembonuscaldaridefensiveskirmishwarfare.py +++ b/eos/effects/subsystembonuscaldaridefensiveskirmishwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), skill="Caldari Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), + skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldarielectronic2maxtargetingrange.py b/eos/effects/subsystembonuscaldarielectronic2maxtargetingrange.py index bd6a0ff8f..760d0025c 100644 --- a/eos/effects/subsystembonuscaldarielectronic2maxtargetingrange.py +++ b/eos/effects/subsystembonuscaldarielectronic2maxtargetingrange.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Electronics - Dissolution Sequencer type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("subsystemBonusCaldariElectronic2"), skill="Caldari Electronic Systems") + fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("subsystemBonusCaldariElectronic2"), + skill="Caldari Electronic Systems") diff --git a/eos/effects/subsystembonuscaldarielectronic2tractorbeamrange.py b/eos/effects/subsystembonuscaldarielectronic2tractorbeamrange.py index 0f34eae81..d61fde3b5 100644 --- a/eos/effects/subsystembonuscaldarielectronic2tractorbeamrange.py +++ b/eos/effects/subsystembonuscaldarielectronic2tractorbeamrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxRange", module.getModifiedItemAttr("subsystemBonusCaldariElectronic2"), skill="Caldari Electronic Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusCaldariElectronic2"), + skill="Caldari Electronic Systems") diff --git a/eos/effects/subsystembonuscaldarielectronic2tractorbeamvelocity.py b/eos/effects/subsystembonuscaldarielectronic2tractorbeamvelocity.py index 225e6ddb0..e03dbaa49 100644 --- a/eos/effects/subsystembonuscaldarielectronic2tractorbeamvelocity.py +++ b/eos/effects/subsystembonuscaldarielectronic2tractorbeamvelocity.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxTractorVelocity", module.getModifiedItemAttr("subsystemBonusCaldariElectronic2"), skill="Caldari Electronic Systems") + "maxTractorVelocity", module.getModifiedItemAttr("subsystemBonusCaldariElectronic2"), + skill="Caldari Electronic Systems") diff --git a/eos/effects/subsystembonuscaldarielectroniccpu.py b/eos/effects/subsystembonuscaldarielectroniccpu.py index 69c355603..c44cdcb13 100644 --- a/eos/effects/subsystembonuscaldarielectroniccpu.py +++ b/eos/effects/subsystembonuscaldarielectroniccpu.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Electronics - CPU Efficiency Gate type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("cpuOutput", module.getModifiedItemAttr("subsystemBonusCaldariElectronic"), skill="Caldari Electronic Systems") + fit.ship.boostItemAttr("cpuOutput", module.getModifiedItemAttr("subsystemBonusCaldariElectronic"), + skill="Caldari Electronic Systems") diff --git a/eos/effects/subsystembonuscaldarielectronicecmrange.py b/eos/effects/subsystembonuscaldarielectronicecmrange.py index 768edca0a..23e2f7f3b 100644 --- a/eos/effects/subsystembonuscaldarielectronicecmrange.py +++ b/eos/effects/subsystembonuscaldarielectronicecmrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Electronics - Obfuscation Manifold type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "maxRange", module.getModifiedItemAttr("subsystemBonusCaldariElectronic"), skill="Caldari Electronic Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusCaldariElectronic"), + skill="Caldari Electronic Systems") diff --git a/eos/effects/subsystembonuscaldarielectronicscanprobestrength.py b/eos/effects/subsystembonuscaldarielectronicscanprobestrength.py index 5e7ce9b7d..21ee1b739 100644 --- a/eos/effects/subsystembonuscaldarielectronicscanprobestrength.py +++ b/eos/effects/subsystembonuscaldarielectronicscanprobestrength.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", module.getModifiedItemAttr("subsystemBonusCaldariElectronic"), skill="Caldari Electronic Systems") + "baseSensorStrength", module.getModifiedItemAttr("subsystemBonusCaldariElectronic"), + skill="Caldari Electronic Systems") diff --git a/eos/effects/subsystembonuscaldarielectronicscanstrengthgravimetric.py b/eos/effects/subsystembonuscaldarielectronicscanstrengthgravimetric.py index a6f0ba498..6f3ca9d9b 100644 --- a/eos/effects/subsystembonuscaldarielectronicscanstrengthgravimetric.py +++ b/eos/effects/subsystembonuscaldarielectronicscanstrengthgravimetric.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Electronics - Dissolution Sequencer type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("scanGravimetricStrength", module.getModifiedItemAttr("subsystemBonusCaldariElectronic"), skill="Caldari Electronic Systems") + fit.ship.boostItemAttr("scanGravimetricStrength", module.getModifiedItemAttr("subsystemBonusCaldariElectronic"), + skill="Caldari Electronic Systems") diff --git a/eos/effects/subsystembonuscaldariengineeringcapacitorcapacity.py b/eos/effects/subsystembonuscaldariengineeringcapacitorcapacity.py index 7d8aa2baf..0e2fb0907 100644 --- a/eos/effects/subsystembonuscaldariengineeringcapacitorcapacity.py +++ b/eos/effects/subsystembonuscaldariengineeringcapacitorcapacity.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Engineering - Augmented Capacitor Reservoir type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("capacitorCapacity", module.getModifiedItemAttr("subsystemBonusCaldariEngineering"), skill="Caldari Engineering Systems") + fit.ship.boostItemAttr("capacitorCapacity", module.getModifiedItemAttr("subsystemBonusCaldariEngineering"), + skill="Caldari Engineering Systems") diff --git a/eos/effects/subsystembonuscaldariengineeringcapacitorrecharge.py b/eos/effects/subsystembonuscaldariengineeringcapacitorrecharge.py index fd4a3737a..f3948124e 100644 --- a/eos/effects/subsystembonuscaldariengineeringcapacitorrecharge.py +++ b/eos/effects/subsystembonuscaldariengineeringcapacitorrecharge.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Engineering - Capacitor Regeneration Matrix type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("rechargeRate", module.getModifiedItemAttr("subsystemBonusCaldariEngineering"), skill="Caldari Engineering Systems") + fit.ship.boostItemAttr("rechargeRate", module.getModifiedItemAttr("subsystemBonusCaldariEngineering"), + skill="Caldari Engineering Systems") diff --git a/eos/effects/subsystembonuscaldariengineeringheatdamagereduction.py b/eos/effects/subsystembonuscaldariengineeringheatdamagereduction.py index e694e066d..1b15f7e14 100644 --- a/eos/effects/subsystembonuscaldariengineeringheatdamagereduction.py +++ b/eos/effects/subsystembonuscaldariengineeringheatdamagereduction.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Engineering - Supplemental Coolant Injector type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - module.getModifiedItemAttr("subsystemBonusCaldariEngineering"), skill="Caldari Engineering Systems") + module.getModifiedItemAttr("subsystemBonusCaldariEngineering"), + skill="Caldari Engineering Systems") diff --git a/eos/effects/subsystembonuscaldariengineeringpoweroutput.py b/eos/effects/subsystembonuscaldariengineeringpoweroutput.py index 1f21a67a4..e8728f95a 100644 --- a/eos/effects/subsystembonuscaldariengineeringpoweroutput.py +++ b/eos/effects/subsystembonuscaldariengineeringpoweroutput.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Engineering - Power Core Multiplier type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("powerOutput", module.getModifiedItemAttr("subsystemBonusCaldariEngineering"), skill="Caldari Engineering Systems") + fit.ship.boostItemAttr("powerOutput", module.getModifiedItemAttr("subsystemBonusCaldariEngineering"), + skill="Caldari Engineering Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive2hybridweapondamagemultiplier.py b/eos/effects/subsystembonuscaldarioffensive2hybridweapondamagemultiplier.py index ac961adc7..830e6ae1b 100644 --- a/eos/effects/subsystembonuscaldarioffensive2hybridweapondamagemultiplier.py +++ b/eos/effects/subsystembonuscaldarioffensive2hybridweapondamagemultiplier.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Offensive - Magnetic Infusion Basin type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), skill="Caldari Offensive Systems") + "damageMultiplier", module.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive2missilelauncherkineticdamage.py b/eos/effects/subsystembonuscaldarioffensive2missilelauncherkineticdamage.py index 1065c574c..b5b72630f 100644 --- a/eos/effects/subsystembonuscaldarioffensive2missilelauncherkineticdamage.py +++ b/eos/effects/subsystembonuscaldarioffensive2missilelauncherkineticdamage.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Offensive - Accelerated Ejection Bay type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", module.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), skill="Caldari Offensive Systems") + "kineticDamage", module.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive3ewstrengthgrav.py b/eos/effects/subsystembonuscaldarioffensive3ewstrengthgrav.py index 94afe30ad..0c6955c2d 100644 --- a/eos/effects/subsystembonuscaldarioffensive3ewstrengthgrav.py +++ b/eos/effects/subsystembonuscaldarioffensive3ewstrengthgrav.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Tengu Offensive - Rifling Launcher Pattern type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanGravimetricStrengthBonus", module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), skill="Caldari Offensive Systems") + "scanGravimetricStrengthBonus", + module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive3ewstrengthladar.py b/eos/effects/subsystembonuscaldarioffensive3ewstrengthladar.py index 658b65193..1169f9a59 100644 --- a/eos/effects/subsystembonuscaldarioffensive3ewstrengthladar.py +++ b/eos/effects/subsystembonuscaldarioffensive3ewstrengthladar.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Tengu Offensive - Rifling Launcher Pattern type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanLadarStrengthBonus", module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), skill="Caldari Offensive Systems") + "scanLadarStrengthBonus", + module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive3ewstrengthmagn.py b/eos/effects/subsystembonuscaldarioffensive3ewstrengthmagn.py index 6ffa0dc1e..543c6df17 100644 --- a/eos/effects/subsystembonuscaldarioffensive3ewstrengthmagn.py +++ b/eos/effects/subsystembonuscaldarioffensive3ewstrengthmagn.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Tengu Offensive - Rifling Launcher Pattern type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanMagnetometricStrengthBonus", module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), skill="Caldari Offensive Systems") + "scanMagnetometricStrengthBonus", + module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive3ewstrengthradar.py b/eos/effects/subsystembonuscaldarioffensive3ewstrengthradar.py index d985751d6..499dac673 100644 --- a/eos/effects/subsystembonuscaldarioffensive3ewstrengthradar.py +++ b/eos/effects/subsystembonuscaldarioffensive3ewstrengthradar.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Tengu Offensive - Rifling Launcher Pattern type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanRadarStrengthBonus", module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), skill="Caldari Offensive Systems") + "scanRadarStrengthBonus", + module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive3heavyassaultmissilevelocity.py b/eos/effects/subsystembonuscaldarioffensive3heavyassaultmissilevelocity.py index 5593d5474..b595798d8 100644 --- a/eos/effects/subsystembonuscaldarioffensive3heavyassaultmissilevelocity.py +++ b/eos/effects/subsystembonuscaldarioffensive3heavyassaultmissilevelocity.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Offensive - Accelerated Ejection Bay type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), skill="Caldari Offensive Systems") + "maxVelocity", module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive3heavymissilevelocity.py b/eos/effects/subsystembonuscaldarioffensive3heavymissilevelocity.py index 3476f6cd0..6e74ab51d 100644 --- a/eos/effects/subsystembonuscaldarioffensive3heavymissilevelocity.py +++ b/eos/effects/subsystembonuscaldarioffensive3heavymissilevelocity.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Offensive - Accelerated Ejection Bay type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), skill="Caldari Offensive Systems") + "maxVelocity", module.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensiveassaultmissilelauncherrof.py b/eos/effects/subsystembonuscaldarioffensiveassaultmissilelauncherrof.py index cf89e487f..02d2d3d03 100644 --- a/eos/effects/subsystembonuscaldarioffensiveassaultmissilelauncherrof.py +++ b/eos/effects/subsystembonuscaldarioffensiveassaultmissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Variations of subsystem: Tengu Offensive - Accelerated Ejection Bay (3 of 4) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Light", - "speed", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensiveheavyassaultmissilelauncherrof.py b/eos/effects/subsystembonuscaldarioffensiveheavyassaultmissilelauncherrof.py index c45494607..be291c9fa 100644 --- a/eos/effects/subsystembonuscaldarioffensiveheavyassaultmissilelauncherrof.py +++ b/eos/effects/subsystembonuscaldarioffensiveheavyassaultmissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Variations of subsystem: Tengu Offensive - Accelerated Ejection Bay (3 of 4) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", - "speed", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensiveheavymissilelauncherrof.py b/eos/effects/subsystembonuscaldarioffensiveheavymissilelauncherrof.py index 79fde47fb..5a4533cae 100644 --- a/eos/effects/subsystembonuscaldarioffensiveheavymissilelauncherrof.py +++ b/eos/effects/subsystembonuscaldarioffensiveheavymissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Variations of subsystem: Tengu Offensive - Accelerated Ejection Bay (3 of 4) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", - "speed", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensivehybridweaponmaxrange.py b/eos/effects/subsystembonuscaldarioffensivehybridweaponmaxrange.py index 6d3f59b73..a2d51c087 100644 --- a/eos/effects/subsystembonuscaldarioffensivehybridweaponmaxrange.py +++ b/eos/effects/subsystembonuscaldarioffensivehybridweaponmaxrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Offensive - Magnetic Infusion Basin type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), + skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsion2warpcapacitor2.py b/eos/effects/subsystembonuscaldaripropulsion2warpcapacitor2.py index b9d9f76b9..9841d27a7 100644 --- a/eos/effects/subsystembonuscaldaripropulsion2warpcapacitor2.py +++ b/eos/effects/subsystembonuscaldaripropulsion2warpcapacitor2.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Propulsion - Gravitational Capacitor type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("warpCapacitorNeed", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion2"), skill="Caldari Propulsion Systems") + fit.ship.boostItemAttr("warpCapacitorNeed", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion2"), + skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsionafterburnerspeedfactor.py b/eos/effects/subsystembonuscaldaripropulsionafterburnerspeedfactor.py index d30dc62a5..c97944920 100644 --- a/eos/effects/subsystembonuscaldaripropulsionafterburnerspeedfactor.py +++ b/eos/effects/subsystembonuscaldaripropulsionafterburnerspeedfactor.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Tengu Propulsion - Fuel Catalyst type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), skill="Caldari Propulsion Systems") + "speedFactor", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), + skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsionagility.py b/eos/effects/subsystembonuscaldaripropulsionagility.py index 29c2b72f7..987ba772f 100644 --- a/eos/effects/subsystembonuscaldaripropulsionagility.py +++ b/eos/effects/subsystembonuscaldaripropulsionagility.py @@ -4,5 +4,8 @@ # Subsystem: Tengu Propulsion - Intercalated Nanofibers # Subsystem: Tengu Propulsion - Interdiction Nullifier type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), skill="Caldari Propulsion Systems") + fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), + skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsionwarpspeed.py b/eos/effects/subsystembonuscaldaripropulsionwarpspeed.py index 0d7ee884a..e79971ba0 100644 --- a/eos/effects/subsystembonuscaldaripropulsionwarpspeed.py +++ b/eos/effects/subsystembonuscaldaripropulsionwarpspeed.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Tengu Propulsion - Gravitational Capacitor type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("baseWarpSpeed", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), skill="Caldari Propulsion Systems") + fit.ship.boostItemAttr("baseWarpSpeed", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), + skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentedefensive2remotearmorrepairamount.py b/eos/effects/subsystembonusgallentedefensive2remotearmorrepairamount.py index 25c865057..9c880d09d 100644 --- a/eos/effects/subsystembonusgallentedefensive2remotearmorrepairamount.py +++ b/eos/effects/subsystembonusgallentedefensive2remotearmorrepairamount.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Defensive - Adaptive Augmenter type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusGallenteDefensive2"), skill="Gallente Defensive Systems") + "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusGallenteDefensive2"), + skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensivearmoredwarfare.py b/eos/effects/subsystembonusgallentedefensivearmoredwarfare.py index d48c4da75..cf7793af5 100644 --- a/eos/effects/subsystembonusgallentedefensivearmoredwarfare.py +++ b/eos/effects/subsystembonusgallentedefensivearmoredwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), skill="Gallente Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), + skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensivearmorhp.py b/eos/effects/subsystembonusgallentedefensivearmorhp.py index 431669617..e200be121 100644 --- a/eos/effects/subsystembonusgallentedefensivearmorhp.py +++ b/eos/effects/subsystembonusgallentedefensivearmorhp.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Defensive - Augmented Plating type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), skill="Gallente Defensive Systems") + fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), + skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensivearmorrepairamount.py b/eos/effects/subsystembonusgallentedefensivearmorrepairamount.py index c3110e4e5..5b17e2461 100644 --- a/eos/effects/subsystembonusgallentedefensivearmorrepairamount.py +++ b/eos/effects/subsystembonusgallentedefensivearmorrepairamount.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Defensive - Nanobot Injector type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), skill="Gallente Defensive Systems") + "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), + skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensivearmorresistance.py b/eos/effects/subsystembonusgallentedefensivearmorresistance.py index 2b7809ae3..8bab5687d 100644 --- a/eos/effects/subsystembonusgallentedefensivearmorresistance.py +++ b/eos/effects/subsystembonusgallentedefensivearmorresistance.py @@ -3,7 +3,10 @@ # Used by: # Subsystem: Proteus Defensive - Adaptive Augmenter type = "passive" + + def handler(fit, module, context): for type in ("Em", "Explosive", "Kinetic", "Thermal"): fit.ship.boostItemAttr("armor{0}DamageResonance".format(type), - module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), skill="Gallente Defensive Systems") + module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), + skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensiveinformationwarfare.py b/eos/effects/subsystembonusgallentedefensiveinformationwarfare.py index d6086d313..5858333db 100644 --- a/eos/effects/subsystembonusgallentedefensiveinformationwarfare.py +++ b/eos/effects/subsystembonusgallentedefensiveinformationwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), skill="Gallente Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), + skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensiveinformationwarfarehidden.py b/eos/effects/subsystembonusgallentedefensiveinformationwarfarehidden.py index adbf1a301..8775a86ca 100644 --- a/eos/effects/subsystembonusgallentedefensiveinformationwarfarehidden.py +++ b/eos/effects/subsystembonusgallentedefensiveinformationwarfarehidden.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Warfare Specialist"), - "commandBonusHidden", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), skill="Gallente Defensive Systems") + "commandBonusHidden", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), + skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensiveskirmishwarfare.py b/eos/effects/subsystembonusgallentedefensiveskirmishwarfare.py index c52715708..2dd011b94 100644 --- a/eos/effects/subsystembonusgallentedefensiveskirmishwarfare.py +++ b/eos/effects/subsystembonusgallentedefensiveskirmishwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), skill="Gallente Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), + skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallenteelectronic2maxtargetingrange.py b/eos/effects/subsystembonusgallenteelectronic2maxtargetingrange.py index 7da45acd2..78a87857e 100644 --- a/eos/effects/subsystembonusgallenteelectronic2maxtargetingrange.py +++ b/eos/effects/subsystembonusgallenteelectronic2maxtargetingrange.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Electronics - Dissolution Sequencer type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("subsystemBonusGallenteElectronic2"), skill="Gallente Electronic Systems") + fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("subsystemBonusGallenteElectronic2"), + skill="Gallente Electronic Systems") diff --git a/eos/effects/subsystembonusgallenteelectronic2tractorbeamrange.py b/eos/effects/subsystembonusgallenteelectronic2tractorbeamrange.py index 8dfab20d7..98ecbc4ea 100644 --- a/eos/effects/subsystembonusgallenteelectronic2tractorbeamrange.py +++ b/eos/effects/subsystembonusgallenteelectronic2tractorbeamrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxRange", module.getModifiedItemAttr("subsystemBonusGallenteElectronic2"), skill="Gallente Electronic Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusGallenteElectronic2"), + skill="Gallente Electronic Systems") diff --git a/eos/effects/subsystembonusgallenteelectronic2tractorbeamvelocity.py b/eos/effects/subsystembonusgallenteelectronic2tractorbeamvelocity.py index 6ca9ea250..203b50abc 100644 --- a/eos/effects/subsystembonusgallenteelectronic2tractorbeamvelocity.py +++ b/eos/effects/subsystembonusgallenteelectronic2tractorbeamvelocity.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxTractorVelocity", module.getModifiedItemAttr("subsystemBonusGallenteElectronic2"), skill="Gallente Electronic Systems") + "maxTractorVelocity", module.getModifiedItemAttr("subsystemBonusGallenteElectronic2"), + skill="Gallente Electronic Systems") diff --git a/eos/effects/subsystembonusgallenteelectroniccpu.py b/eos/effects/subsystembonusgallenteelectroniccpu.py index 9eac793a5..ec5832095 100644 --- a/eos/effects/subsystembonusgallenteelectroniccpu.py +++ b/eos/effects/subsystembonusgallenteelectroniccpu.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Electronics - CPU Efficiency Gate type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("cpuOutput", module.getModifiedItemAttr("subsystemBonusGallenteElectronic"), skill="Gallente Electronic Systems") + fit.ship.boostItemAttr("cpuOutput", module.getModifiedItemAttr("subsystemBonusGallenteElectronic"), + skill="Gallente Electronic Systems") diff --git a/eos/effects/subsystembonusgallenteelectronicscanprobestrength.py b/eos/effects/subsystembonusgallenteelectronicscanprobestrength.py index 3a4bd3292..ab62cd4c7 100644 --- a/eos/effects/subsystembonusgallenteelectronicscanprobestrength.py +++ b/eos/effects/subsystembonusgallenteelectronicscanprobestrength.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Proteus Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", module.getModifiedItemAttr("subsystemBonusGallenteElectronic"), skill="Gallente Electronic Systems") + "baseSensorStrength", + module.getModifiedItemAttr("subsystemBonusGallenteElectronic"), + skill="Gallente Electronic Systems") diff --git a/eos/effects/subsystembonusgallenteelectronicscanstrengthmagnetometric.py b/eos/effects/subsystembonusgallenteelectronicscanstrengthmagnetometric.py index 8c371cc8f..e8fa6ac5e 100644 --- a/eos/effects/subsystembonusgallenteelectronicscanstrengthmagnetometric.py +++ b/eos/effects/subsystembonusgallenteelectronicscanstrengthmagnetometric.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Electronics - Dissolution Sequencer type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("scanMagnetometricStrength", module.getModifiedItemAttr("subsystemBonusGallenteElectronic"), skill="Gallente Electronic Systems") + fit.ship.boostItemAttr("scanMagnetometricStrength", module.getModifiedItemAttr("subsystemBonusGallenteElectronic"), + skill="Gallente Electronic Systems") diff --git a/eos/effects/subsystembonusgallenteelectronicwarpscramblerange.py b/eos/effects/subsystembonusgallenteelectronicwarpscramblerange.py index 9947ef45d..cdb0629b4 100644 --- a/eos/effects/subsystembonusgallenteelectronicwarpscramblerange.py +++ b/eos/effects/subsystembonusgallenteelectronicwarpscramblerange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Electronics - Friction Extension Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", module.getModifiedItemAttr("subsystemBonusGallenteElectronic"), skill="Gallente Electronic Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusGallenteElectronic"), + skill="Gallente Electronic Systems") diff --git a/eos/effects/subsystembonusgallenteengineering2dronemwd.py b/eos/effects/subsystembonusgallenteengineering2dronemwd.py index 17777c1b5..78e527076 100644 --- a/eos/effects/subsystembonusgallenteengineering2dronemwd.py +++ b/eos/effects/subsystembonusgallenteengineering2dronemwd.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Engineering - Augmented Capacitor Reservoir type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), "maxVelocity", - module.getModifiedItemAttr("subsystemBonusGallenteEngineering2"), skill="Gallente Engineering Systems") + module.getModifiedItemAttr("subsystemBonusGallenteEngineering2"), + skill="Gallente Engineering Systems") diff --git a/eos/effects/subsystembonusgallenteengineeringcapacitorrecharge.py b/eos/effects/subsystembonusgallenteengineeringcapacitorrecharge.py index f33801005..c687f9439 100644 --- a/eos/effects/subsystembonusgallenteengineeringcapacitorrecharge.py +++ b/eos/effects/subsystembonusgallenteengineeringcapacitorrecharge.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Engineering - Capacitor Regeneration Matrix type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("rechargeRate", module.getModifiedItemAttr("subsystemBonusGallenteEngineering"), skill="Gallente Engineering Systems") + fit.ship.boostItemAttr("rechargeRate", module.getModifiedItemAttr("subsystemBonusGallenteEngineering"), + skill="Gallente Engineering Systems") diff --git a/eos/effects/subsystembonusgallenteengineeringdronehp.py b/eos/effects/subsystembonusgallenteengineeringdronehp.py index 2de1c3b93..11af8f065 100644 --- a/eos/effects/subsystembonusgallenteengineeringdronehp.py +++ b/eos/effects/subsystembonusgallenteengineeringdronehp.py @@ -3,7 +3,10 @@ # Used by: # Subsystem: Proteus Engineering - Augmented Capacitor Reservoir type = "passive" + + def handler(fit, module, context): for layer in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), layer, - module.getModifiedItemAttr("subsystemBonusGallenteEngineering"), skill="Gallente Engineering Systems") + module.getModifiedItemAttr("subsystemBonusGallenteEngineering"), + skill="Gallente Engineering Systems") diff --git a/eos/effects/subsystembonusgallenteengineeringheatdamagereduction.py b/eos/effects/subsystembonusgallenteengineeringheatdamagereduction.py index 0d0e98896..0f62a1aac 100644 --- a/eos/effects/subsystembonusgallenteengineeringheatdamagereduction.py +++ b/eos/effects/subsystembonusgallenteengineeringheatdamagereduction.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Engineering - Supplemental Coolant Injector type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - module.getModifiedItemAttr("subsystemBonusGallenteEngineering"), skill="Gallente Engineering Systems") + module.getModifiedItemAttr("subsystemBonusGallenteEngineering"), + skill="Gallente Engineering Systems") diff --git a/eos/effects/subsystembonusgallenteengineeringpoweroutput.py b/eos/effects/subsystembonusgallenteengineeringpoweroutput.py index 7deea9d0c..5b22286ff 100644 --- a/eos/effects/subsystembonusgallenteengineeringpoweroutput.py +++ b/eos/effects/subsystembonusgallenteengineeringpoweroutput.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Engineering - Power Core Multiplier type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("powerOutput", module.getModifiedItemAttr("subsystemBonusGallenteEngineering"), skill="Gallente Engineering Systems") + fit.ship.boostItemAttr("powerOutput", module.getModifiedItemAttr("subsystemBonusGallenteEngineering"), + skill="Gallente Engineering Systems") diff --git a/eos/effects/subsystembonusgallenteoffensive2hybridweapondamagemultiplier.py b/eos/effects/subsystembonusgallenteoffensive2hybridweapondamagemultiplier.py index 370857030..e0a1c96ce 100644 --- a/eos/effects/subsystembonusgallenteoffensive2hybridweapondamagemultiplier.py +++ b/eos/effects/subsystembonusgallenteoffensive2hybridweapondamagemultiplier.py @@ -3,6 +3,9 @@ # Used by: # Variations of subsystem: Proteus Offensive - Dissonic Encoding Platform (3 of 4) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusGallenteOffensive2"), skill="Gallente Offensive Systems") + "damageMultiplier", module.getModifiedItemAttr("subsystemBonusGallenteOffensive2"), + skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensive3dronedamagemultiplier.py b/eos/effects/subsystembonusgallenteoffensive3dronedamagemultiplier.py index 05d7f77c3..fc71b41c8 100644 --- a/eos/effects/subsystembonusgallenteoffensive3dronedamagemultiplier.py +++ b/eos/effects/subsystembonusgallenteoffensive3dronedamagemultiplier.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Offensive - Drone Synthesis Projector type = "passive" + + def handler(fit, module, context): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusGallenteOffensive3"), skill="Gallente Offensive Systems") + "damageMultiplier", module.getModifiedItemAttr("subsystemBonusGallenteOffensive3"), + skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensive3turrettracking.py b/eos/effects/subsystembonusgallenteoffensive3turrettracking.py index 20fc3544e..4c73b4548 100644 --- a/eos/effects/subsystembonusgallenteoffensive3turrettracking.py +++ b/eos/effects/subsystembonusgallenteoffensive3turrettracking.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Offensive - Dissonic Encoding Platform type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", module.getModifiedItemAttr("subsystemBonusGallenteOffensive3"), skill="Gallente Offensive Systems") + "trackingSpeed", module.getModifiedItemAttr("subsystemBonusGallenteOffensive3"), + skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensivedronehp.py b/eos/effects/subsystembonusgallenteoffensivedronehp.py index 8fd52fbed..d02eab954 100644 --- a/eos/effects/subsystembonusgallenteoffensivedronehp.py +++ b/eos/effects/subsystembonusgallenteoffensivedronehp.py @@ -3,7 +3,10 @@ # Used by: # Subsystem: Proteus Offensive - Drone Synthesis Projector type = "passive" + + def handler(fit, module, context): for layer in ("shieldCapacity", "armorHP", "hp"): fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), layer, - module.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") + module.getModifiedItemAttr("subsystemBonusGallenteOffensive"), + skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensivehybridweapondamagemultiplier.py b/eos/effects/subsystembonusgallenteoffensivehybridweapondamagemultiplier.py index be39a23e0..e547892dd 100644 --- a/eos/effects/subsystembonusgallenteoffensivehybridweapondamagemultiplier.py +++ b/eos/effects/subsystembonusgallenteoffensivehybridweapondamagemultiplier.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Offensive - Covert Reconfiguration type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") + "damageMultiplier", module.getModifiedItemAttr("subsystemBonusGallenteOffensive"), + skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensivehybridweaponfalloff.py b/eos/effects/subsystembonusgallenteoffensivehybridweaponfalloff.py index e75bbe686..e2366d8aa 100644 --- a/eos/effects/subsystembonusgallenteoffensivehybridweaponfalloff.py +++ b/eos/effects/subsystembonusgallenteoffensivehybridweaponfalloff.py @@ -4,6 +4,9 @@ # Subsystem: Proteus Offensive - Dissonic Encoding Platform # Subsystem: Proteus Offensive - Hybrid Propulsion Armature type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "falloff", module.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") + "falloff", module.getModifiedItemAttr("subsystemBonusGallenteOffensive"), + skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallentepropulsion2warpcapacitor.py b/eos/effects/subsystembonusgallentepropulsion2warpcapacitor.py index ecb625ece..7edf66711 100644 --- a/eos/effects/subsystembonusgallentepropulsion2warpcapacitor.py +++ b/eos/effects/subsystembonusgallentepropulsion2warpcapacitor.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Propulsion - Gravitational Capacitor type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("warpCapacitorNeed", module.getModifiedItemAttr("subsystemBonusGallentePropulsion2"), skill="Gallente Propulsion Systems") + fit.ship.boostItemAttr("warpCapacitorNeed", module.getModifiedItemAttr("subsystemBonusGallentePropulsion2"), + skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsionabmwdcapneed.py b/eos/effects/subsystembonusgallentepropulsionabmwdcapneed.py index 7c8955146..7a9b3fed0 100644 --- a/eos/effects/subsystembonusgallentepropulsionabmwdcapneed.py +++ b/eos/effects/subsystembonusgallentepropulsionabmwdcapneed.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Proteus Propulsion - Localized Injectors type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "capacitorNeed", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), skill="Gallente Propulsion Systems") + "capacitorNeed", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), + skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsionagility.py b/eos/effects/subsystembonusgallentepropulsionagility.py index bb3716244..509c0cdf0 100644 --- a/eos/effects/subsystembonusgallentepropulsionagility.py +++ b/eos/effects/subsystembonusgallentepropulsionagility.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Propulsion - Interdiction Nullifier type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), skill="Gallente Propulsion Systems") + fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), + skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsionmwdpenalty.py b/eos/effects/subsystembonusgallentepropulsionmwdpenalty.py index ec8701f98..cbe61bbd8 100644 --- a/eos/effects/subsystembonusgallentepropulsionmwdpenalty.py +++ b/eos/effects/subsystembonusgallentepropulsionmwdpenalty.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Proteus Propulsion - Wake Limiter type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), skill="Gallente Propulsion Systems") + "signatureRadiusBonus", + module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), + skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsionwarpspeed.py b/eos/effects/subsystembonusgallentepropulsionwarpspeed.py index 53bcf1d00..aca750fb9 100644 --- a/eos/effects/subsystembonusgallentepropulsionwarpspeed.py +++ b/eos/effects/subsystembonusgallentepropulsionwarpspeed.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Proteus Propulsion - Gravitational Capacitor type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("baseWarpSpeed", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), skill="Gallente Propulsion Systems") + fit.ship.boostItemAttr("baseWarpSpeed", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), + skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatardefensive2remoteshieldtransporteramount.py b/eos/effects/subsystembonusminmatardefensive2remoteshieldtransporteramount.py index 349d30c51..674a71597 100644 --- a/eos/effects/subsystembonusminmatardefensive2remoteshieldtransporteramount.py +++ b/eos/effects/subsystembonusminmatardefensive2remoteshieldtransporteramount.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Defensive - Adaptive Shielding type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "shieldBonus", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive2"), skill="Minmatar Defensive Systems") + "shieldBonus", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive2"), + skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensivearmoredwarfare.py b/eos/effects/subsystembonusminmatardefensivearmoredwarfare.py index 373b7607f..486e5b71b 100644 --- a/eos/effects/subsystembonusminmatardefensivearmoredwarfare.py +++ b/eos/effects/subsystembonusminmatardefensivearmoredwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), skill="Minmatar Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), + skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensivearmorresistance.py b/eos/effects/subsystembonusminmatardefensivearmorresistance.py index 3fac3a9a3..ebb814db8 100644 --- a/eos/effects/subsystembonusminmatardefensivearmorresistance.py +++ b/eos/effects/subsystembonusminmatardefensivearmorresistance.py @@ -3,7 +3,10 @@ # Used by: # Subsystem: Loki Defensive - Adaptive Augmenter type = "passive" + + def handler(fit, module, context): for type in ("Em", "Explosive", "Kinetic", "Thermal"): fit.ship.boostItemAttr("armor{0}DamageResonance".format(type), - module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), skill="Minmatar Defensive Systems") + module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), + skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensiveshieldresistance.py b/eos/effects/subsystembonusminmatardefensiveshieldresistance.py index 30d5ec983..b757188d6 100644 --- a/eos/effects/subsystembonusminmatardefensiveshieldresistance.py +++ b/eos/effects/subsystembonusminmatardefensiveshieldresistance.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Loki Defensive - Adaptive Shielding type = "passive" + + def handler(fit, module, context): for type in ("Em", "Explosive", "Kinetic", "Thermal"): - fit.ship.boostItemAttr("shield{0}DamageResonance".format(type), module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), skill="Minmatar Defensive Systems") + fit.ship.boostItemAttr("shield{0}DamageResonance".format(type), + module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), + skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensivesiegewarfare.py b/eos/effects/subsystembonusminmatardefensivesiegewarfare.py index 0690fde43..81b69e5d2 100644 --- a/eos/effects/subsystembonusminmatardefensivesiegewarfare.py +++ b/eos/effects/subsystembonusminmatardefensivesiegewarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Siege Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), skill="Minmatar Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), + skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensivesignatureradius.py b/eos/effects/subsystembonusminmatardefensivesignatureradius.py index d4731e8b8..bb251a401 100644 --- a/eos/effects/subsystembonusminmatardefensivesignatureradius.py +++ b/eos/effects/subsystembonusminmatardefensivesignatureradius.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Loki Defensive - Amplification Node type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), skill="Minmatar Defensive Systems") + fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), + skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensiveskirmishwarfare.py b/eos/effects/subsystembonusminmatardefensiveskirmishwarfare.py index f21b39842..2448c9106 100644 --- a/eos/effects/subsystembonusminmatardefensiveskirmishwarfare.py +++ b/eos/effects/subsystembonusminmatardefensiveskirmishwarfare.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Defensive - Warfare Processor type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Warfare Specialist"), - "commandBonus", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), skill="Minmatar Defensive Systems") + "commandBonus", module.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), + skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatarelectronic2maxtargetingrange.py b/eos/effects/subsystembonusminmatarelectronic2maxtargetingrange.py index fe4986a7c..eceb16039 100644 --- a/eos/effects/subsystembonusminmatarelectronic2maxtargetingrange.py +++ b/eos/effects/subsystembonusminmatarelectronic2maxtargetingrange.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Loki Electronics - Dissolution Sequencer type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic2"), skill="Minmatar Electronic Systems") + fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic2"), + skill="Minmatar Electronic Systems") diff --git a/eos/effects/subsystembonusminmatarelectronic2scanresolution.py b/eos/effects/subsystembonusminmatarelectronic2scanresolution.py index 94a58f4e3..c997f8d1b 100644 --- a/eos/effects/subsystembonusminmatarelectronic2scanresolution.py +++ b/eos/effects/subsystembonusminmatarelectronic2scanresolution.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Loki Electronics - Tactical Targeting Network type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic2"), skill="Minmatar Electronic Systems") + fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic2"), + skill="Minmatar Electronic Systems") diff --git a/eos/effects/subsystembonusminmatarelectronic2tractorbeamrange.py b/eos/effects/subsystembonusminmatarelectronic2tractorbeamrange.py index 17a8867f2..e8540a9ae 100644 --- a/eos/effects/subsystembonusminmatarelectronic2tractorbeamrange.py +++ b/eos/effects/subsystembonusminmatarelectronic2tractorbeamrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxRange", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic2"), skill="Minmatar Electronic Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic2"), + skill="Minmatar Electronic Systems") diff --git a/eos/effects/subsystembonusminmatarelectronic2tractorbeamvelocity.py b/eos/effects/subsystembonusminmatarelectronic2tractorbeamvelocity.py index 4e7eefc04..7d77dc87f 100644 --- a/eos/effects/subsystembonusminmatarelectronic2tractorbeamvelocity.py +++ b/eos/effects/subsystembonusminmatarelectronic2tractorbeamvelocity.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxTractorVelocity", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic2"), skill="Minmatar Electronic Systems") + "maxTractorVelocity", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic2"), + skill="Minmatar Electronic Systems") diff --git a/eos/effects/subsystembonusminmatarelectronicscanprobestrength.py b/eos/effects/subsystembonusminmatarelectronicscanprobestrength.py index b9f91387b..9f86dfb39 100644 --- a/eos/effects/subsystembonusminmatarelectronicscanprobestrength.py +++ b/eos/effects/subsystembonusminmatarelectronicscanprobestrength.py @@ -3,6 +3,10 @@ # Used by: # Subsystem: Loki Electronics - Emergent Locus Analyzer type = "passive" + + def handler(fit, module, context): fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic"), skill="Minmatar Electronic Systems") + "baseSensorStrength", + module.getModifiedItemAttr("subsystemBonusMinmatarElectronic"), + skill="Minmatar Electronic Systems") diff --git a/eos/effects/subsystembonusminmatarelectronicscanstrengthladar.py b/eos/effects/subsystembonusminmatarelectronicscanstrengthladar.py index 407ebef13..0afef69e9 100644 --- a/eos/effects/subsystembonusminmatarelectronicscanstrengthladar.py +++ b/eos/effects/subsystembonusminmatarelectronicscanstrengthladar.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Loki Electronics - Dissolution Sequencer type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("scanLadarStrength", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic"), skill="Minmatar Electronic Systems") + fit.ship.boostItemAttr("scanLadarStrength", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic"), + skill="Minmatar Electronic Systems") diff --git a/eos/effects/subsystembonusminmatarelectronicstasiswebifierrange.py b/eos/effects/subsystembonusminmatarelectronicstasiswebifierrange.py index e0eb629c8..f942c6c41 100644 --- a/eos/effects/subsystembonusminmatarelectronicstasiswebifierrange.py +++ b/eos/effects/subsystembonusminmatarelectronicstasiswebifierrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Electronics - Immobility Drivers type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic"), skill="Minmatar Electronic Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusMinmatarElectronic"), + skill="Minmatar Electronic Systems") diff --git a/eos/effects/subsystembonusminmatarengineeringcapacitorcapacity.py b/eos/effects/subsystembonusminmatarengineeringcapacitorcapacity.py index 7302b9149..fc6f35c14 100644 --- a/eos/effects/subsystembonusminmatarengineeringcapacitorcapacity.py +++ b/eos/effects/subsystembonusminmatarengineeringcapacitorcapacity.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Loki Engineering - Augmented Capacitor Reservoir type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("capacitorCapacity", module.getModifiedItemAttr("subsystemBonusMinmatarEngineering"), skill="Minmatar Engineering Systems") + fit.ship.boostItemAttr("capacitorCapacity", module.getModifiedItemAttr("subsystemBonusMinmatarEngineering"), + skill="Minmatar Engineering Systems") diff --git a/eos/effects/subsystembonusminmatarengineeringcapacitorrecharge.py b/eos/effects/subsystembonusminmatarengineeringcapacitorrecharge.py index 231e7b86e..9dea1085d 100644 --- a/eos/effects/subsystembonusminmatarengineeringcapacitorrecharge.py +++ b/eos/effects/subsystembonusminmatarengineeringcapacitorrecharge.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Loki Engineering - Capacitor Regeneration Matrix type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("rechargeRate", module.getModifiedItemAttr("subsystemBonusMinmatarEngineering"), skill="Minmatar Engineering Systems") + fit.ship.boostItemAttr("rechargeRate", module.getModifiedItemAttr("subsystemBonusMinmatarEngineering"), + skill="Minmatar Engineering Systems") diff --git a/eos/effects/subsystembonusminmatarengineeringheatdamagereduction.py b/eos/effects/subsystembonusminmatarengineeringheatdamagereduction.py index d66dcc378..3e7164127 100644 --- a/eos/effects/subsystembonusminmatarengineeringheatdamagereduction.py +++ b/eos/effects/subsystembonusminmatarengineeringheatdamagereduction.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Engineering - Supplemental Coolant Injector type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - module.getModifiedItemAttr("subsystemBonusMinmatarEngineering"), skill="Minmatar Engineering Systems") + module.getModifiedItemAttr("subsystemBonusMinmatarEngineering"), + skill="Minmatar Engineering Systems") diff --git a/eos/effects/subsystembonusminmatarengineeringpoweroutput.py b/eos/effects/subsystembonusminmatarengineeringpoweroutput.py index b54d6413d..d943d6cc0 100644 --- a/eos/effects/subsystembonusminmatarengineeringpoweroutput.py +++ b/eos/effects/subsystembonusminmatarengineeringpoweroutput.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Loki Engineering - Power Core Multiplier type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("powerOutput", module.getModifiedItemAttr("subsystemBonusMinmatarEngineering"), skill="Minmatar Engineering Systems") + fit.ship.boostItemAttr("powerOutput", module.getModifiedItemAttr("subsystemBonusMinmatarEngineering"), + skill="Minmatar Engineering Systems") diff --git a/eos/effects/subsystembonusminmataroffensive2projectileweapondamagemultiplier.py b/eos/effects/subsystembonusminmataroffensive2projectileweapondamagemultiplier.py index 468ec4906..d2bc64c9d 100644 --- a/eos/effects/subsystembonusminmataroffensive2projectileweapondamagemultiplier.py +++ b/eos/effects/subsystembonusminmataroffensive2projectileweapondamagemultiplier.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Offensive - Turret Concurrence Registry type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive2"), skill="Minmatar Offensive Systems") + "damageMultiplier", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive2"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensive2projectileweaponrof.py b/eos/effects/subsystembonusminmataroffensive2projectileweaponrof.py index fcae6bbf8..954901316 100644 --- a/eos/effects/subsystembonusminmataroffensive2projectileweaponrof.py +++ b/eos/effects/subsystembonusminmataroffensive2projectileweaponrof.py @@ -4,6 +4,9 @@ # Subsystem: Loki Offensive - Hardpoint Efficiency Configuration # Subsystem: Loki Offensive - Projectile Scoping Array type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive2"), skill="Minmatar Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive2"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensive3turrettracking.py b/eos/effects/subsystembonusminmataroffensive3turrettracking.py index 5a3a693f2..f5cc5467d 100644 --- a/eos/effects/subsystembonusminmataroffensive3turrettracking.py +++ b/eos/effects/subsystembonusminmataroffensive3turrettracking.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Offensive - Turret Concurrence Registry type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "trackingSpeed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive3"), skill="Minmatar Offensive Systems") + "trackingSpeed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive3"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensiveassaultmissilelauncherrof.py b/eos/effects/subsystembonusminmataroffensiveassaultmissilelauncherrof.py index 2b42b19a0..1dd73939b 100644 --- a/eos/effects/subsystembonusminmataroffensiveassaultmissilelauncherrof.py +++ b/eos/effects/subsystembonusminmataroffensiveassaultmissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Offensive - Hardpoint Efficiency Configuration type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Light", - "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensiveheavyassaultmissilelauncherrof.py b/eos/effects/subsystembonusminmataroffensiveheavyassaultmissilelauncherrof.py index ed45887c3..64b4d799b 100644 --- a/eos/effects/subsystembonusminmataroffensiveheavyassaultmissilelauncherrof.py +++ b/eos/effects/subsystembonusminmataroffensiveheavyassaultmissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Offensive - Hardpoint Efficiency Configuration type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", - "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensiveheavymissilelauncherrof.py b/eos/effects/subsystembonusminmataroffensiveheavymissilelauncherrof.py index e9c64b241..30b021d60 100644 --- a/eos/effects/subsystembonusminmataroffensiveheavymissilelauncherrof.py +++ b/eos/effects/subsystembonusminmataroffensiveheavymissilelauncherrof.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Offensive - Hardpoint Efficiency Configuration type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", - "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensiveprojectileweaponfalloff.py b/eos/effects/subsystembonusminmataroffensiveprojectileweaponfalloff.py index 636023d12..e97198498 100644 --- a/eos/effects/subsystembonusminmataroffensiveprojectileweaponfalloff.py +++ b/eos/effects/subsystembonusminmataroffensiveprojectileweaponfalloff.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Offensive - Projectile Scoping Array type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") + "falloff", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensiveprojectileweaponmaxrange.py b/eos/effects/subsystembonusminmataroffensiveprojectileweaponmaxrange.py index d90ff14f2..9ec21ec5b 100644 --- a/eos/effects/subsystembonusminmataroffensiveprojectileweaponmaxrange.py +++ b/eos/effects/subsystembonusminmataroffensiveprojectileweaponmaxrange.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Offensive - Turret Concurrence Registry type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "maxRange", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") + "maxRange", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensiveprojectileweaponrof.py b/eos/effects/subsystembonusminmataroffensiveprojectileweaponrof.py index d7ec0fc3d..516fdde4a 100644 --- a/eos/effects/subsystembonusminmataroffensiveprojectileweaponrof.py +++ b/eos/effects/subsystembonusminmataroffensiveprojectileweaponrof.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Offensive - Covert Reconfiguration type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") + "speed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), + skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsionafterburnerspeedfactor.py b/eos/effects/subsystembonusminmatarpropulsionafterburnerspeedfactor.py index da593a70f..14ab97669 100644 --- a/eos/effects/subsystembonusminmatarpropulsionafterburnerspeedfactor.py +++ b/eos/effects/subsystembonusminmatarpropulsionafterburnerspeedfactor.py @@ -3,6 +3,9 @@ # Used by: # Subsystem: Loki Propulsion - Fuel Catalyst type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), skill="Minmatar Propulsion Systems") + "speedFactor", module.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), + skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsionagility.py b/eos/effects/subsystembonusminmatarpropulsionagility.py index 347692df7..e6bfa201a 100644 --- a/eos/effects/subsystembonusminmatarpropulsionagility.py +++ b/eos/effects/subsystembonusminmatarpropulsionagility.py @@ -4,5 +4,8 @@ # Subsystem: Loki Propulsion - Intercalated Nanofibers # Subsystem: Loki Propulsion - Interdiction Nullifier type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), skill="Minmatar Propulsion Systems") + fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), + skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsionmaxvelocity.py b/eos/effects/subsystembonusminmatarpropulsionmaxvelocity.py index a43ce9df8..1a4dcb51a 100644 --- a/eos/effects/subsystembonusminmatarpropulsionmaxvelocity.py +++ b/eos/effects/subsystembonusminmatarpropulsionmaxvelocity.py @@ -3,5 +3,8 @@ # Used by: # Subsystem: Loki Propulsion - Chassis Optimization type = "passive" + + def handler(fit, module, context): - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), skill="Minmatar Propulsion Systems") + fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), + skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonusoffensivejumpharmonics.py b/eos/effects/subsystembonusoffensivejumpharmonics.py index 256e8ed1c..aab0f2334 100644 --- a/eos/effects/subsystembonusoffensivejumpharmonics.py +++ b/eos/effects/subsystembonusoffensivejumpharmonics.py @@ -3,5 +3,7 @@ # Used by: # Subsystems named like: Offensive Covert Reconfiguration (4 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.forceItemAttr("jumpHarmonics", module.getModifiedItemAttr("jumpHarmonicsModifier")) diff --git a/eos/effects/subsystembonusscanprobelaunchercpu.py b/eos/effects/subsystembonusscanprobelaunchercpu.py index 3e78481ae..0b62b23b8 100644 --- a/eos/effects/subsystembonusscanprobelaunchercpu.py +++ b/eos/effects/subsystembonusscanprobelaunchercpu.py @@ -3,6 +3,8 @@ # Used by: # Subsystems named like: Electronics Emergent Locus Analyzer (4 of 4) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Scan Probe Launcher", "cpu", module.getModifiedItemAttr("cpuNeedBonus")) diff --git a/eos/effects/subsystembonuswarpbubbleimmune.py b/eos/effects/subsystembonuswarpbubbleimmune.py index bb87a10f5..cd29dad70 100644 --- a/eos/effects/subsystembonuswarpbubbleimmune.py +++ b/eos/effects/subsystembonuswarpbubbleimmune.py @@ -3,5 +3,7 @@ # Used by: # Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) type = "passive" + + def handler(fit, module, context): fit.ship.forceItemAttr("warpBubbleImmune", module.getModifiedItemAttr("warpBubbleImmuneModifier")) diff --git a/eos/effects/superweaponamarr.py b/eos/effects/superweaponamarr.py index 0295fe8cd..dfc06475e 100644 --- a/eos/effects/superweaponamarr.py +++ b/eos/effects/superweaponamarr.py @@ -3,5 +3,7 @@ # Used by: # Module: 'Judgment' Electromagnetic Doomsday type = 'active' + + def handler(fit, module, context): pass diff --git a/eos/effects/superweaponcaldari.py b/eos/effects/superweaponcaldari.py index a7e8874b3..a7ea155e2 100644 --- a/eos/effects/superweaponcaldari.py +++ b/eos/effects/superweaponcaldari.py @@ -3,5 +3,7 @@ # Used by: # Module: 'Oblivion' Kinetic Doomsday type = 'active' + + def handler(fit, module, context): pass diff --git a/eos/effects/superweapongallente.py b/eos/effects/superweapongallente.py index 8f1a06075..21d330213 100644 --- a/eos/effects/superweapongallente.py +++ b/eos/effects/superweapongallente.py @@ -3,5 +3,7 @@ # Used by: # Module: 'Aurora Ominae' Thermal Doomsday type = 'active' + + def handler(fit, module, context): pass diff --git a/eos/effects/superweaponminmatar.py b/eos/effects/superweaponminmatar.py index f3e370957..25b0b57ef 100644 --- a/eos/effects/superweaponminmatar.py +++ b/eos/effects/superweaponminmatar.py @@ -3,5 +3,7 @@ # Used by: # Module: 'Gjallarhorn' Explosive Doomsday type = 'active' + + def handler(fit, module, context): pass diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupenergyweapon.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupenergyweapon.py index 721c9f911..ce79c7ea8 100644 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupenergyweapon.py +++ b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupenergyweapon.py @@ -3,6 +3,8 @@ # Used by: # Skill: Surgical Strike type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgrouphybridweapon.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgrouphybridweapon.py index be65514b9..2ead8310e 100644 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgrouphybridweapon.py +++ b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgrouphybridweapon.py @@ -3,6 +3,8 @@ # Used by: # Skill: Surgical Strike type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprojectileweapon.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprojectileweapon.py index 6542f0238..5cd9e697b 100644 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprojectileweapon.py +++ b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprojectileweapon.py @@ -3,6 +3,8 @@ # Used by: # Skill: Surgical Strike type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringgunnery.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringgunnery.py index c33420947..a255e8a79 100644 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringgunnery.py +++ b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringgunnery.py @@ -4,6 +4,8 @@ # Implants named like: Eifyr and Co. 'Gunslinger' Surgical Strike SS (6 of 6) # Implant: Standard Cerebral Accelerator type = "passive" + + def handler(fit, implant, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), "damageMultiplier", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/surgicalstrikefalloffbonuspostpercentfallofflocationshipmodulesrequiringgunnery.py b/eos/effects/surgicalstrikefalloffbonuspostpercentfallofflocationshipmodulesrequiringgunnery.py index 78f04d5ff..d28e30f76 100644 --- a/eos/effects/surgicalstrikefalloffbonuspostpercentfallofflocationshipmodulesrequiringgunnery.py +++ b/eos/effects/surgicalstrikefalloffbonuspostpercentfallofflocationshipmodulesrequiringgunnery.py @@ -5,6 +5,8 @@ # Implants named like: Zainou 'Deadeye' Trajectory Analysis TA (6 of 6) # Skill: Trajectory Analysis type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), diff --git a/eos/effects/surveyscanspeedbonuspostpercentdurationlocationshipmodulesrequiringelectronics.py b/eos/effects/surveyscanspeedbonuspostpercentdurationlocationshipmodulesrequiringelectronics.py index 7ae8c3dc5..6dcf933fd 100644 --- a/eos/effects/surveyscanspeedbonuspostpercentdurationlocationshipmodulesrequiringelectronics.py +++ b/eos/effects/surveyscanspeedbonuspostpercentdurationlocationshipmodulesrequiringelectronics.py @@ -4,6 +4,8 @@ # Modules named like: Signal Focusing Kit (8 of 8) # Skill: Survey type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("CPU Management"), diff --git a/eos/effects/systemagility.py b/eos/effects/systemagility.py index 0e3158c5d..ce8ba7370 100644 --- a/eos/effects/systemagility.py +++ b/eos/effects/systemagility.py @@ -4,5 +4,7 @@ # Celestials named like: Black Hole Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.multiplyItemAttr("agility", beacon.getModifiedItemAttr("agilityMultiplier"), stackingPenalties=True) diff --git a/eos/effects/systemaoecloudsize.py b/eos/effects/systemaoecloudsize.py index 33183dcd7..e8e4e9b0c 100644 --- a/eos/effects/systemaoecloudsize.py +++ b/eos/effects/systemaoecloudsize.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeCloudSize", beacon.getModifiedItemAttr("aoeCloudSizeMultiplier")) + "aoeCloudSize", beacon.getModifiedItemAttr("aoeCloudSizeMultiplier")) diff --git a/eos/effects/systemaoevelocity.py b/eos/effects/systemaoevelocity.py index c9a568f89..3ea6fea6c 100644 --- a/eos/effects/systemaoevelocity.py +++ b/eos/effects/systemaoevelocity.py @@ -4,6 +4,8 @@ # Celestials named like: Black Hole Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "aoeVelocity", beacon.getModifiedItemAttr("aoeVelocityMultiplier")) diff --git a/eos/effects/systemarmoremresistance.py b/eos/effects/systemarmoremresistance.py index 20db294de..901d4f7f8 100644 --- a/eos/effects/systemarmoremresistance.py +++ b/eos/effects/systemarmoremresistance.py @@ -5,6 +5,8 @@ # Celestials named like: Pulsar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.boostItemAttr("armorEmDamageResonance", beacon.getModifiedItemAttr("armorEmDamageResistanceBonus"), stackingPenalties=True) diff --git a/eos/effects/systemarmorexplosiveresistance.py b/eos/effects/systemarmorexplosiveresistance.py index 01548413d..ccd8104d5 100644 --- a/eos/effects/systemarmorexplosiveresistance.py +++ b/eos/effects/systemarmorexplosiveresistance.py @@ -5,6 +5,9 @@ # Celestials named like: Pulsar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", beacon.getModifiedItemAttr("armorExplosiveDamageResistanceBonus"), + fit.ship.boostItemAttr("armorExplosiveDamageResonance", + beacon.getModifiedItemAttr("armorExplosiveDamageResistanceBonus"), stackingPenalties=True) diff --git a/eos/effects/systemarmorhp.py b/eos/effects/systemarmorhp.py index c40db3037..05a3f91ab 100644 --- a/eos/effects/systemarmorhp.py +++ b/eos/effects/systemarmorhp.py @@ -4,5 +4,7 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.multiplyItemAttr("armorHP", beacon.getModifiedItemAttr("armorHPMultiplier")) diff --git a/eos/effects/systemarmorkineticresistance.py b/eos/effects/systemarmorkineticresistance.py index 21c426f3a..845b03da6 100644 --- a/eos/effects/systemarmorkineticresistance.py +++ b/eos/effects/systemarmorkineticresistance.py @@ -5,6 +5,9 @@ # Celestials named like: Pulsar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", beacon.getModifiedItemAttr("armorKineticDamageResistanceBonus"), + fit.ship.boostItemAttr("armorKineticDamageResonance", + beacon.getModifiedItemAttr("armorKineticDamageResistanceBonus"), stackingPenalties=True) diff --git a/eos/effects/systemarmorremoterepairamount.py b/eos/effects/systemarmorremoterepairamount.py index 288ccfefd..4c18e8589 100644 --- a/eos/effects/systemarmorremoterepairamount.py +++ b/eos/effects/systemarmorremoterepairamount.py @@ -4,7 +4,10 @@ # Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("armorDamageAmountMultiplierRemote"), + "armorDamageAmount", + module.getModifiedItemAttr("armorDamageAmountMultiplierRemote"), stackingPenalties=True) diff --git a/eos/effects/systemarmorrepairamount.py b/eos/effects/systemarmorrepairamount.py index 5ba4e2aa1..1b28168f1 100644 --- a/eos/effects/systemarmorrepairamount.py +++ b/eos/effects/systemarmorrepairamount.py @@ -4,8 +4,10 @@ # Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Repair Systems") - or mod.item.requiresSkill("Capital Repair Systems"), + or mod.item.requiresSkill("Capital Repair Systems"), "armorDamageAmount", module.getModifiedItemAttr("armorDamageAmountMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemarmorthermalresistance.py b/eos/effects/systemarmorthermalresistance.py index 4c06d397b..0a5eb0be6 100644 --- a/eos/effects/systemarmorthermalresistance.py +++ b/eos/effects/systemarmorthermalresistance.py @@ -5,6 +5,9 @@ # Celestials named like: Pulsar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", beacon.getModifiedItemAttr("armorThermalDamageResistanceBonus"), + fit.ship.boostItemAttr("armorThermalDamageResonance", + beacon.getModifiedItemAttr("armorThermalDamageResistanceBonus"), stackingPenalties=True) diff --git a/eos/effects/systemcapacitorcapacity.py b/eos/effects/systemcapacitorcapacity.py index 4cc9d40a5..63a57c9e2 100644 --- a/eos/effects/systemcapacitorcapacity.py +++ b/eos/effects/systemcapacitorcapacity.py @@ -4,5 +4,7 @@ # Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.multiplyItemAttr("capacitorCapacity", beacon.getModifiedItemAttr("capacitorCapacityMultiplierSystem")) diff --git a/eos/effects/systemcapacitorrecharge.py b/eos/effects/systemcapacitorrecharge.py index 21750d5d4..dd89728ed 100644 --- a/eos/effects/systemcapacitorrecharge.py +++ b/eos/effects/systemcapacitorrecharge.py @@ -5,5 +5,7 @@ # Celestials named like: Pulsar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.multiplyItemAttr("rechargeRate", beacon.getModifiedItemAttr("rechargeRateMultiplier")) diff --git a/eos/effects/systemdamagedrones.py b/eos/effects/systemdamagedrones.py index dc85ce0ae..6e4cac6f4 100644 --- a/eos/effects/systemdamagedrones.py +++ b/eos/effects/systemdamagedrones.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.drones.filteredItemMultiply(lambda drone: drone.item.requiresSkill("Drones"), "damageMultiplier", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), diff --git a/eos/effects/systemdamageembombs.py b/eos/effects/systemdamageembombs.py index 760f5eb44..e81ca6fd3 100644 --- a/eos/effects/systemdamageembombs.py +++ b/eos/effects/systemdamageembombs.py @@ -4,7 +4,9 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "emDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") + "emDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), + stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamageemmissiles.py b/eos/effects/systemdamageemmissiles.py index 34d12f2bc..6a9485f88 100644 --- a/eos/effects/systemdamageemmissiles.py +++ b/eos/effects/systemdamageemmissiles.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), diff --git a/eos/effects/systemdamageexplosivebombs.py b/eos/effects/systemdamageexplosivebombs.py index c3057cb81..11cc26d96 100644 --- a/eos/effects/systemdamageexplosivebombs.py +++ b/eos/effects/systemdamageexplosivebombs.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), "explosiveDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), diff --git a/eos/effects/systemdamageexplosivemissiles.py b/eos/effects/systemdamageexplosivemissiles.py index e8c224f08..da1cfab94 100644 --- a/eos/effects/systemdamageexplosivemissiles.py +++ b/eos/effects/systemdamageexplosivemissiles.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "explosiveDamage", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), diff --git a/eos/effects/systemdamagefighters.py b/eos/effects/systemdamagefighters.py index 63e02a999..2718a3789 100644 --- a/eos/effects/systemdamagefighters.py +++ b/eos/effects/systemdamagefighters.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.drones.filteredItemMultiply(lambda drone: drone.item.requiresSkill("Fighters"), "damageMultiplier", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), diff --git a/eos/effects/systemdamagekineticbombs.py b/eos/effects/systemdamagekineticbombs.py index 152e2b71a..7fb67a6fb 100644 --- a/eos/effects/systemdamagekineticbombs.py +++ b/eos/effects/systemdamagekineticbombs.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), "kineticDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), diff --git a/eos/effects/systemdamagekineticmissiles.py b/eos/effects/systemdamagekineticmissiles.py index 293f5873c..7609052aa 100644 --- a/eos/effects/systemdamagekineticmissiles.py +++ b/eos/effects/systemdamagekineticmissiles.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), diff --git a/eos/effects/systemdamagemultipliergunnery.py b/eos/effects/systemdamagemultipliergunnery.py index 1b6e32aa1..3b701166a 100644 --- a/eos/effects/systemdamagemultipliergunnery.py +++ b/eos/effects/systemdamagemultipliergunnery.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Gunnery"), "damageMultiplier", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), diff --git a/eos/effects/systemdamagethermalbombs.py b/eos/effects/systemdamagethermalbombs.py index 8293ee78c..675b1adb5 100644 --- a/eos/effects/systemdamagethermalbombs.py +++ b/eos/effects/systemdamagethermalbombs.py @@ -4,7 +4,9 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "thermalDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") + "thermalDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), + stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamagethermalmissiles.py b/eos/effects/systemdamagethermalmissiles.py index 86187101a..ada3a084a 100644 --- a/eos/effects/systemdamagethermalmissiles.py +++ b/eos/effects/systemdamagethermalmissiles.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), diff --git a/eos/effects/systemdronetracking.py b/eos/effects/systemdronetracking.py index 941d70749..f5800c070 100644 --- a/eos/effects/systemdronetracking.py +++ b/eos/effects/systemdronetracking.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.drones.filteredItemMultiply(lambda drone: True, "trackingSpeed", beacon.getModifiedItemAttr("trackingSpeedMultiplier"), diff --git a/eos/effects/systemenergyneutmultiplier.py b/eos/effects/systemenergyneutmultiplier.py index 6c3e7b5af..a5ff4dbb0 100644 --- a/eos/effects/systemenergyneutmultiplier.py +++ b/eos/effects/systemenergyneutmultiplier.py @@ -4,7 +4,10 @@ # Celestials named like: Pulsar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", beacon.getModifiedItemAttr("energyWarfareStrengthMultiplier"), + "energyNeutralizerAmount", + beacon.getModifiedItemAttr("energyWarfareStrengthMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemenergyvampiremultiplier.py b/eos/effects/systemenergyvampiremultiplier.py index 15a634762..0cb05180a 100644 --- a/eos/effects/systemenergyvampiremultiplier.py +++ b/eos/effects/systemenergyvampiremultiplier.py @@ -4,7 +4,10 @@ # Celestials named like: Pulsar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", beacon.getModifiedItemAttr("energyWarfareStrengthMultiplier"), + "powerTransferAmount", + beacon.getModifiedItemAttr("energyWarfareStrengthMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemgravimetricecmbomb.py b/eos/effects/systemgravimetricecmbomb.py index 42c8d5c92..6d04ccf96 100644 --- a/eos/effects/systemgravimetricecmbomb.py +++ b/eos/effects/systemgravimetricecmbomb.py @@ -4,7 +4,10 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "scanGravimetricStrengthBonus", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") + "scanGravimetricStrengthBonus", + beacon.getModifiedItemAttr("smartbombDamageMultiplier"), + stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemheatdamage.py b/eos/effects/systemheatdamage.py index eb016f647..3b31dc178 100644 --- a/eos/effects/systemheatdamage.py +++ b/eos/effects/systemheatdamage.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "heatDamage" in mod.itemModifiedAttributes, "heatDamage", module.getModifiedItemAttr("heatDamageMultiplier")) diff --git a/eos/effects/systemladarecmbomb.py b/eos/effects/systemladarecmbomb.py index daa0780a5..b5dfc2a98 100644 --- a/eos/effects/systemladarecmbomb.py +++ b/eos/effects/systemladarecmbomb.py @@ -4,7 +4,10 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "scanLadarStrengthBonus", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") + "scanLadarStrengthBonus", + beacon.getModifiedItemAttr("smartbombDamageMultiplier"), + stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemmagnetrometricecmbomb.py b/eos/effects/systemmagnetrometricecmbomb.py index d9d51f07c..a9a15ec79 100644 --- a/eos/effects/systemmagnetrometricecmbomb.py +++ b/eos/effects/systemmagnetrometricecmbomb.py @@ -4,7 +4,10 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "scanMagnetometricStrengthBonus", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") + "scanMagnetometricStrengthBonus", + beacon.getModifiedItemAttr("smartbombDamageMultiplier"), + stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemmaxvelocity.py b/eos/effects/systemmaxvelocity.py index 012136c8c..b10fbf8eb 100644 --- a/eos/effects/systemmaxvelocity.py +++ b/eos/effects/systemmaxvelocity.py @@ -4,5 +4,8 @@ # Celestials named like: Black Hole Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("maxVelocity", beacon.getModifiedItemAttr("maxVelocityMultiplier"), stackingPenalties=True, penaltyGroup="postMul") + fit.ship.multiplyItemAttr("maxVelocity", beacon.getModifiedItemAttr("maxVelocityMultiplier"), + stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemmaxvelocitypercentage.py b/eos/effects/systemmaxvelocitypercentage.py index 36b0f6280..133fb7e7a 100644 --- a/eos/effects/systemmaxvelocitypercentage.py +++ b/eos/effects/systemmaxvelocitypercentage.py @@ -4,5 +4,7 @@ # Celestials named like: Drifter Incursion (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.boostItemAttr("maxVelocity", beacon.getModifiedItemAttr("maxVelocityMultiplier"), stackingPenalties=True) diff --git a/eos/effects/systemmissilevelocity.py b/eos/effects/systemmissilevelocity.py index 7e4d0f599..9870b420d 100644 --- a/eos/effects/systemmissilevelocity.py +++ b/eos/effects/systemmissilevelocity.py @@ -4,6 +4,8 @@ # Celestials named like: Black Hole Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "maxVelocity", beacon.getModifiedItemAttr("missileVelocityMultiplier"), diff --git a/eos/effects/systemneutbombs.py b/eos/effects/systemneutbombs.py index 4bdadf12b..333b3eb56 100644 --- a/eos/effects/systemneutbombs.py +++ b/eos/effects/systemneutbombs.py @@ -4,7 +4,10 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "energyNeutralizerAmount", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), + "energyNeutralizerAmount", + beacon.getModifiedItemAttr("smartbombDamageMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemoverloadarmor.py b/eos/effects/systemoverloadarmor.py index 1ce7a9e66..d70cb74d0 100644 --- a/eos/effects/systemoverloadarmor.py +++ b/eos/effects/systemoverloadarmor.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadArmorDamageAmount" in mod.itemModifiedAttributes, "overloadArmorDamageAmount", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloaddamagemodifier.py b/eos/effects/systemoverloaddamagemodifier.py index 5f7537099..886aa6865 100644 --- a/eos/effects/systemoverloaddamagemodifier.py +++ b/eos/effects/systemoverloaddamagemodifier.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadDamageModifier" in mod.itemModifiedAttributes, "overloadDamageModifier", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloaddurationbonus.py b/eos/effects/systemoverloaddurationbonus.py index e612af53c..7fe9d6e12 100644 --- a/eos/effects/systemoverloaddurationbonus.py +++ b/eos/effects/systemoverloaddurationbonus.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadDurationBonus" in mod.itemModifiedAttributes, "overloadDurationBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadeccmstrength.py b/eos/effects/systemoverloadeccmstrength.py index e032ed52f..06cd0a1e9 100644 --- a/eos/effects/systemoverloadeccmstrength.py +++ b/eos/effects/systemoverloadeccmstrength.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadECCMStrenghtBonus" in mod.itemModifiedAttributes, "overloadECCMStrenghtBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadecmstrength.py b/eos/effects/systemoverloadecmstrength.py index b61e36e54..8f71dd81c 100644 --- a/eos/effects/systemoverloadecmstrength.py +++ b/eos/effects/systemoverloadecmstrength.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadECMStrenghtBonus" in mod.itemModifiedAttributes, "overloadECMStrenghtBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadhardening.py b/eos/effects/systemoverloadhardening.py index 96f20ec17..5d65dfc30 100644 --- a/eos/effects/systemoverloadhardening.py +++ b/eos/effects/systemoverloadhardening.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadHardeningBonus" in mod.itemModifiedAttributes, "overloadHardeningBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadrange.py b/eos/effects/systemoverloadrange.py index 76912f5e3..971440693 100644 --- a/eos/effects/systemoverloadrange.py +++ b/eos/effects/systemoverloadrange.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadRangeBonus" in mod.itemModifiedAttributes, "overloadRangeBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadrof.py b/eos/effects/systemoverloadrof.py index bdc8fdb5a..139c684df 100644 --- a/eos/effects/systemoverloadrof.py +++ b/eos/effects/systemoverloadrof.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadRofBonus" in mod.itemModifiedAttributes, "overloadRofBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadselfduration.py b/eos/effects/systemoverloadselfduration.py index 46ba2d01b..397c9a00c 100644 --- a/eos/effects/systemoverloadselfduration.py +++ b/eos/effects/systemoverloadselfduration.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadSelfDurationBonus" in mod.itemModifiedAttributes, "overloadSelfDurationBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadshieldbonus.py b/eos/effects/systemoverloadshieldbonus.py index 359f92d18..d468f3cd6 100644 --- a/eos/effects/systemoverloadshieldbonus.py +++ b/eos/effects/systemoverloadshieldbonus.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadShieldBonus" in mod.itemModifiedAttributes, "overloadShieldBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadspeedfactor.py b/eos/effects/systemoverloadspeedfactor.py index b2e4a098a..a766bbaa8 100644 --- a/eos/effects/systemoverloadspeedfactor.py +++ b/eos/effects/systemoverloadspeedfactor.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: "overloadSpeedFactorBonus" in mod.itemModifiedAttributes, "overloadSpeedFactorBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemradarecmbomb.py b/eos/effects/systemradarecmbomb.py index b7fb110bf..444ae4fe7 100644 --- a/eos/effects/systemradarecmbomb.py +++ b/eos/effects/systemradarecmbomb.py @@ -4,7 +4,10 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "scanRadarStrengthBonus", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), + "scanRadarStrengthBonus", + beacon.getModifiedItemAttr("smartbombDamageMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemremotecaptransmitteramount.py b/eos/effects/systemremotecaptransmitteramount.py index df0166d28..af78de47a 100644 --- a/eos/effects/systemremotecaptransmitteramount.py +++ b/eos/effects/systemremotecaptransmitteramount.py @@ -4,6 +4,8 @@ # Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", "powerTransferAmount", beacon.getModifiedItemAttr("energyTransferAmountBonus"), diff --git a/eos/effects/systemrocketemdamage.py b/eos/effects/systemrocketemdamage.py index 0284ef7e9..b49384777 100644 --- a/eos/effects/systemrocketemdamage.py +++ b/eos/effects/systemrocketemdamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets"), "emDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemrocketexplosivedamage.py b/eos/effects/systemrocketexplosivedamage.py index 3c636a444..db6d6653e 100644 --- a/eos/effects/systemrocketexplosivedamage.py +++ b/eos/effects/systemrocketexplosivedamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets"), "explosiveDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemrocketkineticdamage.py b/eos/effects/systemrocketkineticdamage.py index f91272907..3b539502c 100644 --- a/eos/effects/systemrocketkineticdamage.py +++ b/eos/effects/systemrocketkineticdamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets"), "kineticDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemrocketthermaldamage.py b/eos/effects/systemrocketthermaldamage.py index a6b530695..db5f65c0f 100644 --- a/eos/effects/systemrocketthermaldamage.py +++ b/eos/effects/systemrocketthermaldamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets"), "thermalDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemscandurationmodulemodifier.py b/eos/effects/systemscandurationmodulemodifier.py index 19fbeaed3..bf561c4a2 100644 --- a/eos/effects/systemscandurationmodulemodifier.py +++ b/eos/effects/systemscandurationmodulemodifier.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Scanning Upgrade Time (2 of 2) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Astrometrics"), "duration", module.getModifiedItemAttr("scanDurationBonus")) diff --git a/eos/effects/systemscandurationskillastrometrics.py b/eos/effects/systemscandurationskillastrometrics.py index 32bcd3610..16c26d373 100644 --- a/eos/effects/systemscandurationskillastrometrics.py +++ b/eos/effects/systemscandurationskillastrometrics.py @@ -5,6 +5,8 @@ # Skill: Astrometric Acquisition # Skill: Astrometrics type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Astrometrics"), diff --git a/eos/effects/systemshieldemresistance.py b/eos/effects/systemshieldemresistance.py index b5b7d3bfa..8e373b52d 100644 --- a/eos/effects/systemshieldemresistance.py +++ b/eos/effects/systemshieldemresistance.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.boostItemAttr("shieldEmDamageResonance", beacon.getModifiedItemAttr("shieldEmDamageResistanceBonus"), stackingPenalties=True) diff --git a/eos/effects/systemshieldexplosiveresistance.py b/eos/effects/systemshieldexplosiveresistance.py index 54d1a97a8..cc52e5723 100644 --- a/eos/effects/systemshieldexplosiveresistance.py +++ b/eos/effects/systemshieldexplosiveresistance.py @@ -4,6 +4,9 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", beacon.getModifiedItemAttr("shieldExplosiveDamageResistanceBonus"), + fit.ship.boostItemAttr("shieldExplosiveDamageResonance", + beacon.getModifiedItemAttr("shieldExplosiveDamageResistanceBonus"), stackingPenalties=True) diff --git a/eos/effects/systemshieldhp.py b/eos/effects/systemshieldhp.py index bede89d71..ffe1b6873 100644 --- a/eos/effects/systemshieldhp.py +++ b/eos/effects/systemshieldhp.py @@ -4,5 +4,7 @@ # Celestials named like: Pulsar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.multiplyItemAttr("shieldCapacity", beacon.getModifiedItemAttr("shieldCapacityMultiplier")) diff --git a/eos/effects/systemshieldkineticresistance.py b/eos/effects/systemshieldkineticresistance.py index 780e10972..7671d6d13 100644 --- a/eos/effects/systemshieldkineticresistance.py +++ b/eos/effects/systemshieldkineticresistance.py @@ -4,6 +4,9 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", beacon.getModifiedItemAttr("shieldKineticDamageResistanceBonus"), + fit.ship.boostItemAttr("shieldKineticDamageResonance", + beacon.getModifiedItemAttr("shieldKineticDamageResistanceBonus"), stackingPenalties=True) diff --git a/eos/effects/systemshieldremoterepairamount.py b/eos/effects/systemshieldremoterepairamount.py index 5c2edef34..c8dd29645 100644 --- a/eos/effects/systemshieldremoterepairamount.py +++ b/eos/effects/systemshieldremoterepairamount.py @@ -4,6 +4,8 @@ # Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "shieldBonus", module.getModifiedItemAttr("shieldBonusMultiplierRemote"), diff --git a/eos/effects/systemshieldrepairamountshieldskills.py b/eos/effects/systemshieldrepairamountshieldskills.py index 40dc3377d..bde28cd04 100644 --- a/eos/effects/systemshieldrepairamountshieldskills.py +++ b/eos/effects/systemshieldrepairamountshieldskills.py @@ -4,8 +4,10 @@ # Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Shield Operation") - or mod.item.requiresSkill("Capital Shield Operation"), + or mod.item.requiresSkill("Capital Shield Operation"), "shieldBonus", module.getModifiedItemAttr("shieldBonusMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemshieldthermalresistance.py b/eos/effects/systemshieldthermalresistance.py index ff18eaca2..cd58fcdeb 100644 --- a/eos/effects/systemshieldthermalresistance.py +++ b/eos/effects/systemshieldthermalresistance.py @@ -4,6 +4,9 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", beacon.getModifiedItemAttr("shieldThermalDamageResistanceBonus"), + fit.ship.boostItemAttr("shieldThermalDamageResonance", + beacon.getModifiedItemAttr("shieldThermalDamageResistanceBonus"), stackingPenalties=True) diff --git a/eos/effects/systemsignatureradius.py b/eos/effects/systemsignatureradius.py index 25d67f217..f00bb35be 100644 --- a/eos/effects/systemsignatureradius.py +++ b/eos/effects/systemsignatureradius.py @@ -5,6 +5,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.multiplyItemAttr("signatureRadius", beacon.getModifiedItemAttr("signatureRadiusMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemsmallenergydamage.py b/eos/effects/systemsmallenergydamage.py index a260eaf78..d4fd39124 100644 --- a/eos/effects/systemsmallenergydamage.py +++ b/eos/effects/systemsmallenergydamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "damageMultiplier", module.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemsmallhybriddamage.py b/eos/effects/systemsmallhybriddamage.py index d727e6c88..fedc2f2cf 100644 --- a/eos/effects/systemsmallhybriddamage.py +++ b/eos/effects/systemsmallhybriddamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "damageMultiplier", module.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemsmallprojectiledamage.py b/eos/effects/systemsmallprojectiledamage.py index 6cc11e8d5..089c03d46 100644 --- a/eos/effects/systemsmallprojectiledamage.py +++ b/eos/effects/systemsmallprojectiledamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "damageMultiplier", module.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemsmartbombemdamage.py b/eos/effects/systemsmartbombemdamage.py index 6e9d8c6a4..da11e810c 100644 --- a/eos/effects/systemsmartbombemdamage.py +++ b/eos/effects/systemsmartbombemdamage.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", "emDamage", module.getModifiedItemAttr("smartbombDamageMultiplier")) diff --git a/eos/effects/systemsmartbombexplosivedamage.py b/eos/effects/systemsmartbombexplosivedamage.py index f0bbcd277..d52964bca 100644 --- a/eos/effects/systemsmartbombexplosivedamage.py +++ b/eos/effects/systemsmartbombexplosivedamage.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", "explosiveDamage", module.getModifiedItemAttr("smartbombDamageMultiplier")) diff --git a/eos/effects/systemsmartbombkineticdamage.py b/eos/effects/systemsmartbombkineticdamage.py index 9b03e0806..1e7cf7c44 100644 --- a/eos/effects/systemsmartbombkineticdamage.py +++ b/eos/effects/systemsmartbombkineticdamage.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", "kineticDamage", module.getModifiedItemAttr("smartbombDamageMultiplier")) diff --git a/eos/effects/systemsmartbombrange.py b/eos/effects/systemsmartbombrange.py index 02912bdfc..5ccdc6f78 100644 --- a/eos/effects/systemsmartbombrange.py +++ b/eos/effects/systemsmartbombrange.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", "empFieldRange", module.getModifiedItemAttr("empFieldRangeMultiplier")) diff --git a/eos/effects/systemsmartbombthermaldamage.py b/eos/effects/systemsmartbombthermaldamage.py index 94344a587..a12281fe2 100644 --- a/eos/effects/systemsmartbombthermaldamage.py +++ b/eos/effects/systemsmartbombthermaldamage.py @@ -4,6 +4,8 @@ # Celestials named like: Red Giant Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", "thermalDamage", module.getModifiedItemAttr("smartbombDamageMultiplier")) diff --git a/eos/effects/systemstandardmissileemdamage.py b/eos/effects/systemstandardmissileemdamage.py index 2dcadb7b9..5e6102aef 100644 --- a/eos/effects/systemstandardmissileemdamage.py +++ b/eos/effects/systemstandardmissileemdamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Light Missiles"), "emDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemstandardmissileexplosivedamage.py b/eos/effects/systemstandardmissileexplosivedamage.py index 60d790ce9..c53978cf5 100644 --- a/eos/effects/systemstandardmissileexplosivedamage.py +++ b/eos/effects/systemstandardmissileexplosivedamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Light Missiles"), "explosiveDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemstandardmissilekineticdamage.py b/eos/effects/systemstandardmissilekineticdamage.py index f7e454bdc..51c946fec 100644 --- a/eos/effects/systemstandardmissilekineticdamage.py +++ b/eos/effects/systemstandardmissilekineticdamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Light Missiles"), "kineticDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemstandardmissilethermaldamage.py b/eos/effects/systemstandardmissilethermaldamage.py index 68dfff8b9..db5e7d254 100644 --- a/eos/effects/systemstandardmissilethermaldamage.py +++ b/eos/effects/systemstandardmissilethermaldamage.py @@ -4,6 +4,8 @@ # Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Light Missiles"), "thermalDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), diff --git a/eos/effects/systemtargetingrange.py b/eos/effects/systemtargetingrange.py index 8e1bc0187..b54077e9d 100644 --- a/eos/effects/systemtargetingrange.py +++ b/eos/effects/systemtargetingrange.py @@ -5,6 +5,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.ship.multiplyItemAttr("maxTargetRange", beacon.getModifiedItemAttr("maxTargetRangeMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemtargetpaintermultiplier.py b/eos/effects/systemtargetpaintermultiplier.py index b7f02c2a4..898111db9 100644 --- a/eos/effects/systemtargetpaintermultiplier.py +++ b/eos/effects/systemtargetpaintermultiplier.py @@ -4,7 +4,10 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Target Painting"), - "signatureRadiusBonus", beacon.getModifiedItemAttr("targetPainterStrengthMultiplier"), + "signatureRadiusBonus", + beacon.getModifiedItemAttr("targetPainterStrengthMultiplier"), stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemtracking.py b/eos/effects/systemtracking.py index 652d6f2eb..6aff80eb7 100644 --- a/eos/effects/systemtracking.py +++ b/eos/effects/systemtracking.py @@ -4,6 +4,8 @@ # Celestials named like: Magnetar Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, module, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Gunnery"), "trackingSpeed", module.getModifiedItemAttr("trackingSpeedMultiplier"), diff --git a/eos/effects/systemwebifierstrengthmultiplier.py b/eos/effects/systemwebifierstrengthmultiplier.py index 7e190e51f..f45dca921 100644 --- a/eos/effects/systemwebifierstrengthmultiplier.py +++ b/eos/effects/systemwebifierstrengthmultiplier.py @@ -4,6 +4,8 @@ # Celestials named like: Black Hole Effect Beacon Class (6 of 6) runTime = "early" type = ("projected", "passive") + + def handler(fit, beacon, context): fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", beacon.getModifiedItemAttr("stasisWebStrengthMultiplier"), diff --git a/eos/effects/tacticalshieldmanipulationskillboostuniformitybonus.py b/eos/effects/tacticalshieldmanipulationskillboostuniformitybonus.py index 97a499467..2c281449c 100644 --- a/eos/effects/tacticalshieldmanipulationskillboostuniformitybonus.py +++ b/eos/effects/tacticalshieldmanipulationskillboostuniformitybonus.py @@ -3,5 +3,7 @@ # Used by: # Skill: Tactical Shield Manipulation type = "passive" + + def handler(fit, skill, context): fit.ship.increaseItemAttr("shieldUniformity", skill.getModifiedItemAttr("uniformityBonus") * skill.level) diff --git a/eos/effects/targetarmorrepair.py b/eos/effects/targetarmorrepair.py index 8cb72da9d..358ca2c58 100644 --- a/eos/effects/targetarmorrepair.py +++ b/eos/effects/targetarmorrepair.py @@ -3,6 +3,8 @@ # Used by: # Module: QA Remote Armor Repair System - 5 Players type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: bonus = container.getModifiedItemAttr("armorDamageAmount") diff --git a/eos/effects/targetattack.py b/eos/effects/targetattack.py index 156220718..a1330eab7 100644 --- a/eos/effects/targetattack.py +++ b/eos/effects/targetattack.py @@ -4,6 +4,8 @@ # Drones from group: Combat Drone (74 of 74) # Modules from group: Energy Weapon (208 of 209) type = 'active' + + def handler(fit, module, context): # Set reload time to 1 second module.reloadTime = 1000 diff --git a/eos/effects/targetbreaker.py b/eos/effects/targetbreaker.py index 6fe490afb..a9369bee5 100644 --- a/eos/effects/targetbreaker.py +++ b/eos/effects/targetbreaker.py @@ -3,5 +3,7 @@ # Used by: # Module: Target Spectrum Breaker type = "active" + + def handler(fit, module, context): pass diff --git a/eos/effects/targethostiles.py b/eos/effects/targethostiles.py index ee3a3714e..65664fa77 100644 --- a/eos/effects/targethostiles.py +++ b/eos/effects/targethostiles.py @@ -3,6 +3,8 @@ # Used by: # Modules from group: Automated Targeting System (6 of 6) type = "active" + + def handler(fit, module, context): # This effect enables the ACTIVE state for auto targeting systems. pass diff --git a/eos/effects/targetingmaxtargetbonusmodaddmaxlockedtargetslocationchar.py b/eos/effects/targetingmaxtargetbonusmodaddmaxlockedtargetslocationchar.py index 3679571b5..fcf70276e 100644 --- a/eos/effects/targetingmaxtargetbonusmodaddmaxlockedtargetslocationchar.py +++ b/eos/effects/targetingmaxtargetbonusmodaddmaxlockedtargetslocationchar.py @@ -3,6 +3,8 @@ # Used by: # Skills named like: Target Management (2 of 2) type = "passive" + + def handler(fit, skill, context): amount = skill.getModifiedItemAttr("maxTargetBonus") * skill.level fit.extraAttributes.increase("maxTargetsLockedFromSkills", amount) diff --git a/eos/effects/thermalshieldcompensationhardeningbonusgroupshieldamp.py b/eos/effects/thermalshieldcompensationhardeningbonusgroupshieldamp.py index 00519379a..abb1ad0d7 100644 --- a/eos/effects/thermalshieldcompensationhardeningbonusgroupshieldamp.py +++ b/eos/effects/thermalshieldcompensationhardeningbonusgroupshieldamp.py @@ -3,6 +3,9 @@ # Used by: # Skill: Thermal Shield Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Shield Resistance Amplifier", - "thermalDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + "thermalDamageResistanceBonus", + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/thermicarmorcompensationhardeningbonusgrouparmorcoating.py b/eos/effects/thermicarmorcompensationhardeningbonusgrouparmorcoating.py index 653b75056..36790f342 100644 --- a/eos/effects/thermicarmorcompensationhardeningbonusgrouparmorcoating.py +++ b/eos/effects/thermicarmorcompensationhardeningbonusgrouparmorcoating.py @@ -3,6 +3,9 @@ # Used by: # Skill: Thermal Armor Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Coating", - "thermalDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + "thermalDamageResistanceBonus", + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/thermicarmorcompensationhardeningbonusgroupenergized.py b/eos/effects/thermicarmorcompensationhardeningbonusgroupenergized.py index ef2765202..8f33c77d7 100644 --- a/eos/effects/thermicarmorcompensationhardeningbonusgroupenergized.py +++ b/eos/effects/thermicarmorcompensationhardeningbonusgroupenergized.py @@ -3,6 +3,9 @@ # Used by: # Skill: Thermal Armor Compensation type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Plating Energized", - "thermalDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) \ No newline at end of file + "thermalDamageResistanceBonus", + skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/thermodynamicsskilldamagebonus.py b/eos/effects/thermodynamicsskilldamagebonus.py index e92e19bc3..54569b06a 100644 --- a/eos/effects/thermodynamicsskilldamagebonus.py +++ b/eos/effects/thermodynamicsskilldamagebonus.py @@ -3,6 +3,8 @@ # Used by: # Skill: Thermodynamics type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", skill.getModifiedItemAttr("thermodynamicsHeatDamage") * skill.level) diff --git a/eos/effects/titanamarrgangcaprecharge2.py b/eos/effects/titanamarrgangcaprecharge2.py index bc72d4606..46a1c1589 100644 --- a/eos/effects/titanamarrgangcaprecharge2.py +++ b/eos/effects/titanamarrgangcaprecharge2.py @@ -5,5 +5,7 @@ type = "gang" gangBoost = "rechargeRate" gangBonus = "titanAmarrBonus2" + + def handler(fit, ship, context): fit.ship.boostItemAttr(gangBoost, ship.getModifiedItemAttr(gangBonus)) diff --git a/eos/effects/titanamarrlaserdmg3.py b/eos/effects/titanamarrlaserdmg3.py index f265306e3..f98d99296 100644 --- a/eos/effects/titanamarrlaserdmg3.py +++ b/eos/effects/titanamarrlaserdmg3.py @@ -3,6 +3,8 @@ # Used by: # Ship: Avatar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "damageMultiplier", ship.getModifiedItemAttr("titanAmarrBonus3"), skill="Amarr Titan") diff --git a/eos/effects/titanamarrleadershipmoduleamount4.py b/eos/effects/titanamarrleadershipmoduleamount4.py index 71fd41811..e87e8e723 100644 --- a/eos/effects/titanamarrleadershipmoduleamount4.py +++ b/eos/effects/titanamarrleadershipmoduleamount4.py @@ -3,6 +3,9 @@ # Used by: # Ship: Avatar type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", - "maxGroupActive", ship.getModifiedItemAttr("titanAmarrBonus4"), skill="Amarr Titan") + "maxGroupActive", ship.getModifiedItemAttr("titanAmarrBonus4"), + skill="Amarr Titan") diff --git a/eos/effects/titanamarrskilllevel2.py b/eos/effects/titanamarrskilllevel2.py index f5c922bed..0c02a8f24 100644 --- a/eos/effects/titanamarrskilllevel2.py +++ b/eos/effects/titanamarrskilllevel2.py @@ -3,5 +3,7 @@ # Used by: # Skill: Amarr Titan type = "passive" + + def handler(fit, skill, context): fit.ship.multiplyItemAttr("titanAmarrBonus2", skill.level) diff --git a/eos/effects/titancaldarigangshieldhp2.py b/eos/effects/titancaldarigangshieldhp2.py index a7e7461f3..fa92c0e33 100644 --- a/eos/effects/titancaldarigangshieldhp2.py +++ b/eos/effects/titancaldarigangshieldhp2.py @@ -5,5 +5,7 @@ type = "gang" gangBoost = "shieldCapacity" gangBonus = "shipBonusCT2" + + def handler(fit, ship, context): fit.ship.boostItemAttr(gangBoost, ship.getModifiedItemAttr(gangBonus)) diff --git a/eos/effects/titancaldarileadershipmoduleamount4.py b/eos/effects/titancaldarileadershipmoduleamount4.py index 73df23284..0ee8df552 100644 --- a/eos/effects/titancaldarileadershipmoduleamount4.py +++ b/eos/effects/titancaldarileadershipmoduleamount4.py @@ -3,6 +3,9 @@ # Used by: # Ship: Leviathan type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", - "maxGroupActive", ship.getModifiedItemAttr("titanCaldariBonus4"), skill="Caldari Titan") + "maxGroupActive", ship.getModifiedItemAttr("titanCaldariBonus4"), + skill="Caldari Titan") diff --git a/eos/effects/titancaldarimissilekineticdmg2.py b/eos/effects/titancaldarimissilekineticdmg2.py index af9079da1..8e26a17a0 100644 --- a/eos/effects/titancaldarimissilekineticdmg2.py +++ b/eos/effects/titancaldarimissilekineticdmg2.py @@ -3,6 +3,8 @@ # Used by: # Ship: Leviathan type = "passive" + + def handler(fit, ship, context): groups = ("XL Torpedo", "XL Cruise Missile") fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, diff --git a/eos/effects/titancaldariskilllevel2.py b/eos/effects/titancaldariskilllevel2.py index 886a909e3..314d08a1a 100644 --- a/eos/effects/titancaldariskilllevel2.py +++ b/eos/effects/titancaldariskilllevel2.py @@ -3,5 +3,7 @@ # Used by: # Skill: Caldari Titan type = "passive" + + def handler(fit, skill, context): fit.ship.multiplyItemAttr("shipBonusCT2", skill.level) diff --git a/eos/effects/titangallentegangarmorhp2.py b/eos/effects/titangallentegangarmorhp2.py index 349f6e0f0..eb83564a7 100644 --- a/eos/effects/titangallentegangarmorhp2.py +++ b/eos/effects/titangallentegangarmorhp2.py @@ -5,5 +5,7 @@ type = "gang" gangBoost = "armorHP" gangBonus = "titanGallenteBonus2" + + def handler(fit, ship, context): fit.ship.boostItemAttr(gangBoost, ship.getModifiedItemAttr(gangBonus)) diff --git a/eos/effects/titangallentehybriddamage1.py b/eos/effects/titangallentehybriddamage1.py index cb53fe710..1121491e4 100644 --- a/eos/effects/titangallentehybriddamage1.py +++ b/eos/effects/titangallentehybriddamage1.py @@ -3,6 +3,9 @@ # Used by: # Ship: Erebus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("titanGallenteBonus1"), skill="Gallente Titan") + "damageMultiplier", ship.getModifiedItemAttr("titanGallenteBonus1"), + skill="Gallente Titan") diff --git a/eos/effects/titangallenteleadershipmoduleamount4.py b/eos/effects/titangallenteleadershipmoduleamount4.py index f78c15661..c58100469 100644 --- a/eos/effects/titangallenteleadershipmoduleamount4.py +++ b/eos/effects/titangallenteleadershipmoduleamount4.py @@ -3,6 +3,9 @@ # Used by: # Ship: Erebus type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", - "maxGroupActive", ship.getModifiedItemAttr("titanGallenteBonus4"), skill="Gallente Titan") + "maxGroupActive", ship.getModifiedItemAttr("titanGallenteBonus4"), + skill="Gallente Titan") diff --git a/eos/effects/titangallenteskilllevel2.py b/eos/effects/titangallenteskilllevel2.py index fc8547956..55fda8b78 100644 --- a/eos/effects/titangallenteskilllevel2.py +++ b/eos/effects/titangallenteskilllevel2.py @@ -3,5 +3,7 @@ # Used by: # Skill: Gallente Titan type = "passive" + + def handler(fit, skill, context): fit.ship.multiplyItemAttr("titanGallenteBonus2", skill.level) diff --git a/eos/effects/titanminmatargangsigradius2.py b/eos/effects/titanminmatargangsigradius2.py index 8055263d5..014642dd3 100644 --- a/eos/effects/titanminmatargangsigradius2.py +++ b/eos/effects/titanminmatargangsigradius2.py @@ -5,5 +5,7 @@ type = "gang" gangBoost = "signatureRadius" gangBonus = "titanMinmatarBonus2" + + def handler(fit, ship, context): fit.ship.boostItemAttr(gangBoost, ship.getModifiedItemAttr(gangBonus)) diff --git a/eos/effects/titanminmatarleadershipmoduleamount4.py b/eos/effects/titanminmatarleadershipmoduleamount4.py index e955fb060..beae56511 100644 --- a/eos/effects/titanminmatarleadershipmoduleamount4.py +++ b/eos/effects/titanminmatarleadershipmoduleamount4.py @@ -3,6 +3,9 @@ # Used by: # Ship: Ragnarok type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator", - "maxGroupActive", ship.getModifiedItemAttr("titanMinmatarBonus4"), skill="Minmatar Titan") + "maxGroupActive", ship.getModifiedItemAttr("titanMinmatarBonus4"), + skill="Minmatar Titan") diff --git a/eos/effects/titanminmatarprojectiledmg3.py b/eos/effects/titanminmatarprojectiledmg3.py index 568ffd866..4b07a251b 100644 --- a/eos/effects/titanminmatarprojectiledmg3.py +++ b/eos/effects/titanminmatarprojectiledmg3.py @@ -3,6 +3,9 @@ # Used by: # Ship: Ragnarok type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("titanMinmatarBonus3"), skill="Minmatar Titan") + "damageMultiplier", ship.getModifiedItemAttr("titanMinmatarBonus3"), + skill="Minmatar Titan") diff --git a/eos/effects/titanminmatarskilllevel2.py b/eos/effects/titanminmatarskilllevel2.py index c6bb3ba6c..cb6e27a0b 100644 --- a/eos/effects/titanminmatarskilllevel2.py +++ b/eos/effects/titanminmatarskilllevel2.py @@ -3,5 +3,7 @@ # Used by: # Skill: Minmatar Titan type = "passive" + + def handler(fit, skill, context): fit.ship.multiplyItemAttr("titanMinmatarBonus2", skill.level) diff --git a/eos/effects/titanturretdamagescaling.py b/eos/effects/titanturretdamagescaling.py index 7f549ae75..a8f00c006 100644 --- a/eos/effects/titanturretdamagescaling.py +++ b/eos/effects/titanturretdamagescaling.py @@ -1,5 +1,7 @@ # Not used by any item type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Gunnery"), "turretDamageScalingRadius", ship.getModifiedItemAttr("titanBonusScalingRadius")) diff --git a/eos/effects/trackingspeedbonuseffecthybrids.py b/eos/effects/trackingspeedbonuseffecthybrids.py index 97f19b77e..147d91b3c 100644 --- a/eos/effects/trackingspeedbonuseffecthybrids.py +++ b/eos/effects/trackingspeedbonuseffecthybrids.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Hybrid Metastasis Adjuster (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/trackingspeedbonuseffectlasers.py b/eos/effects/trackingspeedbonuseffectlasers.py index b6f873bc2..da849e037 100644 --- a/eos/effects/trackingspeedbonuseffectlasers.py +++ b/eos/effects/trackingspeedbonuseffectlasers.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Energy Metastasis Adjuster (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/trackingspeedbonuseffectprojectiles.py b/eos/effects/trackingspeedbonuseffectprojectiles.py index d29c104d8..ed2c4d323 100644 --- a/eos/effects/trackingspeedbonuseffectprojectiles.py +++ b/eos/effects/trackingspeedbonuseffectprojectiles.py @@ -3,7 +3,9 @@ # Used by: # Modules named like: Projectile Metastasis Adjuster (8 of 8) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties = True) + stackingPenalties=True) diff --git a/eos/effects/trackingspeedbonuspassiverequiringgunnerytrackingspeedbonus.py b/eos/effects/trackingspeedbonuspassiverequiringgunnerytrackingspeedbonus.py index d5c94a064..6e1df7bcf 100644 --- a/eos/effects/trackingspeedbonuspassiverequiringgunnerytrackingspeedbonus.py +++ b/eos/effects/trackingspeedbonuspassiverequiringgunnerytrackingspeedbonus.py @@ -7,6 +7,8 @@ # Implant: Ogdin's Eye Coordination Enhancer # Skill: Motion Prediction type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), diff --git a/eos/effects/tractorbeamcan.py b/eos/effects/tractorbeamcan.py index 72d9b451e..293a839ea 100644 --- a/eos/effects/tractorbeamcan.py +++ b/eos/effects/tractorbeamcan.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Tractor Beam (4 of 4) type = "active" + + def handler(fit, module, context): - pass \ No newline at end of file + pass diff --git a/eos/effects/triagemodeeffect3.py b/eos/effects/triagemodeeffect3.py index 17b9a8758..da9b55cbe 100644 --- a/eos/effects/triagemodeeffect3.py +++ b/eos/effects/triagemodeeffect3.py @@ -4,6 +4,8 @@ # Module: Triage Module I type = "active" runTime = "early" + + def handler(fit, module, context): # Remote armor reps fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), diff --git a/eos/effects/triagemodeeffect7.py b/eos/effects/triagemodeeffect7.py index 17cb9532f..8a85f181f 100644 --- a/eos/effects/triagemodeeffect7.py +++ b/eos/effects/triagemodeeffect7.py @@ -4,6 +4,8 @@ # Module: Triage Module II type = "active" runTime = "early" + + def handler(fit, module, context): # Remote armor reps fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), diff --git a/eos/effects/turretweaponrangefallofftrackingspeedmultiplytargethostile.py b/eos/effects/turretweaponrangefallofftrackingspeedmultiplytargethostile.py index 63d9743b9..12d535bb2 100644 --- a/eos/effects/turretweaponrangefallofftrackingspeedmultiplytargethostile.py +++ b/eos/effects/turretweaponrangefallofftrackingspeedmultiplytargethostile.py @@ -1,13 +1,15 @@ # Not used by any item type = "projected", "active" + + def handler(fit, container, context): if "projected" in context: fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Gunnery"), "trackingSpeed", container.getModifiedItemAttr("trackingSpeedMultiplier"), - stackingPenalties = True, penaltyGroup="postMul") + stackingPenalties=True, penaltyGroup="postMul") fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Gunnery"), "maxRange", container.getModifiedItemAttr("maxRangeMultiplier"), - stackingPenalties = True, penaltyGroup="postMul") + stackingPenalties=True, penaltyGroup="postMul") fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Gunnery"), "falloff", container.getModifiedItemAttr("fallofMultiplier"), - stackingPenalties = True, penaltyGroup="postMul") + stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/usemissiles.py b/eos/effects/usemissiles.py index f21a7b778..f212d2e5e 100644 --- a/eos/effects/usemissiles.py +++ b/eos/effects/usemissiles.py @@ -5,6 +5,8 @@ # Modules from group: Missile Launcher Rocket (15 of 15) # Modules named like: Launcher (151 of 151) type = 'active' + + def handler(fit, module, context): # Set reload time to 10 seconds module.reloadTime = 10000 diff --git a/eos/effects/velocitybonusonline.py b/eos/effects/velocitybonusonline.py index aa96ff6e4..5ffd1b9bb 100644 --- a/eos/effects/velocitybonusonline.py +++ b/eos/effects/velocitybonusonline.py @@ -5,6 +5,8 @@ # Modules from group: Nanofiber Internal Structure (7 of 7) # Modules from group: Overdrive Injector System (7 of 7) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("implantBonusVelocity"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/velocitybonuspassive.py b/eos/effects/velocitybonuspassive.py index 20b800105..3d0b1c6d1 100644 --- a/eos/effects/velocitybonuspassive.py +++ b/eos/effects/velocitybonuspassive.py @@ -3,6 +3,8 @@ # Used by: # Modules named like: Polycarbon Engine Housing (8 of 8) type = "passive" + + def handler(fit, module, context): fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("implantBonusVelocity"), - stackingPenalties = True) \ No newline at end of file + stackingPenalties=True) diff --git a/eos/effects/warfarelinkcpuaddition.py b/eos/effects/warfarelinkcpuaddition.py index e0f079e6c..df5ec151c 100644 --- a/eos/effects/warfarelinkcpuaddition.py +++ b/eos/effects/warfarelinkcpuaddition.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Gang Coordinator (30 of 31) type = "passive" + + def handler(fit, module, context): module.increaseItemAttr("cpu", module.getModifiedItemAttr("warfareLinkCPUAdd") or 0) diff --git a/eos/effects/warfarelinkcpupenalty.py b/eos/effects/warfarelinkcpupenalty.py index 2d19ff90a..c0f3c6629 100644 --- a/eos/effects/warfarelinkcpupenalty.py +++ b/eos/effects/warfarelinkcpupenalty.py @@ -3,7 +3,8 @@ # Used by: # Subsystems from group: Defensive Systems (12 of 16) type = "passive" + + def handler(fit, module, context): fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "warfareLinkCPUAdd", module.getModifiedItemAttr("warfareLinkCPUPenalty")) - diff --git a/eos/effects/warpdisruptsphere.py b/eos/effects/warpdisruptsphere.py index 7a1751eca..3fe88bd13 100644 --- a/eos/effects/warpdisruptsphere.py +++ b/eos/effects/warpdisruptsphere.py @@ -4,6 +4,8 @@ # Modules from group: Warp Disrupt Field Generator (7 of 7) type = "active" runTime = "early" + + def handler(fit, module, context): fit.ship.boostItemAttr("mass", module.getModifiedItemAttr("massBonusPercentage")) fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonus")) diff --git a/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationship.py b/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationship.py index 749572a32..8e8bd9cec 100644 --- a/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationship.py +++ b/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationship.py @@ -3,5 +3,7 @@ # Used by: # Implants named like: Eifyr and Co. 'Rogue' Warp Drive Operation WD (6 of 6) type = "passive" + + def handler(fit, implant, context): fit.ship.boostItemAttr("warpCapacitorNeed", implant.getModifiedItemAttr("warpCapacitorNeedBonus")) diff --git a/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationshipgrouppropulsion.py b/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationshipgrouppropulsion.py index e5f4431a6..f47c47264 100644 --- a/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationshipgrouppropulsion.py +++ b/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationshipgrouppropulsion.py @@ -4,7 +4,9 @@ # Modules named like: Warp Core Optimizer (8 of 8) # Skill: Warp Drive Operation type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.ship.boostItemAttr("warpCapacitorNeed", container.getModifiedItemAttr("warpCapacitorNeedBonus") * level, - stackingPenalties = "skill" not in context) + stackingPenalties="skill" not in context) diff --git a/eos/effects/warpscramble.py b/eos/effects/warpscramble.py index 96d0b3d40..7aa194099 100644 --- a/eos/effects/warpscramble.py +++ b/eos/effects/warpscramble.py @@ -3,5 +3,7 @@ # Used by: # Modules named like: Warp Disruptor (27 of 27) type = "projected", "active" + + def handler(fit, module, context): - fit.ship.increaseItemAttr("warpScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) \ No newline at end of file + fit.ship.increaseItemAttr("warpScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) diff --git a/eos/effects/warpscrambleblockmwdwithnpceffect.py b/eos/effects/warpscrambleblockmwdwithnpceffect.py index 5369efc45..dce99b7ce 100644 --- a/eos/effects/warpscrambleblockmwdwithnpceffect.py +++ b/eos/effects/warpscrambleblockmwdwithnpceffect.py @@ -7,6 +7,7 @@ type = "projected", "active" from eos.types import State + def handler(fit, module, context): if "projected" not in context: return diff --git a/eos/effects/warpskillspeed.py b/eos/effects/warpskillspeed.py index adbbf3595..57174c39d 100644 --- a/eos/effects/warpskillspeed.py +++ b/eos/effects/warpskillspeed.py @@ -5,6 +5,8 @@ # Implants named like: grade Ascendancy (10 of 12) # Modules named like: Hyperspatial Velocity Optimizer (8 of 8) type = "passive" + + def handler(fit, container, context): penalized = False if "skill" in context or "implant" in context else True fit.ship.boostItemAttr("baseWarpSpeed", container.getModifiedItemAttr("WarpSBonus"), diff --git a/eos/effects/warpspeedaddition.py b/eos/effects/warpspeedaddition.py index ede5150d8..1350c3a85 100644 --- a/eos/effects/warpspeedaddition.py +++ b/eos/effects/warpspeedaddition.py @@ -3,5 +3,7 @@ # Used by: # Modules from group: Warp Accelerator (3 of 3) type = "passive" + + def handler(fit, module, context): fit.ship.increaseItemAttr("warpSpeedMultiplier", module.getModifiedItemAttr("warpSpeedAdd")) diff --git a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringbomblauncher.py b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringbomblauncher.py index 95cb52d4b..72f944de7 100644 --- a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringbomblauncher.py +++ b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringbomblauncher.py @@ -3,6 +3,8 @@ # Used by: # Skill: Weapon Upgrades type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Bomb Deployment"), - "cpu", skill.getModifiedItemAttr("cpuNeedBonus") * skill.level) \ No newline at end of file + "cpu", skill.getModifiedItemAttr("cpuNeedBonus") * skill.level) diff --git a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergypulseweapons.py b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergypulseweapons.py index 3801d3316..9fcfb86fe 100644 --- a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergypulseweapons.py +++ b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergypulseweapons.py @@ -3,6 +3,8 @@ # Used by: # Skill: Weapon Upgrades type = "passive" + + def handler(fit, skill, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Energy Pulse Weapons"), - "cpu", skill.getModifiedItemAttr("cpuNeedBonus") * skill.level) \ No newline at end of file + "cpu", skill.getModifiedItemAttr("cpuNeedBonus") * skill.level) diff --git a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringgunnery.py b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringgunnery.py index 0ee1fa044..13126e2a5 100644 --- a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringgunnery.py +++ b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringgunnery.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Gnome' Weapon Upgrades WU (6 of 6) # Skill: Weapon Upgrades type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), diff --git a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringmissilelauncheroperation.py b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringmissilelauncheroperation.py index 0571e1941..d64e19944 100644 --- a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringmissilelauncheroperation.py +++ b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringmissilelauncheroperation.py @@ -4,6 +4,8 @@ # Implants named like: Zainou 'Gnome' Launcher CPU Efficiency LE (6 of 6) # Skill: Weapon Upgrades type = "passive" + + def handler(fit, container, context): level = container.level if "skill" in context else 1 fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), diff --git a/eos/effects/zcolinorcacargobonus.py b/eos/effects/zcolinorcacargobonus.py index ba78fadec..f513bb0ee 100644 --- a/eos/effects/zcolinorcacargobonus.py +++ b/eos/effects/zcolinorcacargobonus.py @@ -3,5 +3,8 @@ # Used by: # Ship: Orca type = "passive" + + def handler(fit, ship, context): - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("shipOrcaCargoBonusOrca1"), skill="Industrial Command Ships") + fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("shipOrcaCargoBonusOrca1"), + skill="Industrial Command Ships") diff --git a/eos/effects/zcolinorcaforemanmodbonus.py b/eos/effects/zcolinorcaforemanmodbonus.py index 9c536a9a0..28db599f6 100644 --- a/eos/effects/zcolinorcaforemanmodbonus.py +++ b/eos/effects/zcolinorcaforemanmodbonus.py @@ -3,6 +3,9 @@ # Used by: # Ship: Orca type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Director"), - "commandBonus", ship.getModifiedItemAttr("shipOrcaForemanBonus"), skill="Industrial Command Ships") + "commandBonus", ship.getModifiedItemAttr("shipOrcaForemanBonus"), + skill="Industrial Command Ships") diff --git a/eos/effects/zcolinorcasurveyscannerbonus.py b/eos/effects/zcolinorcasurveyscannerbonus.py index 7e73bc9dc..1018bedab 100644 --- a/eos/effects/zcolinorcasurveyscannerbonus.py +++ b/eos/effects/zcolinorcasurveyscannerbonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Orca type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Survey Scanner", "surveyScanRange", ship.getModifiedItemAttr("shipOrcaSurveyScannerBonus")) diff --git a/eos/effects/zcolinorcatractorrangebonus.py b/eos/effects/zcolinorcatractorrangebonus.py index 6d26a56b3..c568b6289 100644 --- a/eos/effects/zcolinorcatractorrangebonus.py +++ b/eos/effects/zcolinorcatractorrangebonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Orca type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", "maxRange", ship.getModifiedItemAttr("shipOrcaTractorBeamRangeBonus1")) diff --git a/eos/effects/zcolinorcatractorvelocitybonus.py b/eos/effects/zcolinorcatractorvelocitybonus.py index 74f39e89b..c5675aad0 100644 --- a/eos/effects/zcolinorcatractorvelocitybonus.py +++ b/eos/effects/zcolinorcatractorvelocitybonus.py @@ -3,6 +3,8 @@ # Used by: # Ship: Orca type = "passive" + + def handler(fit, ship, context): fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", "maxTractorVelocity", ship.getModifiedItemAttr("shipOrcaTractorBeamVelocityBonus2")) From e2944f6be78f00647608337210a6a04bb4ec3c17 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:19:24 -0700 Subject: [PATCH 34/76] Reformatting eos.db.gamedata --- eos/db/gamedata/attribute.py | 30 ++++++++------- eos/db/gamedata/category.py | 14 +++---- eos/db/gamedata/effect.py | 20 +++++----- eos/db/gamedata/group.py | 16 ++++---- eos/db/gamedata/icon.py | 10 ++--- eos/db/gamedata/item.py | 36 +++++++++--------- eos/db/gamedata/marketGroup.py | 22 ++++++----- eos/db/gamedata/metaData.py | 11 +++--- eos/db/gamedata/metaGroup.py | 24 ++++++------ eos/db/gamedata/queries.py | 67 +++++++++++++++++++++++++--------- eos/db/gamedata/traits.py | 4 +- eos/db/gamedata/unit.py | 10 ++--- 12 files changed, 151 insertions(+), 113 deletions(-) diff --git a/eos/db/gamedata/attribute.py b/eos/db/gamedata/attribute.py index 3f880c026..e09e0865b 100644 --- a/eos/db/gamedata/attribute.py +++ b/eos/db/gamedata/attribute.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,20 +15,22 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, Float, Unicode, ForeignKey, String, Boolean -from sqlalchemy.orm import relation, mapper, synonym, deferred from sqlalchemy.ext.associationproxy import association_proxy -from eos.types import Attribute, Icon, AttributeInfo, Unit +from sqlalchemy.orm import relation, mapper, synonym, deferred + from eos.db import gamedata_meta +from eos.types import Attribute, Icon, AttributeInfo, Unit + typeattributes_table = Table("dgmtypeattribs", gamedata_meta, - Column("value", Float), - Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), - Column("attributeID", ForeignKey("dgmattribs.attributeID"), primary_key=True)) + Column("value", Float), + Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), + Column("attributeID", ForeignKey("dgmattribs.attributeID"), primary_key=True)) attributes_table = Table("dgmattribs", gamedata_meta, - Column("attributeID", Integer, primary_key = True), + Column("attributeID", Integer, primary_key=True), Column("attributeName", String), Column("defaultValue", Float), Column("maxAttributeID", Integer, ForeignKey("dgmattribs.attributeID")), @@ -40,14 +42,14 @@ attributes_table = Table("dgmattribs", gamedata_meta, Column("unitID", Integer, ForeignKey("dgmunits.unitID"))) mapper(Attribute, typeattributes_table, - properties = {"info": relation(AttributeInfo, lazy=False)}) + properties={"info": relation(AttributeInfo, lazy=False)}) mapper(AttributeInfo, attributes_table, - properties = {"icon" : relation(Icon), - "unit": relation(Unit), - "ID": synonym("attributeID"), - "name": synonym("attributeName"), - "description" : deferred(attributes_table.c.description)}) + properties={"icon": relation(Icon), + "unit": relation(Unit), + "ID": synonym("attributeID"), + "name": synonym("attributeName"), + "description": deferred(attributes_table.c.description)}) Attribute.ID = association_proxy("info", "attributeID") Attribute.name = association_proxy("info", "attributeName") diff --git a/eos/db/gamedata/category.py b/eos/db/gamedata/category.py index a44b7d663..d33cce130 100644 --- a/eos/db/gamedata/category.py +++ b/eos/db/gamedata/category.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, ForeignKey, Boolean, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,14 +24,14 @@ from eos.db import gamedata_meta from eos.types import Category, Icon categories_table = Table("invcategories", gamedata_meta, - Column("categoryID", Integer, primary_key = True), + Column("categoryID", Integer, primary_key=True), Column("categoryName", String), Column("description", String), Column("published", Boolean), Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(Category, categories_table, - properties = {"icon" : relation(Icon), - "ID" : synonym("categoryID"), - "name" : synonym("categoryName"), - "description" : deferred(categories_table.c.description)}) + properties={"icon": relation(Icon), + "ID": synonym("categoryID"), + "name": synonym("categoryName"), + "description": deferred(categories_table.c.description)}) diff --git a/eos/db/gamedata/effect.py b/eos/db/gamedata/effect.py index 21d7613c6..001d05162 100644 --- a/eos/db/gamedata/effect.py +++ b/eos/db/gamedata/effect.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,35 +15,35 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Boolean, Table, ForeignKey from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import mapper, synonym, relation, deferred -from eos.types import Effect, EffectInfo + from eos.db import gamedata_meta +from eos.types import Effect, EffectInfo typeeffects_table = Table("dgmtypeeffects", gamedata_meta, Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), Column("effectID", Integer, ForeignKey("dgmeffects.effectID"), primary_key=True)) effects_table = Table("dgmeffects", gamedata_meta, - Column("effectID", Integer, primary_key = True), + Column("effectID", Integer, primary_key=True), Column("effectName", String), Column("description", String), Column("published", Boolean), Column("isAssistance", Boolean), Column("isOffensive", Boolean)) - mapper(EffectInfo, effects_table, - properties = {"ID" : synonym("effectID"), - "name" : synonym("effectName"), - "description" : deferred(effects_table.c.description)}) + properties={"ID": synonym("effectID"), + "name": synonym("effectName"), + "description": deferred(effects_table.c.description)}) mapper(Effect, typeeffects_table, - properties = {"ID": synonym("effectID"), - "info": relation(EffectInfo, lazy=False)}) + properties={"ID": synonym("effectID"), + "info": relation(EffectInfo, lazy=False)}) Effect.name = association_proxy("info", "name") Effect.description = association_proxy("info", "description") diff --git a/eos/db/gamedata/group.py b/eos/db/gamedata/group.py index 14939c040..cbf0a34d8 100644 --- a/eos/db/gamedata/group.py +++ b/eos/db/gamedata/group.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,7 +24,7 @@ from eos.db import gamedata_meta from eos.types import Group, Icon, Category groups_table = Table("invgroups", gamedata_meta, - Column("groupID", Integer, primary_key = True), + Column("groupID", Integer, primary_key=True), Column("groupName", String), Column("description", String), Column("published", Boolean), @@ -32,8 +32,8 @@ groups_table = Table("invgroups", gamedata_meta, Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(Group, groups_table, - properties = {"category" : relation(Category, backref = "groups"), - "icon" : relation(Icon), - "ID" : synonym("groupID"), - "name" : synonym("groupName"), - "description" : deferred(groups_table.c.description)}) + properties={"category": relation(Category, backref="groups"), + "icon": relation(Icon), + "ID": synonym("groupID"), + "name": synonym("groupName"), + "description": deferred(groups_table.c.description)}) diff --git a/eos/db/gamedata/icon.py b/eos/db/gamedata/icon.py index 9aeecdf87..d0315b28f 100644 --- a/eos/db/gamedata/icon.py +++ b/eos/db/gamedata/icon.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Table from sqlalchemy.orm import mapper, synonym, deferred @@ -24,10 +24,10 @@ from eos.db import gamedata_meta from eos.types import Icon icons_table = Table("icons", gamedata_meta, - Column("iconID", Integer, primary_key = True), + Column("iconID", Integer, primary_key=True), Column("description", String), Column("iconFile", String)) mapper(Icon, icons_table, - properties = {"ID" : synonym("iconID"), - "description" : deferred(icons_table.c.description)}) + properties={"ID": synonym("iconID"), + "description": deferred(icons_table.c.description)}) diff --git a/eos/db/gamedata/item.py b/eos/db/gamedata/item.py index 34a1a6189..a23c3a786 100644 --- a/eos/db/gamedata/item.py +++ b/eos/db/gamedata/item.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,18 +15,18 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table, Float -from sqlalchemy.orm import relation, mapper, synonym, deferred from sqlalchemy.ext.associationproxy import association_proxy +from sqlalchemy.orm import relation, mapper, synonym, deferred from sqlalchemy.orm.collections import attribute_mapped_collection from eos.db import gamedata_meta from eos.types import Icon, Attribute, Item, Effect, MetaType, Group, Traits items_table = Table("invtypes", gamedata_meta, - Column("typeID", Integer, primary_key = True), + Column("typeID", Integer, primary_key=True), Column("typeName", String, index=True), Column("description", String), Column("raceID", Integer), @@ -43,19 +43,19 @@ from .metaGroup import metatypes_table from .traits import traits_table mapper(Item, items_table, - properties = {"group" : relation(Group, backref = "items"), - "icon" : relation(Icon), - "_Item__attributes" : relation(Attribute, collection_class = attribute_mapped_collection('name')), - "effects" : relation(Effect, collection_class = attribute_mapped_collection('name')), - "metaGroup" : relation(MetaType, - primaryjoin = metatypes_table.c.typeID == items_table.c.typeID, - uselist = False), - "ID" : synonym("typeID"), - "name" : synonym("typeName"), - "description" : deferred(items_table.c.description), - "traits" : relation(Traits, - primaryjoin = traits_table.c.typeID == items_table.c.typeID, - uselist = False) - }) + properties={"group": relation(Group, backref="items"), + "icon": relation(Icon), + "_Item__attributes": relation(Attribute, collection_class=attribute_mapped_collection('name')), + "effects": relation(Effect, collection_class=attribute_mapped_collection('name')), + "metaGroup": relation(MetaType, + primaryjoin=metatypes_table.c.typeID == items_table.c.typeID, + uselist=False), + "ID": synonym("typeID"), + "name": synonym("typeName"), + "description": deferred(items_table.c.description), + "traits": relation(Traits, + primaryjoin=traits_table.c.typeID == items_table.c.typeID, + uselist=False) + }) Item.category = association_proxy("group", "category") diff --git a/eos/db/gamedata/marketGroup.py b/eos/db/gamedata/marketGroup.py index 6f16e48ae..b5b631ea3 100644 --- a/eos/db/gamedata/marketGroup.py +++ b/eos/db/gamedata/marketGroup.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,17 +24,19 @@ from eos.db import gamedata_meta from eos.types import Item, MarketGroup, Icon marketgroups_table = Table("invmarketgroups", gamedata_meta, - Column("marketGroupID", Integer, primary_key = True), + Column("marketGroupID", Integer, primary_key=True), Column("marketGroupName", String), Column("description", String), Column("hasTypes", Boolean), - Column("parentGroupID", Integer, ForeignKey("invmarketgroups.marketGroupID", initially="DEFERRED", deferrable=True)), + Column("parentGroupID", Integer, + ForeignKey("invmarketgroups.marketGroupID", initially="DEFERRED", deferrable=True)), Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(MarketGroup, marketgroups_table, - properties = {"items" : relation(Item, backref = "marketGroup"), - "parent" : relation(MarketGroup, backref = "children", remote_side = [marketgroups_table.c.marketGroupID]), - "icon" : relation(Icon), - "ID" : synonym("marketGroupID"), - "name" : synonym("marketGroupName"), - "description" : deferred(marketgroups_table.c.description)}) + properties={"items": relation(Item, backref="marketGroup"), + "parent": relation(MarketGroup, backref="children", + remote_side=[marketgroups_table.c.marketGroupID]), + "icon": relation(Icon), + "ID": synonym("marketGroupID"), + "name": synonym("marketGroupName"), + "description": deferred(marketgroups_table.c.description)}) diff --git a/eos/db/gamedata/metaData.py b/eos/db/gamedata/metaData.py index bdbdd7c8a..6bf500a72 100644 --- a/eos/db/gamedata/metaData.py +++ b/eos/db/gamedata/metaData.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,15 +15,16 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, Table, String from sqlalchemy.orm import mapper -from eos.types import MetaData + from eos.db import gamedata_meta +from eos.types import MetaData metadata_table = Table("metadata", gamedata_meta, - Column("field_name", String, primary_key=True), - Column("field_value", String)) + Column("field_name", String, primary_key=True), + Column("field_value", String)) mapper(MetaData, metadata_table) diff --git a/eos/db/gamedata/metaGroup.py b/eos/db/gamedata/metaGroup.py index 554bf5739..e5ed5c399 100644 --- a/eos/db/gamedata/metaGroup.py +++ b/eos/db/gamedata/metaGroup.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,33 +15,33 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, String +from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import relation, mapper, synonym + from eos.db import gamedata_meta from eos.db.gamedata.item import items_table from eos.types import MetaGroup, Item, MetaType -from sqlalchemy.ext.associationproxy import association_proxy metagroups_table = Table("invmetagroups", gamedata_meta, - Column("metaGroupID", Integer, primary_key = True), + Column("metaGroupID", Integer, primary_key=True), Column("metaGroupName", String)) metatypes_table = Table("invmetatypes", gamedata_meta, - Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key = True), + Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True), Column("parentTypeID", Integer, ForeignKey("invtypes.typeID")), Column("metaGroupID", Integer, ForeignKey("invmetagroups.metaGroupID"))) mapper(MetaGroup, metagroups_table, - properties = {"ID" : synonym("metaGroupID"), - "name" : synonym("metaGroupName")}) + properties={"ID": synonym("metaGroupID"), + "name": synonym("metaGroupName")}) mapper(MetaType, metatypes_table, - properties = {"ID" : synonym("metaGroupID"), - "parent" : relation(Item, primaryjoin = metatypes_table.c.parentTypeID == items_table.c.typeID), - "items" : relation(Item, primaryjoin = metatypes_table.c.typeID == items_table.c.typeID), - "info": relation(MetaGroup, lazy=False)}) + properties={"ID": synonym("metaGroupID"), + "parent": relation(Item, primaryjoin=metatypes_table.c.parentTypeID == items_table.c.typeID), + "items": relation(Item, primaryjoin=metatypes_table.c.typeID == items_table.c.typeID), + "info": relation(MetaGroup, lazy=False)}) MetaType.name = association_proxy("info", "name") - diff --git a/eos/db/gamedata/queries.py b/eos/db/gamedata/queries.py index 6431b0cc7..b2db92437 100644 --- a/eos/db/gamedata/queries.py +++ b/eos/db/gamedata/queries.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,21 +15,23 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== +from sqlalchemy.orm import join, exc +from sqlalchemy.sql import and_, or_, select + +import eos.config from eos.db import gamedata_session from eos.db.gamedata.metaGroup import metatypes_table, items_table -from sqlalchemy.sql import and_, or_, select, func -from sqlalchemy.orm import join, exc -from eos.types import Item, Category, Group, MarketGroup, AttributeInfo, MetaData, MetaGroup from eos.db.util import processEager, processWhere -import eos.config +from eos.types import Item, Category, Group, MarketGroup, AttributeInfo, MetaData, MetaGroup configVal = getattr(eos.config, "gamedataCache", None) if configVal is True: def cachedQuery(amount, *keywords): def deco(function): cache = {} + def checkAndReturn(*args, **kwargs): useCache = kwargs.pop("useCache", True) cacheKey = [] @@ -45,6 +47,7 @@ if configVal is True: return handler return checkAndReturn + return deco elif callable(configVal): @@ -56,8 +59,10 @@ else: return function(*args, **kwargs) return checkAndReturn + return deco + def sqlizeString(line): # Escape backslashes first, as they will be as escape symbol in queries # Then escape percent and underscore signs @@ -65,7 +70,10 @@ def sqlizeString(line): line = line.replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_").replace("*", "%") return line + itemNameMap = {} + + @cachedQuery(1, "lookfor") def getItem(lookfor, eager=None): if isinstance(lookfor, int): @@ -88,7 +96,10 @@ def getItem(lookfor, eager=None): raise TypeError("Need integer or string as argument") return item + groupNameMap = {} + + @cachedQuery(1, "lookfor") def getGroup(lookfor, eager=None): if isinstance(lookfor, int): @@ -111,63 +122,78 @@ def getGroup(lookfor, eager=None): raise TypeError("Need integer or string as argument") return group + categoryNameMap = {} + + @cachedQuery(1, "lookfor") def getCategory(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: category = gamedata_session.query(Category).get(lookfor) else: - category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.ID == lookfor).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter( + Category.ID == lookfor).first() elif isinstance(lookfor, basestring): if lookfor in categoryNameMap: id = categoryNameMap[lookfor] if eager is None: category = gamedata_session.query(Category).get(id) else: - category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.ID == id).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter( + Category.ID == id).first() else: # Category names are unique, so we can use first() instead of one() - category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.name == lookfor).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter( + Category.name == lookfor).first() categoryNameMap[lookfor] = category.ID else: raise TypeError("Need integer or string as argument") return category + metaGroupNameMap = {} + + @cachedQuery(1, "lookfor") def getMetaGroup(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: metaGroup = gamedata_session.query(MetaGroup).get(lookfor) else: - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.ID == lookfor).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( + MetaGroup.ID == lookfor).first() elif isinstance(lookfor, basestring): if lookfor in metaGroupNameMap: id = metaGroupNameMap[lookfor] if eager is None: metaGroup = gamedata_session.query(MetaGroup).get(id) else: - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.ID == id).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( + MetaGroup.ID == id).first() else: # MetaGroup names are unique, so we can use first() instead of one() - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.name == lookfor).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( + MetaGroup.name == lookfor).first() metaGroupNameMap[lookfor] = metaGroup.ID else: raise TypeError("Need integer or string as argument") return metaGroup + @cachedQuery(1, "lookfor") def getMarketGroup(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: marketGroup = gamedata_session.query(MarketGroup).get(lookfor) else: - marketGroup = gamedata_session.query(MarketGroup).options(*processEager(eager)).filter(MarketGroup.ID == lookfor).first() + marketGroup = gamedata_session.query(MarketGroup).options(*processEager(eager)).filter( + MarketGroup.ID == lookfor).first() else: raise TypeError("Need integer as argument") return marketGroup + @cachedQuery(2, "where", "filter") def getItemsByCategory(filter, where=None, eager=None): if isinstance(filter, int): @@ -178,7 +204,9 @@ def getItemsByCategory(filter, where=None, eager=None): raise TypeError("Need integer or string as argument") filter = processWhere(filter, where) - return gamedata_session.query(Item).options(*processEager(eager)).join(Item.group, Group.category).filter(filter).all() + return gamedata_session.query(Item).options(*processEager(eager)).join(Item.group, Group.category).filter( + filter).all() + @cachedQuery(3, "where", "nameLike", "join") def searchItems(nameLike, where=None, join=None, eager=None): @@ -201,6 +229,7 @@ def searchItems(nameLike, where=None, join=None, eager=None): items = items.limit(100).all() return items + @cachedQuery(2, "where", "itemids") def getVariations(itemids, where=None, eager=None): for itemid in itemids: @@ -213,9 +242,11 @@ def getVariations(itemids, where=None, eager=None): itemfilter = or_(*(metatypes_table.c.parentTypeID == itemid for itemid in itemids)) filter = processWhere(itemfilter, where) joinon = items_table.c.typeID == metatypes_table.c.typeID - vars = gamedata_session.query(Item).options(*processEager(eager)).join((metatypes_table, joinon)).filter(filter).all() + vars = gamedata_session.query(Item).options(*processEager(eager)).join((metatypes_table, joinon)).filter( + filter).all() return vars + @cachedQuery(1, "attr") def getAttributeInfo(attr, eager=None): if isinstance(attr, basestring): @@ -230,6 +261,7 @@ def getAttributeInfo(attr, eager=None): result = None return result + @cachedQuery(1, "field") def getMetaData(field): if isinstance(field, basestring): @@ -238,6 +270,7 @@ def getMetaData(field): raise TypeError("Need string as argument") return data + @cachedQuery(2, "itemIDs", "attributeID") def directAttributeRequest(itemIDs, attrIDs): for itemID in itemIDs: @@ -248,8 +281,8 @@ def directAttributeRequest(itemIDs, attrIDs): raise TypeError("All itemIDs must be integer") q = select((eos.types.Item.typeID, eos.types.Attribute.attributeID, eos.types.Attribute.value), - and_(eos.types.Attribute.attributeID.in_(attrIDs), eos.types.Item.typeID.in_(itemIDs)), - from_obj=[join(eos.types.Attribute, eos.types.Item)]) + and_(eos.types.Attribute.attributeID.in_(attrIDs), eos.types.Item.typeID.in_(itemIDs)), + from_obj=[join(eos.types.Attribute, eos.types.Item)]) result = gamedata_session.execute(q).fetchall() return result diff --git a/eos/db/gamedata/traits.py b/eos/db/gamedata/traits.py index 907c53247..70cd5752f 100644 --- a/eos/db/gamedata/traits.py +++ b/eos/db/gamedata/traits.py @@ -1,8 +1,8 @@ - from sqlalchemy import Column, Table, Integer, String, ForeignKey from sqlalchemy.orm import mapper -from eos.types import Traits + from eos.db import gamedata_meta +from eos.types import Traits traits_table = Table("invtraits", gamedata_meta, Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True), diff --git a/eos/db/gamedata/unit.py b/eos/db/gamedata/unit.py index 662c5cec5..55594eb90 100644 --- a/eos/db/gamedata/unit.py +++ b/eos/db/gamedata/unit.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, Table, Integer, String from sqlalchemy.orm import mapper, synonym @@ -24,10 +24,10 @@ from eos.db import gamedata_meta from eos.types import Unit groups_table = Table("dgmunits", gamedata_meta, - Column("unitID", Integer, primary_key = True), + Column("unitID", Integer, primary_key=True), Column("unitName", String), Column("displayName", String)) mapper(Unit, groups_table, - properties = {"ID" : synonym("unitID"), - "name" : synonym("unitName")}) + properties={"ID": synonym("unitID"), + "name": synonym("unitName")}) From 0ff4aec40025a2b965f0ea28c52e55a61294e4f2 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:24:03 -0700 Subject: [PATCH 35/76] Revert "Reformatting eos.db.gamedata" This reverts commit e2944f6be78f00647608337210a6a04bb4ec3c17. --- eos/db/gamedata/attribute.py | 30 +++++++-------- eos/db/gamedata/category.py | 14 +++---- eos/db/gamedata/effect.py | 20 +++++----- eos/db/gamedata/group.py | 16 ++++---- eos/db/gamedata/icon.py | 10 ++--- eos/db/gamedata/item.py | 36 +++++++++--------- eos/db/gamedata/marketGroup.py | 22 +++++------ eos/db/gamedata/metaData.py | 11 +++--- eos/db/gamedata/metaGroup.py | 24 ++++++------ eos/db/gamedata/queries.py | 67 +++++++++------------------------- eos/db/gamedata/traits.py | 4 +- eos/db/gamedata/unit.py | 10 ++--- 12 files changed, 113 insertions(+), 151 deletions(-) diff --git a/eos/db/gamedata/attribute.py b/eos/db/gamedata/attribute.py index e09e0865b..3f880c026 100644 --- a/eos/db/gamedata/attribute.py +++ b/eos/db/gamedata/attribute.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,22 +15,20 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Table, Column, Integer, Float, Unicode, ForeignKey, String, Boolean -from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import relation, mapper, synonym, deferred - -from eos.db import gamedata_meta +from sqlalchemy.ext.associationproxy import association_proxy from eos.types import Attribute, Icon, AttributeInfo, Unit - +from eos.db import gamedata_meta typeattributes_table = Table("dgmtypeattribs", gamedata_meta, - Column("value", Float), - Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), - Column("attributeID", ForeignKey("dgmattribs.attributeID"), primary_key=True)) + Column("value", Float), + Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), + Column("attributeID", ForeignKey("dgmattribs.attributeID"), primary_key=True)) attributes_table = Table("dgmattribs", gamedata_meta, - Column("attributeID", Integer, primary_key=True), + Column("attributeID", Integer, primary_key = True), Column("attributeName", String), Column("defaultValue", Float), Column("maxAttributeID", Integer, ForeignKey("dgmattribs.attributeID")), @@ -42,14 +40,14 @@ attributes_table = Table("dgmattribs", gamedata_meta, Column("unitID", Integer, ForeignKey("dgmunits.unitID"))) mapper(Attribute, typeattributes_table, - properties={"info": relation(AttributeInfo, lazy=False)}) + properties = {"info": relation(AttributeInfo, lazy=False)}) mapper(AttributeInfo, attributes_table, - properties={"icon": relation(Icon), - "unit": relation(Unit), - "ID": synonym("attributeID"), - "name": synonym("attributeName"), - "description": deferred(attributes_table.c.description)}) + properties = {"icon" : relation(Icon), + "unit": relation(Unit), + "ID": synonym("attributeID"), + "name": synonym("attributeName"), + "description" : deferred(attributes_table.c.description)}) Attribute.ID = association_proxy("info", "attributeID") Attribute.name = association_proxy("info", "attributeName") diff --git a/eos/db/gamedata/category.py b/eos/db/gamedata/category.py index d33cce130..a44b7d663 100644 --- a/eos/db/gamedata/category.py +++ b/eos/db/gamedata/category.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Column, String, Integer, ForeignKey, Boolean, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,14 +24,14 @@ from eos.db import gamedata_meta from eos.types import Category, Icon categories_table = Table("invcategories", gamedata_meta, - Column("categoryID", Integer, primary_key=True), + Column("categoryID", Integer, primary_key = True), Column("categoryName", String), Column("description", String), Column("published", Boolean), Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(Category, categories_table, - properties={"icon": relation(Icon), - "ID": synonym("categoryID"), - "name": synonym("categoryName"), - "description": deferred(categories_table.c.description)}) + properties = {"icon" : relation(Icon), + "ID" : synonym("categoryID"), + "name" : synonym("categoryName"), + "description" : deferred(categories_table.c.description)}) diff --git a/eos/db/gamedata/effect.py b/eos/db/gamedata/effect.py index 001d05162..21d7613c6 100644 --- a/eos/db/gamedata/effect.py +++ b/eos/db/gamedata/effect.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,35 +15,35 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Column, String, Integer, Boolean, Table, ForeignKey from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import mapper, synonym, relation, deferred - -from eos.db import gamedata_meta from eos.types import Effect, EffectInfo +from eos.db import gamedata_meta typeeffects_table = Table("dgmtypeeffects", gamedata_meta, Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), Column("effectID", Integer, ForeignKey("dgmeffects.effectID"), primary_key=True)) effects_table = Table("dgmeffects", gamedata_meta, - Column("effectID", Integer, primary_key=True), + Column("effectID", Integer, primary_key = True), Column("effectName", String), Column("description", String), Column("published", Boolean), Column("isAssistance", Boolean), Column("isOffensive", Boolean)) + mapper(EffectInfo, effects_table, - properties={"ID": synonym("effectID"), - "name": synonym("effectName"), - "description": deferred(effects_table.c.description)}) + properties = {"ID" : synonym("effectID"), + "name" : synonym("effectName"), + "description" : deferred(effects_table.c.description)}) mapper(Effect, typeeffects_table, - properties={"ID": synonym("effectID"), - "info": relation(EffectInfo, lazy=False)}) + properties = {"ID": synonym("effectID"), + "info": relation(EffectInfo, lazy=False)}) Effect.name = association_proxy("info", "name") Effect.description = association_proxy("info", "description") diff --git a/eos/db/gamedata/group.py b/eos/db/gamedata/group.py index cbf0a34d8..14939c040 100644 --- a/eos/db/gamedata/group.py +++ b/eos/db/gamedata/group.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,7 +24,7 @@ from eos.db import gamedata_meta from eos.types import Group, Icon, Category groups_table = Table("invgroups", gamedata_meta, - Column("groupID", Integer, primary_key=True), + Column("groupID", Integer, primary_key = True), Column("groupName", String), Column("description", String), Column("published", Boolean), @@ -32,8 +32,8 @@ groups_table = Table("invgroups", gamedata_meta, Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(Group, groups_table, - properties={"category": relation(Category, backref="groups"), - "icon": relation(Icon), - "ID": synonym("groupID"), - "name": synonym("groupName"), - "description": deferred(groups_table.c.description)}) + properties = {"category" : relation(Category, backref = "groups"), + "icon" : relation(Icon), + "ID" : synonym("groupID"), + "name" : synonym("groupName"), + "description" : deferred(groups_table.c.description)}) diff --git a/eos/db/gamedata/icon.py b/eos/db/gamedata/icon.py index d0315b28f..9aeecdf87 100644 --- a/eos/db/gamedata/icon.py +++ b/eos/db/gamedata/icon.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Column, String, Integer, Table from sqlalchemy.orm import mapper, synonym, deferred @@ -24,10 +24,10 @@ from eos.db import gamedata_meta from eos.types import Icon icons_table = Table("icons", gamedata_meta, - Column("iconID", Integer, primary_key=True), + Column("iconID", Integer, primary_key = True), Column("description", String), Column("iconFile", String)) mapper(Icon, icons_table, - properties={"ID": synonym("iconID"), - "description": deferred(icons_table.c.description)}) + properties = {"ID" : synonym("iconID"), + "description" : deferred(icons_table.c.description)}) diff --git a/eos/db/gamedata/item.py b/eos/db/gamedata/item.py index a23c3a786..34a1a6189 100644 --- a/eos/db/gamedata/item.py +++ b/eos/db/gamedata/item.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,18 +15,18 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table, Float -from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import relation, mapper, synonym, deferred +from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm.collections import attribute_mapped_collection from eos.db import gamedata_meta from eos.types import Icon, Attribute, Item, Effect, MetaType, Group, Traits items_table = Table("invtypes", gamedata_meta, - Column("typeID", Integer, primary_key=True), + Column("typeID", Integer, primary_key = True), Column("typeName", String, index=True), Column("description", String), Column("raceID", Integer), @@ -43,19 +43,19 @@ from .metaGroup import metatypes_table from .traits import traits_table mapper(Item, items_table, - properties={"group": relation(Group, backref="items"), - "icon": relation(Icon), - "_Item__attributes": relation(Attribute, collection_class=attribute_mapped_collection('name')), - "effects": relation(Effect, collection_class=attribute_mapped_collection('name')), - "metaGroup": relation(MetaType, - primaryjoin=metatypes_table.c.typeID == items_table.c.typeID, - uselist=False), - "ID": synonym("typeID"), - "name": synonym("typeName"), - "description": deferred(items_table.c.description), - "traits": relation(Traits, - primaryjoin=traits_table.c.typeID == items_table.c.typeID, - uselist=False) - }) + properties = {"group" : relation(Group, backref = "items"), + "icon" : relation(Icon), + "_Item__attributes" : relation(Attribute, collection_class = attribute_mapped_collection('name')), + "effects" : relation(Effect, collection_class = attribute_mapped_collection('name')), + "metaGroup" : relation(MetaType, + primaryjoin = metatypes_table.c.typeID == items_table.c.typeID, + uselist = False), + "ID" : synonym("typeID"), + "name" : synonym("typeName"), + "description" : deferred(items_table.c.description), + "traits" : relation(Traits, + primaryjoin = traits_table.c.typeID == items_table.c.typeID, + uselist = False) + }) Item.category = association_proxy("group", "category") diff --git a/eos/db/gamedata/marketGroup.py b/eos/db/gamedata/marketGroup.py index b5b631ea3..6f16e48ae 100644 --- a/eos/db/gamedata/marketGroup.py +++ b/eos/db/gamedata/marketGroup.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,19 +24,17 @@ from eos.db import gamedata_meta from eos.types import Item, MarketGroup, Icon marketgroups_table = Table("invmarketgroups", gamedata_meta, - Column("marketGroupID", Integer, primary_key=True), + Column("marketGroupID", Integer, primary_key = True), Column("marketGroupName", String), Column("description", String), Column("hasTypes", Boolean), - Column("parentGroupID", Integer, - ForeignKey("invmarketgroups.marketGroupID", initially="DEFERRED", deferrable=True)), + Column("parentGroupID", Integer, ForeignKey("invmarketgroups.marketGroupID", initially="DEFERRED", deferrable=True)), Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(MarketGroup, marketgroups_table, - properties={"items": relation(Item, backref="marketGroup"), - "parent": relation(MarketGroup, backref="children", - remote_side=[marketgroups_table.c.marketGroupID]), - "icon": relation(Icon), - "ID": synonym("marketGroupID"), - "name": synonym("marketGroupName"), - "description": deferred(marketgroups_table.c.description)}) + properties = {"items" : relation(Item, backref = "marketGroup"), + "parent" : relation(MarketGroup, backref = "children", remote_side = [marketgroups_table.c.marketGroupID]), + "icon" : relation(Icon), + "ID" : synonym("marketGroupID"), + "name" : synonym("marketGroupName"), + "description" : deferred(marketgroups_table.c.description)}) diff --git a/eos/db/gamedata/metaData.py b/eos/db/gamedata/metaData.py index 6bf500a72..bdbdd7c8a 100644 --- a/eos/db/gamedata/metaData.py +++ b/eos/db/gamedata/metaData.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,16 +15,15 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Column, Table, String from sqlalchemy.orm import mapper - -from eos.db import gamedata_meta from eos.types import MetaData +from eos.db import gamedata_meta metadata_table = Table("metadata", gamedata_meta, - Column("field_name", String, primary_key=True), - Column("field_value", String)) + Column("field_name", String, primary_key=True), + Column("field_value", String)) mapper(MetaData, metadata_table) diff --git a/eos/db/gamedata/metaGroup.py b/eos/db/gamedata/metaGroup.py index e5ed5c399..554bf5739 100644 --- a/eos/db/gamedata/metaGroup.py +++ b/eos/db/gamedata/metaGroup.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,33 +15,33 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, String -from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import relation, mapper, synonym - from eos.db import gamedata_meta from eos.db.gamedata.item import items_table from eos.types import MetaGroup, Item, MetaType +from sqlalchemy.ext.associationproxy import association_proxy metagroups_table = Table("invmetagroups", gamedata_meta, - Column("metaGroupID", Integer, primary_key=True), + Column("metaGroupID", Integer, primary_key = True), Column("metaGroupName", String)) metatypes_table = Table("invmetatypes", gamedata_meta, - Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True), + Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key = True), Column("parentTypeID", Integer, ForeignKey("invtypes.typeID")), Column("metaGroupID", Integer, ForeignKey("invmetagroups.metaGroupID"))) mapper(MetaGroup, metagroups_table, - properties={"ID": synonym("metaGroupID"), - "name": synonym("metaGroupName")}) + properties = {"ID" : synonym("metaGroupID"), + "name" : synonym("metaGroupName")}) mapper(MetaType, metatypes_table, - properties={"ID": synonym("metaGroupID"), - "parent": relation(Item, primaryjoin=metatypes_table.c.parentTypeID == items_table.c.typeID), - "items": relation(Item, primaryjoin=metatypes_table.c.typeID == items_table.c.typeID), - "info": relation(MetaGroup, lazy=False)}) + properties = {"ID" : synonym("metaGroupID"), + "parent" : relation(Item, primaryjoin = metatypes_table.c.parentTypeID == items_table.c.typeID), + "items" : relation(Item, primaryjoin = metatypes_table.c.typeID == items_table.c.typeID), + "info": relation(MetaGroup, lazy=False)}) MetaType.name = association_proxy("info", "name") + diff --git a/eos/db/gamedata/queries.py b/eos/db/gamedata/queries.py index b2db92437..6431b0cc7 100644 --- a/eos/db/gamedata/queries.py +++ b/eos/db/gamedata/queries.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,23 +15,21 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== -from sqlalchemy.orm import join, exc -from sqlalchemy.sql import and_, or_, select - -import eos.config from eos.db import gamedata_session from eos.db.gamedata.metaGroup import metatypes_table, items_table -from eos.db.util import processEager, processWhere +from sqlalchemy.sql import and_, or_, select, func +from sqlalchemy.orm import join, exc from eos.types import Item, Category, Group, MarketGroup, AttributeInfo, MetaData, MetaGroup +from eos.db.util import processEager, processWhere +import eos.config configVal = getattr(eos.config, "gamedataCache", None) if configVal is True: def cachedQuery(amount, *keywords): def deco(function): cache = {} - def checkAndReturn(*args, **kwargs): useCache = kwargs.pop("useCache", True) cacheKey = [] @@ -47,7 +45,6 @@ if configVal is True: return handler return checkAndReturn - return deco elif callable(configVal): @@ -59,10 +56,8 @@ else: return function(*args, **kwargs) return checkAndReturn - return deco - def sqlizeString(line): # Escape backslashes first, as they will be as escape symbol in queries # Then escape percent and underscore signs @@ -70,10 +65,7 @@ def sqlizeString(line): line = line.replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_").replace("*", "%") return line - itemNameMap = {} - - @cachedQuery(1, "lookfor") def getItem(lookfor, eager=None): if isinstance(lookfor, int): @@ -96,10 +88,7 @@ def getItem(lookfor, eager=None): raise TypeError("Need integer or string as argument") return item - groupNameMap = {} - - @cachedQuery(1, "lookfor") def getGroup(lookfor, eager=None): if isinstance(lookfor, int): @@ -122,78 +111,63 @@ def getGroup(lookfor, eager=None): raise TypeError("Need integer or string as argument") return group - categoryNameMap = {} - - @cachedQuery(1, "lookfor") def getCategory(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: category = gamedata_session.query(Category).get(lookfor) else: - category = gamedata_session.query(Category).options(*processEager(eager)).filter( - Category.ID == lookfor).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.ID == lookfor).first() elif isinstance(lookfor, basestring): if lookfor in categoryNameMap: id = categoryNameMap[lookfor] if eager is None: category = gamedata_session.query(Category).get(id) else: - category = gamedata_session.query(Category).options(*processEager(eager)).filter( - Category.ID == id).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.ID == id).first() else: # Category names are unique, so we can use first() instead of one() - category = gamedata_session.query(Category).options(*processEager(eager)).filter( - Category.name == lookfor).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.name == lookfor).first() categoryNameMap[lookfor] = category.ID else: raise TypeError("Need integer or string as argument") return category - metaGroupNameMap = {} - - @cachedQuery(1, "lookfor") def getMetaGroup(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: metaGroup = gamedata_session.query(MetaGroup).get(lookfor) else: - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( - MetaGroup.ID == lookfor).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.ID == lookfor).first() elif isinstance(lookfor, basestring): if lookfor in metaGroupNameMap: id = metaGroupNameMap[lookfor] if eager is None: metaGroup = gamedata_session.query(MetaGroup).get(id) else: - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( - MetaGroup.ID == id).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.ID == id).first() else: # MetaGroup names are unique, so we can use first() instead of one() - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( - MetaGroup.name == lookfor).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.name == lookfor).first() metaGroupNameMap[lookfor] = metaGroup.ID else: raise TypeError("Need integer or string as argument") return metaGroup - @cachedQuery(1, "lookfor") def getMarketGroup(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: marketGroup = gamedata_session.query(MarketGroup).get(lookfor) else: - marketGroup = gamedata_session.query(MarketGroup).options(*processEager(eager)).filter( - MarketGroup.ID == lookfor).first() + marketGroup = gamedata_session.query(MarketGroup).options(*processEager(eager)).filter(MarketGroup.ID == lookfor).first() else: raise TypeError("Need integer as argument") return marketGroup - @cachedQuery(2, "where", "filter") def getItemsByCategory(filter, where=None, eager=None): if isinstance(filter, int): @@ -204,9 +178,7 @@ def getItemsByCategory(filter, where=None, eager=None): raise TypeError("Need integer or string as argument") filter = processWhere(filter, where) - return gamedata_session.query(Item).options(*processEager(eager)).join(Item.group, Group.category).filter( - filter).all() - + return gamedata_session.query(Item).options(*processEager(eager)).join(Item.group, Group.category).filter(filter).all() @cachedQuery(3, "where", "nameLike", "join") def searchItems(nameLike, where=None, join=None, eager=None): @@ -229,7 +201,6 @@ def searchItems(nameLike, where=None, join=None, eager=None): items = items.limit(100).all() return items - @cachedQuery(2, "where", "itemids") def getVariations(itemids, where=None, eager=None): for itemid in itemids: @@ -242,11 +213,9 @@ def getVariations(itemids, where=None, eager=None): itemfilter = or_(*(metatypes_table.c.parentTypeID == itemid for itemid in itemids)) filter = processWhere(itemfilter, where) joinon = items_table.c.typeID == metatypes_table.c.typeID - vars = gamedata_session.query(Item).options(*processEager(eager)).join((metatypes_table, joinon)).filter( - filter).all() + vars = gamedata_session.query(Item).options(*processEager(eager)).join((metatypes_table, joinon)).filter(filter).all() return vars - @cachedQuery(1, "attr") def getAttributeInfo(attr, eager=None): if isinstance(attr, basestring): @@ -261,7 +230,6 @@ def getAttributeInfo(attr, eager=None): result = None return result - @cachedQuery(1, "field") def getMetaData(field): if isinstance(field, basestring): @@ -270,7 +238,6 @@ def getMetaData(field): raise TypeError("Need string as argument") return data - @cachedQuery(2, "itemIDs", "attributeID") def directAttributeRequest(itemIDs, attrIDs): for itemID in itemIDs: @@ -281,8 +248,8 @@ def directAttributeRequest(itemIDs, attrIDs): raise TypeError("All itemIDs must be integer") q = select((eos.types.Item.typeID, eos.types.Attribute.attributeID, eos.types.Attribute.value), - and_(eos.types.Attribute.attributeID.in_(attrIDs), eos.types.Item.typeID.in_(itemIDs)), - from_obj=[join(eos.types.Attribute, eos.types.Item)]) + and_(eos.types.Attribute.attributeID.in_(attrIDs), eos.types.Item.typeID.in_(itemIDs)), + from_obj=[join(eos.types.Attribute, eos.types.Item)]) result = gamedata_session.execute(q).fetchall() return result diff --git a/eos/db/gamedata/traits.py b/eos/db/gamedata/traits.py index 70cd5752f..907c53247 100644 --- a/eos/db/gamedata/traits.py +++ b/eos/db/gamedata/traits.py @@ -1,8 +1,8 @@ + from sqlalchemy import Column, Table, Integer, String, ForeignKey from sqlalchemy.orm import mapper - -from eos.db import gamedata_meta from eos.types import Traits +from eos.db import gamedata_meta traits_table = Table("invtraits", gamedata_meta, Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True), diff --git a/eos/db/gamedata/unit.py b/eos/db/gamedata/unit.py index 55594eb90..662c5cec5 100644 --- a/eos/db/gamedata/unit.py +++ b/eos/db/gamedata/unit.py @@ -1,4 +1,4 @@ -# =============================================================================== +#=============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -# =============================================================================== +#=============================================================================== from sqlalchemy import Column, Table, Integer, String from sqlalchemy.orm import mapper, synonym @@ -24,10 +24,10 @@ from eos.db import gamedata_meta from eos.types import Unit groups_table = Table("dgmunits", gamedata_meta, - Column("unitID", Integer, primary_key=True), + Column("unitID", Integer, primary_key = True), Column("unitName", String), Column("displayName", String)) mapper(Unit, groups_table, - properties={"ID": synonym("unitID"), - "name": synonym("unitName")}) + properties = {"ID" : synonym("unitID"), + "name" : synonym("unitName")}) From feb83cf737119f9d4b56dd6c7cd12c91a1537c40 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:26:40 -0700 Subject: [PATCH 36/76] Revert "Revert "Reformatting eos.db.gamedata"" This reverts commit 0ff4aec40025a2b965f0ea28c52e55a61294e4f2. --- eos/db/gamedata/attribute.py | 30 ++++++++------- eos/db/gamedata/category.py | 14 +++---- eos/db/gamedata/effect.py | 20 +++++----- eos/db/gamedata/group.py | 16 ++++---- eos/db/gamedata/icon.py | 10 ++--- eos/db/gamedata/item.py | 36 +++++++++--------- eos/db/gamedata/marketGroup.py | 22 ++++++----- eos/db/gamedata/metaData.py | 11 +++--- eos/db/gamedata/metaGroup.py | 24 ++++++------ eos/db/gamedata/queries.py | 67 +++++++++++++++++++++++++--------- eos/db/gamedata/traits.py | 4 +- eos/db/gamedata/unit.py | 10 ++--- 12 files changed, 151 insertions(+), 113 deletions(-) diff --git a/eos/db/gamedata/attribute.py b/eos/db/gamedata/attribute.py index 3f880c026..e09e0865b 100644 --- a/eos/db/gamedata/attribute.py +++ b/eos/db/gamedata/attribute.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,20 +15,22 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, Float, Unicode, ForeignKey, String, Boolean -from sqlalchemy.orm import relation, mapper, synonym, deferred from sqlalchemy.ext.associationproxy import association_proxy -from eos.types import Attribute, Icon, AttributeInfo, Unit +from sqlalchemy.orm import relation, mapper, synonym, deferred + from eos.db import gamedata_meta +from eos.types import Attribute, Icon, AttributeInfo, Unit + typeattributes_table = Table("dgmtypeattribs", gamedata_meta, - Column("value", Float), - Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), - Column("attributeID", ForeignKey("dgmattribs.attributeID"), primary_key=True)) + Column("value", Float), + Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), + Column("attributeID", ForeignKey("dgmattribs.attributeID"), primary_key=True)) attributes_table = Table("dgmattribs", gamedata_meta, - Column("attributeID", Integer, primary_key = True), + Column("attributeID", Integer, primary_key=True), Column("attributeName", String), Column("defaultValue", Float), Column("maxAttributeID", Integer, ForeignKey("dgmattribs.attributeID")), @@ -40,14 +42,14 @@ attributes_table = Table("dgmattribs", gamedata_meta, Column("unitID", Integer, ForeignKey("dgmunits.unitID"))) mapper(Attribute, typeattributes_table, - properties = {"info": relation(AttributeInfo, lazy=False)}) + properties={"info": relation(AttributeInfo, lazy=False)}) mapper(AttributeInfo, attributes_table, - properties = {"icon" : relation(Icon), - "unit": relation(Unit), - "ID": synonym("attributeID"), - "name": synonym("attributeName"), - "description" : deferred(attributes_table.c.description)}) + properties={"icon": relation(Icon), + "unit": relation(Unit), + "ID": synonym("attributeID"), + "name": synonym("attributeName"), + "description": deferred(attributes_table.c.description)}) Attribute.ID = association_proxy("info", "attributeID") Attribute.name = association_proxy("info", "attributeName") diff --git a/eos/db/gamedata/category.py b/eos/db/gamedata/category.py index a44b7d663..d33cce130 100644 --- a/eos/db/gamedata/category.py +++ b/eos/db/gamedata/category.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, ForeignKey, Boolean, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,14 +24,14 @@ from eos.db import gamedata_meta from eos.types import Category, Icon categories_table = Table("invcategories", gamedata_meta, - Column("categoryID", Integer, primary_key = True), + Column("categoryID", Integer, primary_key=True), Column("categoryName", String), Column("description", String), Column("published", Boolean), Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(Category, categories_table, - properties = {"icon" : relation(Icon), - "ID" : synonym("categoryID"), - "name" : synonym("categoryName"), - "description" : deferred(categories_table.c.description)}) + properties={"icon": relation(Icon), + "ID": synonym("categoryID"), + "name": synonym("categoryName"), + "description": deferred(categories_table.c.description)}) diff --git a/eos/db/gamedata/effect.py b/eos/db/gamedata/effect.py index 21d7613c6..001d05162 100644 --- a/eos/db/gamedata/effect.py +++ b/eos/db/gamedata/effect.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,35 +15,35 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Boolean, Table, ForeignKey from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import mapper, synonym, relation, deferred -from eos.types import Effect, EffectInfo + from eos.db import gamedata_meta +from eos.types import Effect, EffectInfo typeeffects_table = Table("dgmtypeeffects", gamedata_meta, Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True, index=True), Column("effectID", Integer, ForeignKey("dgmeffects.effectID"), primary_key=True)) effects_table = Table("dgmeffects", gamedata_meta, - Column("effectID", Integer, primary_key = True), + Column("effectID", Integer, primary_key=True), Column("effectName", String), Column("description", String), Column("published", Boolean), Column("isAssistance", Boolean), Column("isOffensive", Boolean)) - mapper(EffectInfo, effects_table, - properties = {"ID" : synonym("effectID"), - "name" : synonym("effectName"), - "description" : deferred(effects_table.c.description)}) + properties={"ID": synonym("effectID"), + "name": synonym("effectName"), + "description": deferred(effects_table.c.description)}) mapper(Effect, typeeffects_table, - properties = {"ID": synonym("effectID"), - "info": relation(EffectInfo, lazy=False)}) + properties={"ID": synonym("effectID"), + "info": relation(EffectInfo, lazy=False)}) Effect.name = association_proxy("info", "name") Effect.description = association_proxy("info", "description") diff --git a/eos/db/gamedata/group.py b/eos/db/gamedata/group.py index 14939c040..cbf0a34d8 100644 --- a/eos/db/gamedata/group.py +++ b/eos/db/gamedata/group.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,7 +24,7 @@ from eos.db import gamedata_meta from eos.types import Group, Icon, Category groups_table = Table("invgroups", gamedata_meta, - Column("groupID", Integer, primary_key = True), + Column("groupID", Integer, primary_key=True), Column("groupName", String), Column("description", String), Column("published", Boolean), @@ -32,8 +32,8 @@ groups_table = Table("invgroups", gamedata_meta, Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(Group, groups_table, - properties = {"category" : relation(Category, backref = "groups"), - "icon" : relation(Icon), - "ID" : synonym("groupID"), - "name" : synonym("groupName"), - "description" : deferred(groups_table.c.description)}) + properties={"category": relation(Category, backref="groups"), + "icon": relation(Icon), + "ID": synonym("groupID"), + "name": synonym("groupName"), + "description": deferred(groups_table.c.description)}) diff --git a/eos/db/gamedata/icon.py b/eos/db/gamedata/icon.py index 9aeecdf87..d0315b28f 100644 --- a/eos/db/gamedata/icon.py +++ b/eos/db/gamedata/icon.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Table from sqlalchemy.orm import mapper, synonym, deferred @@ -24,10 +24,10 @@ from eos.db import gamedata_meta from eos.types import Icon icons_table = Table("icons", gamedata_meta, - Column("iconID", Integer, primary_key = True), + Column("iconID", Integer, primary_key=True), Column("description", String), Column("iconFile", String)) mapper(Icon, icons_table, - properties = {"ID" : synonym("iconID"), - "description" : deferred(icons_table.c.description)}) + properties={"ID": synonym("iconID"), + "description": deferred(icons_table.c.description)}) diff --git a/eos/db/gamedata/item.py b/eos/db/gamedata/item.py index 34a1a6189..a23c3a786 100644 --- a/eos/db/gamedata/item.py +++ b/eos/db/gamedata/item.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,18 +15,18 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table, Float -from sqlalchemy.orm import relation, mapper, synonym, deferred from sqlalchemy.ext.associationproxy import association_proxy +from sqlalchemy.orm import relation, mapper, synonym, deferred from sqlalchemy.orm.collections import attribute_mapped_collection from eos.db import gamedata_meta from eos.types import Icon, Attribute, Item, Effect, MetaType, Group, Traits items_table = Table("invtypes", gamedata_meta, - Column("typeID", Integer, primary_key = True), + Column("typeID", Integer, primary_key=True), Column("typeName", String, index=True), Column("description", String), Column("raceID", Integer), @@ -43,19 +43,19 @@ from .metaGroup import metatypes_table from .traits import traits_table mapper(Item, items_table, - properties = {"group" : relation(Group, backref = "items"), - "icon" : relation(Icon), - "_Item__attributes" : relation(Attribute, collection_class = attribute_mapped_collection('name')), - "effects" : relation(Effect, collection_class = attribute_mapped_collection('name')), - "metaGroup" : relation(MetaType, - primaryjoin = metatypes_table.c.typeID == items_table.c.typeID, - uselist = False), - "ID" : synonym("typeID"), - "name" : synonym("typeName"), - "description" : deferred(items_table.c.description), - "traits" : relation(Traits, - primaryjoin = traits_table.c.typeID == items_table.c.typeID, - uselist = False) - }) + properties={"group": relation(Group, backref="items"), + "icon": relation(Icon), + "_Item__attributes": relation(Attribute, collection_class=attribute_mapped_collection('name')), + "effects": relation(Effect, collection_class=attribute_mapped_collection('name')), + "metaGroup": relation(MetaType, + primaryjoin=metatypes_table.c.typeID == items_table.c.typeID, + uselist=False), + "ID": synonym("typeID"), + "name": synonym("typeName"), + "description": deferred(items_table.c.description), + "traits": relation(Traits, + primaryjoin=traits_table.c.typeID == items_table.c.typeID, + uselist=False) + }) Item.category = association_proxy("group", "category") diff --git a/eos/db/gamedata/marketGroup.py b/eos/db/gamedata/marketGroup.py index 6f16e48ae..b5b631ea3 100644 --- a/eos/db/gamedata/marketGroup.py +++ b/eos/db/gamedata/marketGroup.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, String, Integer, Boolean, ForeignKey, Table from sqlalchemy.orm import relation, mapper, synonym, deferred @@ -24,17 +24,19 @@ from eos.db import gamedata_meta from eos.types import Item, MarketGroup, Icon marketgroups_table = Table("invmarketgroups", gamedata_meta, - Column("marketGroupID", Integer, primary_key = True), + Column("marketGroupID", Integer, primary_key=True), Column("marketGroupName", String), Column("description", String), Column("hasTypes", Boolean), - Column("parentGroupID", Integer, ForeignKey("invmarketgroups.marketGroupID", initially="DEFERRED", deferrable=True)), + Column("parentGroupID", Integer, + ForeignKey("invmarketgroups.marketGroupID", initially="DEFERRED", deferrable=True)), Column("iconID", Integer, ForeignKey("icons.iconID"))) mapper(MarketGroup, marketgroups_table, - properties = {"items" : relation(Item, backref = "marketGroup"), - "parent" : relation(MarketGroup, backref = "children", remote_side = [marketgroups_table.c.marketGroupID]), - "icon" : relation(Icon), - "ID" : synonym("marketGroupID"), - "name" : synonym("marketGroupName"), - "description" : deferred(marketgroups_table.c.description)}) + properties={"items": relation(Item, backref="marketGroup"), + "parent": relation(MarketGroup, backref="children", + remote_side=[marketgroups_table.c.marketGroupID]), + "icon": relation(Icon), + "ID": synonym("marketGroupID"), + "name": synonym("marketGroupName"), + "description": deferred(marketgroups_table.c.description)}) diff --git a/eos/db/gamedata/metaData.py b/eos/db/gamedata/metaData.py index bdbdd7c8a..6bf500a72 100644 --- a/eos/db/gamedata/metaData.py +++ b/eos/db/gamedata/metaData.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,15 +15,16 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, Table, String from sqlalchemy.orm import mapper -from eos.types import MetaData + from eos.db import gamedata_meta +from eos.types import MetaData metadata_table = Table("metadata", gamedata_meta, - Column("field_name", String, primary_key=True), - Column("field_value", String)) + Column("field_name", String, primary_key=True), + Column("field_value", String)) mapper(MetaData, metadata_table) diff --git a/eos/db/gamedata/metaGroup.py b/eos/db/gamedata/metaGroup.py index 554bf5739..e5ed5c399 100644 --- a/eos/db/gamedata/metaGroup.py +++ b/eos/db/gamedata/metaGroup.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,33 +15,33 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, String +from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import relation, mapper, synonym + from eos.db import gamedata_meta from eos.db.gamedata.item import items_table from eos.types import MetaGroup, Item, MetaType -from sqlalchemy.ext.associationproxy import association_proxy metagroups_table = Table("invmetagroups", gamedata_meta, - Column("metaGroupID", Integer, primary_key = True), + Column("metaGroupID", Integer, primary_key=True), Column("metaGroupName", String)) metatypes_table = Table("invmetatypes", gamedata_meta, - Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key = True), + Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True), Column("parentTypeID", Integer, ForeignKey("invtypes.typeID")), Column("metaGroupID", Integer, ForeignKey("invmetagroups.metaGroupID"))) mapper(MetaGroup, metagroups_table, - properties = {"ID" : synonym("metaGroupID"), - "name" : synonym("metaGroupName")}) + properties={"ID": synonym("metaGroupID"), + "name": synonym("metaGroupName")}) mapper(MetaType, metatypes_table, - properties = {"ID" : synonym("metaGroupID"), - "parent" : relation(Item, primaryjoin = metatypes_table.c.parentTypeID == items_table.c.typeID), - "items" : relation(Item, primaryjoin = metatypes_table.c.typeID == items_table.c.typeID), - "info": relation(MetaGroup, lazy=False)}) + properties={"ID": synonym("metaGroupID"), + "parent": relation(Item, primaryjoin=metatypes_table.c.parentTypeID == items_table.c.typeID), + "items": relation(Item, primaryjoin=metatypes_table.c.typeID == items_table.c.typeID), + "info": relation(MetaGroup, lazy=False)}) MetaType.name = association_proxy("info", "name") - diff --git a/eos/db/gamedata/queries.py b/eos/db/gamedata/queries.py index 6431b0cc7..b2db92437 100644 --- a/eos/db/gamedata/queries.py +++ b/eos/db/gamedata/queries.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,21 +15,23 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== +from sqlalchemy.orm import join, exc +from sqlalchemy.sql import and_, or_, select + +import eos.config from eos.db import gamedata_session from eos.db.gamedata.metaGroup import metatypes_table, items_table -from sqlalchemy.sql import and_, or_, select, func -from sqlalchemy.orm import join, exc -from eos.types import Item, Category, Group, MarketGroup, AttributeInfo, MetaData, MetaGroup from eos.db.util import processEager, processWhere -import eos.config +from eos.types import Item, Category, Group, MarketGroup, AttributeInfo, MetaData, MetaGroup configVal = getattr(eos.config, "gamedataCache", None) if configVal is True: def cachedQuery(amount, *keywords): def deco(function): cache = {} + def checkAndReturn(*args, **kwargs): useCache = kwargs.pop("useCache", True) cacheKey = [] @@ -45,6 +47,7 @@ if configVal is True: return handler return checkAndReturn + return deco elif callable(configVal): @@ -56,8 +59,10 @@ else: return function(*args, **kwargs) return checkAndReturn + return deco + def sqlizeString(line): # Escape backslashes first, as they will be as escape symbol in queries # Then escape percent and underscore signs @@ -65,7 +70,10 @@ def sqlizeString(line): line = line.replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_").replace("*", "%") return line + itemNameMap = {} + + @cachedQuery(1, "lookfor") def getItem(lookfor, eager=None): if isinstance(lookfor, int): @@ -88,7 +96,10 @@ def getItem(lookfor, eager=None): raise TypeError("Need integer or string as argument") return item + groupNameMap = {} + + @cachedQuery(1, "lookfor") def getGroup(lookfor, eager=None): if isinstance(lookfor, int): @@ -111,63 +122,78 @@ def getGroup(lookfor, eager=None): raise TypeError("Need integer or string as argument") return group + categoryNameMap = {} + + @cachedQuery(1, "lookfor") def getCategory(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: category = gamedata_session.query(Category).get(lookfor) else: - category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.ID == lookfor).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter( + Category.ID == lookfor).first() elif isinstance(lookfor, basestring): if lookfor in categoryNameMap: id = categoryNameMap[lookfor] if eager is None: category = gamedata_session.query(Category).get(id) else: - category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.ID == id).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter( + Category.ID == id).first() else: # Category names are unique, so we can use first() instead of one() - category = gamedata_session.query(Category).options(*processEager(eager)).filter(Category.name == lookfor).first() + category = gamedata_session.query(Category).options(*processEager(eager)).filter( + Category.name == lookfor).first() categoryNameMap[lookfor] = category.ID else: raise TypeError("Need integer or string as argument") return category + metaGroupNameMap = {} + + @cachedQuery(1, "lookfor") def getMetaGroup(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: metaGroup = gamedata_session.query(MetaGroup).get(lookfor) else: - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.ID == lookfor).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( + MetaGroup.ID == lookfor).first() elif isinstance(lookfor, basestring): if lookfor in metaGroupNameMap: id = metaGroupNameMap[lookfor] if eager is None: metaGroup = gamedata_session.query(MetaGroup).get(id) else: - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.ID == id).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( + MetaGroup.ID == id).first() else: # MetaGroup names are unique, so we can use first() instead of one() - metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter(MetaGroup.name == lookfor).first() + metaGroup = gamedata_session.query(MetaGroup).options(*processEager(eager)).filter( + MetaGroup.name == lookfor).first() metaGroupNameMap[lookfor] = metaGroup.ID else: raise TypeError("Need integer or string as argument") return metaGroup + @cachedQuery(1, "lookfor") def getMarketGroup(lookfor, eager=None): if isinstance(lookfor, int): if eager is None: marketGroup = gamedata_session.query(MarketGroup).get(lookfor) else: - marketGroup = gamedata_session.query(MarketGroup).options(*processEager(eager)).filter(MarketGroup.ID == lookfor).first() + marketGroup = gamedata_session.query(MarketGroup).options(*processEager(eager)).filter( + MarketGroup.ID == lookfor).first() else: raise TypeError("Need integer as argument") return marketGroup + @cachedQuery(2, "where", "filter") def getItemsByCategory(filter, where=None, eager=None): if isinstance(filter, int): @@ -178,7 +204,9 @@ def getItemsByCategory(filter, where=None, eager=None): raise TypeError("Need integer or string as argument") filter = processWhere(filter, where) - return gamedata_session.query(Item).options(*processEager(eager)).join(Item.group, Group.category).filter(filter).all() + return gamedata_session.query(Item).options(*processEager(eager)).join(Item.group, Group.category).filter( + filter).all() + @cachedQuery(3, "where", "nameLike", "join") def searchItems(nameLike, where=None, join=None, eager=None): @@ -201,6 +229,7 @@ def searchItems(nameLike, where=None, join=None, eager=None): items = items.limit(100).all() return items + @cachedQuery(2, "where", "itemids") def getVariations(itemids, where=None, eager=None): for itemid in itemids: @@ -213,9 +242,11 @@ def getVariations(itemids, where=None, eager=None): itemfilter = or_(*(metatypes_table.c.parentTypeID == itemid for itemid in itemids)) filter = processWhere(itemfilter, where) joinon = items_table.c.typeID == metatypes_table.c.typeID - vars = gamedata_session.query(Item).options(*processEager(eager)).join((metatypes_table, joinon)).filter(filter).all() + vars = gamedata_session.query(Item).options(*processEager(eager)).join((metatypes_table, joinon)).filter( + filter).all() return vars + @cachedQuery(1, "attr") def getAttributeInfo(attr, eager=None): if isinstance(attr, basestring): @@ -230,6 +261,7 @@ def getAttributeInfo(attr, eager=None): result = None return result + @cachedQuery(1, "field") def getMetaData(field): if isinstance(field, basestring): @@ -238,6 +270,7 @@ def getMetaData(field): raise TypeError("Need string as argument") return data + @cachedQuery(2, "itemIDs", "attributeID") def directAttributeRequest(itemIDs, attrIDs): for itemID in itemIDs: @@ -248,8 +281,8 @@ def directAttributeRequest(itemIDs, attrIDs): raise TypeError("All itemIDs must be integer") q = select((eos.types.Item.typeID, eos.types.Attribute.attributeID, eos.types.Attribute.value), - and_(eos.types.Attribute.attributeID.in_(attrIDs), eos.types.Item.typeID.in_(itemIDs)), - from_obj=[join(eos.types.Attribute, eos.types.Item)]) + and_(eos.types.Attribute.attributeID.in_(attrIDs), eos.types.Item.typeID.in_(itemIDs)), + from_obj=[join(eos.types.Attribute, eos.types.Item)]) result = gamedata_session.execute(q).fetchall() return result diff --git a/eos/db/gamedata/traits.py b/eos/db/gamedata/traits.py index 907c53247..70cd5752f 100644 --- a/eos/db/gamedata/traits.py +++ b/eos/db/gamedata/traits.py @@ -1,8 +1,8 @@ - from sqlalchemy import Column, Table, Integer, String, ForeignKey from sqlalchemy.orm import mapper -from eos.types import Traits + from eos.db import gamedata_meta +from eos.types import Traits traits_table = Table("invtraits", gamedata_meta, Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True), diff --git a/eos/db/gamedata/unit.py b/eos/db/gamedata/unit.py index 662c5cec5..55594eb90 100644 --- a/eos/db/gamedata/unit.py +++ b/eos/db/gamedata/unit.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, Table, Integer, String from sqlalchemy.orm import mapper, synonym @@ -24,10 +24,10 @@ from eos.db import gamedata_meta from eos.types import Unit groups_table = Table("dgmunits", gamedata_meta, - Column("unitID", Integer, primary_key = True), + Column("unitID", Integer, primary_key=True), Column("unitName", String), Column("displayName", String)) mapper(Unit, groups_table, - properties = {"ID" : synonym("unitID"), - "name" : synonym("unitName")}) + properties={"ID": synonym("unitID"), + "name": synonym("unitName")}) From 5e10339c2036070201fee170016a6c6e87f9a7b0 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:33:29 -0700 Subject: [PATCH 37/76] Reformatting eos.db.saveddata --- eos/db/saveddata/__init__.py | 1 - eos/db/saveddata/booster.py | 19 +- eos/db/saveddata/cargo.py | 16 +- eos/db/saveddata/character.py | 54 ++--- eos/db/saveddata/crest.py | 12 +- eos/db/saveddata/damagePattern.py | 6 +- eos/db/saveddata/drone.py | 15 +- eos/db/saveddata/fighter.py | 42 ++-- eos/db/saveddata/fit.py | 217 +++++++++--------- eos/db/saveddata/fleet.py | 41 ++-- eos/db/saveddata/implant.py | 22 +- eos/db/saveddata/implantSet.py | 38 +-- eos/db/saveddata/loadDefaultDatabaseValues.py | 6 +- eos/db/saveddata/miscData.py | 11 +- eos/db/saveddata/module.py | 17 +- eos/db/saveddata/override.py | 10 +- eos/db/saveddata/price.py | 7 +- eos/db/saveddata/queries.py | 89 +++++-- eos/db/saveddata/skill.py | 10 +- eos/db/saveddata/targetResists.py | 18 +- eos/db/saveddata/user.py | 12 +- 21 files changed, 360 insertions(+), 303 deletions(-) diff --git a/eos/db/saveddata/__init__.py b/eos/db/saveddata/__init__.py index c97707f68..d409e8ca7 100644 --- a/eos/db/saveddata/__init__.py +++ b/eos/db/saveddata/__init__.py @@ -17,4 +17,3 @@ __all__ = [ "implantSet", "loadDefaultDatabaseValues" ] - diff --git a/eos/db/saveddata/booster.py b/eos/db/saveddata/booster.py index a31904b12..3a6334985 100644 --- a/eos/db/saveddata/booster.py +++ b/eos/db/saveddata/booster.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,25 +15,26 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from sqlalchemy import Table, Column, ForeignKey, Integer, UniqueConstraint, Boolean -from sqlalchemy.orm import mapper, relation +from sqlalchemy import Table, Column, ForeignKey, Integer, Boolean from sqlalchemy.ext.associationproxy import association_proxy +from sqlalchemy.orm import mapper, relation from eos.db import saveddata_meta from eos.types import Booster boosters_table = Table("boosters", saveddata_meta, - Column("ID", Integer, primary_key = True), + Column("ID", Integer, primary_key=True), Column("itemID", Integer), - Column("fitID", Integer, ForeignKey("fits.ID"), nullable = False), + Column("fitID", Integer, ForeignKey("fits.ID"), nullable=False), Column("active", Boolean), ) activeSideEffects_table = Table("boostersActiveSideEffects", saveddata_meta, - Column("boosterID", ForeignKey("boosters.ID"), primary_key = True), - Column("effectID", Integer, primary_key = True)) + Column("boosterID", ForeignKey("boosters.ID"), primary_key=True), + Column("effectID", Integer, primary_key=True)) + class ActiveSideEffectsDummy(object): def __init__(self, effectID): @@ -42,6 +43,6 @@ class ActiveSideEffectsDummy(object): mapper(ActiveSideEffectsDummy, activeSideEffects_table) mapper(Booster, boosters_table, - properties = {"_Booster__activeSideEffectDummies" : relation(ActiveSideEffectsDummy)}) + properties={"_Booster__activeSideEffectDummies": relation(ActiveSideEffectsDummy)}) Booster._Booster__activeSideEffectIDs = association_proxy("_Booster__activeSideEffectDummies", "effectID") diff --git a/eos/db/saveddata/cargo.py b/eos/db/saveddata/cargo.py index deabd3b2e..d4b829777 100644 --- a/eos/db/saveddata/cargo.py +++ b/eos/db/saveddata/cargo.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,18 +15,18 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from sqlalchemy import Table, Column, Integer, ForeignKey, Boolean +from sqlalchemy import Table, Column, Integer, ForeignKey from sqlalchemy.orm import mapper from eos.db import saveddata_meta from eos.types import Cargo cargo_table = Table("cargo", saveddata_meta, - Column("ID", Integer, primary_key=True), - Column("fitID", Integer, ForeignKey("fits.ID"), nullable = False, index = True), - Column("itemID", Integer, nullable = False), - Column("amount", Integer, nullable = False)) + Column("ID", Integer, primary_key=True), + Column("fitID", Integer, ForeignKey("fits.ID"), nullable=False, index=True), + Column("itemID", Integer, nullable=False), + Column("amount", Integer, nullable=False)) -mapper(Cargo, cargo_table) \ No newline at end of file +mapper(Cargo, cargo_table) diff --git a/eos/db/saveddata/character.py b/eos/db/saveddata/character.py index e6be52535..fad8c579d 100644 --- a/eos/db/saveddata/character.py +++ b/eos/db/saveddata/character.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,44 +15,44 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, String from sqlalchemy.orm import relation, mapper from eos.db import saveddata_meta from eos.db.saveddata.implant import charImplants_table -from eos.types import Character, User, Skill, Implant from eos.effectHandlerHelpers import HandledImplantBoosterList +from eos.types import Character, User, Skill, Implant characters_table = Table("characters", saveddata_meta, - Column("ID", Integer, primary_key = True), - Column("name", String, nullable = False), + Column("ID", Integer, primary_key=True), + Column("name", String, nullable=False), Column("apiID", Integer), Column("apiKey", String), Column("defaultChar", Integer), - Column("chars", String, nullable = True), + Column("chars", String, nullable=True), Column("defaultLevel", Integer, nullable=True), - Column("ownerID", ForeignKey("users.ID"), nullable = True)) + Column("ownerID", ForeignKey("users.ID"), nullable=True)) mapper(Character, characters_table, - properties = { - "savedName": characters_table.c.name, - "_Character__owner": relation( - User, - backref = "characters"), - "_Character__skills": relation( - Skill, - backref="character", - cascade = "all,delete-orphan"), - "_Character__implants": relation( - Implant, - collection_class = HandledImplantBoosterList, - cascade='all,delete-orphan', - backref='character', - single_parent=True, - primaryjoin = charImplants_table.c.charID == characters_table.c.ID, - secondaryjoin = charImplants_table.c.implantID == Implant.ID, - secondary = charImplants_table), - } -) + properties={ + "savedName": characters_table.c.name, + "_Character__owner": relation( + User, + backref="characters"), + "_Character__skills": relation( + Skill, + backref="character", + cascade="all,delete-orphan"), + "_Character__implants": relation( + Implant, + collection_class=HandledImplantBoosterList, + cascade='all,delete-orphan', + backref='character', + single_parent=True, + primaryjoin=charImplants_table.c.charID == characters_table.c.ID, + secondaryjoin=charImplants_table.c.implantID == Implant.ID, + secondary=charImplants_table), + } + ) diff --git a/eos/db/saveddata/crest.py b/eos/db/saveddata/crest.py index 0934f177e..2cbeeb44a 100644 --- a/eos/db/saveddata/crest.py +++ b/eos/db/saveddata/crest.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,17 +15,17 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from sqlalchemy import Table, Column, Integer, String, Boolean +from sqlalchemy import Table, Column, Integer, String from sqlalchemy.orm import mapper from eos.db import saveddata_meta from eos.types import CrestChar crest_table = Table("crest", saveddata_meta, - Column("ID", Integer, primary_key = True), - Column("name", String, nullable = False, unique = True), - Column("refresh_token", String, nullable = False)) + Column("ID", Integer, primary_key=True), + Column("name", String, nullable=False, unique=True), + Column("refresh_token", String, nullable=False)) mapper(CrestChar, crest_table) diff --git a/eos/db/saveddata/damagePattern.py b/eos/db/saveddata/damagePattern.py index c29fa7754..a9e59f228 100644 --- a/eos/db/saveddata/damagePattern.py +++ b/eos/db/saveddata/damagePattern.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, String from sqlalchemy.orm import mapper @@ -24,7 +24,7 @@ from eos.db import saveddata_meta from eos.types import DamagePattern damagePatterns_table = Table("damagePatterns", saveddata_meta, - Column("ID", Integer, primary_key = True), + Column("ID", Integer, primary_key=True), Column("name", String), Column("emAmount", Integer), Column("thermalAmount", Integer), diff --git a/eos/db/saveddata/drone.py b/eos/db/saveddata/drone.py index 94d7e898b..7163c06ff 100644 --- a/eos/db/saveddata/drone.py +++ b/eos/db/saveddata/drone.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,19 +15,20 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, Boolean from sqlalchemy.orm import mapper + from eos.db import saveddata_meta from eos.types import Drone drones_table = Table("drones", saveddata_meta, Column("groupID", Integer, primary_key=True), - Column("fitID", Integer, ForeignKey("fits.ID"), nullable = False, index = True), - Column("itemID", Integer, nullable = False), - Column("amount", Integer, nullable = False), - Column("amountActive", Integer, nullable = False), - Column("projected", Boolean, default = False)) + Column("fitID", Integer, ForeignKey("fits.ID"), nullable=False, index=True), + Column("itemID", Integer, nullable=False), + Column("amount", Integer, nullable=False), + Column("amountActive", Integer, nullable=False), + Column("projected", Boolean, default=False)) mapper(Drone, drones_table) diff --git a/eos/db/saveddata/fighter.py b/eos/db/saveddata/fighter.py index 2f4089756..7074369da 100644 --- a/eos/db/saveddata/fighter.py +++ b/eos/db/saveddata/fighter.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,38 +15,36 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, Boolean -from sqlalchemy.orm import mapper +from sqlalchemy.orm import * + from eos.db import saveddata_meta from eos.types import Fighter, Fit -from sqlalchemy.orm import * -from sqlalchemy.sql import and_ -from eos.effectHandlerHelpers import * from eos.types import FighterAbility - fighters_table = Table("fighters", saveddata_meta, - Column("groupID", Integer, primary_key=True), - Column("fitID", Integer, ForeignKey("fits.ID"), nullable = False, index = True), - Column("itemID", Integer, nullable = False), - Column("active", Boolean, nullable=True), - Column("amount", Integer, nullable = False), - Column("projected", Boolean, default = False)) + Column("groupID", Integer, primary_key=True), + Column("fitID", Integer, ForeignKey("fits.ID"), nullable=False, index=True), + Column("itemID", Integer, nullable=False), + Column("active", Boolean, nullable=True), + Column("amount", Integer, nullable=False), + Column("projected", Boolean, default=False)) fighter_abilities_table = Table("fightersAbilities", saveddata_meta, - Column("groupID", Integer, ForeignKey("fighters.groupID"), primary_key=True, index = True), - Column("effectID", Integer, nullable = False, primary_key=True), - Column("active", Boolean, default = False)) + Column("groupID", Integer, ForeignKey("fighters.groupID"), primary_key=True, + index=True), + Column("effectID", Integer, nullable=False, primary_key=True), + Column("active", Boolean, default=False)) mapper(Fighter, fighters_table, - properties = { - "owner": relation(Fit), - "_Fighter__abilities": relation( - FighterAbility, - backref="fighter", - cascade='all, delete, delete-orphan'), + properties={ + "owner": relation(Fit), + "_Fighter__abilities": relation( + FighterAbility, + backref="fighter", + cascade='all, delete, delete-orphan'), }) mapper(FighterAbility, fighter_abilities_table) diff --git a/eos/db/saveddata/fit.py b/eos/db/saveddata/fit.py index 060d7b2a1..40b92af04 100644 --- a/eos/db/saveddata/fit.py +++ b/eos/db/saveddata/fit.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,43 +15,45 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import * -from sqlalchemy.orm import * -from sqlalchemy.sql import and_ from sqlalchemy.ext.associationproxy import association_proxy +from sqlalchemy.orm import * from sqlalchemy.orm.collections import attribute_mapped_collection +from sqlalchemy.sql import and_ from eos.db import saveddata_meta -from eos.db.saveddata.module import modules_table +from eos.db.saveddata.cargo import cargo_table from eos.db.saveddata.drone import drones_table from eos.db.saveddata.fighter import fighters_table -from eos.db.saveddata.cargo import cargo_table from eos.db.saveddata.implant import fitImplants_table -from eos.types import Fit, Module, User, Booster, Drone, Fighter, Cargo, Implant, Character, DamagePattern, TargetResists, ImplantLocation +from eos.db.saveddata.module import modules_table from eos.effectHandlerHelpers import * +from eos.types import Fit, Module, User, Booster, Drone, Fighter, Cargo, Implant, Character, DamagePattern, \ + TargetResists, ImplantLocation fits_table = Table("fits", saveddata_meta, - Column("ID", Integer, primary_key = True), - Column("ownerID", ForeignKey("users.ID"), nullable = True, index = True), - Column("shipID", Integer, nullable = False, index = True), - Column("name", String, nullable = False), - Column("timestamp", Integer, nullable = False), - Column("characterID", ForeignKey("characters.ID"), nullable = True), - Column("damagePatternID", ForeignKey("damagePatterns.ID"), nullable=True), - Column("booster", Boolean, nullable = False, index = True, default = 0), - Column("targetResistsID", ForeignKey("targetResists.ID"), nullable=True), - Column("modeID", Integer, nullable=True), - Column("implantLocation", Integer, nullable=False, default=ImplantLocation.FIT), -) + Column("ID", Integer, primary_key=True), + Column("ownerID", ForeignKey("users.ID"), nullable=True, index=True), + Column("shipID", Integer, nullable=False, index=True), + Column("name", String, nullable=False), + Column("timestamp", Integer, nullable=False), + Column("characterID", ForeignKey("characters.ID"), nullable=True), + Column("damagePatternID", ForeignKey("damagePatterns.ID"), nullable=True), + Column("booster", Boolean, nullable=False, index=True, default=0), + Column("targetResistsID", ForeignKey("targetResists.ID"), nullable=True), + Column("modeID", Integer, nullable=True), + Column("implantLocation", Integer, nullable=False, default=ImplantLocation.FIT), + ) projectedFits_table = Table("projectedFits", saveddata_meta, - Column("sourceID", ForeignKey("fits.ID"), primary_key = True), - Column("victimID", ForeignKey("fits.ID"), primary_key = True), - Column("amount", Integer, nullable = False, default = 1), - Column("active", Boolean, nullable = False, default = 1), -) + Column("sourceID", ForeignKey("fits.ID"), primary_key=True), + Column("victimID", ForeignKey("fits.ID"), primary_key=True), + Column("amount", Integer, nullable=False, default=1), + Column("active", Boolean, nullable=False, default=1), + ) + class ProjectedFit(object): def __init__(self, sourceID, source_fit, amount=1, active=True): @@ -83,6 +85,7 @@ class ProjectedFit(object): self.sourceID, self.victimID, self.amount, self.active, hex(id(self)) ) + Fit._Fit__projectedFits = association_proxy( "victimOf", # look at the victimOf association... "source_fit", # .. and return the source fits @@ -90,90 +93,90 @@ Fit._Fit__projectedFits = association_proxy( ) mapper(Fit, fits_table, - properties = { - "_Fit__modules": relation( - Module, - collection_class=HandledModuleList, - primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected == False), - order_by=modules_table.c.position, - cascade='all, delete, delete-orphan'), - "_Fit__projectedModules": relation( - Module, - collection_class=HandledProjectedModList, - cascade='all, delete, delete-orphan', - single_parent=True, - primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected == True)), - "owner": relation( - User, - backref="fits"), - "itemID": fits_table.c.shipID, - "shipID": fits_table.c.shipID, - "_Fit__boosters": relation( - Booster, - collection_class=HandledImplantBoosterList, - cascade='all, delete, delete-orphan', - single_parent=True), - "_Fit__drones": relation( - Drone, - collection_class=HandledDroneCargoList, - cascade='all, delete, delete-orphan', - single_parent=True, - primaryjoin=and_(drones_table.c.fitID == fits_table.c.ID, drones_table.c.projected == False)), - "_Fit__fighters": relation( - Fighter, - collection_class=HandledDroneCargoList, - cascade='all, delete, delete-orphan', - single_parent=True, - primaryjoin=and_(fighters_table.c.fitID == fits_table.c.ID, fighters_table.c.projected == False)), - "_Fit__cargo": relation( - Cargo, - collection_class=HandledDroneCargoList, - cascade='all, delete, delete-orphan', - single_parent=True, - primaryjoin=and_(cargo_table.c.fitID == fits_table.c.ID)), - "_Fit__projectedDrones": relation( - Drone, - collection_class=HandledProjectedDroneList, - cascade='all, delete, delete-orphan', - single_parent=True, - primaryjoin=and_(drones_table.c.fitID == fits_table.c.ID, drones_table.c.projected == True)), - "_Fit__projectedFighters": relation( - Fighter, - collection_class=HandledProjectedDroneList, - cascade='all, delete, delete-orphan', - single_parent=True, - primaryjoin=and_(fighters_table.c.fitID == fits_table.c.ID, fighters_table.c.projected == True)), - "_Fit__implants": relation( - Implant, - collection_class=HandledImplantBoosterList, - cascade='all, delete, delete-orphan', - backref='fit', - single_parent=True, - primaryjoin=fitImplants_table.c.fitID == fits_table.c.ID, - secondaryjoin=fitImplants_table.c.implantID == Implant.ID, - secondary=fitImplants_table), - "_Fit__character": relation( - Character, - backref="fits"), - "_Fit__damagePattern": relation(DamagePattern), - "_Fit__targetResists": relation(TargetResists), - "projectedOnto": relationship( - ProjectedFit, - primaryjoin=projectedFits_table.c.sourceID == fits_table.c.ID, - backref='source_fit', - collection_class=attribute_mapped_collection('victimID'), - cascade='all, delete, delete-orphan'), - "victimOf": relationship( - ProjectedFit, - primaryjoin=fits_table.c.ID == projectedFits_table.c.victimID, - backref='victim_fit', - collection_class=attribute_mapped_collection('sourceID'), - cascade='all, delete, delete-orphan'), + properties={ + "_Fit__modules": relation( + Module, + collection_class=HandledModuleList, + primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected == False), + order_by=modules_table.c.position, + cascade='all, delete, delete-orphan'), + "_Fit__projectedModules": relation( + Module, + collection_class=HandledProjectedModList, + cascade='all, delete, delete-orphan', + single_parent=True, + primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected == True)), + "owner": relation( + User, + backref="fits"), + "itemID": fits_table.c.shipID, + "shipID": fits_table.c.shipID, + "_Fit__boosters": relation( + Booster, + collection_class=HandledImplantBoosterList, + cascade='all, delete, delete-orphan', + single_parent=True), + "_Fit__drones": relation( + Drone, + collection_class=HandledDroneCargoList, + cascade='all, delete, delete-orphan', + single_parent=True, + primaryjoin=and_(drones_table.c.fitID == fits_table.c.ID, drones_table.c.projected == False)), + "_Fit__fighters": relation( + Fighter, + collection_class=HandledDroneCargoList, + cascade='all, delete, delete-orphan', + single_parent=True, + primaryjoin=and_(fighters_table.c.fitID == fits_table.c.ID, fighters_table.c.projected == False)), + "_Fit__cargo": relation( + Cargo, + collection_class=HandledDroneCargoList, + cascade='all, delete, delete-orphan', + single_parent=True, + primaryjoin=and_(cargo_table.c.fitID == fits_table.c.ID)), + "_Fit__projectedDrones": relation( + Drone, + collection_class=HandledProjectedDroneList, + cascade='all, delete, delete-orphan', + single_parent=True, + primaryjoin=and_(drones_table.c.fitID == fits_table.c.ID, drones_table.c.projected == True)), + "_Fit__projectedFighters": relation( + Fighter, + collection_class=HandledProjectedDroneList, + cascade='all, delete, delete-orphan', + single_parent=True, + primaryjoin=and_(fighters_table.c.fitID == fits_table.c.ID, fighters_table.c.projected == True)), + "_Fit__implants": relation( + Implant, + collection_class=HandledImplantBoosterList, + cascade='all, delete, delete-orphan', + backref='fit', + single_parent=True, + primaryjoin=fitImplants_table.c.fitID == fits_table.c.ID, + secondaryjoin=fitImplants_table.c.implantID == Implant.ID, + secondary=fitImplants_table), + "_Fit__character": relation( + Character, + backref="fits"), + "_Fit__damagePattern": relation(DamagePattern), + "_Fit__targetResists": relation(TargetResists), + "projectedOnto": relationship( + ProjectedFit, + primaryjoin=projectedFits_table.c.sourceID == fits_table.c.ID, + backref='source_fit', + collection_class=attribute_mapped_collection('victimID'), + cascade='all, delete, delete-orphan'), + "victimOf": relationship( + ProjectedFit, + primaryjoin=fits_table.c.ID == projectedFits_table.c.victimID, + backref='victim_fit', + collection_class=attribute_mapped_collection('sourceID'), + cascade='all, delete, delete-orphan'), } -) + ) mapper(ProjectedFit, projectedFits_table, - properties = { - "_ProjectedFit__amount": projectedFits_table.c.amount, + properties={ + "_ProjectedFit__amount": projectedFits_table.c.amount, } -) + ) diff --git a/eos/db/saveddata/fleet.py b/eos/db/saveddata/fleet.py index 8f0e6736b..eb644b02e 100644 --- a/eos/db/saveddata/fleet.py +++ b/eos/db/saveddata/fleet.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,52 +15,51 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, String from sqlalchemy.orm import mapper, relation from eos.db import saveddata_meta -from eos.types import Fleet, Wing, Squad, Fit from eos.db.saveddata.fit import fits_table +from eos.types import Fleet, Wing, Squad, Fit gangs_table = Table("gangs", saveddata_meta, - Column("ID", Integer, primary_key = True), + Column("ID", Integer, primary_key=True), Column("leaderID", ForeignKey("fits.ID")), Column("boosterID", ForeignKey("fits.ID")), Column("name", String)) wings_table = Table("wings", saveddata_meta, - Column("ID", Integer, primary_key = True), + Column("ID", Integer, primary_key=True), Column("gangID", ForeignKey("gangs.ID")), Column("boosterID", ForeignKey("fits.ID")), Column("leaderID", ForeignKey("fits.ID"))) squads_table = Table("squads", saveddata_meta, - Column("ID", Integer, primary_key = True), + Column("ID", Integer, primary_key=True), Column("wingID", ForeignKey("wings.ID")), Column("leaderID", ForeignKey("fits.ID")), Column("boosterID", ForeignKey("fits.ID"))) squadmembers_table = Table("squadmembers", saveddata_meta, - Column("squadID", ForeignKey("squads.ID"), primary_key = True), - Column("memberID", ForeignKey("fits.ID"), primary_key = True)) + Column("squadID", ForeignKey("squads.ID"), primary_key=True), + Column("memberID", ForeignKey("fits.ID"), primary_key=True)) mapper(Fleet, gangs_table, - properties = {"wings" : relation(Wing, backref="gang"), - "leader" : relation(Fit, primaryjoin = gangs_table.c.leaderID == fits_table.c.ID), - "booster": relation(Fit, primaryjoin = gangs_table.c.boosterID == fits_table.c.ID)}) + properties={"wings": relation(Wing, backref="gang"), + "leader": relation(Fit, primaryjoin=gangs_table.c.leaderID == fits_table.c.ID), + "booster": relation(Fit, primaryjoin=gangs_table.c.boosterID == fits_table.c.ID)}) mapper(Wing, wings_table, - properties = {"squads" : relation(Squad, backref="wing"), - "leader" : relation(Fit, primaryjoin = wings_table.c.leaderID == fits_table.c.ID), - "booster": relation(Fit, primaryjoin = wings_table.c.boosterID == fits_table.c.ID)}) + properties={"squads": relation(Squad, backref="wing"), + "leader": relation(Fit, primaryjoin=wings_table.c.leaderID == fits_table.c.ID), + "booster": relation(Fit, primaryjoin=wings_table.c.boosterID == fits_table.c.ID)}) mapper(Squad, squads_table, - properties = {"leader" : relation(Fit, primaryjoin = squads_table.c.leaderID == fits_table.c.ID), - "booster" : relation(Fit, primaryjoin = squads_table.c.boosterID == fits_table.c.ID), - "members" : relation(Fit, - primaryjoin = squads_table.c.ID == squadmembers_table.c.squadID, - secondaryjoin = squadmembers_table.c.memberID == fits_table.c.ID, - secondary = squadmembers_table)}) - + properties={"leader": relation(Fit, primaryjoin=squads_table.c.leaderID == fits_table.c.ID), + "booster": relation(Fit, primaryjoin=squads_table.c.boosterID == fits_table.c.ID), + "members": relation(Fit, + primaryjoin=squads_table.c.ID == squadmembers_table.c.squadID, + secondaryjoin=squadmembers_table.c.memberID == fits_table.c.ID, + secondary=squadmembers_table)}) diff --git a/eos/db/saveddata/implant.py b/eos/db/saveddata/implant.py index c74def157..21145698f 100644 --- a/eos/db/saveddata/implant.py +++ b/eos/db/saveddata/implant.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, Boolean from sqlalchemy.orm import mapper @@ -24,20 +24,20 @@ from eos.db import saveddata_meta from eos.types import Implant implants_table = Table("implants", saveddata_meta, - Column("ID", Integer, primary_key = True), - Column("itemID", Integer), - Column("active", Boolean)) + Column("ID", Integer, primary_key=True), + Column("itemID", Integer), + Column("active", Boolean)) fitImplants_table = Table("fitImplants", saveddata_meta, - Column("fitID", ForeignKey("fits.ID"), index = True), - Column("implantID", ForeignKey("implants.ID"), primary_key = True)) + Column("fitID", ForeignKey("fits.ID"), index=True), + Column("implantID", ForeignKey("implants.ID"), primary_key=True)) charImplants_table = Table("charImplants", saveddata_meta, - Column("charID", ForeignKey("characters.ID"), index = True), - Column("implantID", ForeignKey("implants.ID"), primary_key = True)) + Column("charID", ForeignKey("characters.ID"), index=True), + Column("implantID", ForeignKey("implants.ID"), primary_key=True)) implantsSetMap_table = Table("implantSetMap", saveddata_meta, - Column("setID", ForeignKey("implantSets.ID"), index = True), - Column("implantID", ForeignKey("implants.ID"), primary_key = True)) + Column("setID", ForeignKey("implantSets.ID"), index=True), + Column("implantID", ForeignKey("implants.ID"), primary_key=True)) mapper(Implant, implants_table) diff --git a/eos/db/saveddata/implantSet.py b/eos/db/saveddata/implantSet.py index 73036de91..042e986f6 100644 --- a/eos/db/saveddata/implantSet.py +++ b/eos/db/saveddata/implantSet.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2016 Ryan Holmes # # This file is part of eos. @@ -15,31 +15,31 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from sqlalchemy import Table, Column, Integer, ForeignKey, String +from sqlalchemy import Table, Column, Integer, String from sqlalchemy.orm import relation, mapper from eos.db import saveddata_meta from eos.db.saveddata.implant import implantsSetMap_table -from eos.types import Implant, ImplantSet from eos.effectHandlerHelpers import HandledImplantBoosterList +from eos.types import Implant, ImplantSet implant_set_table = Table("implantSets", saveddata_meta, - Column("ID", Integer, primary_key = True), - Column("name", String, nullable = False), -) + Column("ID", Integer, primary_key=True), + Column("name", String, nullable=False), + ) mapper(ImplantSet, implant_set_table, - properties = { - "_ImplantSet__implants": relation( - Implant, - collection_class = HandledImplantBoosterList, - cascade='all, delete, delete-orphan', - backref='set', - single_parent=True, - primaryjoin = implantsSetMap_table.c.setID == implant_set_table.c.ID, - secondaryjoin = implantsSetMap_table.c.implantID == Implant.ID, - secondary = implantsSetMap_table), - } -) + properties={ + "_ImplantSet__implants": relation( + Implant, + collection_class=HandledImplantBoosterList, + cascade='all, delete, delete-orphan', + backref='set', + single_parent=True, + primaryjoin=implantsSetMap_table.c.setID == implant_set_table.c.ID, + secondaryjoin=implantsSetMap_table.c.implantID == Implant.ID, + secondary=implantsSetMap_table), + } + ) diff --git a/eos/db/saveddata/loadDefaultDatabaseValues.py b/eos/db/saveddata/loadDefaultDatabaseValues.py index eff116933..3dcccca68 100644 --- a/eos/db/saveddata/loadDefaultDatabaseValues.py +++ b/eos/db/saveddata/loadDefaultDatabaseValues.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of pyfa. @@ -15,14 +15,16 @@ # # You should have received a copy of the GNU General Public License # along with pyfa. If not, see . -#=============================================================================== +# =============================================================================== import eos.db import eos.types + class ImportError(Exception): pass + class DefaultDatabaseValues(): def __init__(self): pass diff --git a/eos/db/saveddata/miscData.py b/eos/db/saveddata/miscData.py index 44d586d73..ac4c85b2d 100644 --- a/eos/db/saveddata/miscData.py +++ b/eos/db/saveddata/miscData.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2011 Anton Vorobyov # # This file is part of eos. @@ -15,15 +15,16 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Column, Table, String from sqlalchemy.orm import mapper -from eos.types import MiscData + from eos.db import saveddata_meta +from eos.types import MiscData miscdata_table = Table("miscdata", saveddata_meta, - Column("fieldName", String, primary_key=True), - Column("fieldValue", String)) + Column("fieldName", String, primary_key=True), + Column("fieldValue", String)) mapper(MiscData, miscdata_table) diff --git a/eos/db/saveddata/module.py b/eos/db/saveddata/module.py index a89f7b636..d6c2b068c 100644 --- a/eos/db/saveddata/module.py +++ b/eos/db/saveddata/module.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey, CheckConstraint, Boolean from sqlalchemy.orm import relation, mapper @@ -24,16 +24,15 @@ from eos.db import saveddata_meta from eos.types import Module, Fit modules_table = Table("modules", saveddata_meta, - Column("ID", Integer, primary_key = True), - Column("fitID", Integer, ForeignKey("fits.ID"), nullable = False, index = True), - Column("itemID", Integer, nullable = True), - Column("dummySlot", Integer, nullable = True, default = None), + Column("ID", Integer, primary_key=True), + Column("fitID", Integer, ForeignKey("fits.ID"), nullable=False, index=True), + Column("itemID", Integer, nullable=True), + Column("dummySlot", Integer, nullable=True, default=None), Column("chargeID", Integer), Column("state", Integer, CheckConstraint("state >= -1"), CheckConstraint("state <= 2")), - Column("projected", Boolean, default = False, nullable = False), + Column("projected", Boolean, default=False, nullable=False), Column("position", Integer), CheckConstraint('("dummySlot" = NULL OR "itemID" = NULL) AND "dummySlot" != "itemID"')) mapper(Module, modules_table, - properties = {"owner" : relation(Fit)}) - + properties={"owner": relation(Fit)}) diff --git a/eos/db/saveddata/override.py b/eos/db/saveddata/override.py index 8245463e3..e260cd3df 100644 --- a/eos/db/saveddata/override.py +++ b/eos/db/saveddata/override.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, Float from sqlalchemy.orm import mapper @@ -24,8 +24,8 @@ from eos.db import saveddata_meta from eos.types import Override overrides_table = Table("overrides", saveddata_meta, - Column("itemID", Integer, primary_key=True, index = True), - Column("attrID", Integer, primary_key=True, index = True), - Column("value", Float, nullable = False)) + Column("itemID", Integer, primary_key=True, index=True), + Column("attrID", Integer, primary_key=True, index=True), + Column("value", Float, nullable=False)) mapper(Override, overrides_table) diff --git a/eos/db/saveddata/price.py b/eos/db/saveddata/price.py index 172dfba49..021d341e8 100644 --- a/eos/db/saveddata/price.py +++ b/eos/db/saveddata/price.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,17 +15,18 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Float, Integer from sqlalchemy.orm import mapper + from eos.db import saveddata_meta from eos.types import Price prices_table = Table("prices", saveddata_meta, Column("typeID", Integer, primary_key=True), Column("price", Float), - Column("time", Integer, nullable = False), + Column("time", Integer, nullable=False), Column("failed", Integer)) mapper(Price, prices_table) diff --git a/eos/db/saveddata/queries.py b/eos/db/saveddata/queries.py index 5a6dd1bfc..09bd24720 100644 --- a/eos/db/saveddata/queries.py +++ b/eos/db/saveddata/queries.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,27 +15,32 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.db.util import processEager, processWhere -from eos.db import saveddata_session, sd_lock - -from eos.types import * -from eos.db.saveddata.fleet import squadmembers_table -from eos.db.saveddata.fit import projectedFits_table from sqlalchemy.sql import and_ + import eos.config +from eos.db import saveddata_session, sd_lock +from eos.db.saveddata.fit import projectedFits_table +from eos.db.saveddata.fleet import squadmembers_table +from eos.db.util import processEager, processWhere +from eos.types import * configVal = getattr(eos.config, "saveddataCache", None) if configVal is True: import weakref + itemCache = {} queryCache = {} + + def cachedQuery(type, amount, *keywords): itemCache[type] = localItemCache = weakref.WeakValueDictionary() queryCache[type] = typeQueryCache = {} + def deco(function): localQueryCache = typeQueryCache[function] = {} + def setCache(cacheKey, args, kwargs): items = function(*args, **kwargs) IDs = set() @@ -44,7 +49,7 @@ if configVal is True: for item in stuff: ID = getattr(item, "ID", None) if ID is None: - #Some uncachable data, don't cache this query + # Some uncachable data, don't cache this query del localQueryCache[cacheKey] break localItemCache[ID] = item @@ -70,7 +75,7 @@ if configVal is True: for ID in IDs: data = localItemCache.get(ID) if data is None: - #Fuck, some of our stuff isn't cached it seems. + # Fuck, some of our stuff isn't cached it seems. items = setCache(cacheKey, args, kwargs) break items.append(data) @@ -82,9 +87,12 @@ if configVal is True: break return items + return checkAndReturn + return deco + def removeCachedEntry(type, ID): if not type in queryCache: return @@ -111,11 +119,14 @@ else: return function(*args, **kwargs) return checkAndReturn + return deco + def removeCachedEntry(*args, **kwargs): return + def sqlizeString(line): # Escape backslashes first, as they will be as escape symbol in queries # Then escape percent and underscore signs @@ -123,6 +134,7 @@ def sqlizeString(line): line = line.replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_").replace("*", "%") return line + @cachedQuery(User, 1, "lookfor") def getUser(lookfor, eager=None): if isinstance(lookfor, int): @@ -141,6 +153,7 @@ def getUser(lookfor, eager=None): raise TypeError("Need integer or string as argument") return user + @cachedQuery(Character, 1, "lookfor") def getCharacter(lookfor, eager=None): if isinstance(lookfor, int): @@ -154,17 +167,20 @@ def getCharacter(lookfor, eager=None): elif isinstance(lookfor, basestring): eager = processEager(eager) with sd_lock: - character = saveddata_session.query(Character).options(*eager).filter(Character.savedName == lookfor).first() + character = saveddata_session.query(Character).options(*eager).filter( + Character.savedName == lookfor).first() else: raise TypeError("Need integer or string as argument") return character + def getCharacterList(eager=None): eager = processEager(eager) with sd_lock: characters = saveddata_session.query(Character).options(*eager).all() return characters + def getCharactersForUser(lookfor, eager=None): if isinstance(lookfor, int): eager = processEager(eager) @@ -174,6 +190,7 @@ def getCharactersForUser(lookfor, eager=None): raise TypeError("Need integer as argument") return characters + @cachedQuery(Fit, 1, "lookfor") def getFit(lookfor, eager=None): if isinstance(lookfor, int): @@ -194,6 +211,7 @@ def getFit(lookfor, eager=None): return fit + @cachedQuery(Fleet, 1, "fleetID") def getFleet(fleetID, eager=None): if isinstance(fleetID, int): @@ -208,6 +226,7 @@ def getFleet(fleetID, eager=None): raise TypeError("Need integer as argument") return fleet + @cachedQuery(Wing, 1, "wingID") def getWing(wingID, eager=None): if isinstance(wingID, int): @@ -222,6 +241,7 @@ def getWing(wingID, eager=None): raise TypeError("Need integer as argument") return wing + @cachedQuery(Squad, 1, "squadID") def getSquad(squadID, eager=None): if isinstance(squadID, int): @@ -236,6 +256,7 @@ def getSquad(squadID, eager=None): raise TypeError("Need integer as argument") return squad + def getFitsWithShip(shipID, ownerID=None, where=None, eager=None): """ Get all the fits using a certain ship. @@ -257,6 +278,7 @@ def getFitsWithShip(shipID, ownerID=None, where=None, eager=None): return fits + def getBoosterFits(ownerID=None, where=None, eager=None): """ Get all the fits that are flagged as a boosting ship @@ -276,11 +298,13 @@ def getBoosterFits(ownerID=None, where=None, eager=None): return fits + def countAllFits(): with sd_lock: count = saveddata_session.query(Fit).count() return count + def countFitsWithShip(shipID, ownerID=None, where=None, eager=None): """ Get all the fits using a certain ship. @@ -301,6 +325,7 @@ def countFitsWithShip(shipID, ownerID=None, where=None, eager=None): raise TypeError("ShipID must be integer") return count + def getFitList(eager=None): eager = processEager(eager) with sd_lock: @@ -308,12 +333,14 @@ def getFitList(eager=None): return fits + def getFleetList(eager=None): eager = processEager(eager) with sd_lock: fleets = saveddata_session.query(Fleet).options(*eager).all() return fleets + @cachedQuery(Price, 1, "typeID") def getPrice(typeID): if isinstance(typeID, int): @@ -323,12 +350,14 @@ def getPrice(typeID): raise TypeError("Need integer as argument") return price + def clearPrices(): with sd_lock: deleted_rows = saveddata_session.query(Price).delete() commit() return deleted_rows + def getMiscData(field): if isinstance(field, basestring): with sd_lock: @@ -337,24 +366,28 @@ def getMiscData(field): raise TypeError("Need string as argument") return data + def getDamagePatternList(eager=None): eager = processEager(eager) with sd_lock: patterns = saveddata_session.query(DamagePattern).options(*eager).all() return patterns + def getTargetResistsList(eager=None): eager = processEager(eager) with sd_lock: patterns = saveddata_session.query(TargetResists).options(*eager).all() return patterns + def getImplantSetList(eager=None): eager = processEager(eager) with sd_lock: sets = saveddata_session.query(ImplantSet).options(*eager).all() return sets + @cachedQuery(DamagePattern, 1, "lookfor") def getDamagePattern(lookfor, eager=None): if isinstance(lookfor, int): @@ -364,15 +397,18 @@ def getDamagePattern(lookfor, eager=None): else: eager = processEager(eager) with sd_lock: - pattern = saveddata_session.query(DamagePattern).options(*eager).filter(DamagePattern.ID == lookfor).first() + pattern = saveddata_session.query(DamagePattern).options(*eager).filter( + DamagePattern.ID == lookfor).first() elif isinstance(lookfor, basestring): eager = processEager(eager) with sd_lock: - pattern = saveddata_session.query(DamagePattern).options(*eager).filter(DamagePattern.name == lookfor).first() + pattern = saveddata_session.query(DamagePattern).options(*eager).filter( + DamagePattern.name == lookfor).first() else: raise TypeError("Need integer or string as argument") return pattern + @cachedQuery(TargetResists, 1, "lookfor") def getTargetResists(lookfor, eager=None): if isinstance(lookfor, int): @@ -382,15 +418,18 @@ def getTargetResists(lookfor, eager=None): else: eager = processEager(eager) with sd_lock: - pattern = saveddata_session.query(TargetResists).options(*eager).filter(TargetResists.ID == lookfor).first() + pattern = saveddata_session.query(TargetResists).options(*eager).filter( + TargetResists.ID == lookfor).first() elif isinstance(lookfor, basestring): eager = processEager(eager) with sd_lock: - pattern = saveddata_session.query(TargetResists).options(*eager).filter(TargetResists.name == lookfor).first() + pattern = saveddata_session.query(TargetResists).options(*eager).filter( + TargetResists.name == lookfor).first() else: raise TypeError("Need integer or string as argument") return pattern + @cachedQuery(ImplantSet, 1, "lookfor") def getImplantSet(lookfor, eager=None): if isinstance(lookfor, int): @@ -400,7 +439,8 @@ def getImplantSet(lookfor, eager=None): else: eager = processEager(eager) with sd_lock: - pattern = saveddata_session.query(ImplantSet).options(*eager).filter(TargetResists.ID == lookfor).first() + pattern = saveddata_session.query(ImplantSet).options(*eager).filter( + TargetResists.ID == lookfor).first() elif isinstance(lookfor, basestring): eager = processEager(eager) with sd_lock: @@ -409,13 +449,14 @@ def getImplantSet(lookfor, eager=None): raise TypeError("Improper argument") return pattern + def searchFits(nameLike, where=None, eager=None): if not isinstance(nameLike, basestring): raise TypeError("Need string as argument") # Prepare our string for request nameLike = u"%{0}%".format(sqlizeString(nameLike)) - #Add any extra components to the search to our where clause + # Add any extra components to the search to our where clause filter = processWhere(Fit.name.like(nameLike, escape="\\"), where) eager = processEager(eager) with sd_lock: @@ -423,15 +464,18 @@ def searchFits(nameLike, where=None, eager=None): return fits + def getSquadsIDsWithFitID(fitID): if isinstance(fitID, int): with sd_lock: - squads = saveddata_session.query(squadmembers_table.c.squadID).filter(squadmembers_table.c.memberID == fitID).all() + squads = saveddata_session.query(squadmembers_table.c.squadID).filter( + squadmembers_table.c.memberID == fitID).all() squads = tuple(entry[0] for entry in squads) return squads else: raise TypeError("Need integer as argument") + def getProjectedFits(fitID): if isinstance(fitID, int): with sd_lock: @@ -441,12 +485,14 @@ def getProjectedFits(fitID): else: raise TypeError("Need integer as argument") + def getCrestCharacters(eager=None): eager = processEager(eager) with sd_lock: characters = saveddata_session.query(CrestChar).options(*eager).all() return characters + @cachedQuery(CrestChar, 1, "lookfor") def getCrestCharacter(lookfor, eager=None): if isinstance(lookfor, int): @@ -465,21 +511,25 @@ def getCrestCharacter(lookfor, eager=None): raise TypeError("Need integer or string as argument") return character + def getOverrides(itemID, eager=None): if isinstance(itemID, int): return saveddata_session.query(Override).filter(Override.itemID == itemID).all() else: raise TypeError("Need integer as argument") + def clearOverrides(): with sd_lock: deleted_rows = saveddata_session.query(Override).delete() commit() return deleted_rows + def getAllOverrides(eager=None): return saveddata_session.query(Override).all() + def removeInvalid(fits): invalids = [f for f in fits if f.isInvalid] @@ -490,14 +540,17 @@ def removeInvalid(fits): return fits + def add(stuff): with sd_lock: saveddata_session.add(stuff) + def save(stuff): add(stuff) commit() + def remove(stuff): removeCachedEntry(type(stuff), stuff.ID) with sd_lock: diff --git a/eos/db/saveddata/skill.py b/eos/db/saveddata/skill.py index 38bd1ea9a..1c488a2cd 100644 --- a/eos/db/saveddata/skill.py +++ b/eos/db/saveddata/skill.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, ForeignKey from sqlalchemy.orm import mapper @@ -24,8 +24,8 @@ from eos.db import saveddata_meta from eos.types import Skill skills_table = Table("characterSkills", saveddata_meta, - Column("characterID", ForeignKey("characters.ID"), primary_key = True, index = True), - Column("itemID", Integer, primary_key = True), - Column("_Skill__level", Integer, nullable = True)) + Column("characterID", ForeignKey("characters.ID"), primary_key=True, index=True), + Column("itemID", Integer, primary_key=True), + Column("_Skill__level", Integer, nullable=True)) mapper(Skill, skills_table) diff --git a/eos/db/saveddata/targetResists.py b/eos/db/saveddata/targetResists.py index f7106fe45..88c1ca104 100644 --- a/eos/db/saveddata/targetResists.py +++ b/eos/db/saveddata/targetResists.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2014 Ryan Holmes # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, Float, ForeignKey, String from sqlalchemy.orm import mapper @@ -24,12 +24,12 @@ from eos.db import saveddata_meta from eos.types import TargetResists targetResists_table = Table("targetResists", saveddata_meta, - Column("ID", Integer, primary_key = True), - Column("name", String), - Column("emAmount", Float), - Column("thermalAmount", Float), - Column("kineticAmount", Float), - Column("explosiveAmount", Float), - Column("ownerID", ForeignKey("users.ID"), nullable=True)) + Column("ID", Integer, primary_key=True), + Column("name", String), + Column("emAmount", Float), + Column("thermalAmount", Float), + Column("kineticAmount", Float), + Column("explosiveAmount", Float), + Column("ownerID", ForeignKey("users.ID"), nullable=True)) mapper(TargetResists, targetResists_table) diff --git a/eos/db/saveddata/user.py b/eos/db/saveddata/user.py index f2a914691..f7ec10629 100644 --- a/eos/db/saveddata/user.py +++ b/eos/db/saveddata/user.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy import Table, Column, Integer, String, Boolean from sqlalchemy.orm import mapper @@ -24,9 +24,9 @@ from eos.db import saveddata_meta from eos.types import User users_table = Table("users", saveddata_meta, - Column("ID", Integer, primary_key = True), - Column("username", String, nullable = False, unique = True), - Column("password", String, nullable = False), - Column("admin", Boolean, nullable = False)) + Column("ID", Integer, primary_key=True), + Column("username", String, nullable=False, unique=True), + Column("password", String, nullable=False), + Column("admin", Boolean, nullable=False)) mapper(User, users_table) From 574d575cad029950ca3e75810cdd7a1f92415668 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:37:28 -0700 Subject: [PATCH 38/76] Reformatting eos.db --- eos/db/__init__.py | 6 ++---- eos/db/migration.py | 16 +++++++++------- eos/db/migrations/__init__.py | 1 - eos/db/saveddata/queries.py | 1 - eos/db/util.py | 9 ++++++--- 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/eos/db/__init__.py b/eos/db/__init__.py index c3b28e664..bd46ecc71 100644 --- a/eos/db/__init__.py +++ b/eos/db/__init__.py @@ -20,12 +20,10 @@ import threading from sqlalchemy import MetaData, create_engine -from sqlalchemy.orm import sessionmaker, scoped_session -from sqlalchemy.ext.declarative import declarative_base -from sqlalchemy import pool +from sqlalchemy.orm import sessionmaker -from eos import config import migration +from eos import config class ReadOnlyException(Exception): diff --git a/eos/db/migration.py b/eos/db/migration.py index a0824f812..6dc59565c 100644 --- a/eos/db/migration.py +++ b/eos/db/migration.py @@ -1,20 +1,22 @@ -import config +import logging import shutil import time -import re -import os + +import config import migrations -import logging logger = logging.getLogger(__name__) + def getVersion(db): cursor = db.execute('PRAGMA user_version') return cursor.fetchone()[0] + def getAppVersion(): return migrations.appVersion + def update(saveddata_engine): dbVersion = getVersion(saveddata_engine) appVersion = getAppVersion() @@ -24,7 +26,7 @@ def update(saveddata_engine): if dbVersion < appVersion: # Automatically backup database - toFile = "%s/saveddata_migration_%d-%d_%s.db"%( + toFile = "%s/saveddata_migration_%d-%d_%s.db" % ( config.savePath, dbVersion, appVersion, @@ -33,9 +35,9 @@ def update(saveddata_engine): shutil.copyfile(config.saveDB, toFile) for version in xrange(dbVersion, appVersion): - func = migrations.updates[version+1] + func = migrations.updates[version + 1] if func: - logger.info("Applying database update: %d", version+1) + logger.info("Applying database update: %d", version + 1) func(saveddata_engine) # when all is said and done, set version to current diff --git a/eos/db/migrations/__init__.py b/eos/db/migrations/__init__.py index 87988fb3d..94b33409a 100644 --- a/eos/db/migrations/__init__.py +++ b/eos/db/migrations/__init__.py @@ -11,7 +11,6 @@ upgrade files 1-5) import pkgutil import re - updates = {} appVersion = 0 diff --git a/eos/db/saveddata/queries.py b/eos/db/saveddata/queries.py index 09bd24720..45bf6756a 100644 --- a/eos/db/saveddata/queries.py +++ b/eos/db/saveddata/queries.py @@ -19,7 +19,6 @@ from sqlalchemy.sql import and_ -import eos.config from eos.db import saveddata_session, sd_lock from eos.db.saveddata.fit import projectedFits_table from eos.db.saveddata.fleet import squadmembers_table diff --git a/eos/db/util.py b/eos/db/util.py index fe7080123..151e2e38b 100644 --- a/eos/db/util.py +++ b/eos/db/util.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,10 +15,10 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from sqlalchemy.orm import eagerload -from sqlalchemy.sql import and_, or_ +from sqlalchemy.sql import and_ replace = {"attributes": "_Item__attributes", "modules": "_Fit__modules", @@ -31,6 +31,7 @@ replace = {"attributes": "_Item__attributes", "damagePattern": "_Fit__damagePattern", "projectedFits": "_Fit__projectedFits"} + def processEager(eager): if eager is None: return tuple() @@ -44,6 +45,7 @@ def processEager(eager): return l + def _replacements(eagerString): splitEager = eagerString.split(".") for i in xrange(len(splitEager)): @@ -54,6 +56,7 @@ def _replacements(eagerString): return ".".join(splitEager) + def processWhere(clause, where): if where is not None: if not hasattr(where, "__iter__"): From b4360d44f1719a6cbf8110057859a3e3f249d5ed Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:38:43 -0700 Subject: [PATCH 39/76] Reformatting eos.graph --- eos/graph/__init__.py | 14 +++++++------ eos/graph/fitDps.py | 49 +++++++++++++++++++++++++------------------ 2 files changed, 37 insertions(+), 26 deletions(-) diff --git a/eos/graph/__init__.py b/eos/graph/__init__.py index d4f2d2b3b..882ac35d1 100644 --- a/eos/graph/__init__.py +++ b/eos/graph/__init__.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,12 +15,13 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== import itertools + class Graph(object): - def __init__(self, fit, function, data = None): + def __init__(self, fit, function, data=None): self.fit = fit self.data = {} if data is not None: @@ -39,8 +40,8 @@ class Graph(object): pointNames = [] pointIterators = [] for data in self.data.itervalues(): - pointNames.append(data.name) - pointIterators.append(data) + pointNames.append(data.name) + pointIterators.append(data) return self._iterator(pointNames, pointIterators) @@ -66,7 +67,7 @@ class Data(object): dataList = [] for data in dataString.split(";"): if isinstance(data, basestring) and "-" in data: - #Dealing with a range + # Dealing with a range dataList.append(Range(data, self.step)) else: dataList.append(Constant(data)) @@ -95,6 +96,7 @@ class Constant(object): def isConstant(self): return True + class Range(object): def __init__(self, string, step): start, end = string.split("-") diff --git a/eos/graph/fitDps.py b/eos/graph/fitDps.py index 7bdc68ca0..cfc9ec5f4 100644 --- a/eos/graph/fitDps.py +++ b/eos/graph/fitDps.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,12 +15,14 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.graph import Graph, Data -from eos.types import Hardpoint, State from math import log, sin, radians, exp +from eos.graph import Graph +from eos.types import Hardpoint, State + + class FitDpsGraph(Graph): defaults = {"angle": 0, "distance": 0, @@ -32,7 +34,7 @@ class FitDpsGraph(Graph): self.fit = fit def calcDps(self, data): - ew = {'signatureRadius':[],'velocity':[]} + ew = {'signatureRadius': [], 'velocity': []} fit = self.fit total = 0 distance = data["distance"] * 1000 @@ -41,13 +43,17 @@ class FitDpsGraph(Graph): for mod in fit.modules: if not mod.isEmpty and mod.state >= State.ACTIVE: if "remoteTargetPaintFalloff" in mod.item.effects: - ew['signatureRadius'].append(1+(mod.getModifiedItemAttr("signatureRadiusBonus") / 100) * self.calculateModuleMultiplier(mod, data)) + ew['signatureRadius'].append( + 1 + (mod.getModifiedItemAttr("signatureRadiusBonus") / 100) * self.calculateModuleMultiplier( + mod, data)) if "remoteWebifierFalloff" in mod.item.effects: if distance <= mod.getModifiedItemAttr("maxRange"): - ew['velocity'].append(1+(mod.getModifiedItemAttr("speedFactor") / 100)) + ew['velocity'].append(1 + (mod.getModifiedItemAttr("speedFactor") / 100)) elif mod.getModifiedItemAttr("falloffEffectiveness") > 0: - #I am affected by falloff - ew['velocity'].append(1+(mod.getModifiedItemAttr("speedFactor") / 100) * self.calculateModuleMultiplier(mod, data)) + # I am affected by falloff + ew['velocity'].append( + 1 + (mod.getModifiedItemAttr("speedFactor") / 100) * self.calculateModuleMultiplier(mod, + data)) ew['signatureRadius'].sort(key=abssort) ew['velocity'].sort(key=abssort) @@ -63,7 +69,7 @@ class FitDpsGraph(Graph): pass for mod in fit.modules: - dps, _ = mod.damageStats(fit.targetResists) + dps, _ = mod.damageStats(fit.targetResists) if mod.hardpoint == Hardpoint.TURRET: if mod.state >= State.ACTIVE: total += dps * self.calculateTurretMultiplier(mod, data) @@ -74,8 +80,9 @@ class FitDpsGraph(Graph): if distance <= fit.extraAttributes["droneControlRange"]: for drone in fit.drones: - multiplier = 1 if drone.getModifiedItemAttr("maxVelocity") > 1 else self.calculateTurretMultiplier(drone, data) - dps, _ = drone.damageStats(fit.targetResists) + multiplier = 1 if drone.getModifiedItemAttr("maxVelocity") > 1 else self.calculateTurretMultiplier( + drone, data) + dps, _ = drone.damageStats(fit.targetResists) total += dps * multiplier # this is janky as fuck @@ -98,20 +105,21 @@ class FitDpsGraph(Graph): sigRadiusFactor = targetSigRad / explosionRadius if targetVelocity: - velocityFactor = (explosionVelocity / explosionRadius * targetSigRad / targetVelocity) ** damageReductionFactor + velocityFactor = ( + explosionVelocity / explosionRadius * targetSigRad / targetVelocity) ** damageReductionFactor else: velocityFactor = 1 return min(sigRadiusFactor, velocityFactor, 1) def calculateTurretMultiplier(self, mod, data): - #Source for most of turret calculation info: http://wiki.eveonline.com/en/wiki/Falloff + # Source for most of turret calculation info: http://wiki.eveonline.com/en/wiki/Falloff chanceToHit = self.calculateTurretChanceToHit(mod, data) if chanceToHit > 0.01: - #AvgDPS = Base Damage * [ ( ChanceToHit^2 + ChanceToHit + 0.0499 ) / 2 ] + # AvgDPS = Base Damage * [ ( ChanceToHit^2 + ChanceToHit + 0.0499 ) / 2 ] multiplier = (chanceToHit ** 2 + chanceToHit + 0.0499) / 2 else: - #All hits are wreckings + # All hits are wreckings multiplier = chanceToHit * 3 dmgScaling = mod.getModifiedItemAttr("turretDamageScalingRadius") if dmgScaling: @@ -135,14 +143,15 @@ class FitDpsGraph(Graph): damageReductionSensitivity = ability.fighter.getModifiedItemAttr("{}ReductionSensitivity".format(prefix)) if damageReductionSensitivity is None: - damageReductionSensitivity = ability.fighter.getModifiedItemAttr("{}DamageReductionSensitivity".format(prefix)) + damageReductionSensitivity = ability.fighter.getModifiedItemAttr( + "{}DamageReductionSensitivity".format(prefix)) targetSigRad = explosionRadius if targetSigRad is None else targetSigRad sigRadiusFactor = targetSigRad / explosionRadius if targetVelocity: velocityFactor = (explosionVelocity / explosionRadius * targetSigRad / targetVelocity) ** ( - log(damageReductionFactor) / log(damageReductionSensitivity)) + log(damageReductionFactor) / log(damageReductionSensitivity)) else: velocityFactor = 1 @@ -164,8 +173,8 @@ class FitDpsGraph(Graph): return 0.5 ** (trackingEq + rangeEq) def calculateModuleMultiplier(self, mod, data): - #Simplified formula, we make some assumptions about the module - #This is basically the calculateTurretChanceToHit without tracking values + # Simplified formula, we make some assumptions about the module + # This is basically the calculateTurretChanceToHit without tracking values distance = data["distance"] * 1000 turretOptimal = mod.maxRange turretFalloff = mod.falloff From f9f53a13c00cab321480d4d43f063b0d323c6e5d Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:42:45 -0700 Subject: [PATCH 40/76] Reformatting eos.saveddata --- eos/saveddata/booster.py | 31 ++++---- eos/saveddata/cargo.py | 24 +++--- eos/saveddata/character.py | 46 ++++++----- eos/saveddata/citadel.py | 16 ++-- eos/saveddata/crestchar.py | 12 ++- eos/saveddata/damagePattern.py | 19 +++-- eos/saveddata/drone.py | 39 ++++++---- eos/saveddata/fighter.py | 38 ++++----- eos/saveddata/fighterAbility.py | 24 +++--- eos/saveddata/fit.py | 131 +++++++++++++++++--------------- eos/saveddata/fleet.py | 44 ++++++----- eos/saveddata/implant.py | 25 +++--- eos/saveddata/implantSet.py | 20 ++--- eos/saveddata/miscData.py | 5 +- eos/saveddata/mode.py | 15 ++-- eos/saveddata/module.py | 77 +++++++++++-------- eos/saveddata/override.py | 14 ++-- eos/saveddata/price.py | 7 +- eos/saveddata/ship.py | 21 ++--- eos/saveddata/targetResists.py | 21 ++--- eos/saveddata/user.py | 26 ++++--- 21 files changed, 366 insertions(+), 289 deletions(-) diff --git a/eos/saveddata/booster.py b/eos/saveddata/booster.py index cfe9b5a72..84369633d 100644 --- a/eos/saveddata/booster.py +++ b/eos/saveddata/booster.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,16 +15,19 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut -from eos.effectHandlerHelpers import HandledItem -from sqlalchemy.orm import reconstructor, validates -import eos.db import logging +from sqlalchemy.orm import reconstructor, validates + +import eos.db +from eos.effectHandlerHelpers import HandledItem +from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut + logger = logging.getLogger(__name__) + class Booster(HandledItem, ItemAttrShortcut): def __init__(self, item): self.__item = item @@ -103,7 +106,7 @@ class Booster(HandledItem, ItemAttrShortcut): def clear(self): self.itemModifiedAttributes.clear() - def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): + def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): if forceProjected: return if not self.active: return for effect in self.item.effects.itervalues(): @@ -117,13 +120,15 @@ class Booster(HandledItem, ItemAttrShortcut): @validates("ID", "itemID", "ammoID", "active") def validator(self, key, val): map = {"ID": lambda val: isinstance(val, int), - "itemID" : lambda val: isinstance(val, int), - "ammoID" : lambda val: isinstance(val, int), - "active" : lambda val: isinstance(val, bool), - "slot" : lambda val: isinstance(val, int) and 1 <= val <= 3} + "itemID": lambda val: isinstance(val, int), + "ammoID": lambda val: isinstance(val, int), + "active": lambda val: isinstance(val, bool), + "slot": lambda val: isinstance(val, int) and 1 <= val <= 3} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def __deepcopy__(self, memo): copy = Booster(self.item) diff --git a/eos/saveddata/cargo.py b/eos/saveddata/cargo.py index ea90d6f8a..34ab42db3 100644 --- a/eos/saveddata/cargo.py +++ b/eos/saveddata/cargo.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,18 +15,20 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, ChargeAttrShortcut -from eos.effectHandlerHelpers import HandledItem, HandledCharge -from sqlalchemy.orm import validates, reconstructor -import eos.db import logging +from sqlalchemy.orm import validates, reconstructor + +import eos.db +from eos.effectHandlerHelpers import HandledItem +from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut + logger = logging.getLogger(__name__) -class Cargo(HandledItem, ItemAttrShortcut): +class Cargo(HandledItem, ItemAttrShortcut): def __init__(self, item): """Initialize cargo from the program""" self.__item = item @@ -69,10 +71,12 @@ class Cargo(HandledItem, ItemAttrShortcut): @validates("fitID", "itemID") def validator(self, key, val): map = {"fitID": lambda val: isinstance(val, int), - "itemID" : lambda val: isinstance(val, int)} + "itemID": lambda val: isinstance(val, int)} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def __deepcopy__(self, memo): copy = Cargo(self.item) diff --git a/eos/saveddata/character.py b/eos/saveddata/character.py index a0b56c2f8..cc7ad7162 100644 --- a/eos/saveddata/character.py +++ b/eos/saveddata/character.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,20 +15,22 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from sqlalchemy.orm import validates, reconstructor +import logging from itertools import chain -from eos.effectHandlerHelpers import HandledItem, HandledImplantBoosterList -import eos.db +from sqlalchemy.orm import validates, reconstructor + import eos +import eos.db import eos.types -import logging +from eos.effectHandlerHelpers import HandledItem, HandledImplantBoosterList logger = logging.getLogger(__name__) + class Character(object): __itemList = None __itemIDMap = None @@ -211,7 +213,7 @@ class Character(object): if filter(element): element.boostItemAttr(*args, **kwargs) - def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): + def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): if forceProjected: return for skill in self.skills: fit.register(skill) @@ -239,18 +241,21 @@ class Character(object): @validates("ID", "name", "apiKey", "ownerID") def validator(self, key, val): map = {"ID": lambda val: isinstance(val, int), - "name" : lambda val: True, - "apiKey" : lambda val: val is None or (isinstance(val, basestring) and len(val) > 0), - "ownerID" : lambda val: isinstance(val, int) or val is None} + "name": lambda val: True, + "apiKey": lambda val: val is None or (isinstance(val, basestring) and len(val) > 0), + "ownerID": lambda val: isinstance(val, int) or val is None} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def __repr__(self): return "Character(ID={}, name={}) at {}".format( self.ID, self.name, hex(id(self)) ) + class Skill(HandledItem): def __init__(self, item, level=0, ro=False, learned=True): self.__item = item if not isinstance(item, int) else None @@ -304,13 +309,12 @@ class Skill(HandledItem): if self.activeLevel == self.__level and self in self.character.dirtySkills: self.character.dirtySkills.remove(self) - @property def item(self): if self.__item is None: self.__item = item = Character.getSkillIDMap().get(self.itemID) if item is None: - #This skill is no longer in the database and thus invalid it, get rid of it. + # This skill is no longer in the database and thus invalid it, get rid of it. self.character.removeSkill(self) return self.__item @@ -322,7 +326,7 @@ class Skill(HandledItem): return None def calculateModifiedAttributes(self, fit, runTime): - if self.__suppressed: # or not self.learned - removed for GH issue 101 + if self.__suppressed: # or not self.learned - removed for GH issue 101 return item = self.item @@ -330,7 +334,8 @@ class Skill(HandledItem): return for effect in item.effects.itervalues(): - if effect.runTime == runTime and effect.isType("passive") and (not fit.isStructure or effect.isType("structure")): + if effect.runTime == runTime and effect.isType("passive") and ( + not fit.isStructure or effect.isType("structure")): try: effect.handler(fit, self, ("skill",)) except AttributeError: @@ -352,10 +357,12 @@ class Skill(HandledItem): raise ReadOnlyException() map = {"characterID": lambda val: isinstance(val, int), - "skillID" : lambda val: isinstance(val, int)} + "skillID": lambda val: isinstance(val, int)} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def __deepcopy__(self, memo): copy = Skill(self.item, self.level, self.__ro) @@ -366,5 +373,6 @@ class Skill(HandledItem): self.item.ID, self.item.name, hex(id(self)) ) + class ReadOnlyException(Exception): pass diff --git a/eos/saveddata/citadel.py b/eos/saveddata/citadel.py index f4d5fed47..1c3c22884 100644 --- a/eos/saveddata/citadel.py +++ b/eos/saveddata/citadel.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,22 +15,20 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut -from eos.effectHandlerHelpers import HandledItem -from eos.saveddata.mode import Mode -import eos.db -from eos.types import Ship import logging +from eos.types import Ship + logger = logging.getLogger(__name__) -class Citadel(Ship): +class Citadel(Ship): def validate(self, item): if item.category.name != "Structure": - raise ValueError('Passed item "%s" (category: (%s)) is not under Structure category'%(item.name, item.category.name)) + raise ValueError( + 'Passed item "%s" (category: (%s)) is not under Structure category' % (item.name, item.category.name)) def __deepcopy__(self, memo): copy = Citadel(self.item) diff --git a/eos/saveddata/crestchar.py b/eos/saveddata/crestchar.py index 9fa78f551..51a32fe26 100644 --- a/eos/saveddata/crestchar.py +++ b/eos/saveddata/crestchar.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,17 +15,15 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== - -import urllib -from cStringIO import StringIO +# =============================================================================== from sqlalchemy.orm import reconstructor -#from tomorrow import threads + + +# from tomorrow import threads class CrestChar(object): - def __init__(self, id, name, refresh_token=None): self.ID = id self.name = name diff --git a/eos/saveddata/damagePattern.py b/eos/saveddata/damagePattern.py index f9be89746..f10e6b50b 100644 --- a/eos/saveddata/damagePattern.py +++ b/eos/saveddata/damagePattern.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,14 +15,15 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== import re + class DamagePattern(object): DAMAGE_TYPES = ("em", "thermal", "kinetic", "explosive") - def __init__(self, emAmount = 25, thermalAmount = 25, kineticAmount = 25, explosiveAmount = 25): + def __init__(self, emAmount=25, thermalAmount=25, kineticAmount=25, explosiveAmount=25): self.emAmount = emAmount self.thermalAmount = thermalAmount self.kineticAmount = kineticAmount @@ -50,7 +51,7 @@ class DamagePattern(object): totalDamage = sum((self.emAmount, self.thermalAmount, self.kineticAmount, self.explosiveAmount)) specificDivider = 0 for damageType in self.DAMAGE_TYPES: - #Compose an attribute name, then make sure the first letter is NOT capitalized + # Compose an attribute name, then make sure the first letter is NOT capitalized attrName = "%s%sDamageResonance" % (type, damageType.capitalize()) attrName = attrName[0].lower() + attrName[1:] @@ -65,6 +66,7 @@ class DamagePattern(object): "therm": "thermal", "kin": "kinetic", "exp": "explosive"} + @classmethod def importPatterns(cls, text): lines = re.split('[\n\r]+', text) @@ -74,8 +76,8 @@ class DamagePattern(object): try: if line.strip()[0] == "#": # comments continue - line = line.split('#',1)[0] # allows for comments - type, data = line.rsplit('=',1) + line = line.split('#', 1)[0] # allows for comments + type, data = line.rsplit('=', 1) type, data = type.strip(), data.split(',') except: # Data isn't in correct format, continue to next line @@ -94,7 +96,7 @@ class DamagePattern(object): except: continue - if len(fields) == 4: # Avoid possible blank lines + if len(fields) == 4: # Avoid possible blank lines pattern = DamagePattern(**fields) pattern.name = name.strip() patterns.append(pattern) @@ -102,9 +104,10 @@ class DamagePattern(object): return patterns, numPatterns EXPORT_FORMAT = "DamageProfile = %s,%d,%d,%d,%d\n" + @classmethod def exportPatterns(cls, *patterns): - out = "# Exported from pyfa\n#\n" + out = "# Exported from pyfa\n#\n" out += "# Values are in following format:\n" out += "# DamageProfile = [name],[EM amount],[Thermal amount],[Kinetic amount],[Explosive amount]\n\n" for dp in patterns: diff --git a/eos/saveddata/drone.py b/eos/saveddata/drone.py index 4b7abd4eb..03e52fe7c 100644 --- a/eos/saveddata/drone.py +++ b/eos/saveddata/drone.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,16 +15,19 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, ChargeAttrShortcut -from eos.effectHandlerHelpers import HandledItem, HandledCharge -from sqlalchemy.orm import validates, reconstructor -import eos.db import logging +from sqlalchemy.orm import validates, reconstructor + +import eos.db +from eos.effectHandlerHelpers import HandledItem, HandledCharge +from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, ChargeAttrShortcut + logger = logging.getLogger(__name__) + class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): DAMAGE_TYPES = ("em", "kinetic", "explosive", "thermal") MINING_ATTRIBUTES = ("miningAmount",) @@ -116,7 +119,7 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def dps(self): return self.damageStats() - def damageStats(self, targetResists = None): + def damageStats(self, targetResists=None): if self.__dps is None: self.__volley = 0 self.__dps = 0 @@ -125,12 +128,14 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): attr = "missileLaunchDuration" getter = self.getModifiedChargeAttr else: - attr = "speed" + attr = "speed" getter = self.getModifiedItemAttr cycleTime = self.getModifiedItemAttr(attr) - volley = sum(map(lambda d: (getter("%sDamage"%d) or 0) * (1-getattr(targetResists, "%sAmount"%d, 0)), self.DAMAGE_TYPES)) + volley = sum( + map(lambda d: (getter("%sDamage" % d) or 0) * (1 - getattr(targetResists, "%sAmount" % d, 0)), + self.DAMAGE_TYPES)) volley *= self.amountActive volley *= self.getModifiedItemAttr("damageMultiplier") or 1 self.__volley = volley @@ -180,13 +185,15 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): @validates("ID", "itemID", "chargeID", "amount", "amountActive") def validator(self, key, val): map = {"ID": lambda val: isinstance(val, int), - "itemID" : lambda val: isinstance(val, int), - "chargeID" : lambda val: isinstance(val, int), - "amount" : lambda val: isinstance(val, int) and val >= 0, - "amountActive" : lambda val: isinstance(val, int) and self.amount >= val >= 0} + "itemID": lambda val: isinstance(val, int), + "chargeID": lambda val: isinstance(val, int), + "amount": lambda val: isinstance(val, int) and val >= 0, + "amountActive": lambda val: isinstance(val, int) and self.amount >= val >= 0} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def clear(self): self.__dps = None @@ -213,7 +220,7 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): else: return True - def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): + def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): if self.projected or forceProjected: context = "projected", "drone" projected = True diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index 6275c3abc..52f0fb8d8 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,14 +15,15 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, ChargeAttrShortcut -from eos.effectHandlerHelpers import HandledItem, HandledCharge, HandledDroneCargoList -from sqlalchemy.orm import validates, reconstructor -import eos.db -from eos.enum import Enum import logging + +from sqlalchemy.orm import validates, reconstructor + +import eos.db +from eos.effectHandlerHelpers import HandledItem, HandledCharge +from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, ChargeAttrShortcut from eos.types import FighterAbility, Slot logger = logging.getLogger(__name__) @@ -155,7 +156,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def dps(self): return self.damageStats() - def damageStats(self, targetResists = None): + def damageStats(self, targetResists=None): if self.__dps is None: self.__volley = 0 self.__dps = 0 @@ -164,7 +165,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): dps, volley = ability.damageStats(targetResists) self.__dps += dps self.__volley += volley - + # For forward compatability this assumes a fighter can have more than 2 damaging abilities and/or multiple that use charges. if self.owner.factorReload: activeTimes = [] @@ -179,7 +180,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): continue activeTimes.append(ability.numShots * ability.cycleTime) reloadTimes.append(ability.reloadTime) - + if len(activeTimes) > 0: shortestActive = sorted(activeTimes)[0] longestReload = sorted(reloadTimes, reverse=True)[0] @@ -214,13 +215,15 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): @validates("ID", "itemID", "chargeID", "amount", "amountActive") def validator(self, key, val): map = {"ID": lambda val: isinstance(val, int), - "itemID" : lambda val: isinstance(val, int), - "chargeID" : lambda val: isinstance(val, int), - "amount" : lambda val: isinstance(val, int) and val >= -1, + "itemID": lambda val: isinstance(val, int), + "chargeID": lambda val: isinstance(val, int), + "amount": lambda val: isinstance(val, int) and val >= -1, } - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def clear(self): self.__dps = None @@ -248,7 +251,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): else: return True - def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): + def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): if not self.active: return @@ -263,7 +266,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): if ability.active: effect = ability.effect if effect.runTime == runTime and \ - ((projected and effect.isType("projected")) or not projected): + ((projected and effect.isType("projected")) or not projected): if ability.grouped: effect.handler(fit, self, context) else: @@ -283,4 +286,3 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): return False return True - diff --git a/eos/saveddata/fighterAbility.py b/eos/saveddata/fighterAbility.py index 0c830bc40..f2c09555a 100644 --- a/eos/saveddata/fighterAbility.py +++ b/eos/saveddata/fighterAbility.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,13 +15,15 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from sqlalchemy.orm import validates, reconstructor import logging +from sqlalchemy.orm import reconstructor + logger = logging.getLogger(__name__) + class FighterAbility(object): DAMAGE_TYPES = ("em", "kinetic", "explosive", "thermal") DAMAGE_TYPES2 = ("EM", "Kin", "Exp", "Therm") @@ -30,18 +32,17 @@ class FighterAbility(object): # with the fighter squadron role NUM_SHOTS_MAPPING = { 1: 0, # Superiority fighter / Attack - 2: 12, # Light fighter / Attack + 2: 12, # Light fighter / Attack 4: 6, # Heavy fighter / Heavy attack 5: 3, # Heavy fighter / Long range attack } # Same as above REARM_TIME_MAPPING = { - 1: 0, # Superiority fighter / Attack + 1: 0, # Superiority fighter / Attack 2: 4000, # Light fighter / Attack 4: 6000, # Heavy fighter / Heavy attack - 5: 20000, # Heavy fighter / Long range attack + 5: 20000, # Heavy fighter / Long range attack } - def __init__(self, effect): """Initialize from the program""" @@ -94,11 +95,14 @@ class FighterAbility(object): @property def reloadTime(self): - return self.fighter.getModifiedItemAttr("fighterRefuelingTime") + (self.REARM_TIME_MAPPING[self.fighter.getModifiedItemAttr("fighterSquadronRole")] or 0 if self.hasCharges else 0) * self.numShots + return self.fighter.getModifiedItemAttr("fighterRefuelingTime") + (self.REARM_TIME_MAPPING[ + self.fighter.getModifiedItemAttr( + "fighterSquadronRole")] or 0 if self.hasCharges else 0) * self.numShots @property def numShots(self): - return self.NUM_SHOTS_MAPPING[self.fighter.getModifiedItemAttr("fighterSquadronRole")] or 0 if self.hasCharges else 0 + return self.NUM_SHOTS_MAPPING[ + self.fighter.getModifiedItemAttr("fighterSquadronRole")] or 0 if self.hasCharges else 0 @property def cycleTime(self): @@ -126,7 +130,7 @@ class FighterAbility(object): if self.attrPrefix == "fighterAbilityLaunchBomb": # bomb calcs volley = sum(map(lambda attr: (self.fighter.getModifiedChargeAttr("%sDamage" % attr) or 0) * ( - 1 - getattr(targetResists, "%sAmount" % attr, 0)), self.DAMAGE_TYPES)) + 1 - getattr(targetResists, "%sAmount" % attr, 0)), self.DAMAGE_TYPES)) else: volley = sum(map(lambda d2, d: (self.fighter.getModifiedItemAttr( diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 611944748..f937d1e5e 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,26 +15,24 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.effectHandlerHelpers import * -from eos.modifiedAttributeDict import ModifiedAttributeDict -from sqlalchemy.orm import validates, reconstructor -from itertools import chain -from eos import capSim -from copy import deepcopy -from math import sqrt, log, asinh -from eos.types import Drone, Cargo, Ship, Character, State, Slot, Module, Implant, Booster, Skill, Citadel -from eos.saveddata.module import State, Hardpoint -from eos.saveddata.mode import Mode -import eos.db -import time import copy -from utils.timer import Timer -from eos.enum import Enum - - import logging +import time +from copy import deepcopy +from itertools import chain +from math import sqrt, log, asinh + +from sqlalchemy.orm import validates, reconstructor + +import eos.db +from eos import capSim +from eos.effectHandlerHelpers import * +from eos.enum import Enum +from eos.saveddata.module import State, Hardpoint +from eos.types import Ship, Character, Slot, Module, Citadel +from utils.timer import Timer logger = logging.getLogger(__name__) @@ -43,6 +41,7 @@ try: except ImportError: from utils.compat import OrderedDict + class ImplantLocation(Enum): def __init__(self): pass @@ -50,6 +49,7 @@ class ImplantLocation(Enum): FIT = 0 CHARACTER = 1 + class Fit(object): """Represents a fitting, with modules, ship, implants, etc.""" @@ -68,7 +68,7 @@ class Fit(object): self.__cargo = HandledDroneCargoList() self.__implants = HandledImplantBoosterList() self.__boosters = HandledImplantBoosterList() - #self.__projectedFits = {} + # self.__projectedFits = {} self.__projectedModules = HandledProjectedModList() self.__projectedDrones = HandledProjectedDroneList() self.__projectedFighters = HandledProjectedDroneList() @@ -302,7 +302,8 @@ class Fit(object): @property def maxTargets(self): - return min(self.extraAttributes["maxTargetsLockedFromSkills"], self.ship.getModifiedItemAttr("maxLockedTargets")) + return min(self.extraAttributes["maxTargetsLockedFromSkills"], + self.ship.getModifiedItemAttr("maxLockedTargets")) @property def maxTargetRange(self): @@ -329,7 +330,7 @@ class Fit(object): @property def jamChance(self): - return (1-self.ecmProjectedStr)*100 + return (1 - self.ecmProjectedStr) * 100 @property def maxSpeed(self): @@ -364,11 +365,13 @@ class Fit(object): @validates("ID", "ownerID", "shipID") def validator(self, key, val): map = {"ID": lambda val: isinstance(val, int), - "ownerID" : lambda val: isinstance(val, int) or val is None, - "shipID" : lambda val: isinstance(val, int) or val is None} + "ownerID": lambda val: isinstance(val, int) or val is None, + "shipID": lambda val: isinstance(val, int) or val is None} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def clear(self, projected=False): self.__effectiveTank = None @@ -417,8 +420,8 @@ class Fit(object): if stuff is not None and stuff != self: stuff.clear(projected=True) - #Methods to register and get the thing currently affecting the fit, - #so we can correctly map "Affected By" + # Methods to register and get the thing currently affecting the fit, + # so we can correctly map "Affected By" def register(self, currModifier, origin=None): self.__modifier = currModifier self.__origin = origin @@ -442,7 +445,7 @@ class Fit(object): context = ("gang", thing.__class__.__name__.lower()) if isinstance(thing, Module): if effect.isType("offline") or (effect.isType("passive") and thing.state >= State.ONLINE) or \ - (effect.isType("active") and thing.state >= State.ACTIVE): + (effect.isType("active") and thing.state >= State.ACTIVE): # Run effect, and get proper bonuses applied try: self.register(thing) @@ -486,7 +489,7 @@ class Fit(object): logger.debug("Fleet is set, gathering gang boosts") self.gangBoosts = self.fleet.recalculateLinear(withBoosters=withBoosters) - timer.checkpoint("Done calculating gang boosts for %r"%self) + timer.checkpoint("Done calculating gang boosts for %r" % self) elif self.fleet is None: self.gangBoosts = None @@ -537,7 +540,7 @@ class Fit(object): r = [(self.mode,), self.projectedDrones, self.projectedFighters, self.projectedModules] # chain unrestricted and restricted into one iterable - c = chain.from_iterable(u+r) + c = chain.from_iterable(u + r) # We calculate gang bonuses first so that projected fits get them if self.gangBoosts is not None: @@ -558,7 +561,7 @@ class Fit(object): targetFit.register(item, origin=self) item.calculateModifiedAttributes(targetFit, runTime, True) - timer.checkpoint('Done with runtime: %s'%runTime) + timer.checkpoint('Done with runtime: %s' % runTime) # Mark fit as calculated self.__calculated = True @@ -591,7 +594,7 @@ class Fit(object): self.modules.append(Module.buildEmpty(slotType)) if amount < 0: - #Look for any dummies of that type to remove + # Look for any dummies of that type to remove toRemove = [] for mod in self.modules: if mod.isEmpty and mod.slot == slotType: @@ -610,7 +613,7 @@ class Fit(object): @property def modCount(self): - x=0 + x = 0 for i in xrange(len(self.modules) - 1, -1, -1): mod = self.modules[i] if not mod.isEmpty: @@ -733,7 +736,7 @@ class Fit(object): def activeDrones(self): amount = 0 for d in self.drones: - amount +=d.amountActive + amount += d.amountActive return amount @@ -802,7 +805,6 @@ class Fit(object): return self.__capRecharge - @property def sustainableTank(self): if self.__sustainableTank is None: @@ -820,22 +822,22 @@ class Fit(object): sustainable = {} repairers = [] - #Map a repairer type to the attribute it uses + # Map a repairer type to the attribute it uses groupAttrMap = {"Armor Repair Unit": "armorDamageAmount", - "Ancillary Armor Repairer": "armorDamageAmount", - "Hull Repair Unit": "structureDamageAmount", - "Shield Booster": "shieldBonus", - "Ancillary Shield Booster": "shieldBonus", - "Remote Armor Repairer": "armorDamageAmount", - "Remote Shield Booster": "shieldBonus"} - #Map repairer type to attribute + "Ancillary Armor Repairer": "armorDamageAmount", + "Hull Repair Unit": "structureDamageAmount", + "Shield Booster": "shieldBonus", + "Ancillary Shield Booster": "shieldBonus", + "Remote Armor Repairer": "armorDamageAmount", + "Remote Shield Booster": "shieldBonus"} + # Map repairer type to attribute groupStoreMap = {"Armor Repair Unit": "armorRepair", "Hull Repair Unit": "hullRepair", "Shield Booster": "shieldRepair", "Ancillary Shield Booster": "shieldRepair", "Remote Armor Repairer": "armorRepair", "Remote Shield Booster": "shieldRepair", - "Ancillary Armor Repairer": "armorRepair",} + "Ancillary Armor Repairer": "armorRepair", } capUsed = self.capUsed for attr in ("shieldRepair", "armorRepair", "hullRepair"): @@ -861,25 +863,26 @@ class Fit(object): sustainable[attr] -= amount / (cycleTime / 1000.0) repairers.append(mod) + # Sort repairers by efficiency. We want to use the most efficient repairers first + repairers.sort(key=lambda mod: mod.getModifiedItemAttr( + groupAttrMap[mod.item.group.name]) / mod.getModifiedItemAttr("capacitorNeed"), reverse=True) - #Sort repairers by efficiency. We want to use the most efficient repairers first - repairers.sort(key=lambda mod: mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) / mod.getModifiedItemAttr("capacitorNeed"), reverse = True) - - #Loop through every module until we're above peak recharge - #Most efficient first, as we sorted earlier. - #calculate how much the repper can rep stability & add to total + # Loop through every module until we're above peak recharge + # Most efficient first, as we sorted earlier. + # calculate how much the repper can rep stability & add to total totalPeakRecharge = self.capRecharge for mod in repairers: if capUsed > totalPeakRecharge: break cycleTime = mod.cycleTime capPerSec = mod.capUse if capPerSec is not None and cycleTime is not None: - #Check how much this repper can work + # Check how much this repper can work sustainability = min(1, (totalPeakRecharge - capUsed) / capPerSec) - #Add the sustainable amount + # Add the sustainable amount amount = mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) - sustainable[groupStoreMap[mod.item.group.name]] += sustainability * (amount / (cycleTime / 1000.0)) + sustainable[groupStoreMap[mod.item.group.name]] += sustainability * ( + amount / (cycleTime / 1000.0)) capUsed += capPerSec sustainable["passiveShield"] = self.calculateShieldRecharge() @@ -887,12 +890,12 @@ class Fit(object): return self.__sustainableTank - def calculateCapRecharge(self, percent = PEAK_RECHARGE): + def calculateCapRecharge(self, percent=PEAK_RECHARGE): capacity = self.ship.getModifiedItemAttr("capacitorCapacity") rechargeRate = self.ship.getModifiedItemAttr("rechargeRate") / 1000.0 return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity - def calculateShieldRecharge(self, percent = PEAK_RECHARGE): + def calculateShieldRecharge(self, percent=PEAK_RECHARGE): capacity = self.ship.getModifiedItemAttr("shieldCapacity") rechargeRate = self.ship.getModifiedItemAttr("shieldRechargeRate") / 1000.0 return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity @@ -903,9 +906,9 @@ class Fit(object): energyNeutralizerSignatureResolution = src.getModifiedItemAttr("energyNeutralizerSignatureResolution") signatureRadius = self.ship.getModifiedItemAttr("signatureRadius") - #Signature reduction, uses the bomb formula as per CCP Larrikin + # Signature reduction, uses the bomb formula as per CCP Larrikin if energyNeutralizerSignatureResolution: - capNeed = capNeed*min(1, signatureRadius/energyNeutralizerSignatureResolution) + capNeed = capNeed * min(1, signatureRadius / energyNeutralizerSignatureResolution) resistance = self.ship.getModifiedItemAttr("energyWarfareResistance") or 1 if capNeed > 0 else 1 self.__extraDrains.append((cycleTime, capNeed * resistance, clipSize)) @@ -936,7 +939,8 @@ class Fit(object): # If this is a turret, don't stagger activations disableStagger = mod.hardpoint == Hardpoint.TURRET - drains.append((int(fullCycleTime), mod.getModifiedItemAttr("capacitorNeed") or 0, mod.numShots or 0, disableStagger)) + drains.append((int(fullCycleTime), mod.getModifiedItemAttr("capacitorNeed") or 0, + mod.numShots or 0, disableStagger)) for fullCycleTime, capNeed, clipSize in self.iterDrains(): # Stagger incoming effects for cap simulation @@ -990,7 +994,7 @@ class Fit(object): @property def tank(self): - hps = {"passiveShield" : self.calculateShieldRecharge()} + hps = {"passiveShield": self.calculateShieldRecharge()} for type in ("shield", "armor", "hull"): hps["%sRepair" % type] = self.extraAttributes["%sRepair" % type] @@ -1020,13 +1024,12 @@ class Fit(object): return self.__effectiveSustainableTank - def calculateLockTime(self, radius): scanRes = self.ship.getModifiedItemAttr("scanResolution") if scanRes is not None and scanRes > 0: # Yes, this function returns time in seconds, not miliseconds. # 40,000 is indeed the correct constant here. - return min(40000 / scanRes / asinh(radius)**2, 30*60) + return min(40000 / scanRes / asinh(radius) ** 2, 30 * 60) else: return self.ship.getModifiedItemAttr("scanSpeed") / 1000.0 @@ -1079,7 +1082,7 @@ class Fit(object): def __deepcopy__(self, memo): copy = Fit() - #Character and owner are not copied + # Character and owner are not copied copy.character = self.__character copy.owner = self.owner copy.ship = deepcopy(self.ship, memo) @@ -1087,7 +1090,9 @@ class Fit(object): copy.damagePattern = self.damagePattern copy.targetResists = self.targetResists - toCopy = ("modules", "drones", "fighters", "cargo", "implants", "boosters", "projectedModules", "projectedDrones", "projectedFighters") + toCopy = ( + "modules", "drones", "fighters", "cargo", "implants", "boosters", "projectedModules", "projectedDrones", + "projectedFighters") for name in toCopy: orig = getattr(self, name) c = getattr(copy, name) diff --git a/eos/saveddata/fleet.py b/eos/saveddata/fleet.py index 780301968..fccb95ed8 100644 --- a/eos/saveddata/fleet.py +++ b/eos/saveddata/fleet.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,15 +15,17 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from itertools import chain -from eos.types import Skill, Module, Ship from copy import deepcopy +from itertools import chain + +from eos.types import Skill, Module, Ship + class Fleet(object): def calculateModifiedAttributes(self): - #Make sure ALL fits in the gang have been calculated + # Make sure ALL fits in the gang have been calculated for c in chain(self.wings, (self.leader,)): if c is not None: c.calculateModifiedAttributes() @@ -32,24 +34,26 @@ class Fleet(object): self.broken = False self.store = store = Store() store.set(booster, "fleet") - #Go all the way down for each subtree we have. + # Go all the way down for each subtree we have. for wing in self.wings: wing.calculateGangBonusses(store) # Check skill requirements and wing amount to see if we break or not - if len(self.wings) == 0 or leader is None or leader.character is None or leader.character.getSkill("Fleet Command").level < len(self.wings): + if len(self.wings) == 0 or leader is None or leader.character is None or leader.character.getSkill( + "Fleet Command").level < len(self.wings): self.broken = True - #Now calculate our own if we aren't broken + # Now calculate our own if we aren't broken if not self.broken: - #We only get our own bonuses *Sadface* + # We only get our own bonuses *Sadface* store.apply(leader, "fleet") def recalculateLinear(self, withBoosters=True, dirtyStorage=None): self.store = Store() self.linearBoosts = {} if withBoosters is True: - if self.leader is not None and self.leader.character is not None and self.leader.character.getSkill("Fleet Command").level >= 1: + if self.leader is not None and self.leader.character is not None and self.leader.character.getSkill( + "Fleet Command").level >= 1: self.leader.boostsFits.add(self.wings[0].squads[0].members[0].ID) self.leader.calculateModifiedAttributes() self.store.set(self.leader, "squad", clearingUpdate=True) @@ -83,6 +87,7 @@ class Fleet(object): return copy + class Wing(object): def calculateModifiedAttributes(self): for c in chain(self.squads, (self.leader,)): @@ -95,24 +100,26 @@ class Wing(object): store.set(booster, "wing") - #ALWAYS move down + # ALWAYS move down for squad in self.squads: squad.calculateGangBonusses(store) # Check skill requirements and squad amount to see if we break or not - if len(self.squads) == 0 or leader is None or leader.character is None or leader.character.getSkill("Wing Command").level < len(self.squads): + if len(self.squads) == 0 or leader is None or leader.character is None or leader.character.getSkill( + "Wing Command").level < len(self.squads): self.broken = True - #Check if we aren't broken, if we aren't, boost + # Check if we aren't broken, if we aren't, boost if not self.broken: store.apply(leader, "wing") else: - #We broke, don't go up + # We broke, don't go up self.gang.broken = True def recalculateLinear(self, store, withBoosters=True, dirtyStorage=None): if withBoosters is True: - if self.leader is not None and self.leader.character is not None and self.leader.character.getSkill("Wing Command").level >= 1: + if self.leader is not None and self.leader.character is not None and self.leader.character.getSkill( + "Wing Command").level >= 1: self.leader.boostsFits.add(self.squads[0].members[0].ID) self.leader.calculateModifiedAttributes() store.set(self.leader, "squad", clearingUpdate=False) @@ -162,7 +169,8 @@ class Squad(object): store.set(booster, "squad") # Check skill requirements and squad size to see if we break or not - if len(self.members) <= 0 or leader is None or leader.character is None or leader.character.getSkill("Leadership").level * 2 < len(self.members): + if len(self.members) <= 0 or leader is None or leader.character is None or leader.character.getSkill( + "Leadership").level * 2 < len(self.members): self.broken = True if not self.broken: @@ -173,7 +181,8 @@ class Squad(object): def recalculateLinear(self, store, withBoosters=True, dirtyStorage=None): if withBoosters is True: - if self.leader is not None and self.leader.character is not None and self.leader.character.getSkill("Leadership").level >= 1: + if self.leader is not None and self.leader.character is not None and self.leader.character.getSkill( + "Leadership").level >= 1: self.leader.boostsFits.add(self.members[0].ID) self.leader.calculateModifiedAttributes(dirtyStorage=dirtyStorage) store.set(self.leader, "squad", clearingUpdate=False) @@ -231,6 +240,7 @@ class Squad(object): return copy + class Store(object): def __init__(self): # Container for gang boosters and their respective bonuses, three-layered diff --git a/eos/saveddata/implant.py b/eos/saveddata/implant.py index a368e9714..7a4bf1790 100644 --- a/eos/saveddata/implant.py +++ b/eos/saveddata/implant.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,16 +15,19 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut -from eos.effectHandlerHelpers import HandledItem -from sqlalchemy.orm import validates, reconstructor -import eos.db import logging +from sqlalchemy.orm import validates, reconstructor + +import eos.db +from eos.effectHandlerHelpers import HandledItem +from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut + logger = logging.getLogger(__name__) + class Implant(HandledItem, ItemAttrShortcut): def __init__(self, item): self.__item = item @@ -84,7 +87,7 @@ class Implant(HandledItem, ItemAttrShortcut): def clear(self): self.itemModifiedAttributes.clear() - def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): + def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): if forceProjected: return if not self.active: return for effect in self.item.effects.itervalues(): @@ -94,11 +97,13 @@ class Implant(HandledItem, ItemAttrShortcut): @validates("fitID", "itemID", "active") def validator(self, key, val): map = {"fitID": lambda val: isinstance(val, int), - "itemID" : lambda val: isinstance(val, int), + "itemID": lambda val: isinstance(val, int), "active": lambda val: isinstance(val, bool)} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def __deepcopy__(self, memo): copy = Implant(self.item) diff --git a/eos/saveddata/implantSet.py b/eos/saveddata/implantSet.py index 8e495c5ea..2daaaa3eb 100644 --- a/eos/saveddata/implantSet.py +++ b/eos/saveddata/implantSet.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2016 Ryan Holmes # # This file is part of eos. @@ -15,10 +15,12 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== + +from copy import deepcopy from eos.effectHandlerHelpers import HandledImplantBoosterList -from copy import deepcopy + class ImplantSet(object): def __init__(self, name=None): @@ -31,12 +33,12 @@ class ImplantSet(object): @classmethod def exportSets(cls, *sets): - out = "# Exported from pyfa\n#\n" \ - "# Values are in following format:\n" \ - "# [Implant Set name]\n" \ - "# [Implant name]\n" \ - "# [Implant name]\n" \ - "# ...\n\n" + out = "# Exported from pyfa\n#\n" \ + "# Values are in following format:\n" \ + "# [Implant Set name]\n" \ + "# [Implant name]\n" \ + "# [Implant name]\n" \ + "# ...\n\n" for set in sets: out += "[{}]\n".format(set.name) diff --git a/eos/saveddata/miscData.py b/eos/saveddata/miscData.py index c7a859afe..909b574bc 100644 --- a/eos/saveddata/miscData.py +++ b/eos/saveddata/miscData.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2011 Anton Vorobyov # # This file is part of eos. @@ -15,10 +15,11 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from eos.eqBase import EqBase + class MiscData(EqBase): def __init__(self, name, val=None): self.fieldName = name diff --git a/eos/saveddata/mode.py b/eos/saveddata/mode.py index 91fbaf6eb..f494d8d9f 100644 --- a/eos/saveddata/mode.py +++ b/eos/saveddata/mode.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,17 +15,18 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut from eos.effectHandlerHelpers import HandledItem -import eos.db +from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut + class Mode(ItemAttrShortcut, HandledItem): def __init__(self, item): if item.group.name != "Ship Modifiers": - raise ValueError('Passed item "%s" (category: (%s)) is not a Ship Modifier'%(item.name, item.category.name)) + raise ValueError( + 'Passed item "%s" (category: (%s)) is not a Ship Modifier' % (item.name, item.category.name)) self.__item = item self.__itemModifiedAttributes = ModifiedAttributeDict() @@ -47,8 +48,8 @@ class Mode(ItemAttrShortcut, HandledItem): def clear(self): self.itemModifiedAttributes.clear() - def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): + def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): if self.item: for effect in self.item.effects.itervalues(): if effect.runTime == runTime: - effect.handler(fit, self, context = ("module",)) + effect.handler(fit, self, context=("module",)) diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 7ce55d331..5236ef58f 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,20 +15,22 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== + +import logging from sqlalchemy.orm import validates, reconstructor -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, ChargeAttrShortcut +import eos.db from eos.effectHandlerHelpers import HandledItem, HandledCharge from eos.enum import Enum from eos.mathUtils import floorFloat -import eos.db +from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, ChargeAttrShortcut from eos.types import Citadel -import logging logger = logging.getLogger(__name__) + class State(Enum): def __init__(self): pass @@ -38,6 +40,7 @@ class State(Enum): ACTIVE = 1 OVERHEATED = 2 + class Slot(Enum): def __init__(self): pass @@ -60,6 +63,7 @@ class Slot(Enum): F_SUPPORT = 11 F_HEAVY = 12 + class Hardpoint(Enum): def __init__(self): pass @@ -68,10 +72,11 @@ class Hardpoint(Enum): MISSILE = 1 TURRET = 2 + class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): """An instance of this class represents a module together with its charge and modified attributes""" DAMAGE_TYPES = ("em", "thermal", "kinetic", "explosive") - MINING_ATTRIBUTES = ("miningAmount", ) + MINING_ATTRIBUTES = ("miningAmount",) def __init__(self, item): """Initialize a module from the program""" @@ -136,7 +141,6 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): self.__chargeModifiedAttributes.original = self.__charge.attributes self.__chargeModifiedAttributes.overrides = self.__charge.overrides - @classmethod def buildEmpty(cls, slot): empty = Module(None) @@ -163,7 +167,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def isInvalid(self): if self.isEmpty: return False - return self.__item is None or (self.__item.category.name not in ("Module", "Subsystem", "Structure Module") and self.__item.group.name != "Effect Beacon") + return self.__item is None or (self.__item.category.name not in ( + "Module", "Subsystem", "Structure Module") and self.__item.group.name != "Effect Beacon") @property def numCharges(self): @@ -261,7 +266,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): mass = self.getModifiedChargeAttr("mass") agility = self.getModifiedChargeAttr("agility") if maxVelocity and flightTime and mass and agility: - accelTime = min(flightTime, mass*agility/1000000) + accelTime = min(flightTime, mass * agility / 1000000) # Average distance done during acceleration duringAcceleration = maxVelocity / 2 * accelTime # Distance done after being at full speed @@ -279,7 +284,6 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def slot(self): return self.__slot - @property def itemModifiedAttributes(self): return self.__itemModifiedAttributes @@ -321,7 +325,9 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): else: func = self.getModifiedItemAttr - volley = sum(map(lambda attr: (func("%sDamage"%attr) or 0) * (1-getattr(targetResists, "%sAmount"%attr, 0)), self.DAMAGE_TYPES)) + volley = sum(map( + lambda attr: (func("%sDamage" % attr) or 0) * (1 - getattr(targetResists, "%sAmount" % attr, 0)), + self.DAMAGE_TYPES)) volley *= self.getModifiedItemAttr("damageMultiplier") or 1 if volley: cycleTime = self.cycleTime @@ -337,7 +343,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): self.__miningyield = 0 else: if self.state >= State.ACTIVE: - volley = self.getModifiedItemAttr("specialtyMiningAmount") or self.getModifiedItemAttr("miningAmount") or 0 + volley = self.getModifiedItemAttr("specialtyMiningAmount") or self.getModifiedItemAttr( + "miningAmount") or 0 if volley: cycleTime = self.cycleTime self.__miningyield = volley / (cycleTime / 1000.0) @@ -402,7 +409,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): if shipGroup is not None: fitsOnGroup.add(shipGroup) - if (len(fitsOnGroup) > 0 or len(fitsOnType) > 0) and fit.ship.item.group.ID not in fitsOnGroup and fit.ship.item.ID not in fitsOnType: + if (len(fitsOnGroup) > 0 or len( + fitsOnType) > 0) and fit.ship.item.group.ID not in fitsOnGroup and fit.ship.item.ID not in fitsOnType: return False # AFAIK Citadel modules will always be restricted based on canFitShipType/Group. If we are fitting to a Citadel @@ -439,7 +447,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): if (fit.ship.getModifiedItemAttr('turretSlotsLeft') or 0) - fit.getHardpointsUsed(Hardpoint.TURRET) < 1: return False elif self.hardpoint == Hardpoint.MISSILE: - if (fit.ship.getModifiedItemAttr('launcherSlotsLeft')or 0) - fit.getHardpointsUsed(Hardpoint.MISSILE) < 1: + if (fit.ship.getModifiedItemAttr('launcherSlotsLeft') or 0) - fit.getHardpointsUsed( + Hardpoint.MISSILE) < 1: return False return True @@ -448,7 +457,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): """ Check if the state is valid for this module, without considering other modules at all """ - #Check if we're within bounds + # Check if we're within bounds if state < -1 or state > 2: return False elif state >= State.ACTIVE and not self.item.isType("active"): @@ -501,7 +510,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): return True def isValidCharge(self, charge): - #Check sizes, if 'charge size > module volume' it won't fit + # Check sizes, if 'charge size > module volume' it won't fit if charge is None: return True chargeVolume = charge.volume moduleCapacity = self.item.capacity @@ -534,11 +543,10 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): if singleItem.published and self.isValidCharge(singleItem): validCharges.add(singleItem) - return validCharges def __calculateHardpoint(self, item): - effectHardpointMap = {"turretFitted" : Hardpoint.TURRET, + effectHardpointMap = {"turretFitted": Hardpoint.TURRET, "launcherFitted": Hardpoint.MISSILE} if item is None: @@ -551,11 +559,11 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): return Hardpoint.NONE def __calculateSlot(self, item): - effectSlotMap = {"rigSlot" : Slot.RIG, - "loPower" : Slot.LOW, - "medPower" : Slot.MED, - "hiPower" : Slot.HIGH, - "subSystem" : Slot.SUBSYSTEM, + effectSlotMap = {"rigSlot": Slot.RIG, + "loPower": Slot.LOW, + "medPower": Slot.MED, + "hiPower": Slot.HIGH, + "subSystem": Slot.SUBSYSTEM, "serviceSlot": Slot.SERVICE} if item is None: return None @@ -570,11 +578,13 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): @validates("ID", "itemID", "ammoID") def validator(self, key, val): map = {"ID": lambda val: isinstance(val, int), - "itemID" : lambda val: val is None or isinstance(val, int), - "ammoID" : lambda val: isinstance(val, int)} + "itemID": lambda val: val is None or isinstance(val, int), + "ammoID": lambda val: isinstance(val, int)} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val def clear(self): self.__dps = None @@ -586,15 +596,15 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): self.itemModifiedAttributes.clear() self.chargeModifiedAttributes.clear() - def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): - #We will run the effect when two conditions are met: - #1: It makes sense to run the effect + def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): + # We will run the effect when two conditions are met: + # 1: It makes sense to run the effect # The effect is either offline # or the effect is passive and the module is in the online state (or higher) # or the effect is active and the module is in the active state (or higher) # or the effect is overheat and the module is in the overheated state (or higher) - #2: the runtimes match + # 2: the runtimes match if self.projected or forceProjected: context = "projected", "module" @@ -614,8 +624,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): if self.state >= State.OVERHEATED: for effect in self.item.effects.itervalues(): if effect.runTime == runTime and \ - effect.isType("overheat") and \ - not forceProjected: + effect.isType("overheat") and \ + not forceProjected: effect.handler(fit, self, context) for effect in self.item.effects.itervalues(): @@ -682,6 +692,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): else: return "EmptyModule() at {}".format(hex(id(self))) + class Rack(Module): """ This is simply the Module class named something else to differentiate diff --git a/eos/saveddata/override.py b/eos/saveddata/override.py index b33875e89..c4f8a1e02 100644 --- a/eos/saveddata/override.py +++ b/eos/saveddata/override.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2015 Ryan Holmes # # This file is part of eos. @@ -15,17 +15,19 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.eqBase import EqBase -from sqlalchemy.orm import validates, reconstructor -import eos.db import logging +from sqlalchemy.orm import reconstructor + +import eos.db +from eos.eqBase import EqBase + logger = logging.getLogger(__name__) -class Override(EqBase): +class Override(EqBase): def __init__(self, item, attr, value): self.itemID = item.ID self.__item = item diff --git a/eos/saveddata/price.py b/eos/saveddata/price.py index ea9b0ac92..8074373df 100644 --- a/eos/saveddata/price.py +++ b/eos/saveddata/price.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # Copyright (C) 2011 Anton Vorobyov # @@ -16,13 +16,14 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== import time + from sqlalchemy.orm import reconstructor -class Price(object): +class Price(object): def __init__(self, typeID): self.typeID = typeID self.time = 0 diff --git a/eos/saveddata/ship.py b/eos/saveddata/ship.py index 4094534e6..3cf179ec2 100644 --- a/eos/saveddata/ship.py +++ b/eos/saveddata/ship.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,16 +15,18 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, cappingAttrKeyCache -from eos.effectHandlerHelpers import HandledItem -from eos.saveddata.mode import Mode -import eos.db import logging +import eos.db +from eos.effectHandlerHelpers import HandledItem +from eos.modifiedAttributeDict import ModifiedAttributeDict, ItemAttrShortcut, cappingAttrKeyCache +from eos.saveddata.mode import Mode + logger = logging.getLogger(__name__) + class Ship(ItemAttrShortcut, HandledItem): EXTRA_ATTRIBUTES = { "armorRepair": 0, @@ -50,7 +52,7 @@ class Ship(ItemAttrShortcut, HandledItem): self.__itemModifiedAttributes.original = dict(self.item.attributes) self.__itemModifiedAttributes.original.update(self.EXTRA_ATTRIBUTES) self.__itemModifiedAttributes.overrides = self.item.overrides - + if "maximumRangeCap" in self.__itemModifiedAttributes.original: cappingAttrKeyCache["maxTargetRange"] = "maximumRangeCap" @@ -61,7 +63,8 @@ class Ship(ItemAttrShortcut, HandledItem): def validate(self, item): if item.category.name != "Ship": - raise ValueError('Passed item "%s" (category: (%s)) is not under Ship category'%(item.name, item.category.name)) + raise ValueError( + 'Passed item "%s" (category: (%s)) is not under Ship category' % (item.name, item.category.name)) @property def item(self): @@ -75,7 +78,7 @@ class Ship(ItemAttrShortcut, HandledItem): self.itemModifiedAttributes.clear() self.commandBonus = 0 - def calculateModifiedAttributes(self, fit, runTime, forceProjected = False): + def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): if forceProjected: return for effect in self.item.effects.itervalues(): if effect.runTime == runTime and effect.isType("passive"): diff --git a/eos/saveddata/targetResists.py b/eos/saveddata/targetResists.py index 8798ebf19..8b286b3f6 100644 --- a/eos/saveddata/targetResists.py +++ b/eos/saveddata/targetResists.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2014 Ryan Holmes # # This file is part of eos. @@ -15,15 +15,16 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== import re + class TargetResists(object): # also determined import/export order - VERY IMPORTANT DAMAGE_TYPES = ("em", "thermal", "kinetic", "explosive") - def __init__(self, emAmount = 0, thermalAmount = 0, kineticAmount = 0, explosiveAmount = 0): + def __init__(self, emAmount=0, thermalAmount=0, kineticAmount=0, explosiveAmount=0): self.emAmount = emAmount self.thermalAmount = thermalAmount self.kineticAmount = kineticAmount @@ -38,8 +39,8 @@ class TargetResists(object): try: if line.strip()[0] == "#": # comments continue - line = line.split('#',1)[0] # allows for comments - type, data = line.rsplit('=',1) + line = line.split('#', 1)[0] # allows for comments + type, data = line.rsplit('=', 1) type, data = type.strip(), data.split(',') except: # Data isn't in correct format, continue to next line @@ -56,11 +57,11 @@ class TargetResists(object): val = float(val) try: assert 0 <= val <= 100 - fields["%sAmount" % cls.DAMAGE_TYPES[index]] = val/100 + fields["%sAmount" % cls.DAMAGE_TYPES[index]] = val / 100 except: continue - if len(fields) == 4: # Avoid possible blank lines + if len(fields) == 4: # Avoid possible blank lines pattern = TargetResists(**fields) pattern.name = name.strip() patterns.append(pattern) @@ -68,13 +69,15 @@ class TargetResists(object): return patterns, numPatterns EXPORT_FORMAT = "TargetResists = %s,%.1f,%.1f,%.1f,%.1f\n" + @classmethod def exportPatterns(cls, *patterns): - out = "# Exported from pyfa\n#\n" + out = "# Exported from pyfa\n#\n" out += "# Values are in following format:\n" out += "# TargetResists = [name],[EM %],[Thermal %],[Kinetic %],[Explosive %]\n\n" for dp in patterns: - out += cls.EXPORT_FORMAT % (dp.name, dp.emAmount*100, dp.thermalAmount*100, dp.kineticAmount*100, dp.explosiveAmount*100) + out += cls.EXPORT_FORMAT % ( + dp.name, dp.emAmount * 100, dp.thermalAmount * 100, dp.kineticAmount * 100, dp.explosiveAmount * 100) return out.strip() diff --git a/eos/saveddata/user.py b/eos/saveddata/user.py index 26144feb0..25015c2c5 100644 --- a/eos/saveddata/user.py +++ b/eos/saveddata/user.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,15 +15,17 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== + +import hashlib +import random +import string from sqlalchemy.orm import validates -import hashlib -import string -import random + class User(object): - def __init__(self, username, password = None, admin = False): + def __init__(self, username, password=None, admin=False): self.username = username if password is not None: self.encodeAndSetPassword(password) self.admin = admin @@ -46,9 +48,11 @@ class User(object): @validates("ID", "username", "password", "admin") def validator(self, key, val): map = {"ID": lambda val: isinstance(val, int), - "username" : lambda val: isinstance(val, basestring), - "password" : lambda val: isinstance(val, basestring) and len(val) == 96, - "admin" : lambda val: isinstance(val, bool)} + "username": lambda val: isinstance(val, basestring), + "password": lambda val: isinstance(val, basestring) and len(val) == 96, + "admin": lambda val: isinstance(val, bool)} - if not map[key](val): raise ValueError(str(val) + " is not a valid value for " + key) - else: return val + if not map[key](val): + raise ValueError(str(val) + " is not a valid value for " + key) + else: + return val From d61251e9b310db4a07292372f029952fb6780d89 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:46:26 -0700 Subject: [PATCH 41/76] Reformatting eos (root) --- eos/__init__.py | 1 + eos/capSim.py | 51 ++++++++++++++++-------------------- eos/config.py | 10 ++++--- eos/effectHandlerHelpers.py | 23 +++++++++++----- eos/eqBase.py | 6 ++--- eos/gamedata.py | 41 ++++++++++++++++++----------- eos/mathUtils.py | 5 ++-- eos/modifiedAttributeDict.py | 17 +++++++----- eos/types.py | 4 +-- 9 files changed, 91 insertions(+), 67 deletions(-) diff --git a/eos/__init__.py b/eos/__init__.py index 208d2b1df..f6e146b5f 100644 --- a/eos/__init__.py +++ b/eos/__init__.py @@ -1,6 +1,7 @@ version = "0.2.3" tag = "git" + def test(): import tests.runTests import unittest diff --git a/eos/capSim.py b/eos/capSim.py index c0211dde9..d57567ae6 100644 --- a/eos/capSim.py +++ b/eos/capSim.py @@ -1,12 +1,12 @@ import heapq -from math import sqrt, exp import time - +from math import sqrt, exp DAY = 24 * 60 * 60 * 1000 -def lcm(a,b): - n = a*b + +def lcm(a, b): + n = a * b while b: a, b = b, a % b return n / a @@ -40,20 +40,19 @@ class CapSimulator(object): # relevant decimal digits of capacitor for LCM period optimization self.stability_precision = 1 - def scale_activation(self, duration, capNeed): for res in self.scale_resolutions: mod = duration % res if mod: - if mod > res/2.0: - mod = res-mod + if mod > res / 2.0: + mod = res - mod else: mod = -mod - if abs(mod) <= duration/100.0: + if abs(mod) <= duration / 100.0: # only adjust if the adjustment is less than 1% duration += mod - capNeed += float(mod)/duration * capNeed + capNeed += float(mod) / duration * capNeed break return duration, capNeed @@ -91,12 +90,12 @@ class CapSimulator(object): for (duration, capNeed, clipSize, disableStagger), amount in mods.iteritems(): if self.stagger and not disableStagger: if clipSize == 0: - duration = int(duration/amount) + duration = int(duration / amount) else: - stagger_amount = (duration*clipSize+10000)/(amount*clipSize) + stagger_amount = (duration * clipSize + 10000) / (amount * clipSize) for i in range(1, amount): heapq.heappush(self.state, - [i*stagger_amount, duration, + [i * stagger_amount, duration, capNeed, 0, clipSize]) else: capNeed *= amount @@ -109,13 +108,11 @@ class CapSimulator(object): heapq.heappush(self.state, [0, duration, capNeed, 0, clipSize]) - if disable_period: self.period = self.t_max else: self.period = period - def run(self): """Run the simulation""" @@ -135,11 +132,11 @@ class CapSimulator(object): capCapacity = self.capacitorCapacity tau = self.capacitorRecharge / 5.0 - cap_wrap = capCapacity # cap value at last period - cap_lowest = capCapacity # lowest cap value encountered - cap_lowest_pre = capCapacity # lowest cap value before activations - cap = capCapacity # current cap value - t_wrap = self.period # point in time of next period + cap_wrap = capCapacity # cap value at last period + cap_lowest = capCapacity # lowest cap value encountered + cap_lowest_pre = capCapacity # lowest cap value before activations + cap = capCapacity # current cap value + t_wrap = self.period # point in time of next period t_last = 0 t_max = self.t_max @@ -150,7 +147,7 @@ class CapSimulator(object): if t_now >= t_max: break - cap = ((1.0+(sqrt(cap/capCapacity)-1.0)*exp((t_last-t_now)/tau))**2)*capCapacity + cap = ((1.0 + (sqrt(cap / capCapacity) - 1.0) * exp((t_last - t_now) / tau)) ** 2) * capCapacity if t_now != t_last: if cap < cap_lowest_pre: @@ -182,7 +179,7 @@ class CapSimulator(object): if clipSize: if shot % clipSize == 0: shot = 0 - t_now += 10000 # include reload time + t_now += 10000 # include reload time activation[0] = t_now activation[3] = shot @@ -195,19 +192,17 @@ class CapSimulator(object): # calculate EVE's stability value try: - avgDrain = reduce(float.__add__, map(lambda x: x[2]/x[1], self.state), 0.0) - self.cap_stable_eve = 0.25 * (1.0 + sqrt(-(2.0 * avgDrain * tau - capCapacity)/capCapacity)) ** 2 + avgDrain = reduce(float.__add__, map(lambda x: x[2] / x[1], self.state), 0.0) + self.cap_stable_eve = 0.25 * (1.0 + sqrt(-(2.0 * avgDrain * tau - capCapacity) / capCapacity)) ** 2 except ValueError: self.cap_stable_eve = 0.0 - if cap > 0.0: # capacitor low/high water marks self.cap_stable_low = cap_lowest self.cap_stable_high = cap_lowest_pre else: - self.cap_stable_low =\ - self.cap_stable_high = 0.0 + self.cap_stable_low = \ + self.cap_stable_high = 0.0 - - self.runtime = time.time()-start + self.runtime = time.time() - start diff --git a/eos/config.py b/eos/config.py index 6e30afb03..63bf7695b 100644 --- a/eos/config.py +++ b/eos/config.py @@ -1,11 +1,13 @@ -from os.path import realpath, join, dirname, abspath import sys +from os.path import realpath, join, dirname, abspath debug = False gamedataCache = True saveddataCache = True -gamedata_connectionstring = 'sqlite:///' + unicode(realpath(join(dirname(abspath(__file__)), "..", "eve.db")), sys.getfilesystemencoding()) -saveddata_connectionstring = 'sqlite:///' + unicode(realpath(join(dirname(abspath(__file__)), "..", "saveddata", "saveddata.db")), sys.getfilesystemencoding()) +gamedata_connectionstring = 'sqlite:///' + unicode(realpath(join(dirname(abspath(__file__)), "..", "eve.db")), + sys.getfilesystemencoding()) +saveddata_connectionstring = 'sqlite:///' + unicode( + realpath(join(dirname(abspath(__file__)), "..", "saveddata", "saveddata.db")), sys.getfilesystemencoding()) -#Autodetect path, only change if the autodetection bugs out. +# Autodetect path, only change if the autodetection bugs out. path = dirname(unicode(__file__, sys.getfilesystemencoding())) diff --git a/eos/effectHandlerHelpers.py b/eos/effectHandlerHelpers.py index 75b51715d..2e42ef69f 100644 --- a/eos/effectHandlerHelpers.py +++ b/eos/effectHandlerHelpers.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,15 +15,17 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -#from sqlalchemy.orm.attributes import flag_modified -import eos.db -import eos.types +# from sqlalchemy.orm.attributes import flag_modified import logging +import eos.db +import eos.types + logger = logging.getLogger(__name__) + class HandledList(list): def filteredItemPreAssign(self, filter, *args, **kwargs): for element in self: @@ -108,11 +110,12 @@ class HandledList(list): def remove(self, thing): # We must flag it as modified, otherwise it not be removed from the database # @todo: flag_modified isn't in os x skel. need to rebuild to include - #flag_modified(thing, "itemID") + # flag_modified(thing, "itemID") if thing.isInvalid: # see GH issue #324 thing.itemID = 0 list.remove(self, thing) + class HandledModuleList(HandledList): def append(self, mod): emptyPosition = float("Inf") @@ -169,11 +172,12 @@ class HandledModuleList(HandledList): self[index] = mod def freeSlot(self, slot): - for i in range(len(self) -1, -1, -1): + for i in range(len(self) - 1, -1, -1): mod = self[i] if mod.getModifiedItemAttr("subSystemSlot") == slot: del self[i] + class HandledDroneCargoList(HandledList): def find(self, item): for o in self: @@ -190,6 +194,7 @@ class HandledDroneCargoList(HandledList): if thing.isInvalid: self.remove(thing) + class HandledImplantBoosterList(HandledList): def append(self, thing): if thing.isInvalid: @@ -206,6 +211,7 @@ class HandledImplantBoosterList(HandledList): HandledList.append(self, thing) + class HandledProjectedModList(HandledList): def append(self, proj): if proj.isInvalid: @@ -232,6 +238,7 @@ class HandledProjectedModList(HandledList): if not proj.item.isType("projected") and not isSystemEffect: self.remove(proj) + class HandledProjectedDroneList(HandledDroneCargoList): def append(self, proj): proj.projected = True @@ -241,6 +248,7 @@ class HandledProjectedDroneList(HandledDroneCargoList): if proj.isInvalid or not proj.item.isType("projected"): self.remove(proj) + class HandledItem(object): def preAssignItemAttr(self, *args, **kwargs): self.itemModifiedAttributes.preAssign(*args, **kwargs) @@ -257,6 +265,7 @@ class HandledItem(object): def forceItemAttr(self, *args, **kwargs): self.itemModifiedAttributes.force(*args, **kwargs) + class HandledCharge(object): def preAssignChargeAttr(self, *args, **kwargs): self.chargeModifiedAttributes.preAssign(*args, **kwargs) diff --git a/eos/eqBase.py b/eos/eqBase.py index 072436642..95d063019 100644 --- a/eos/eqBase.py +++ b/eos/eqBase.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== class EqBase(object): def __eq__(self, other): @@ -25,4 +25,4 @@ class EqBase(object): return type(self) != type(other) or self.ID != other.ID def __hash__(self): - return id(type(self)) + self.ID \ No newline at end of file + return id(type(self)) + self.ID diff --git a/eos/gamedata.py b/eos/gamedata.py index fd2a15f70..febc59ac8 100644 --- a/eos/gamedata.py +++ b/eos/gamedata.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,22 +15,22 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== import re +import traceback from sqlalchemy.orm import reconstructor -from eqBase import EqBase - -import traceback import eos.db +from eqBase import EqBase try: from collections import OrderedDict except ImportError: from utils.compat import OrderedDict + class Effect(EqBase): """ The effect handling class, it is used to proxy and load effect handler code, @@ -42,7 +42,7 @@ class Effect(EqBase): @ivar description: The description of this effect, this is usualy pretty useless @ivar published: Wether this effect is published or not, unpublished effects are typicaly unused. """ - #Filter to change names of effects to valid python method names + # Filter to change names of effects to valid python method names nameFilter = re.compile("[^A-Za-z0-9]") @reconstructor @@ -159,10 +159,11 @@ class Effect(EqBase): def effectDummy(*args, **kwargs): pass + class Item(EqBase): - MOVE_ATTRS = (4, # Mass + MOVE_ATTRS = (4, # Mass 38, # Capacity - 161) # Volume + 161) # Volume MOVE_ATTR_INFO = None @@ -301,14 +302,14 @@ class Item(EqBase): map = {1: "caldari", 2: "minmatar", 4: "amarr", - 5: "sansha", # Caldari + Amarr - 6: "blood", # Minmatar + Amarr + 5: "sansha", # Caldari + Amarr + 6: "blood", # Minmatar + Amarr 8: "gallente", - 9: "guristas", # Caldari + Gallente - 10: "angelserp", # Minmatar + Gallente, final race depends on the order of skills - 12: "sisters", # Amarr + Gallente + 9: "guristas", # Caldari + Gallente + 10: "angelserp", # Minmatar + Gallente, final race depends on the order of skills + 12: "sisters", # Amarr + Gallente 16: "jove", - 32: "sansha", # Incrusion Sansha + 32: "sansha", # Incrusion Sansha 128: "ore"} # Race is None by default race = None @@ -329,7 +330,6 @@ class Item(EqBase): self.__race = race return self.__race - @property def assistive(self): """Detects if item can be used as assistance""" @@ -387,38 +387,49 @@ class Item(EqBase): class MetaData(EqBase): pass + class EffectInfo(EqBase): pass + class AttributeInfo(EqBase): pass + class Attribute(EqBase): pass + class Category(EqBase): pass + class Group(EqBase): pass + class Icon(EqBase): pass + class MarketGroup(EqBase): def __repr__(self): return u"MarketGroup(ID={}, name={}, parent={}) at {}".format( self.ID, self.name, getattr(self.parent, "name", None), self.name, hex(id(self)) ).encode('utf8') + class MetaGroup(EqBase): pass + class MetaType(EqBase): pass + class Unit(EqBase): pass + class Traits(EqBase): pass diff --git a/eos/mathUtils.py b/eos/mathUtils.py index c56e88cf3..5de12c60f 100644 --- a/eos/mathUtils.py +++ b/eos/mathUtils.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Anton Vorobyov # # This file is part of eos. @@ -15,10 +15,11 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== import decimal + def floorFloat(value): """Round float down to integer""" # We have to convert float to str to keep compatibility with diff --git a/eos/modifiedAttributeDict.py b/eos/modifiedAttributeDict.py index dd2abcf7a..69ba2a01e 100644 --- a/eos/modifiedAttributeDict.py +++ b/eos/modifiedAttributeDict.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,14 +15,15 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== -from math import exp import collections +from math import exp defaultValuesCache = {} cappingAttrKeyCache = {} + class ItemAttrShortcut(object): def getModifiedItemAttr(self, key): if key in self.itemModifiedAttributes: @@ -30,6 +31,7 @@ class ItemAttrShortcut(object): else: return None + class ChargeAttrShortcut(object): def getModifiedChargeAttr(self, key): if key in self.chargeModifiedAttributes: @@ -37,8 +39,8 @@ class ChargeAttrShortcut(object): else: return None -class ModifiedAttributeDict(collections.MutableMapping): +class ModifiedAttributeDict(collections.MutableMapping): OVERRIDES = False class CalculationPlaceholder(): @@ -130,7 +132,8 @@ class ModifiedAttributeDict(collections.MutableMapping): return (key for key in all) def __contains__(self, key): - return (self.__original is not None and key in self.__original) or key in self.__modified or key in self.__intermediary + return ( + self.__original is not None and key in self.__original) or key in self.__modified or key in self.__intermediary def __placehold(self, key): """Create calculation placeholder in item's modified attribute dict""" @@ -197,7 +200,8 @@ class ModifiedAttributeDict(collections.MutableMapping): else: dv = attrInfo.defaultValue default = defaultValuesCache[key] = dv if dv is not None else 0.0 - val = self.__intermediary[key] if key in self.__intermediary else self.__preAssigns[key] if key in self.__preAssigns else self.getOriginal(key) if key in self.__original else default + val = self.__intermediary[key] if key in self.__intermediary else self.__preAssigns[ + key] if key in self.__preAssigns else self.getOriginal(key) if key in self.__original else default # We'll do stuff in the following order: # preIncrease > multiplier > stacking penalized multipliers > postIncrease @@ -354,6 +358,7 @@ class ModifiedAttributeDict(collections.MutableMapping): self.__placehold(attributeName) self.__afflict(attributeName, u"\u2263", value) + class Affliction(): def __init__(self, type, amount): self.type = type diff --git a/eos/types.py b/eos/types.py index 12e7eb281..f11443d1f 100644 --- a/eos/types.py +++ b/eos/types.py @@ -1,4 +1,4 @@ -#=============================================================================== +# =============================================================================== # Copyright (C) 2010 Diego Duclos # # This file is part of eos. @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with eos. If not, see . -#=============================================================================== +# =============================================================================== from eos.gamedata import Attribute, Category, Effect, Group, Icon, Item, MarketGroup, \ MetaGroup, AttributeInfo, Unit, EffectInfo, MetaType, MetaData, Traits From 126fa7be29228b6b4397d1cd47c0e91d65bdb6e5 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 11:51:12 -0700 Subject: [PATCH 42/76] remove trailing semicolon --- eos/db/gamedata/traits.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eos/db/gamedata/traits.py b/eos/db/gamedata/traits.py index 70cd5752f..1dbc4d43d 100644 --- a/eos/db/gamedata/traits.py +++ b/eos/db/gamedata/traits.py @@ -8,4 +8,4 @@ traits_table = Table("invtraits", gamedata_meta, Column("typeID", Integer, ForeignKey("invtypes.typeID"), primary_key=True), Column("traitText", String)) -mapper(Traits, traits_table); +mapper(Traits, traits_table) From 1dc15936ed2a456ab062f9f423e5e4466348639c Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 12:08:35 -0700 Subject: [PATCH 43/76] Create variables before they are referenced. Resolves attribute reference validation errors in pyCharm --- eos/db/saveddata/fit.py | 1 + eos/eqBase.py | 3 +++ eos/gamedata.py | 19 +++++++++++++++++++ eos/modifiedAttributeDict.py | 6 ++++++ eos/saveddata/character.py | 3 +++ eos/saveddata/damagePattern.py | 1 + eos/saveddata/fighter.py | 1 + eos/saveddata/fighterAbility.py | 1 + eos/saveddata/fit.py | 3 +++ eos/saveddata/module.py | 2 ++ eos/saveddata/targetResists.py | 1 + 11 files changed, 41 insertions(+) diff --git a/eos/db/saveddata/fit.py b/eos/db/saveddata/fit.py index 40b92af04..bf7e336e1 100644 --- a/eos/db/saveddata/fit.py +++ b/eos/db/saveddata/fit.py @@ -57,6 +57,7 @@ projectedFits_table = Table("projectedFits", saveddata_meta, class ProjectedFit(object): def __init__(self, sourceID, source_fit, amount=1, active=True): + self.victim_fit = None self.sourceID = sourceID self.source_fit = source_fit self.active = active diff --git a/eos/eqBase.py b/eos/eqBase.py index 95d063019..8c71e1a08 100644 --- a/eos/eqBase.py +++ b/eos/eqBase.py @@ -18,6 +18,9 @@ # =============================================================================== class EqBase(object): + def __init__(self): + self.ID = None + def __eq__(self, other): return type(self) == type(other) and self.ID == other.ID diff --git a/eos/gamedata.py b/eos/gamedata.py index febc59ac8..05fa84517 100644 --- a/eos/gamedata.py +++ b/eos/gamedata.py @@ -45,6 +45,10 @@ class Effect(EqBase): # Filter to change names of effects to valid python method names nameFilter = re.compile("[^A-Za-z0-9]") + def __init__(self): + super(Effect, self).__init__() + self.name = None + @reconstructor def init(self): """ @@ -167,6 +171,14 @@ class Item(EqBase): MOVE_ATTR_INFO = None + def __init__(self): + super(Item, self).__init__() + self.raceID = None + self.factionID = None + self.category = None + self.ID = None + self.effects = None + @classmethod def getMoveAttrInfo(cls): info = getattr(cls, "MOVE_ATTR_INFO", None) @@ -413,6 +425,13 @@ class Icon(EqBase): class MarketGroup(EqBase): + def __init__(self): + super(MarketGroup, self).__init__() + self.name = None + self.parent = None + self.name = None + self.ID = None + def __repr__(self): return u"MarketGroup(ID={}, name={}, parent={}) at {}".format( self.ID, self.name, getattr(self.parent, "name", None), self.name, hex(id(self)) diff --git a/eos/modifiedAttributeDict.py b/eos/modifiedAttributeDict.py index 69ba2a01e..5f5e898a7 100644 --- a/eos/modifiedAttributeDict.py +++ b/eos/modifiedAttributeDict.py @@ -25,6 +25,9 @@ cappingAttrKeyCache = {} class ItemAttrShortcut(object): + def __init__(self): + self.itemModifiedAttributes = None + def getModifiedItemAttr(self, key): if key in self.itemModifiedAttributes: return self.itemModifiedAttributes[key] @@ -33,6 +36,9 @@ class ItemAttrShortcut(object): class ChargeAttrShortcut(object): + def __init__(self): + self.chargeModifiedAttributes = None + def getModifiedChargeAttr(self, key): if key in self.chargeModifiedAttributes: return self.chargeModifiedAttributes[key] diff --git a/eos/saveddata/character.py b/eos/saveddata/character.py index cc7ad7162..49229eee2 100644 --- a/eos/saveddata/character.py +++ b/eos/saveddata/character.py @@ -93,6 +93,8 @@ class Character(object): return all0 def __init__(self, name, defaultLevel=None, initSkills=True): + self.ID = None + self.apiID = None self.savedName = name self.__owner = None self.defaultLevel = defaultLevel @@ -258,6 +260,7 @@ class Character(object): class Skill(HandledItem): def __init__(self, item, level=0, ro=False, learned=True): + self.character = None self.__item = item if not isinstance(item, int) else None self.itemID = item.ID if not isinstance(item, int) else item self.__level = level if learned else None diff --git a/eos/saveddata/damagePattern.py b/eos/saveddata/damagePattern.py index f10e6b50b..5ae544fb1 100644 --- a/eos/saveddata/damagePattern.py +++ b/eos/saveddata/damagePattern.py @@ -24,6 +24,7 @@ class DamagePattern(object): DAMAGE_TYPES = ("em", "thermal", "kinetic", "explosive") def __init__(self, emAmount=25, thermalAmount=25, kineticAmount=25, explosiveAmount=25): + self.name = None self.emAmount = emAmount self.thermalAmount = thermalAmount self.kineticAmount = kineticAmount diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index 52f0fb8d8..fe0b6146a 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -35,6 +35,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def __init__(self, item): """Initialize a fighter from the program""" + self.owner = None self.__item = item if self.isInvalid: diff --git a/eos/saveddata/fighterAbility.py b/eos/saveddata/fighterAbility.py index f2c09555a..b2af74e05 100644 --- a/eos/saveddata/fighterAbility.py +++ b/eos/saveddata/fighterAbility.py @@ -46,6 +46,7 @@ class FighterAbility(object): def __init__(self, effect): """Initialize from the program""" + self.fighter = None self.__effect = effect self.effectID = effect.ID if effect is not None else None self.active = False diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index f937d1e5e..3282edf20 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -58,6 +58,9 @@ class Fit(object): def __init__(self, ship=None, name=""): """Initialize a fit from the program""" # use @mode.setter's to set __attr and IDs. This will set mode as well + self.ID = None + self.owner = None + self.projectedOnto = None self.ship = ship if self.ship: self.ship.parent = self diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 5236ef58f..45f8773b7 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -80,6 +80,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def __init__(self, item): """Initialize a module from the program""" + self.owner = None + self.dummySlot = None self.__item = item if item is not None and self.isInvalid: diff --git a/eos/saveddata/targetResists.py b/eos/saveddata/targetResists.py index 8b286b3f6..adbbf6191 100644 --- a/eos/saveddata/targetResists.py +++ b/eos/saveddata/targetResists.py @@ -25,6 +25,7 @@ class TargetResists(object): DAMAGE_TYPES = ("em", "thermal", "kinetic", "explosive") def __init__(self, emAmount=0, thermalAmount=0, kineticAmount=0, explosiveAmount=0): + self.name = None self.emAmount = emAmount self.thermalAmount = thermalAmount self.kineticAmount = kineticAmount From 74ce79ba8fd5004236ad6137ea034be6789d952b Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 12:11:30 -0700 Subject: [PATCH 44/76] Add inspection exception to ignore reassignment of self --- eos/saveddata/fit.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 3282edf20..36c2f8d13 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -480,6 +480,8 @@ class Fit(object): if self == targetFit: copied = self # original fit shadow = True + # Don't inspect this, we genuinely want to reassign self + # noinspection PyMethodFirstArgAssignment self = copy.deepcopy(self) self.fleet = copied.fleet logger.debug("Handling self projection - making shadow copy of fit. %r => %r", copied, self) From 0c0eb327f769f319e73028efa999f573da62c49a Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 12:25:31 -0700 Subject: [PATCH 45/76] lots of PEP8 cleanup --- eos/db/saveddata/fit.py | 2 +- eos/eqBase.py | 1 + eos/modifiedAttributeDict.py | 8 ++++---- eos/saveddata/booster.py | 8 +++++--- eos/saveddata/character.py | 11 ++++++----- eos/saveddata/drone.py | 10 ++++++---- eos/saveddata/fighter.py | 10 +++++++--- eos/saveddata/fighterAbility.py | 6 +++--- eos/saveddata/fit.py | 18 ++++++++++++------ eos/saveddata/fleet.py | 6 ++++-- eos/saveddata/implant.py | 8 +++++--- eos/saveddata/module.py | 18 +++++++++++------- 12 files changed, 65 insertions(+), 41 deletions(-) diff --git a/eos/db/saveddata/fit.py b/eos/db/saveddata/fit.py index bf7e336e1..977b34e5e 100644 --- a/eos/db/saveddata/fit.py +++ b/eos/db/saveddata/fit.py @@ -98,7 +98,7 @@ mapper(Fit, fits_table, "_Fit__modules": relation( Module, collection_class=HandledModuleList, - primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected == False), + primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected is False), order_by=modules_table.c.position, cascade='all, delete, delete-orphan'), "_Fit__projectedModules": relation( diff --git a/eos/eqBase.py b/eos/eqBase.py index 8c71e1a08..e85c5a8c0 100644 --- a/eos/eqBase.py +++ b/eos/eqBase.py @@ -17,6 +17,7 @@ # along with eos. If not, see . # =============================================================================== + class EqBase(object): def __init__(self): self.ID = None diff --git a/eos/modifiedAttributeDict.py b/eos/modifiedAttributeDict.py index 5f5e898a7..e0e846c3c 100644 --- a/eos/modifiedAttributeDict.py +++ b/eos/modifiedAttributeDict.py @@ -306,7 +306,7 @@ class ModifiedAttributeDict(collections.MutableMapping): tbl = self.__postIncreases else: raise ValueError("position should be either pre or post") - if not attributeName in tbl: + if attributeName not in tbl: tbl[attributeName] = 0 tbl[attributeName] += increase self.__placehold(attributeName) @@ -323,15 +323,15 @@ class ModifiedAttributeDict(collections.MutableMapping): # If we're asked to do stacking penalized multiplication, append values # to per penalty group lists if stackingPenalties: - if not attributeName in self.__penalizedMultipliers: + if attributeName not in self.__penalizedMultipliers: self.__penalizedMultipliers[attributeName] = {} - if not penaltyGroup in self.__penalizedMultipliers[attributeName]: + if penaltyGroup not in self.__penalizedMultipliers[attributeName]: self.__penalizedMultipliers[attributeName][penaltyGroup] = [] tbl = self.__penalizedMultipliers[attributeName][penaltyGroup] tbl.append(multiplier) # Non-penalized multiplication factors go to the single list else: - if not attributeName in self.__multipliers: + if attributeName not in self.__multipliers: self.__multipliers[attributeName] = 1 self.__multipliers[attributeName] *= multiplier diff --git a/eos/saveddata/booster.py b/eos/saveddata/booster.py index 84369633d..0a46d662c 100644 --- a/eos/saveddata/booster.py +++ b/eos/saveddata/booster.py @@ -98,7 +98,7 @@ class Booster(HandledItem, ItemAttrShortcut): return self.__item def __calculateSlot(self, item): - if not "boosterness" in item.attributes: + if "boosterness" not in item.attributes: raise ValueError("Passed item is not a booster") return int(item.attributes["boosterness"].value) @@ -107,8 +107,10 @@ class Booster(HandledItem, ItemAttrShortcut): self.itemModifiedAttributes.clear() def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): - if forceProjected: return - if not self.active: return + if forceProjected: + return + if not self.active: + return for effect in self.item.effects.itervalues(): if effect.runTime == runTime and effect.isType("passive"): effect.handler(fit, self, ("booster",)) diff --git a/eos/saveddata/character.py b/eos/saveddata/character.py index 49229eee2..767441a6a 100644 --- a/eos/saveddata/character.py +++ b/eos/saveddata/character.py @@ -216,7 +216,8 @@ class Character(object): element.boostItemAttr(*args, **kwargs) def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): - if forceProjected: return + if forceProjected: + return for skill in self.skills: fit.register(skill) skill.calculateModifiedAttributes(fit, runTime) @@ -303,7 +304,7 @@ class Skill(HandledItem): if (level < 0 or level > 5) and level is not None: raise ValueError(str(level) + " is not a valid value for level") - if hasattr(self, "_Skill__ro") and self.__ro == True: + if hasattr(self, "_Skill__ro") and self.__ro is True: raise ReadOnlyException() self.activeLevel = level @@ -337,8 +338,8 @@ class Skill(HandledItem): return for effect in item.effects.itervalues(): - if effect.runTime == runTime and effect.isType("passive") and ( - not fit.isStructure or effect.isType("structure")): + if effect.runTime == runTime and effect.isType("passive") and \ + (not fit.isStructure or effect.isType("structure")): try: effect.handler(fit, self, ("skill",)) except AttributeError: @@ -356,7 +357,7 @@ class Skill(HandledItem): @validates("characterID", "skillID", "level") def validator(self, key, val): - if hasattr(self, "_Skill__ro") and self.__ro == True and key != "characterID": + if hasattr(self, "_Skill__ro") and self.__ro is True and key != "characterID": raise ReadOnlyException() map = {"characterID": lambda val: isinstance(val, int), diff --git a/eos/saveddata/drone.py b/eos/saveddata/drone.py index 03e52fe7c..f847c1764 100644 --- a/eos/saveddata/drone.py +++ b/eos/saveddata/drone.py @@ -165,7 +165,8 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): "ecmBurstRange", "maxRange") for attr in attrs: maxRange = self.getModifiedItemAttr(attr) - if maxRange is not None: return maxRange + if maxRange is not None: + return maxRange if self.charge is not None: delay = self.getModifiedChargeAttr("explosionDelay") speed = self.getModifiedChargeAttr("maxVelocity") @@ -180,7 +181,8 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): attrs = ("falloff", "falloffEffectiveness") for attr in attrs: falloff = self.getModifiedItemAttr(attr) - if falloff is not None: return falloff + if falloff is not None: + return falloff @validates("ID", "itemID", "chargeID", "amount", "amountActive") def validator(self, key, val): @@ -230,8 +232,8 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): for effect in self.item.effects.itervalues(): if effect.runTime == runTime and \ - ((projected == True and effect.isType("projected")) or - projected == False and effect.isType("passive")): + ((projected is True and effect.isType("projected")) or + projected is False and effect.isType("passive")): # See GH issue #765 if effect.getattr('grouped'): effect.handler(fit, self, context) diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index fe0b6146a..635fa6db8 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -167,7 +167,9 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): self.__dps += dps self.__volley += volley - # For forward compatability this assumes a fighter can have more than 2 damaging abilities and/or multiple that use charges. + # For forward compatability this assumes a fighter + # can have more than 2 damaging abilities and/or + # multiple that use charges. if self.owner.factorReload: activeTimes = [] reloadTimes = [] @@ -196,7 +198,8 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): "ecmBurstRange", "maxRange") for attr in attrs: maxRange = self.getModifiedItemAttr(attr) - if maxRange is not None: return maxRange + if maxRange is not None: + return maxRange if self.charge is not None: delay = self.getModifiedChargeAttr("explosionDelay") speed = self.getModifiedChargeAttr("maxVelocity") @@ -211,7 +214,8 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): attrs = ("falloff", "falloffEffectiveness") for attr in attrs: falloff = self.getModifiedItemAttr(attr) - if falloff is not None: return falloff + if falloff is not None: + return falloff @validates("ID", "itemID", "chargeID", "amount", "amountActive") def validator(self, key, val): diff --git a/eos/saveddata/fighterAbility.py b/eos/saveddata/fighterAbility.py index b2af74e05..2f49336f6 100644 --- a/eos/saveddata/fighterAbility.py +++ b/eos/saveddata/fighterAbility.py @@ -96,9 +96,9 @@ class FighterAbility(object): @property def reloadTime(self): - return self.fighter.getModifiedItemAttr("fighterRefuelingTime") + (self.REARM_TIME_MAPPING[ - self.fighter.getModifiedItemAttr( - "fighterSquadronRole")] or 0 if self.hasCharges else 0) * self.numShots + return self.fighter.getModifiedItemAttr("fighterRefuelingTime") + \ + (self.REARM_TIME_MAPPING[self.fighter.getModifiedItemAttr( + "fighterSquadronRole")] or 0 if self.hasCharges else 0) * self.numShots @property def numShots(self): diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 36c2f8d13..baef29d1a 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -18,7 +18,6 @@ # =============================================================================== import copy -import logging import time from copy import deepcopy from itertools import chain @@ -877,7 +876,8 @@ class Fit(object): # calculate how much the repper can rep stability & add to total totalPeakRecharge = self.capRecharge for mod in repairers: - if capUsed > totalPeakRecharge: break + if capUsed > totalPeakRecharge: + break cycleTime = mod.cycleTime capPerSec = mod.capUse if capPerSec is not None and cycleTime is not None: @@ -886,8 +886,7 @@ class Fit(object): # Add the sustainable amount amount = mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) - sustainable[groupStoreMap[mod.item.group.name]] += sustainability * ( - amount / (cycleTime / 1000.0)) + sustainable[groupStoreMap[mod.item.group.name]] += sustainability * (amount / (cycleTime / 1000.0)) capUsed += capPerSec sustainable["passiveShield"] = self.calculateShieldRecharge() @@ -1096,8 +1095,15 @@ class Fit(object): copy.targetResists = self.targetResists toCopy = ( - "modules", "drones", "fighters", "cargo", "implants", "boosters", "projectedModules", "projectedDrones", - "projectedFighters") + "modules", + "drones", + "fighters", + "cargo", + "implants", + "boosters", + "projectedModules", + "projectedDrones", + "projectedFighters") for name in toCopy: orig = getattr(self, name) c = getattr(copy, name) diff --git a/eos/saveddata/fleet.py b/eos/saveddata/fleet.py index fccb95ed8..6fc1b6330 100644 --- a/eos/saveddata/fleet.py +++ b/eos/saveddata/fleet.py @@ -27,7 +27,8 @@ class Fleet(object): def calculateModifiedAttributes(self): # Make sure ALL fits in the gang have been calculated for c in chain(self.wings, (self.leader,)): - if c is not None: c.calculateModifiedAttributes() + if c is not None: + c.calculateModifiedAttributes() leader = self.leader self.booster = booster = self.booster if self.booster is not None else leader @@ -91,7 +92,8 @@ class Fleet(object): class Wing(object): def calculateModifiedAttributes(self): for c in chain(self.squads, (self.leader,)): - if c is not None: c.calculateModifiedAttributes() + if c is not None: + c.calculateModifiedAttributes() def calculateGangBonusses(self, store): self.broken = False diff --git a/eos/saveddata/implant.py b/eos/saveddata/implant.py index 7a4bf1790..4682403aa 100644 --- a/eos/saveddata/implant.py +++ b/eos/saveddata/implant.py @@ -79,7 +79,7 @@ class Implant(HandledItem, ItemAttrShortcut): return self.__item def __calculateSlot(self, item): - if not "implantness" in item.attributes: + if "implantness" not in item.attributes: raise ValueError("Passed item is not an implant") return int(item.attributes["implantness"].value) @@ -88,8 +88,10 @@ class Implant(HandledItem, ItemAttrShortcut): self.itemModifiedAttributes.clear() def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): - if forceProjected: return - if not self.active: return + if forceProjected: + return + if not self.active: + return for effect in self.item.effects.itervalues(): if effect.runTime == runTime and effect.isType("passive"): effect.handler(fit, self, ("implant",)) diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 45f8773b7..2c9a65254 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -169,8 +169,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def isInvalid(self): if self.isEmpty: return False - return self.__item is None or (self.__item.category.name not in ( - "Module", "Subsystem", "Structure Module") and self.__item.group.name != "Effect Beacon") + return self.__item is None or (self.__item.category.name not in ("Module", "Subsystem", "Structure Module") and self.__item.group.name != "Effect Beacon") @property def numCharges(self): @@ -252,7 +251,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): "shipScanRange", "surveyScanRange") for attr in attrs: maxRange = self.getModifiedItemAttr(attr) - if maxRange is not None: return maxRange + if maxRange is not None: + return maxRange if self.charge is not None: try: chargeName = self.charge.group.name @@ -280,7 +280,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): attrs = ("falloffEffectiveness", "falloff", "shipScanFalloff") for attr in attrs: falloff = self.getModifiedItemAttr(attr) - if falloff is not None: return falloff + if falloff is not None: + return falloff @property def slot(self): @@ -513,7 +514,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def isValidCharge(self, charge): # Check sizes, if 'charge size > module volume' it won't fit - if charge is None: return True + if charge is None: + return True chargeVolume = charge.volume moduleCapacity = self.item.capacity if chargeVolume is not None and moduleCapacity is not None and chargeVolume > moduleCapacity: @@ -528,8 +530,10 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): chargeGroup = charge.groupID for i in range(5): itemChargeGroup = self.getModifiedItemAttr('chargeGroup' + str(i)) - if itemChargeGroup is None: continue - if itemChargeGroup == chargeGroup: return True + if itemChargeGroup is None: + continue + if itemChargeGroup == chargeGroup: + return True return False From 69a122a271e9e9e9126bb5517535ef3acdf1a190 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 12:26:03 -0700 Subject: [PATCH 46/76] more PEP8 cleanup --- eos/db/saveddata/queries.py | 2 +- eos/saveddata/ship.py | 3 ++- eos/saveddata/user.py | 6 ++++-- eos/types.py | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/eos/db/saveddata/queries.py b/eos/db/saveddata/queries.py index 45bf6756a..d9406eeb1 100644 --- a/eos/db/saveddata/queries.py +++ b/eos/db/saveddata/queries.py @@ -93,7 +93,7 @@ if configVal is True: def removeCachedEntry(type, ID): - if not type in queryCache: + if type not in queryCache: return functionCache = queryCache[type] for _, localCache in functionCache.iteritems(): diff --git a/eos/saveddata/ship.py b/eos/saveddata/ship.py index 3cf179ec2..80f961331 100644 --- a/eos/saveddata/ship.py +++ b/eos/saveddata/ship.py @@ -79,7 +79,8 @@ class Ship(ItemAttrShortcut, HandledItem): self.commandBonus = 0 def calculateModifiedAttributes(self, fit, runTime, forceProjected=False): - if forceProjected: return + if forceProjected: + return for effect in self.item.effects.itervalues(): if effect.runTime == runTime and effect.isType("passive"): # Ships have effects that utilize the level of a skill as an diff --git a/eos/saveddata/user.py b/eos/saveddata/user.py index 25015c2c5..8c3905a0d 100644 --- a/eos/saveddata/user.py +++ b/eos/saveddata/user.py @@ -27,7 +27,8 @@ from sqlalchemy.orm import validates class User(object): def __init__(self, username, password=None, admin=False): self.username = username - if password is not None: self.encodeAndSetPassword(password) + if password is not None: + self.encodeAndSetPassword(password) self.admin = admin def encodeAndSetPassword(self, pw): @@ -38,7 +39,8 @@ class User(object): self.password = ("%s%s" % (h.hexdigest(), salt)) def isPasswordValid(self, pw): - if self.password is None: return False + if self.password is None: + return False salt = self.password[-32:] h = hashlib.new("sha256") h.update(pw) diff --git a/eos/types.py b/eos/types.py index f11443d1f..cc32f4fa9 100644 --- a/eos/types.py +++ b/eos/types.py @@ -18,7 +18,7 @@ # =============================================================================== from eos.gamedata import Attribute, Category, Effect, Group, Icon, Item, MarketGroup, \ -MetaGroup, AttributeInfo, Unit, EffectInfo, MetaType, MetaData, Traits + MetaGroup, AttributeInfo, Unit, EffectInfo, MetaType, MetaData, Traits from eos.saveddata.price import Price from eos.saveddata.user import User from eos.saveddata.crestchar import CrestChar From 44c76f0b98e196271347db3c7d7f25b64cfc1c7d Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 12:29:33 -0700 Subject: [PATCH 47/76] Even more PEP8 cleanup --- eos/db/saveddata/fit.py | 2 +- eos/modifiedAttributeDict.py | 2 +- eos/saveddata/implant.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eos/db/saveddata/fit.py b/eos/db/saveddata/fit.py index 977b34e5e..38256899c 100644 --- a/eos/db/saveddata/fit.py +++ b/eos/db/saveddata/fit.py @@ -106,7 +106,7 @@ mapper(Fit, fits_table, collection_class=HandledProjectedModList, cascade='all, delete, delete-orphan', single_parent=True, - primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected == True)), + primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected is True)), "owner": relation( User, backref="fits"), diff --git a/eos/modifiedAttributeDict.py b/eos/modifiedAttributeDict.py index e0e846c3c..47ce0c71a 100644 --- a/eos/modifiedAttributeDict.py +++ b/eos/modifiedAttributeDict.py @@ -306,7 +306,7 @@ class ModifiedAttributeDict(collections.MutableMapping): tbl = self.__postIncreases else: raise ValueError("position should be either pre or post") - if attributeName not in tbl: + if attributeName not in tbl: tbl[attributeName] = 0 tbl[attributeName] += increase self.__placehold(attributeName) diff --git a/eos/saveddata/implant.py b/eos/saveddata/implant.py index 4682403aa..ef6852c2c 100644 --- a/eos/saveddata/implant.py +++ b/eos/saveddata/implant.py @@ -79,7 +79,7 @@ class Implant(HandledItem, ItemAttrShortcut): return self.__item def __calculateSlot(self, item): - if "implantness" not in item.attributes: + if "implantness" not in item.attributes: raise ValueError("Passed item is not an implant") return int(item.attributes["implantness"].value) From 7cf4134a7347e1412687eeaec2a6de97da23cc5f Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 13:32:35 -0700 Subject: [PATCH 48/76] SQLAlchemy doesns't like is, requires == Oops. --- eos/db/saveddata/fit.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eos/db/saveddata/fit.py b/eos/db/saveddata/fit.py index 38256899c..bf7e336e1 100644 --- a/eos/db/saveddata/fit.py +++ b/eos/db/saveddata/fit.py @@ -98,7 +98,7 @@ mapper(Fit, fits_table, "_Fit__modules": relation( Module, collection_class=HandledModuleList, - primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected is False), + primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected == False), order_by=modules_table.c.position, cascade='all, delete, delete-orphan'), "_Fit__projectedModules": relation( @@ -106,7 +106,7 @@ mapper(Fit, fits_table, collection_class=HandledProjectedModList, cascade='all, delete, delete-orphan', single_parent=True, - primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected is True)), + primaryjoin=and_(modules_table.c.fitID == fits_table.c.ID, modules_table.c.projected == True)), "owner": relation( User, backref="fits"), From cd28375019f14e8cb9f54a0b20bc745803584094 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 13:32:57 -0700 Subject: [PATCH 49/76] Put some imports back. Prooooobably not needed but vOv --- eos/db/__init__.py | 5 ++++- eos/db/saveddata/queries.py | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/eos/db/__init__.py b/eos/db/__init__.py index bd46ecc71..e0dd4d135 100644 --- a/eos/db/__init__.py +++ b/eos/db/__init__.py @@ -20,7 +20,10 @@ import threading from sqlalchemy import MetaData, create_engine -from sqlalchemy.orm import sessionmaker +from sqlalchemy.orm import sessionmaker, scoped_session +from sqlalchemy.ext.declarative import declarative_base +from sqlalchemy import pool + import migration from eos import config diff --git a/eos/db/saveddata/queries.py b/eos/db/saveddata/queries.py index d9406eeb1..bcecb3b69 100644 --- a/eos/db/saveddata/queries.py +++ b/eos/db/saveddata/queries.py @@ -25,6 +25,8 @@ from eos.db.saveddata.fleet import squadmembers_table from eos.db.util import processEager, processWhere from eos.types import * +import eos.config + configVal = getattr(eos.config, "saveddataCache", None) if configVal is True: import weakref From a314cd7cfd8824acb8cd64cf089e69e937a698f2 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 13:33:25 -0700 Subject: [PATCH 50/76] Revert adding the __init___ --- eos/eqBase.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/eos/eqBase.py b/eos/eqBase.py index e85c5a8c0..a400aec33 100644 --- a/eos/eqBase.py +++ b/eos/eqBase.py @@ -19,9 +19,6 @@ class EqBase(object): - def __init__(self): - self.ID = None - def __eq__(self, other): return type(self) == type(other) and self.ID == other.ID From 2a0a572b76d147eb13e27684236f3bfe4e1d4f70 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 14:03:31 -0700 Subject: [PATCH 51/76] PEP8 formatting! \o/ --- eos/effects/armorwarfarearmorhpreplacer.py | 3 ++- eos/effects/commandbonusecmmultiplywithcommandbonushidden.py | 3 ++- eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py | 3 ++- eos/effects/commandbonustdmultiplywithcommandbonushidden.py | 3 ++- eos/effects/commandbonustpmultiplywithcommandbonushidden.py | 3 ++- eos/effects/energydestabilizationnew.py | 2 +- eos/effects/energyneutralizerentity.py | 2 +- eos/effects/energyneutralizerfalloff.py | 2 +- eos/effects/entityenergyneutralizerfalloff.py | 2 +- eos/effects/fighterabilityecm.py | 3 ++- eos/effects/fighterabilitystasiswebifier.py | 3 ++- eos/effects/fighterabilitywarpdisruption.py | 5 ++--- eos/effects/flagshipmultirelayeffect.py | 4 ++-- eos/effects/gangabmwdfactorboost.py | 3 ++- eos/effects/gangarmorhardening.py | 3 ++- eos/effects/gangarmorrepaircapreducerselfandprojected.py | 3 ++- eos/effects/gangarmorrepairspeedamplifierselfandprojected.py | 3 ++- eos/effects/gangbonussignature.py | 3 ++- ...ggasharvesterandiceharvesterandmininglasercapneedbonus.py | 3 ++- ...gasharvesterandiceharvesterandmininglaserdurationbonus.py | 3 ++- eos/effects/ganginformationwarfarerangebonuswithecmburst.py | 3 ++- ...asericeharvestergasharvestersurveyscannermaxrangebonus.py | 3 ++- eos/effects/gangpropulsionjammingboost.py | 3 ++- eos/effects/gangsensorintegrity.py | 3 ++- eos/effects/gangshieldboosteandtransportercapacitorneed.py | 3 ++- eos/effects/gangshieldboosterandtransporterspeed.py | 3 ++- eos/effects/gangshieldhardening.py | 3 ++- eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py | 3 ++- eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py | 3 ++- eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py | 3 ++- .../modulebonusinformationwarfarelinkreconoperation.py | 3 ++- .../modulebonusinformationwarfarelinksensorintegrity.py | 3 ++- ...dulebonusminingforemanlinkharvestercapacitorefficiency.py | 3 ++- eos/effects/modulebonusminingforemanlinklaseroptimization.py | 3 ++- ...odulebonusminingforemanlinkmininglaserfieldenhancement.py | 3 ++- eos/effects/modulebonussiegewarfarelinkactiveshielding.py | 3 ++- eos/effects/modulebonussiegewarfarelinkshieldefficiency.py | 3 ++- eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py | 3 ++- .../modulebonusskirmishwarfarelinkevasivemaneuvers.py | 3 ++- .../modulebonusskirmishwarfarelinkinterdictionmaneuvers.py | 3 ++- eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py | 3 ++- eos/effects/shipbonustitana4fleetbonus.py | 3 ++- eos/effects/shipbonustitanc4fleetbonus.py | 3 ++- eos/effects/shipbonustitang4fleetbonus.py | 3 ++- eos/effects/shipbonustitanm4fleetbonus.py | 3 ++- 45 files changed, 86 insertions(+), 48 deletions(-) diff --git a/eos/effects/armorwarfarearmorhpreplacer.py b/eos/effects/armorwarfarearmorhpreplacer.py index ded78d742..12a52e8b9 100644 --- a/eos/effects/armorwarfarearmorhpreplacer.py +++ b/eos/effects/armorwarfarearmorhpreplacer.py @@ -10,5 +10,6 @@ gangBoost = "armorHP" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("armorHpBonus2")) diff --git a/eos/effects/commandbonusecmmultiplywithcommandbonushidden.py b/eos/effects/commandbonusecmmultiplywithcommandbonushidden.py index 86cd051f8..9b3ef297c 100644 --- a/eos/effects/commandbonusecmmultiplywithcommandbonushidden.py +++ b/eos/effects/commandbonusecmmultiplywithcommandbonushidden.py @@ -8,7 +8,8 @@ type = "active", "gang" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return for scanType in ("Magnetometric", "Radar", "Ladar", "Gravimetric"): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Electronic Warfare"), "scan%sStrengthBonus" % scanType, diff --git a/eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py b/eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py index 6aa6b166a..dfc9a123d 100644 --- a/eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py +++ b/eos/effects/commandbonusrsdmultiplywithcommandbonushidden.py @@ -8,7 +8,8 @@ type = "active", "gang" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), "maxTargetRangeBonus", module.getModifiedItemAttr("commandBonusRSD")) fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), diff --git a/eos/effects/commandbonustdmultiplywithcommandbonushidden.py b/eos/effects/commandbonustdmultiplywithcommandbonushidden.py index 35883e374..64c792f9f 100644 --- a/eos/effects/commandbonustdmultiplywithcommandbonushidden.py +++ b/eos/effects/commandbonustdmultiplywithcommandbonushidden.py @@ -8,7 +8,8 @@ type = "active", "gang" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return for bonus in ( "missileVelocityBonus", "explosionDelayBonus", diff --git a/eos/effects/commandbonustpmultiplywithcommandbonushidden.py b/eos/effects/commandbonustpmultiplywithcommandbonushidden.py index e3d39bcfb..9778289eb 100644 --- a/eos/effects/commandbonustpmultiplywithcommandbonushidden.py +++ b/eos/effects/commandbonustpmultiplywithcommandbonushidden.py @@ -8,7 +8,8 @@ type = "active", "gang" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Target Painting"), "signatureRadiusBonus", module.getModifiedItemAttr("commandBonusTP"), stackingPenalties=True) diff --git a/eos/effects/energydestabilizationnew.py b/eos/effects/energydestabilizationnew.py index ec5b63ef4..2ed0b08b4 100644 --- a/eos/effects/energydestabilizationnew.py +++ b/eos/effects/energydestabilizationnew.py @@ -6,7 +6,7 @@ type = "active", "projected" def handler(fit, src, context): if "projected" in context and ( - (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): multiplier = src.amountActive if hasattr(src, "amountActive") else 1 amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/energyneutralizerentity.py b/eos/effects/energyneutralizerentity.py index a96bae5e5..73238b700 100644 --- a/eos/effects/energyneutralizerentity.py +++ b/eos/effects/energyneutralizerentity.py @@ -9,7 +9,7 @@ type = "active", "projected" def handler(fit, src, context): if "projected" in context and ( - (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/energyneutralizerfalloff.py b/eos/effects/energyneutralizerfalloff.py index eb4d3be3f..f1b0418d5 100644 --- a/eos/effects/energyneutralizerfalloff.py +++ b/eos/effects/energyneutralizerfalloff.py @@ -9,7 +9,7 @@ type = "active", "projected" def handler(fit, src, context): if "projected" in context and ( - (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/entityenergyneutralizerfalloff.py b/eos/effects/entityenergyneutralizerfalloff.py index 14df191ad..7ef733074 100644 --- a/eos/effects/entityenergyneutralizerfalloff.py +++ b/eos/effects/entityenergyneutralizerfalloff.py @@ -9,7 +9,7 @@ type = "active", "projected" def handler(fit, src, context): if "projected" in context and ( - (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("energyNeutralizerDuration") diff --git a/eos/effects/fighterabilityecm.py b/eos/effects/fighterabilityecm.py index 51f7ffc4a..743df38ed 100644 --- a/eos/effects/fighterabilityecm.py +++ b/eos/effects/fighterabilityecm.py @@ -13,7 +13,8 @@ type = "projected", "active" def handler(fit, module, context): - if "projected" not in context: return + if "projected" not in context: + return # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) strModifier = 1 - module.getModifiedItemAttr("{}Strength{}".format(prefix, fit.scanType)) / fit.scanStrength diff --git a/eos/effects/fighterabilitystasiswebifier.py b/eos/effects/fighterabilitystasiswebifier.py index 5d0bf6a26..cf5143f98 100644 --- a/eos/effects/fighterabilitystasiswebifier.py +++ b/eos/effects/fighterabilitystasiswebifier.py @@ -13,5 +13,6 @@ type = "active", "projected" def handler(fit, src, context): - if "projected" not in context: return + if "projected" not in context: + return fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("{}SpeedPenalty".format(prefix))) diff --git a/eos/effects/fighterabilitywarpdisruption.py b/eos/effects/fighterabilitywarpdisruption.py index 9d4b0c2fb..0d7013434 100644 --- a/eos/effects/fighterabilitywarpdisruption.py +++ b/eos/effects/fighterabilitywarpdisruption.py @@ -6,12 +6,11 @@ effects, and thus this effect file contains some custom information useful only # User-friendly name for the ability displayName = "Warp Disruption" - prefix = "fighterAbilityWarpDisruption" - type = "active", "projected" def handler(fit, src, context): - if "projected" not in context: return + if "projected" not in context: + return fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("{}PointStrength".format(prefix))) diff --git a/eos/effects/flagshipmultirelayeffect.py b/eos/effects/flagshipmultirelayeffect.py index 85d24180b..f3bdfde3a 100644 --- a/eos/effects/flagshipmultirelayeffect.py +++ b/eos/effects/flagshipmultirelayeffect.py @@ -9,6 +9,6 @@ def handler(fit, module, context): # Note: we increase maxGroupActive by two. # If we only increased it by one, we'd get the number to stay equal # As Comman Processors use one themselves too - fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator" and \ - "maxGroupActive" in mod.itemModifiedAttributes, + fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator" and + "maxGroupActive" in mod.itemModifiedAttributes, "maxGroupActive", 1) diff --git a/eos/effects/gangabmwdfactorboost.py b/eos/effects/gangabmwdfactorboost.py index 3f37988f3..350458eb1 100644 --- a/eos/effects/gangabmwdfactorboost.py +++ b/eos/effects/gangabmwdfactorboost.py @@ -7,7 +7,8 @@ gangBoost = "speedFactor" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", "speedFactor", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) diff --git a/eos/effects/gangarmorhardening.py b/eos/effects/gangarmorhardening.py index 6ab7fbbd9..6390ddaa0 100644 --- a/eos/effects/gangarmorhardening.py +++ b/eos/effects/gangarmorhardening.py @@ -7,7 +7,8 @@ gangBoost = "armorResistance" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return for damageType in ("Em", "Thermal", "Explosive", "Kinetic"): fit.ship.boostItemAttr("armor%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/gangarmorrepaircapreducerselfandprojected.py b/eos/effects/gangarmorrepaircapreducerselfandprojected.py index 5a0ac8da9..23ebfa8ac 100644 --- a/eos/effects/gangarmorrepaircapreducerselfandprojected.py +++ b/eos/effects/gangarmorrepaircapreducerselfandprojected.py @@ -7,7 +7,8 @@ gangBoost = "armorRepairCapacitorNeed" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangarmorrepairspeedamplifierselfandprojected.py b/eos/effects/gangarmorrepairspeedamplifierselfandprojected.py index e21b24ce0..80c5eebe9 100644 --- a/eos/effects/gangarmorrepairspeedamplifierselfandprojected.py +++ b/eos/effects/gangarmorrepairspeedamplifierselfandprojected.py @@ -7,7 +7,8 @@ gangBoost = "armorRepairDuration" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangbonussignature.py b/eos/effects/gangbonussignature.py index 9dbb3526b..fa5056d8f 100644 --- a/eos/effects/gangbonussignature.py +++ b/eos/effects/gangbonussignature.py @@ -7,6 +7,7 @@ gangBoost = "signatureRadius" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) diff --git a/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py b/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py index f528a5c03..06ae2e090 100644 --- a/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py +++ b/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py @@ -7,7 +7,8 @@ gangBoost = "miningCapacitorNeed" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py b/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py index 05e22fbc3..76de01a22 100644 --- a/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py +++ b/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py @@ -7,7 +7,8 @@ gangBoost = "miningDuration" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/ganginformationwarfarerangebonuswithecmburst.py b/eos/effects/ganginformationwarfarerangebonuswithecmburst.py index a66ef7cd1..26b4675f5 100644 --- a/eos/effects/ganginformationwarfarerangebonuswithecmburst.py +++ b/eos/effects/ganginformationwarfarerangebonuswithecmburst.py @@ -7,7 +7,8 @@ gangBoost = "electronicMaxRange" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return groups = ("Target Painter", "Weapon Disruptor", "Sensor Dampener", "ECM", "Burst Jammer") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py b/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py index 02d4e913d..1d5ba8f52 100644 --- a/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py +++ b/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py @@ -7,7 +7,8 @@ gangBoost = "miningMaxRange" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting") or mod.item.requiresSkill( "Ice Harvesting") or mod.item.requiresSkill("Mining"), "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/gangpropulsionjammingboost.py b/eos/effects/gangpropulsionjammingboost.py index 596e72792..451f94e20 100644 --- a/eos/effects/gangpropulsionjammingboost.py +++ b/eos/effects/gangpropulsionjammingboost.py @@ -7,7 +7,8 @@ gangBoost = "interdictionMaxRange" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return groups = ("Stasis Web", "Warp Scrambler") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/gangsensorintegrity.py b/eos/effects/gangsensorintegrity.py index ec1932f0b..9899aef45 100644 --- a/eos/effects/gangsensorintegrity.py +++ b/eos/effects/gangsensorintegrity.py @@ -8,7 +8,8 @@ gangBonus = "commandBonus" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) for scanType in ("Gravimetric", "Radar", "Ladar", "Magnetometric"): diff --git a/eos/effects/gangshieldboosteandtransportercapacitorneed.py b/eos/effects/gangshieldboosteandtransportercapacitorneed.py index dcf28b37a..8b5c9fd64 100644 --- a/eos/effects/gangshieldboosteandtransportercapacitorneed.py +++ b/eos/effects/gangshieldboosteandtransportercapacitorneed.py @@ -7,7 +7,8 @@ gangBoost = "shieldRepairCapacitorNeed" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangshieldboosterandtransporterspeed.py b/eos/effects/gangshieldboosterandtransporterspeed.py index 468baaa25..2b23b1c39 100644 --- a/eos/effects/gangshieldboosterandtransporterspeed.py +++ b/eos/effects/gangshieldboosterandtransporterspeed.py @@ -7,7 +7,8 @@ gangBoost = "shieldRepairDuration" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangshieldhardening.py b/eos/effects/gangshieldhardening.py index 27a1adad0..7937a1906 100644 --- a/eos/effects/gangshieldhardening.py +++ b/eos/effects/gangshieldhardening.py @@ -7,7 +7,8 @@ gangBoost = "shieldResistance" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return for damageType in ("Em", "Explosive", "Thermal", "Kinetic"): fit.ship.boostItemAttr("shield%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py b/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py index c57048020..e48ef2fad 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py +++ b/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py @@ -9,7 +9,8 @@ gangBoost = "armorRepairCapacitorNeed" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py b/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py index 50783dc4b..f86ce5df9 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py +++ b/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py @@ -9,7 +9,8 @@ gangBoost = "armorResistance" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return for damageType in ("Em", "Thermal", "Explosive", "Kinetic"): fit.ship.boostItemAttr("armor%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py b/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py index 805dcc862..af25e4c6c 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py +++ b/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py @@ -9,7 +9,8 @@ gangBoost = "armorRepairDuration" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonusinformationwarfarelinkreconoperation.py b/eos/effects/modulebonusinformationwarfarelinkreconoperation.py index 459a8d15c..6c642921e 100644 --- a/eos/effects/modulebonusinformationwarfarelinkreconoperation.py +++ b/eos/effects/modulebonusinformationwarfarelinkreconoperation.py @@ -9,7 +9,8 @@ gangBoost = "electronicMaxRange" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return groups = ("Target Painter", "Weapon Disruptor", "Sensor Dampener", "ECM", "Burst Jammer") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py b/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py index a82b0e0a2..a05a0d69f 100644 --- a/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py +++ b/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py @@ -10,7 +10,8 @@ gangBonus = "commandBonus" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) for scanType in ("Gravimetric", "Radar", "Ladar", "Magnetometric"): diff --git a/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py b/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py index e34bb129c..d95329dc5 100644 --- a/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py +++ b/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py @@ -7,7 +7,8 @@ gangBoost = "miningCapacitorNeed" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/modulebonusminingforemanlinklaseroptimization.py b/eos/effects/modulebonusminingforemanlinklaseroptimization.py index 611319f68..a9f3706c3 100644 --- a/eos/effects/modulebonusminingforemanlinklaseroptimization.py +++ b/eos/effects/modulebonusminingforemanlinklaseroptimization.py @@ -7,7 +7,8 @@ gangBoost = "miningDuration" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py b/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py index c6c85cac6..8d1b84691 100644 --- a/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py +++ b/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py @@ -7,7 +7,8 @@ gangBoost = "miningMaxRange" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting") or mod.item.requiresSkill( "Ice Harvesting") or mod.item.requiresSkill("Mining"), "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonussiegewarfarelinkactiveshielding.py b/eos/effects/modulebonussiegewarfarelinkactiveshielding.py index 374547e9e..7190f5240 100644 --- a/eos/effects/modulebonussiegewarfarelinkactiveshielding.py +++ b/eos/effects/modulebonussiegewarfarelinkactiveshielding.py @@ -9,7 +9,8 @@ gangBoost = "shieldRepairDuration" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py b/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py index c47100854..6de2b9464 100644 --- a/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py +++ b/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py @@ -9,7 +9,8 @@ gangBoost = "shieldRepairCapacitorNeed" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py b/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py index 87dee5ff1..6398f3319 100644 --- a/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py +++ b/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py @@ -9,7 +9,8 @@ gangBoost = "shieldResistance" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return for damageType in ("Em", "Explosive", "Thermal", "Kinetic"): fit.ship.boostItemAttr("shield%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py b/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py index 233464c07..ab097b5dc 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py +++ b/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py @@ -9,6 +9,7 @@ gangBoost = "signatureRadius" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) diff --git a/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py b/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py index 4a413e03e..eb5136b37 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py +++ b/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py @@ -9,7 +9,8 @@ gangBoost = "interdictionMaxRange" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return groups = ("Stasis Web", "Warp Scrambler") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py b/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py index 297f2ebcf..d0111ef29 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py +++ b/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py @@ -9,7 +9,8 @@ gangBoost = "speedFactor" # runTime = "late" def handler(fit, module, context): - if "gang" not in context: return + if "gang" not in context: + return fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", "speedFactor", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) diff --git a/eos/effects/shipbonustitana4fleetbonus.py b/eos/effects/shipbonustitana4fleetbonus.py index 5112410b7..298b50ac7 100644 --- a/eos/effects/shipbonustitana4fleetbonus.py +++ b/eos/effects/shipbonustitana4fleetbonus.py @@ -10,6 +10,7 @@ runTime = "late" def handler(fit, src, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitanc4fleetbonus.py b/eos/effects/shipbonustitanc4fleetbonus.py index 19c4e0c67..7ad64416f 100644 --- a/eos/effects/shipbonustitanc4fleetbonus.py +++ b/eos/effects/shipbonustitanc4fleetbonus.py @@ -10,6 +10,7 @@ runTime = "late" def handler(fit, src, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitang4fleetbonus.py b/eos/effects/shipbonustitang4fleetbonus.py index 2c4a35c0f..c042ef769 100644 --- a/eos/effects/shipbonustitang4fleetbonus.py +++ b/eos/effects/shipbonustitang4fleetbonus.py @@ -10,6 +10,7 @@ runTime = "late" def handler(fit, src, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitanm4fleetbonus.py b/eos/effects/shipbonustitanm4fleetbonus.py index c99b0523c..604eeaac4 100644 --- a/eos/effects/shipbonustitanm4fleetbonus.py +++ b/eos/effects/shipbonustitanm4fleetbonus.py @@ -10,6 +10,7 @@ runTime = "late" def handler(fit, src, context): - if "gang" not in context: return + if "gang" not in context: + return fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) From fd3e0bbebfe3d30d46173990254fb989054e266b Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 14:14:34 -0700 Subject: [PATCH 52/76] Formatting and spacing --- eos/effects/energydestabilizationnew.py | 2 +- eos/effects/energyneutralizerentity.py | 2 +- eos/effects/energyneutralizerfalloff.py | 2 +- eos/effects/entityenergyneutralizerfalloff.py | 2 +- eos/effects/flagshipmultirelayeffect.py | 2 +- ...ganggasharvesterandiceharvesterandmininglasercapneedbonus.py | 2 +- ...anggasharvesterandiceharvesterandmininglaserdurationbonus.py | 2 +- eos/effects/ganginformationwarfarerangebonuswithecmburst.py | 2 +- ...nglasericeharvestergasharvestersurveyscannermaxrangebonus.py | 2 +- eos/effects/gangpropulsionjammingboost.py | 2 +- eos/effects/gangsensorintegrity.py | 2 +- eos/effects/gangshieldboosteandtransportercapacitorneed.py | 2 +- eos/effects/gangshieldboosterandtransporterspeed.py | 2 +- eos/effects/gangshieldhardening.py | 2 +- eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py | 2 +- eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py | 2 +- eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py | 2 +- eos/effects/modulebonusinformationwarfarelinkreconoperation.py | 2 +- eos/effects/modulebonusinformationwarfarelinksensorintegrity.py | 2 +- .../modulebonusminingforemanlinkharvestercapacitorefficiency.py | 2 +- eos/effects/modulebonusminingforemanlinklaseroptimization.py | 2 +- .../modulebonusminingforemanlinkmininglaserfieldenhancement.py | 2 +- eos/effects/modulebonussiegewarfarelinkshieldefficiency.py | 2 +- eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py | 2 +- eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py | 2 +- .../modulebonusskirmishwarfarelinkinterdictionmaneuvers.py | 2 +- eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py | 2 +- eos/effects/shipbonustitana4fleetbonus.py | 2 +- eos/effects/shipbonustitanc4fleetbonus.py | 2 +- eos/effects/shipbonustitang4fleetbonus.py | 2 +- eos/effects/shipbonustitanm4fleetbonus.py | 2 +- 31 files changed, 31 insertions(+), 31 deletions(-) diff --git a/eos/effects/energydestabilizationnew.py b/eos/effects/energydestabilizationnew.py index 2ed0b08b4..6cf82afa5 100644 --- a/eos/effects/energydestabilizationnew.py +++ b/eos/effects/energydestabilizationnew.py @@ -6,7 +6,7 @@ type = "active", "projected" def handler(fit, src, context): if "projected" in context and ( - (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): multiplier = src.amountActive if hasattr(src, "amountActive") else 1 amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/energyneutralizerentity.py b/eos/effects/energyneutralizerentity.py index 73238b700..8532f49df 100644 --- a/eos/effects/energyneutralizerentity.py +++ b/eos/effects/energyneutralizerentity.py @@ -9,7 +9,7 @@ type = "active", "projected" def handler(fit, src, context): if "projected" in context and ( - (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/energyneutralizerfalloff.py b/eos/effects/energyneutralizerfalloff.py index f1b0418d5..212f05ffa 100644 --- a/eos/effects/energyneutralizerfalloff.py +++ b/eos/effects/energyneutralizerfalloff.py @@ -9,7 +9,7 @@ type = "active", "projected" def handler(fit, src, context): if "projected" in context and ( - (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("duration") diff --git a/eos/effects/entityenergyneutralizerfalloff.py b/eos/effects/entityenergyneutralizerfalloff.py index 7ef733074..0783295cf 100644 --- a/eos/effects/entityenergyneutralizerfalloff.py +++ b/eos/effects/entityenergyneutralizerfalloff.py @@ -9,7 +9,7 @@ type = "active", "projected" def handler(fit, src, context): if "projected" in context and ( - (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): + (hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")): amount = src.getModifiedItemAttr("energyNeutralizerAmount") time = src.getModifiedItemAttr("energyNeutralizerDuration") diff --git a/eos/effects/flagshipmultirelayeffect.py b/eos/effects/flagshipmultirelayeffect.py index f3bdfde3a..17cdd48e4 100644 --- a/eos/effects/flagshipmultirelayeffect.py +++ b/eos/effects/flagshipmultirelayeffect.py @@ -10,5 +10,5 @@ def handler(fit, module, context): # If we only increased it by one, we'd get the number to stay equal # As Comman Processors use one themselves too fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator" and - "maxGroupActive" in mod.itemModifiedAttributes, + "maxGroupActive" in mod.itemModifiedAttributes, "maxGroupActive", 1) diff --git a/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py b/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py index 06ae2e090..162b2a074 100644 --- a/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py +++ b/eos/effects/ganggasharvesterandiceharvesterandmininglasercapneedbonus.py @@ -8,7 +8,7 @@ gangBoost = "miningCapacitorNeed" def handler(fit, module, context): if "gang" not in context: - return + return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py b/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py index 76de01a22..2ffa23100 100644 --- a/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py +++ b/eos/effects/ganggasharvesterandiceharvesterandmininglaserdurationbonus.py @@ -8,7 +8,7 @@ gangBoost = "miningDuration" def handler(fit, module, context): if "gang" not in context: - return + return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/ganginformationwarfarerangebonuswithecmburst.py b/eos/effects/ganginformationwarfarerangebonuswithecmburst.py index 26b4675f5..6ce5d0c40 100644 --- a/eos/effects/ganginformationwarfarerangebonuswithecmburst.py +++ b/eos/effects/ganginformationwarfarerangebonuswithecmburst.py @@ -8,7 +8,7 @@ gangBoost = "electronicMaxRange" def handler(fit, module, context): if "gang" not in context: - return + return groups = ("Target Painter", "Weapon Disruptor", "Sensor Dampener", "ECM", "Burst Jammer") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py b/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py index 1d5ba8f52..8320e6b11 100644 --- a/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py +++ b/eos/effects/gangmininglasericeharvestergasharvestersurveyscannermaxrangebonus.py @@ -8,7 +8,7 @@ gangBoost = "miningMaxRange" def handler(fit, module, context): if "gang" not in context: - return + return fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting") or mod.item.requiresSkill( "Ice Harvesting") or mod.item.requiresSkill("Mining"), "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/gangpropulsionjammingboost.py b/eos/effects/gangpropulsionjammingboost.py index 451f94e20..7b400afcd 100644 --- a/eos/effects/gangpropulsionjammingboost.py +++ b/eos/effects/gangpropulsionjammingboost.py @@ -8,7 +8,7 @@ gangBoost = "interdictionMaxRange" def handler(fit, module, context): if "gang" not in context: - return + return groups = ("Stasis Web", "Warp Scrambler") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/gangsensorintegrity.py b/eos/effects/gangsensorintegrity.py index 9899aef45..e4b41c809 100644 --- a/eos/effects/gangsensorintegrity.py +++ b/eos/effects/gangsensorintegrity.py @@ -9,7 +9,7 @@ gangBonus = "commandBonus" def handler(fit, module, context): if "gang" not in context: - return + return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) for scanType in ("Gravimetric", "Radar", "Ladar", "Magnetometric"): diff --git a/eos/effects/gangshieldboosteandtransportercapacitorneed.py b/eos/effects/gangshieldboosteandtransportercapacitorneed.py index 8b5c9fd64..d54f6d384 100644 --- a/eos/effects/gangshieldboosteandtransportercapacitorneed.py +++ b/eos/effects/gangshieldboosteandtransportercapacitorneed.py @@ -8,7 +8,7 @@ gangBoost = "shieldRepairCapacitorNeed" def handler(fit, module, context): if "gang" not in context: - return + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangshieldboosterandtransporterspeed.py b/eos/effects/gangshieldboosterandtransporterspeed.py index 2b23b1c39..fa2321d2b 100644 --- a/eos/effects/gangshieldboosterandtransporterspeed.py +++ b/eos/effects/gangshieldboosterandtransporterspeed.py @@ -8,7 +8,7 @@ gangBoost = "shieldRepairDuration" def handler(fit, module, context): if "gang" not in context: - return + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/gangshieldhardening.py b/eos/effects/gangshieldhardening.py index 7937a1906..b1bd5d449 100644 --- a/eos/effects/gangshieldhardening.py +++ b/eos/effects/gangshieldhardening.py @@ -8,7 +8,7 @@ gangBoost = "shieldResistance" def handler(fit, module, context): if "gang" not in context: - return + return for damageType in ("Em", "Explosive", "Thermal", "Kinetic"): fit.ship.boostItemAttr("shield%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py b/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py index e48ef2fad..046f8f3ef 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py +++ b/eos/effects/modulebonusarmoredwarfarelinkdamagecontrol.py @@ -10,7 +10,7 @@ gangBoost = "armorRepairCapacitorNeed" def handler(fit, module, context): if "gang" not in context: - return + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py b/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py index f86ce5df9..d1738a803 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py +++ b/eos/effects/modulebonusarmoredwarfarelinkpassivedefense.py @@ -10,7 +10,7 @@ gangBoost = "armorResistance" def handler(fit, module, context): if "gang" not in context: - return + return for damageType in ("Em", "Thermal", "Explosive", "Kinetic"): fit.ship.boostItemAttr("armor%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py b/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py index af25e4c6c..382886520 100644 --- a/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py +++ b/eos/effects/modulebonusarmoredwarfarelinkrapidrepair.py @@ -10,7 +10,7 @@ gangBoost = "armorRepairDuration" def handler(fit, module, context): if "gang" not in context: - return + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), "duration", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonusinformationwarfarelinkreconoperation.py b/eos/effects/modulebonusinformationwarfarelinkreconoperation.py index 6c642921e..039caa229 100644 --- a/eos/effects/modulebonusinformationwarfarelinkreconoperation.py +++ b/eos/effects/modulebonusinformationwarfarelinkreconoperation.py @@ -10,7 +10,7 @@ gangBoost = "electronicMaxRange" def handler(fit, module, context): if "gang" not in context: - return + return groups = ("Target Painter", "Weapon Disruptor", "Sensor Dampener", "ECM", "Burst Jammer") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py b/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py index a05a0d69f..e2c6d9c5e 100644 --- a/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py +++ b/eos/effects/modulebonusinformationwarfarelinksensorintegrity.py @@ -11,7 +11,7 @@ gangBonus = "commandBonus" def handler(fit, module, context): if "gang" not in context: - return + return fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) for scanType in ("Gravimetric", "Radar", "Ladar", "Magnetometric"): diff --git a/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py b/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py index d95329dc5..933c1c72b 100644 --- a/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py +++ b/eos/effects/modulebonusminingforemanlinkharvestercapacitorefficiency.py @@ -8,7 +8,7 @@ gangBoost = "miningCapacitorNeed" def handler(fit, module, context): if "gang" not in context: - return + return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/modulebonusminingforemanlinklaseroptimization.py b/eos/effects/modulebonusminingforemanlinklaseroptimization.py index a9f3706c3..8c457d34c 100644 --- a/eos/effects/modulebonusminingforemanlinklaseroptimization.py +++ b/eos/effects/modulebonusminingforemanlinklaseroptimization.py @@ -8,7 +8,7 @@ gangBoost = "miningDuration" def handler(fit, module, context): if "gang" not in context: - return + return groups = ("Mining Laser", "Strip Miner", "Frequency Mining Laser", "Ice Harvester", "Gas Cloud Harvester") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, diff --git a/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py b/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py index 8d1b84691..d655adff8 100644 --- a/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py +++ b/eos/effects/modulebonusminingforemanlinkmininglaserfieldenhancement.py @@ -8,7 +8,7 @@ gangBoost = "miningMaxRange" def handler(fit, module, context): if "gang" not in context: - return + return fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting") or mod.item.requiresSkill( "Ice Harvesting") or mod.item.requiresSkill("Mining"), "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py b/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py index 6de2b9464..d01e05168 100644 --- a/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py +++ b/eos/effects/modulebonussiegewarfarelinkshieldefficiency.py @@ -10,7 +10,7 @@ gangBoost = "shieldRepairCapacitorNeed" def handler(fit, module, context): if "gang" not in context: - return + return fit.modules.filteredItemBoost( lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", module.getModifiedItemAttr("commandBonus")) diff --git a/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py b/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py index 6398f3319..35a7df928 100644 --- a/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py +++ b/eos/effects/modulebonussiegewarfarelinkshieldharmonizing.py @@ -10,7 +10,7 @@ gangBoost = "shieldResistance" def handler(fit, module, context): if "gang" not in context: - return + return for damageType in ("Em", "Explosive", "Thermal", "Kinetic"): fit.ship.boostItemAttr("shield%sDamageResonance" % damageType, module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py b/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py index ab097b5dc..2e62234ae 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py +++ b/eos/effects/modulebonusskirmishwarfarelinkevasivemaneuvers.py @@ -10,6 +10,6 @@ gangBoost = "signatureRadius" def handler(fit, module, context): if "gang" not in context: - return + return fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) diff --git a/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py b/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py index eb5136b37..ddf4ce6f7 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py +++ b/eos/effects/modulebonusskirmishwarfarelinkinterdictionmaneuvers.py @@ -10,7 +10,7 @@ gangBoost = "interdictionMaxRange" def handler(fit, module, context): if "gang" not in context: - return + return groups = ("Stasis Web", "Warp Scrambler") fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", module.getModifiedItemAttr("commandBonus"), diff --git a/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py b/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py index d0111ef29..0675241d3 100644 --- a/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py +++ b/eos/effects/modulebonusskirmishwarfarelinkrapiddeployment.py @@ -10,7 +10,7 @@ gangBoost = "speedFactor" def handler(fit, module, context): if "gang" not in context: - return + return fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", "speedFactor", module.getModifiedItemAttr("commandBonus"), stackingPenalties=True) diff --git a/eos/effects/shipbonustitana4fleetbonus.py b/eos/effects/shipbonustitana4fleetbonus.py index 298b50ac7..665ed5b3f 100644 --- a/eos/effects/shipbonustitana4fleetbonus.py +++ b/eos/effects/shipbonustitana4fleetbonus.py @@ -11,6 +11,6 @@ runTime = "late" def handler(fit, src, context): if "gang" not in context: - return + return fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitanc4fleetbonus.py b/eos/effects/shipbonustitanc4fleetbonus.py index 7ad64416f..7120e3349 100644 --- a/eos/effects/shipbonustitanc4fleetbonus.py +++ b/eos/effects/shipbonustitanc4fleetbonus.py @@ -11,6 +11,6 @@ runTime = "late" def handler(fit, src, context): if "gang" not in context: - return + return fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitang4fleetbonus.py b/eos/effects/shipbonustitang4fleetbonus.py index c042ef769..1e3ab3969 100644 --- a/eos/effects/shipbonustitang4fleetbonus.py +++ b/eos/effects/shipbonustitang4fleetbonus.py @@ -11,6 +11,6 @@ runTime = "late" def handler(fit, src, context): if "gang" not in context: - return + return fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) diff --git a/eos/effects/shipbonustitanm4fleetbonus.py b/eos/effects/shipbonustitanm4fleetbonus.py index 604eeaac4..3cb74a1c9 100644 --- a/eos/effects/shipbonustitanm4fleetbonus.py +++ b/eos/effects/shipbonustitanm4fleetbonus.py @@ -11,6 +11,6 @@ runTime = "late" def handler(fit, src, context): if "gang" not in context: - return + return fit.ship.boostItemAttr(gangBoost, src.getModifiedItemAttr(gangBonus) * src.parent.character.getSkill(gangBonusSkill).level) From 928246a8cab668b787d17476b2a92d1091966970 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 19 Oct 2016 14:26:46 -0700 Subject: [PATCH 53/76] Even more PEP8 fixes! Also, create a variable so we can't reference it and have it not exist. Because that would be bad. --- eos/effects/maraudermodeeffect26.py | 12 ++++++------ eos/effects/modulebonusbastionmodule.py | 12 ++++++------ eos/effects/modulebonussiegemodule.py | 10 +++++----- eos/effects/structureenergyneutralizerfalloff.py | 1 + .../structurewarpscrambleblockmwdwithnpceffect.py | 4 ++-- eos/effects/warpscrambleblockmwdwithnpceffect.py | 5 +++-- 6 files changed, 23 insertions(+), 21 deletions(-) diff --git a/eos/effects/maraudermodeeffect26.py b/eos/effects/maraudermodeeffect26.py index 724ce492b..f892a5a52 100644 --- a/eos/effects/maraudermodeeffect26.py +++ b/eos/effects/maraudermodeeffect26.py @@ -15,20 +15,20 @@ def handler(fit, module, context): stackingPenalties=penalize, penaltyGroup="preMul") # Turrets - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or \ - mod.item.requiresSkill("Large Hybrid Turret") or \ + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or + mod.item.requiresSkill("Large Hybrid Turret") or mod.item.requiresSkill("Large Projectile Turret"), "maxRange", module.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or \ - mod.item.requiresSkill("Large Hybrid Turret") or \ + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or + mod.item.requiresSkill("Large Hybrid Turret") or mod.item.requiresSkill("Large Projectile Turret"), "falloff", module.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) # Missiles - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes") or \ - mod.charge.requiresSkill("Cruise Missiles") or \ + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes") or + mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Heavy Missiles"), "maxVelocity", module.getModifiedItemAttr("missileVelocityBonus")) diff --git a/eos/effects/modulebonusbastionmodule.py b/eos/effects/modulebonusbastionmodule.py index cbf2e03c8..09f0bd008 100644 --- a/eos/effects/modulebonusbastionmodule.py +++ b/eos/effects/modulebonusbastionmodule.py @@ -18,20 +18,20 @@ def handler(fit, src, context): stackingPenalties=penalize, penaltyGroup="preMul") # Turrets - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or \ - mod.item.requiresSkill("Large Hybrid Turret") or \ + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or + mod.item.requiresSkill("Large Hybrid Turret") or mod.item.requiresSkill("Large Projectile Turret"), "maxRange", src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or \ - mod.item.requiresSkill("Large Hybrid Turret") or \ + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or + mod.item.requiresSkill("Large Hybrid Turret") or mod.item.requiresSkill("Large Projectile Turret"), "falloff", src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) # Missiles - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes") or \ - mod.charge.requiresSkill("Cruise Missiles") or \ + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes") or + mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Heavy Missiles"), "maxVelocity", src.getModifiedItemAttr("missileVelocityBonus")) diff --git a/eos/effects/modulebonussiegemodule.py b/eos/effects/modulebonussiegemodule.py index 885255b33..c63e33440 100644 --- a/eos/effects/modulebonussiegemodule.py +++ b/eos/effects/modulebonussiegemodule.py @@ -8,20 +8,20 @@ runTime = "early" def handler(fit, src, context): # Turrets - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret") or \ - mod.item.requiresSkill("Capital Hybrid Turret") or \ + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret") or + mod.item.requiresSkill("Capital Hybrid Turret") or mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", src.getModifiedItemAttr("siegeTurretDamageBonus")) # Missiles for type in ("kinetic", "thermal", "explosive", "em"): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes") or \ - mod.charge.requiresSkill("XL Cruise Missiles") or \ + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes") or + mod.charge.requiresSkill("XL Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), "%sDamage" % type, src.getModifiedItemAttr("siegeMissileDamageBonus")) # Reppers - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation") or \ + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation") or mod.item.requiresSkill("Capital Repair Systems"), "duration", src.getModifiedItemAttr("siegeLocalLogisticsDurationBonus")) diff --git a/eos/effects/structureenergyneutralizerfalloff.py b/eos/effects/structureenergyneutralizerfalloff.py index 63cb38251..8b6bf5846 100644 --- a/eos/effects/structureenergyneutralizerfalloff.py +++ b/eos/effects/structureenergyneutralizerfalloff.py @@ -5,6 +5,7 @@ type = "active", "projected" def handler(fit, container, context): + amount = 0 if "projected" in context and ((hasattr(container, "state") and container.state >= State.ACTIVE) or hasattr(container, "amountActive")): amount = container.getModifiedItemAttr("energyNeutralizerAmount") diff --git a/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py b/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py index bc2300a68..27bf8932d 100644 --- a/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py +++ b/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py @@ -1,9 +1,9 @@ +from eos.types import State + # Not used by any item runTime = "early" type = "projected", "active" -from eos.types import State - def handler(fit, module, context): if "projected" not in context: diff --git a/eos/effects/warpscrambleblockmwdwithnpceffect.py b/eos/effects/warpscrambleblockmwdwithnpceffect.py index dce99b7ce..c220fb4fd 100644 --- a/eos/effects/warpscrambleblockmwdwithnpceffect.py +++ b/eos/effects/warpscrambleblockmwdwithnpceffect.py @@ -2,11 +2,12 @@ # # Used by: # Modules named like: Warp Scrambler (26 of 26) -runTime = "early" -type = "projected", "active" from eos.types import State +runTime = "early" +type = "projected", "active" + def handler(fit, module, context): if "projected" not in context: From 595c139ca884e3e4bb25628f4a28b105c3c1ce30 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Fri, 21 Oct 2016 10:53:47 -0700 Subject: [PATCH 54/76] Add button for exports --- gui/itemStats.py | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/gui/itemStats.py b/gui/itemStats.py index f154d277a..a2775a688 100644 --- a/gui/itemStats.py +++ b/gui/itemStats.py @@ -30,6 +30,7 @@ import service import config from gui.contextMenu import ContextMenu from gui.utils.numberFormatter import formatAmount +import csv try: from collections import OrderedDict @@ -299,6 +300,9 @@ class ItemParams (wx.Panel): self.toggleViewBtn = wx.ToggleButton( self, wx.ID_ANY, u"Toggle view mode", wx.DefaultPosition, wx.DefaultSize, 0 ) bSizer.Add( self.toggleViewBtn, 0, wx.ALIGN_CENTER_VERTICAL) + self.exportStatsBtn = wx.ToggleButton( self, wx.ID_ANY, u"Export Item Stats", wx.DefaultPosition, wx.DefaultSize, 0 ) + bSizer.Add( self.exportStatsBtn, 0, wx.ALIGN_CENTER_VERTICAL) + if stuff is not None: self.refreshBtn = wx.Button( self, wx.ID_ANY, u"Refresh", wx.DefaultPosition, wx.DefaultSize, wx.BU_EXACTFIT ) bSizer.Add( self.refreshBtn, 0, wx.ALIGN_CENTER_VERTICAL) @@ -309,6 +313,7 @@ class ItemParams (wx.Panel): self.PopulateList() self.toggleViewBtn.Bind(wx.EVT_TOGGLEBUTTON,self.ToggleViewMode) + self.exportStatsBtn.Bind(wx.EVT_TOGGLEBUTTON, self.ExportItemStats) def _fetchValues(self): if self.stuff is None: @@ -347,6 +352,49 @@ class ItemParams (wx.Panel): self.UpdateList() event.Skip() + def ExportItemStats(self, event): + self.UpdateList() + event.Skip() + + exportFileName = self.item.name + " (" + str(self.item.ID) + ").csv" + + saveFileDialog = wx.FileDialog(self, "Save CSV file", "", exportFileName, + "CSV files (*.csv)|*.csv", wx.FD_SAVE | wx.FD_OVERWRITE_PROMPT) + + if saveFileDialog.ShowModal() == wx.ID_CANCEL: + return # the user hit cancel... + + with open(saveFileDialog.GetPath(), "wb") as exportFile: + writer = csv.writer(exportFile, delimiter=',') + + writer.writerow( + [ + "ID", + "Internal Name", + "Friendly Name", + "Modified Value", + "Base Value", + ] + ) + + for attributeName in self.attrInfo: + attribute = self.attrInfo[attributeName] + + try: + modifiedAttributeValue = self.attrValues[attributeName].value + except (KeyError, AttributeError): + modifiedAttributeValue = self.attrValues[attributeName] + + writer.writerow( + [ + attribute.ID, + attribute.name, + attribute.displayName, + modifiedAttributeValue, + attribute.value, + ] + ) + def PopulateList(self): self.paramList.InsertColumn(0,"Attribute") self.paramList.InsertColumn(1,"Current Value") From 2b1abfc9b2c2a8d8388e308693ca4dc52c40a949 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Fri, 21 Oct 2016 19:28:54 -0700 Subject: [PATCH 55/76] No longer refresh GUI. They can click the refresh button themselves, lazy jerks. --- gui/itemStats.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/gui/itemStats.py b/gui/itemStats.py index a2775a688..ff47d1e66 100644 --- a/gui/itemStats.py +++ b/gui/itemStats.py @@ -353,9 +353,6 @@ class ItemParams (wx.Panel): event.Skip() def ExportItemStats(self, event): - self.UpdateList() - event.Skip() - exportFileName = self.item.name + " (" + str(self.item.ID) + ").csv" saveFileDialog = wx.FileDialog(self, "Save CSV file", "", exportFileName, From 058768baab670b49beb1c58fdfe733c5824d3f98 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Sun, 23 Oct 2016 10:44:59 -0700 Subject: [PATCH 56/76] Implement new method for finding values Original method would only export values that were attached directly to the ship. New method starts from the modified dict, which will export values without attribute IDs or original values. --- gui/itemStats.py | 37 ++++++++++++++++++++++++++++--------- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/gui/itemStats.py b/gui/itemStats.py index ff47d1e66..5223a0b07 100644 --- a/gui/itemStats.py +++ b/gui/itemStats.py @@ -374,21 +374,40 @@ class ItemParams (wx.Panel): ] ) - for attributeName in self.attrInfo: - attribute = self.attrInfo[attributeName] + for attribute in self.attrValues: try: - modifiedAttributeValue = self.attrValues[attributeName].value + attribute_id = self.attrInfo[attribute].ID except (KeyError, AttributeError): - modifiedAttributeValue = self.attrValues[attributeName] + attribute_id = '' + + try: + attribute_name = self.attrInfo[attribute].name + except (KeyError, AttributeError): + attribute_name = attribute + + try: + attribute_displayname = self.attrInfo[attribute].displayName + except (KeyError, AttributeError): + attribute_displayname = '' + + try: + attribute_value = self.attrInfo[attribute].value + except (KeyError, AttributeError): + attribute_value = '' + + try: + attribute_modified_value = self.attrValues[attribute].value + except (KeyError, AttributeError): + attribute_modified_value = self.attrValues[attribute] writer.writerow( [ - attribute.ID, - attribute.name, - attribute.displayName, - modifiedAttributeValue, - attribute.value, + attribute_id, + attribute_name, + attribute_displayname, + attribute_modified_value, + attribute_value, ] ) From f39ca66dbf6f0cc884472633077489fd34bb1c77 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Sun, 23 Oct 2016 13:20:45 -0700 Subject: [PATCH 57/76] Include more standard exceptions to gitignore --- .gitignore | 109 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 103 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 13032ec18..f0fc03606 100644 --- a/.gitignore +++ b/.gitignore @@ -4,10 +4,6 @@ #Kwrite/Gedit/Other crapapps making backups *~ -#Eclipse -.project -.pydevproject -.settings #Patch files *.patch @@ -15,9 +11,110 @@ #Personal /saveddata/ -#PyCharm -.idea/ #Pyfa file pyfaFits.html + + +# Based on https://github.com/github/gitignore + +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +env/ build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +*.egg-info/ +.installed.cfg +*.egg +Pyfa.egg-info/ + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*,cover +.hypothesis/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# IPython Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# dotenv +.env + +# virtualenv +.venv/ +venv/ +ENV/ + +# Spyder project settings +.spyderproject + +# Rope project settings +.ropeproject + +# Eclipse project settings +.project +.pydevproject +.settings + +# Pycharm project settings +.idea +eos.iml From 0dbdbf7cfeac93dfa7922b9cfe41ab89359344d3 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 26 Oct 2016 08:42:49 -0700 Subject: [PATCH 58/76] Add Burst Jammer to effects modified by Scorpion hull bonus --- eos/effects/caldarishipewstrengthcb.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/eos/effects/caldarishipewstrengthcb.py b/eos/effects/caldarishipewstrengthcb.py index 1ac5a01c0..4a8dd9c52 100644 --- a/eos/effects/caldarishipewstrengthcb.py +++ b/eos/effects/caldarishipewstrengthcb.py @@ -3,8 +3,13 @@ # Used by: # Ship: Scorpion type = "passive" + + def handler(fit, ship, context): for sensorType in ("Gravimetric", "Ladar", "Magnetometric", "Radar"): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scan{0}StrengthBonus".format(sensorType), - ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") + fit.modules.filteredItemBoost( + (lambda mod: mod.item.group.name == "ECM" or + mod.item.group.name == "Burst Jammer" + ), + "scan{0}StrengthBonus".format(sensorType), + ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") From e7c79e58b4b0cf2589233f06a62236d66ecd0504 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 26 Oct 2016 10:09:43 -0700 Subject: [PATCH 59/76] Use in instead of or, because that makes sense --- eos/effects/caldarishipewstrengthcb.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/eos/effects/caldarishipewstrengthcb.py b/eos/effects/caldarishipewstrengthcb.py index 4a8dd9c52..a1e808484 100644 --- a/eos/effects/caldarishipewstrengthcb.py +++ b/eos/effects/caldarishipewstrengthcb.py @@ -7,9 +7,10 @@ type = "passive" def handler(fit, ship, context): for sensorType in ("Gravimetric", "Ladar", "Magnetometric", "Radar"): - fit.modules.filteredItemBoost( - (lambda mod: mod.item.group.name == "ECM" or - mod.item.group.name == "Burst Jammer" - ), - "scan{0}StrengthBonus".format(sensorType), - ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in + ( + "ECM", + "Burst Jammer", + ), + "scan{0}StrengthBonus".format(sensorType), + ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") From 12d5a2198299d1ebb32f66caedab1f771e9a6c6a Mon Sep 17 00:00:00 2001 From: Indiction Date: Sun, 30 Oct 2016 00:43:23 +0200 Subject: [PATCH 60/76] Option to open fittings in a new page by default --- gui/builtinPreferenceViews/pyfaGeneralPreferences.py | 10 +++++++++- gui/builtinViews/fittingView.py | 6 ++++-- service/fit.py | 10 ++++------ 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/gui/builtinPreferenceViews/pyfaGeneralPreferences.py b/gui/builtinPreferenceViews/pyfaGeneralPreferences.py index a1f43696f..2d8104bdd 100644 --- a/gui/builtinPreferenceViews/pyfaGeneralPreferences.py +++ b/gui/builtinPreferenceViews/pyfaGeneralPreferences.py @@ -64,6 +64,9 @@ class PFGeneralPref ( PreferenceView): self.cbExportCharges = wx.CheckBox( panel, wx.ID_ANY, u"Export loaded charges", wx.DefaultPosition, wx.DefaultSize, 0 ) mainSizer.Add( self.cbExportCharges, 0, wx.ALL|wx.EXPAND, 5 ) + + self.cbOpenFitInNew = wx.CheckBox( panel, wx.ID_ANY, u"Open fittings in a new page by default", wx.DefaultPosition, wx.DefaultSize, 0 ) + mainSizer.Add( self.cbOpenFitInNew, 0, wx.ALL|wx.EXPAND, 5 ) defCharSizer = wx.BoxSizer( wx.HORIZONTAL ) @@ -81,6 +84,7 @@ class PFGeneralPref ( PreferenceView): self.cbMarketShortcuts.SetValue(self.sFit.serviceFittingOptions["showMarketShortcuts"] or False) self.cbGaugeAnimation.SetValue(self.sFit.serviceFittingOptions["enableGaugeAnimation"]) self.cbExportCharges.SetValue(self.sFit.serviceFittingOptions["exportCharges"]) + self.cbOpenFitInNew.SetValue(self.sFit.serviceFittingOptions["openFitInNew"]) self.cbGlobalChar.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalCharStateChange) self.cbGlobalDmgPattern.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalDmgPatternStateChange) @@ -94,6 +98,7 @@ class PFGeneralPref ( PreferenceView): self.cbMarketShortcuts.Bind(wx.EVT_CHECKBOX, self.onCBShowShortcuts) self.cbGaugeAnimation.Bind(wx.EVT_CHECKBOX, self.onCBGaugeAnimation) self.cbExportCharges.Bind(wx.EVT_CHECKBOX, self.onCBExportCharges) + self.cbOpenFitInNew.Bind(wx.EVT_CHECKBOX, self.onCBOpenFitInNew) self.cbRackLabels.Enable(self.sFit.serviceFittingOptions["rackSlots"] or False) @@ -158,8 +163,11 @@ class PFGeneralPref ( PreferenceView): def onCBExportCharges(self, event): self.sFit.serviceFittingOptions["exportCharges"] = self.cbExportCharges.GetValue() + + def onCBOpenFitInNew(self, event): + self.sFit.serviceFittingOptions["openFitInNew"] = self.cbOpenFitInNew.GetValue() def getImage(self): return BitmapLoader.getBitmap("prefs_settings", "gui") -PFGeneralPref.register() +PFGeneralPref.register() \ No newline at end of file diff --git a/gui/builtinViews/fittingView.py b/gui/builtinViews/fittingView.py index 15615d3bc..34afa5600 100644 --- a/gui/builtinViews/fittingView.py +++ b/gui/builtinViews/fittingView.py @@ -55,9 +55,11 @@ class FitSpawner(gui.multiSwitch.TabSpawner): pass if count < 0: startup = getattr(event, "startup", False) # see OpenFitsThread in gui.mainFrame + sFit = service.Fit.getInstance() + openFitInNew = sFit.serviceFittingOptions["openFitInNew"] mstate = wx.GetMouseState() - if mstate.CmdDown() or startup: + if mstate.CmdDown() or startup or openFitInNew: self.multiSwitch.AddPage() view = FittingView(self.multiSwitch) @@ -799,4 +801,4 @@ class FittingView(d.Display): mdc.SelectObject(wx.NullBitmap) - self.FVsnapshot = mbmp + self.FVsnapshot = mbmp \ No newline at end of file diff --git a/service/fit.py b/service/fit.py index 2d3b75be5..4a8bbef5c 100644 --- a/service/fit.py +++ b/service/fit.py @@ -106,7 +106,9 @@ class Fit(object): "showTooltip": True, "showMarketShortcuts": False, "enableGaugeAnimation": True, - "exportCharges": True} + "exportCharges": True, + "openFitInNew":False + } self.serviceFittingOptions = SettingsProvider.getInstance().getSettings( "pyfaServiceFittingOptions", serviceFittingDefaultOptions) @@ -237,7 +239,6 @@ class Fit(object): def getFit(self, fitID, projected=False, basic=False): ''' Gets fit from database, and populates fleet data. - Projected is a recursion flag that is set to reduce recursions into projected fits Basic is a flag to simply return the fit without any other processing ''' @@ -512,7 +513,6 @@ class Fit(object): """ Moves cargo to fitting window. Can either do a copy, move, or swap with current module If we try to copy/move into a spot with a non-empty module, we swap instead. - To avoid redundancy in converting Cargo item, this function does the sanity checks as opposed to the GUI View. This is different than how the normal .swapModules() does things, which is mostly a blind swap. @@ -578,7 +578,6 @@ class Fit(object): def cloneModule(self, fitID, src, dst): """ Clone a module from src to dst - This will overwrite dst! Checking for empty module must be done at a higher level """ @@ -942,7 +941,6 @@ class Fit(object): Imports fits from file(s). First processes all provided paths and stores assembled fits into a list. This allows us to call back to the GUI as fits are processed as well as when fits are being saved. - returns """ defcodepage = locale.getpreferredencoding() @@ -1133,4 +1131,4 @@ class Fit(object): if fit.factorReload is not self.serviceFittingOptions["useGlobalForceReload"]: fit.factorReload = self.serviceFittingOptions["useGlobalForceReload"] fit.clear() - fit.calculateModifiedAttributes(withBoosters=withBoosters) + fit.calculateModifiedAttributes(withBoosters=withBoosters) \ No newline at end of file From 791ddcb9a1fe472cafbc26a415c7b902fa5f39b0 Mon Sep 17 00:00:00 2001 From: Indiction Date: Sun, 30 Oct 2016 01:05:22 +0200 Subject: [PATCH 61/76] load fitting in selected page if ctrl-key pressed and option active --- gui/builtinViews/fittingView.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gui/builtinViews/fittingView.py b/gui/builtinViews/fittingView.py index 34afa5600..348562e24 100644 --- a/gui/builtinViews/fittingView.py +++ b/gui/builtinViews/fittingView.py @@ -59,7 +59,7 @@ class FitSpawner(gui.multiSwitch.TabSpawner): openFitInNew = sFit.serviceFittingOptions["openFitInNew"] mstate = wx.GetMouseState() - if mstate.CmdDown() or startup or openFitInNew: + if (not openFitInNew and mstate.CmdDown()) or startup or (openFitInNew and not mstate.CmdDown()): self.multiSwitch.AddPage() view = FittingView(self.multiSwitch) From 832e7e66372e538873b38b020b900a39d03415ff Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Thu, 3 Nov 2016 22:15:40 -0700 Subject: [PATCH 62/76] Revert moving projectionInfo out Need to handle this better. :/ --- eos/saveddata/fit.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index baef29d1a..175a012f9 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -466,16 +466,11 @@ class Fit(object): timer = Timer(u'Fit: {}, {}'.format(self.ID, self.name), logger) logger.debug("Starting fit calculation on: %r, withBoosters: %s", self, withBoosters) - try: - projectionInfo = self.getProjectionInfo(targetFit.ID) - except: - pass - else: - logger.debug("ProjectionInfo: %s", projectionInfo) - shadow = False if targetFit: logger.debug("Applying projections to target: %r", targetFit) + projectionInfo = self.getProjectionInfo(targetFit.ID) + logger.debug("ProjectionInfo: %s", projectionInfo) if self == targetFit: copied = self # original fit shadow = True From 26ab7d5e6fa049117d087760774c3009d1ab906a Mon Sep 17 00:00:00 2001 From: Peter Pfeufer Date: Fri, 4 Nov 2016 07:18:35 +0100 Subject: [PATCH 63/76] fixed link to development repository --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 91a915eb0..4f26244f4 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ The preferred method of reporting bugs is through the project's [GitHub Issues i pyfa is licensed under the GNU GPL v3.0, see LICENSE ## Resources -* Development repository: [http://github.com/DarkFenX/Pyfa](http://github.com/DarkFenX/Pyfa) +* Development repository: [https://github.com/pyfa-org/Pyfa](https://github.com/pyfa-org/Pyfa) * XMPP conference: [pyfa@conference.jabber.org](pyfa@conference.jabber.org) * [EVE forum thread](http://forums.eveonline.com/default.aspx?g=posts&t=247609) * [EVE University guide using pyfa](http://wiki.eveuniversity.org/Guide_to_using_PYFA) From ad761040330d462f63c33fd1511cfe65d92e2bc9 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Fri, 4 Nov 2016 14:18:18 -0700 Subject: [PATCH 64/76] Revert "Create variables before they are referenced. " https://github.com/pyfa-org/Pyfa/pull/774/commits/1dc15936ed2a456ab062f9f423e5e4466348639c This is a problem for us. See #794 for more details. --- eos/db/saveddata/fit.py | 1 - eos/gamedata.py | 19 ------------------- eos/modifiedAttributeDict.py | 6 ------ eos/saveddata/character.py | 3 --- eos/saveddata/damagePattern.py | 1 - eos/saveddata/fighter.py | 1 - eos/saveddata/fighterAbility.py | 1 - eos/saveddata/fit.py | 3 --- eos/saveddata/module.py | 2 -- eos/saveddata/targetResists.py | 1 - 10 files changed, 38 deletions(-) diff --git a/eos/db/saveddata/fit.py b/eos/db/saveddata/fit.py index bf7e336e1..40b92af04 100644 --- a/eos/db/saveddata/fit.py +++ b/eos/db/saveddata/fit.py @@ -57,7 +57,6 @@ projectedFits_table = Table("projectedFits", saveddata_meta, class ProjectedFit(object): def __init__(self, sourceID, source_fit, amount=1, active=True): - self.victim_fit = None self.sourceID = sourceID self.source_fit = source_fit self.active = active diff --git a/eos/gamedata.py b/eos/gamedata.py index 05fa84517..febc59ac8 100644 --- a/eos/gamedata.py +++ b/eos/gamedata.py @@ -45,10 +45,6 @@ class Effect(EqBase): # Filter to change names of effects to valid python method names nameFilter = re.compile("[^A-Za-z0-9]") - def __init__(self): - super(Effect, self).__init__() - self.name = None - @reconstructor def init(self): """ @@ -171,14 +167,6 @@ class Item(EqBase): MOVE_ATTR_INFO = None - def __init__(self): - super(Item, self).__init__() - self.raceID = None - self.factionID = None - self.category = None - self.ID = None - self.effects = None - @classmethod def getMoveAttrInfo(cls): info = getattr(cls, "MOVE_ATTR_INFO", None) @@ -425,13 +413,6 @@ class Icon(EqBase): class MarketGroup(EqBase): - def __init__(self): - super(MarketGroup, self).__init__() - self.name = None - self.parent = None - self.name = None - self.ID = None - def __repr__(self): return u"MarketGroup(ID={}, name={}, parent={}) at {}".format( self.ID, self.name, getattr(self.parent, "name", None), self.name, hex(id(self)) diff --git a/eos/modifiedAttributeDict.py b/eos/modifiedAttributeDict.py index 47ce0c71a..c0f778263 100644 --- a/eos/modifiedAttributeDict.py +++ b/eos/modifiedAttributeDict.py @@ -25,9 +25,6 @@ cappingAttrKeyCache = {} class ItemAttrShortcut(object): - def __init__(self): - self.itemModifiedAttributes = None - def getModifiedItemAttr(self, key): if key in self.itemModifiedAttributes: return self.itemModifiedAttributes[key] @@ -36,9 +33,6 @@ class ItemAttrShortcut(object): class ChargeAttrShortcut(object): - def __init__(self): - self.chargeModifiedAttributes = None - def getModifiedChargeAttr(self, key): if key in self.chargeModifiedAttributes: return self.chargeModifiedAttributes[key] diff --git a/eos/saveddata/character.py b/eos/saveddata/character.py index 767441a6a..3cf3e70eb 100644 --- a/eos/saveddata/character.py +++ b/eos/saveddata/character.py @@ -93,8 +93,6 @@ class Character(object): return all0 def __init__(self, name, defaultLevel=None, initSkills=True): - self.ID = None - self.apiID = None self.savedName = name self.__owner = None self.defaultLevel = defaultLevel @@ -261,7 +259,6 @@ class Character(object): class Skill(HandledItem): def __init__(self, item, level=0, ro=False, learned=True): - self.character = None self.__item = item if not isinstance(item, int) else None self.itemID = item.ID if not isinstance(item, int) else item self.__level = level if learned else None diff --git a/eos/saveddata/damagePattern.py b/eos/saveddata/damagePattern.py index 5ae544fb1..f10e6b50b 100644 --- a/eos/saveddata/damagePattern.py +++ b/eos/saveddata/damagePattern.py @@ -24,7 +24,6 @@ class DamagePattern(object): DAMAGE_TYPES = ("em", "thermal", "kinetic", "explosive") def __init__(self, emAmount=25, thermalAmount=25, kineticAmount=25, explosiveAmount=25): - self.name = None self.emAmount = emAmount self.thermalAmount = thermalAmount self.kineticAmount = kineticAmount diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index 635fa6db8..29015f5f6 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -35,7 +35,6 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def __init__(self, item): """Initialize a fighter from the program""" - self.owner = None self.__item = item if self.isInvalid: diff --git a/eos/saveddata/fighterAbility.py b/eos/saveddata/fighterAbility.py index 2f49336f6..38a21a27e 100644 --- a/eos/saveddata/fighterAbility.py +++ b/eos/saveddata/fighterAbility.py @@ -46,7 +46,6 @@ class FighterAbility(object): def __init__(self, effect): """Initialize from the program""" - self.fighter = None self.__effect = effect self.effectID = effect.ID if effect is not None else None self.active = False diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 175a012f9..69b17a269 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -57,9 +57,6 @@ class Fit(object): def __init__(self, ship=None, name=""): """Initialize a fit from the program""" # use @mode.setter's to set __attr and IDs. This will set mode as well - self.ID = None - self.owner = None - self.projectedOnto = None self.ship = ship if self.ship: self.ship.parent = self diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index 2c9a65254..ec19cc19b 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -80,8 +80,6 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def __init__(self, item): """Initialize a module from the program""" - self.owner = None - self.dummySlot = None self.__item = item if item is not None and self.isInvalid: diff --git a/eos/saveddata/targetResists.py b/eos/saveddata/targetResists.py index adbbf6191..8b286b3f6 100644 --- a/eos/saveddata/targetResists.py +++ b/eos/saveddata/targetResists.py @@ -25,7 +25,6 @@ class TargetResists(object): DAMAGE_TYPES = ("em", "thermal", "kinetic", "explosive") def __init__(self, emAmount=0, thermalAmount=0, kineticAmount=0, explosiveAmount=0): - self.name = None self.emAmount = emAmount self.thermalAmount = thermalAmount self.kineticAmount = kineticAmount From f0f5b4c04c448899045ff5a8a182504f00ccb1d4 Mon Sep 17 00:00:00 2001 From: Indiction Date: Sun, 6 Nov 2016 16:14:49 +0100 Subject: [PATCH 65/76] Tooltip to Ships and Fittings --- gui/shipBrowser.py | 43 ++++++++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 17 deletions(-) diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index 95a752062..ab374134f 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -1,4 +1,5 @@ import wx +import re import copy from gui.bitmapLoader import BitmapLoader import gui.mainFrame @@ -742,17 +743,17 @@ class ShipBrowser(wx.Panel): fits = sFit.countFitsWithShip(ship.ID) t_fits += fits filter = subRacesFilter[ship.race] if ship.race else True - + shipTrait = re.sub("<.*?>", " ", ship.traits.traitText) if override: filter = True if self.filterShipsWithNoFits: if fits>0: - if filter: - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, fits), ship.race)) + if filter: + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, fits), ship.race)) else: if filter: - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, fits), ship.race)) + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, fits), ship.race)) self.raceselect.RebuildRaces(racesList) @@ -843,12 +844,13 @@ class ShipBrowser(wx.Panel): fitList.sort(key=self.nameKey) shipName = ship.name + shipTrait = re.sub("<.*?>", " ", ship.traits.traitText) self._stage3ShipName = shipName self._stage3Data = shipID for ID, name, booster, timestamp in fitList: - self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, name, booster, timestamp),shipID)) + self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, shipTrait, name, booster, timestamp),shipID)) self.lpane.RefreshList() self.lpane.Thaw() @@ -880,12 +882,15 @@ class ShipBrowser(wx.Panel): if query: ships = sMkt.searchShips(query) fitList = sFit.searchFits(query) - + for ship in ships: - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, len(sFit.getFitsWithShip(ship.ID))), ship.race)) - + shipTrait = re.sub("<.*?>", " ", ship.traits.traitText) + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, len(sFit.getFitsWithShip(ship.ID))), ship.race)) + for ID, name, shipID, shipName, booster, timestamp in fitList: - self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, name, booster, timestamp), shipID)) + ship = sMkt.getItem(shipID) + shipTrait = re.sub("<.*?>", " ", ship.traits.traitText) + self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, shipTrait, name, booster, timestamp), shipID)) if len(ships) == 0 and len(fitList) == 0 : self.lpane.AddWidget(PFStaticText(self.lpane, label = u"No matching results.")) self.lpane.RefreshList(doFocus = False) @@ -924,6 +929,7 @@ class ShipBrowser(wx.Panel): self.lpane, fit.ID, ( fit.ship.item.name, + re.sub("<.*?>", " ", fit.ship.traits.traitText), fit.name, fit.booster, fit.timestamp), @@ -1080,7 +1086,7 @@ class CategoryItem(SFItem.SFBrowserItem): class ShipItem(SFItem.SFBrowserItem): - def __init__(self, parent, shipID=None, shipFittingInfo=("Test", 2), itemData=None, + def __init__(self, parent, shipID=None, shipFittingInfo=("Test","TestTrait", 2), itemData=None, id=wx.ID_ANY, pos=wx.DefaultPosition, size=(0, 40), style=0): SFItem.SFBrowserItem.__init__(self, parent, size = size) @@ -1104,7 +1110,7 @@ class ShipItem(SFItem.SFBrowserItem): self.shipBmp = BitmapLoader.getBitmap("ship_no_image_big", "gui") self.shipFittingInfo = shipFittingInfo - self.shipName, self.shipFits = shipFittingInfo + self.shipName, self.shipTrait, self.shipFits = shipFittingInfo self.newBmp = BitmapLoader.getBitmap("fit_add_small", "gui") self.acceptBmp = BitmapLoader.getBitmap("faccept_small", "gui") @@ -1122,6 +1128,8 @@ class ShipItem(SFItem.SFBrowserItem): self.raceDropShadowBmp = drawUtils.CreateDropShadowBitmap(self.raceBmp, 0.2) + self.SetToolTip(wx.ToolTip(self.shipTrait)) + self.shipBrowser = self.Parent.Parent self.editWidth = 150 @@ -1198,7 +1206,7 @@ class ShipItem(SFItem.SFBrowserItem): self.newBtn.SetBitmap(self.newBmp) self.Refresh() else: - shipName, fittings = self.shipFittingInfo + shipName, shipTrait, fittings = self.shipFittingInfo if fittings > 0: wx.PostEvent(self.shipBrowser, Stage3Selected(shipID=self.shipID, back=True)) else: @@ -1264,7 +1272,7 @@ class ShipItem(SFItem.SFBrowserItem): self.shipNamey = (rect.height - self.shipBmp.GetHeight()) / 2 - shipName, fittings = self.shipFittingInfo + shipName, shipTrait, fittings = self.shipFittingInfo mdc.SetFont(self.fontBig) wtext, htext = mdc.GetTextExtent(shipName) @@ -1303,7 +1311,7 @@ class ShipItem(SFItem.SFBrowserItem): mdc.DrawBitmap(self.raceDropShadowBmp, self.raceBmpx + 1, self.raceBmpy + 1) mdc.DrawBitmap(self.raceBmp,self.raceBmpx, self.raceBmpy) - shipName, fittings = self.shipFittingInfo + shipName, shipTrait, fittings = self.shipFittingInfo if fittings <1: fformat = "No fits" @@ -1401,7 +1409,7 @@ class PFBitmapFrame(wx.Frame): class FitItem(SFItem.SFBrowserItem): - def __init__(self, parent, fitID=None, shipFittingInfo=("Test", "cnc's avatar", 0, 0 ), shipID = None, itemData=None, + def __init__(self, parent, fitID=None, shipFittingInfo=("Test", "TestTrait", "cnc's avatar", 0, 0 ), shipID = None, itemData=None, id=wx.ID_ANY, pos=wx.DefaultPosition, size=(0, 40), style=0): @@ -1435,7 +1443,7 @@ class FitItem(SFItem.SFBrowserItem): self.shipBmp = BitmapLoader.getBitmap("ship_no_image_big","gui") self.shipFittingInfo = shipFittingInfo - self.shipName, self.fitName, self.fitBooster, self.timestamp = shipFittingInfo + self.shipName, self.shipTrait, self.fitName, self.fitBooster, self.timestamp = shipFittingInfo # see GH issue #62 if self.fitBooster is None: self.fitBooster = False @@ -1456,6 +1464,7 @@ class FitItem(SFItem.SFBrowserItem): self.bkBitmap = None + self.SetToolTip(wx.ToolTip(self.shipName+'\n--------------------------\n'+self.shipTrait)) self.padding = 4 self.editWidth = 150 @@ -1805,7 +1814,7 @@ class FitItem(SFItem.SFBrowserItem): mdc.DrawBitmap(self.shipBmp, self.shipBmpx, self.shipBmpy, 0) - shipName, fittings, booster, timestamp = self.shipFittingInfo + shipName, shipTrait, fittings, booster, timestamp = self.shipFittingInfo mdc.SetFont(self.fontNormal) From 806f17545f0c9105231a63861cd6d33198054ccf Mon Sep 17 00:00:00 2001 From: Indiction Date: Sun, 6 Nov 2016 16:36:12 +0100 Subject: [PATCH 66/76] Moved HTML remover into ShipItem and FitItem function --- gui/shipBrowser.py | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index ab374134f..2985198e4 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -743,17 +743,16 @@ class ShipBrowser(wx.Panel): fits = sFit.countFitsWithShip(ship.ID) t_fits += fits filter = subRacesFilter[ship.race] if ship.race else True - shipTrait = re.sub("<.*?>", " ", ship.traits.traitText) if override: filter = True if self.filterShipsWithNoFits: if fits>0: if filter: - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, fits), ship.race)) + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, ship.traits.traitText, fits), ship.race)) else: if filter: - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, fits), ship.race)) + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, ship.traits.traitText, fits), ship.race)) self.raceselect.RebuildRaces(racesList) @@ -844,13 +843,12 @@ class ShipBrowser(wx.Panel): fitList.sort(key=self.nameKey) shipName = ship.name - shipTrait = re.sub("<.*?>", " ", ship.traits.traitText) self._stage3ShipName = shipName self._stage3Data = shipID for ID, name, booster, timestamp in fitList: - self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, shipTrait, name, booster, timestamp),shipID)) + self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, ship.traits.traitText, name, booster, timestamp),shipID)) self.lpane.RefreshList() self.lpane.Thaw() @@ -884,13 +882,11 @@ class ShipBrowser(wx.Panel): fitList = sFit.searchFits(query) for ship in ships: - shipTrait = re.sub("<.*?>", " ", ship.traits.traitText) - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, len(sFit.getFitsWithShip(ship.ID))), ship.race)) + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, ship.traits.traitText, len(sFit.getFitsWithShip(ship.ID))), ship.race)) for ID, name, shipID, shipName, booster, timestamp in fitList: ship = sMkt.getItem(shipID) - shipTrait = re.sub("<.*?>", " ", ship.traits.traitText) - self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, shipTrait, name, booster, timestamp), shipID)) + self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, ship.traits.traitText, name, booster, timestamp), shipID)) if len(ships) == 0 and len(fitList) == 0 : self.lpane.AddWidget(PFStaticText(self.lpane, label = u"No matching results.")) self.lpane.RefreshList(doFocus = False) @@ -929,7 +925,7 @@ class ShipBrowser(wx.Panel): self.lpane, fit.ID, ( fit.ship.item.name, - re.sub("<.*?>", " ", fit.ship.traits.traitText), + fit.ship.traits.traitText, fit.name, fit.booster, fit.timestamp), @@ -1111,6 +1107,7 @@ class ShipItem(SFItem.SFBrowserItem): self.shipFittingInfo = shipFittingInfo self.shipName, self.shipTrait, self.shipFits = shipFittingInfo + self.shipTrait = re.sub("<.*?>", " ", self.shipTrait) self.newBmp = BitmapLoader.getBitmap("fit_add_small", "gui") self.acceptBmp = BitmapLoader.getBitmap("faccept_small", "gui") @@ -1444,7 +1441,7 @@ class FitItem(SFItem.SFBrowserItem): self.shipFittingInfo = shipFittingInfo self.shipName, self.shipTrait, self.fitName, self.fitBooster, self.timestamp = shipFittingInfo - + self.shipTrait = re.sub("<.*?>", " ", self.shipTrait) # see GH issue #62 if self.fitBooster is None: self.fitBooster = False From ba474205778561e7696f38dc05c6343e26546328 Mon Sep 17 00:00:00 2001 From: Indiction Date: Sun, 6 Nov 2016 18:47:56 +0100 Subject: [PATCH 67/76] Bugfix: Unable to handle ships without traits (Citadels) --- gui/shipBrowser.py | 38 +++++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index 2985198e4..4c986bdb6 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -745,14 +745,18 @@ class ShipBrowser(wx.Panel): filter = subRacesFilter[ship.race] if ship.race else True if override: filter = True - + if ship.traits is not None: + shipTrait = ship.traits.traitText + else: + shipTrait = "" + if self.filterShipsWithNoFits: if fits>0: if filter: - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, ship.traits.traitText, fits), ship.race)) + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, fits), ship.race)) else: if filter: - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, ship.traits.traitText, fits), ship.race)) + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, fits), ship.race)) self.raceselect.RebuildRaces(racesList) @@ -846,9 +850,13 @@ class ShipBrowser(wx.Panel): self._stage3ShipName = shipName self._stage3Data = shipID + if ship.traits is not None: + shipTrait = ship.traits.traitText + else: + shipTrait = "" for ID, name, booster, timestamp in fitList: - self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, ship.traits.traitText, name, booster, timestamp),shipID)) + self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, shipTrait, name, booster, timestamp),shipID)) self.lpane.RefreshList() self.lpane.Thaw() @@ -882,11 +890,19 @@ class ShipBrowser(wx.Panel): fitList = sFit.searchFits(query) for ship in ships: - self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, ship.traits.traitText, len(sFit.getFitsWithShip(ship.ID))), ship.race)) + if ship.traits is not None: + shipTrait = ship.traits.traitText + else: + shipTrait = "" + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, len(sFit.getFitsWithShip(ship.ID))), ship.race)) for ID, name, shipID, shipName, booster, timestamp in fitList: ship = sMkt.getItem(shipID) - self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, ship.traits.traitText, name, booster, timestamp), shipID)) + if ship.traits is not None: + shipTrait = ship.traits.traitText + else: + shipTrait = "" + self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, shipTrait, name, booster, timestamp), shipID)) if len(ships) == 0 and len(fitList) == 0 : self.lpane.AddWidget(PFStaticText(self.lpane, label = u"No matching results.")) self.lpane.RefreshList(doFocus = False) @@ -921,11 +937,15 @@ class ShipBrowser(wx.Panel): if fits: for fit in fits: + if fit.ship.traits is None: + shipTrait = "" + else: + shipTrait = fit.ship.traits.traitText self.lpane.AddWidget(FitItem( self.lpane, fit.ID, ( fit.ship.item.name, - fit.ship.traits.traitText, + shipTrait, fit.name, fit.booster, fit.timestamp), @@ -1460,8 +1480,8 @@ class FitItem(SFItem.SFBrowserItem): self.dragTLFBmp = None self.bkBitmap = None - - self.SetToolTip(wx.ToolTip(self.shipName+'\n--------------------------\n'+self.shipTrait)) + if self.shipTrait != "": + self.SetToolTip(wx.ToolTip(self.shipName+'\n--------------------------\n'+self.shipTrait)) self.padding = 4 self.editWidth = 150 From a0ef1a3d9bcbd2d3019dfeccedf5cae9c499f267 Mon Sep 17 00:00:00 2001 From: Indiction Date: Sun, 6 Nov 2016 20:37:24 +0100 Subject: [PATCH 68/76] change to ternary operators (less ugly) --- gui/shipBrowser.py | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index 4c986bdb6..fa3b8da15 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -745,10 +745,8 @@ class ShipBrowser(wx.Panel): filter = subRacesFilter[ship.race] if ship.race else True if override: filter = True - if ship.traits is not None: - shipTrait = ship.traits.traitText - else: - shipTrait = "" + + shipTrait = ship.traits.traitText if (ship.traits is not None) else "" # empty string if no traits if self.filterShipsWithNoFits: if fits>0: @@ -850,10 +848,8 @@ class ShipBrowser(wx.Panel): self._stage3ShipName = shipName self._stage3Data = shipID - if ship.traits is not None: - shipTrait = ship.traits.traitText - else: - shipTrait = "" + + shipTrait = ship.traits.traitText if (ship.traits is not None) else "" # empty string if no traits for ID, name, booster, timestamp in fitList: self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, shipTrait, name, booster, timestamp),shipID)) @@ -890,18 +886,14 @@ class ShipBrowser(wx.Panel): fitList = sFit.searchFits(query) for ship in ships: - if ship.traits is not None: - shipTrait = ship.traits.traitText - else: - shipTrait = "" + shipTrait = ship.traits.traitText if (ship.traits is not None) else "" # empty string if no traits + self.lpane.AddWidget(ShipItem(self.lpane, ship.ID, (ship.name, shipTrait, len(sFit.getFitsWithShip(ship.ID))), ship.race)) for ID, name, shipID, shipName, booster, timestamp in fitList: ship = sMkt.getItem(shipID) - if ship.traits is not None: - shipTrait = ship.traits.traitText - else: - shipTrait = "" + shipTrait = ship.traits.traitText if (ship.traits is not None) else "" # empty string if no traits + self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, shipTrait, name, booster, timestamp), shipID)) if len(ships) == 0 and len(fitList) == 0 : self.lpane.AddWidget(PFStaticText(self.lpane, label = u"No matching results.")) @@ -937,10 +929,8 @@ class ShipBrowser(wx.Panel): if fits: for fit in fits: - if fit.ship.traits is None: - shipTrait = "" - else: - shipTrait = fit.ship.traits.traitText + shipTrait = fit.ship.traits.traitText if (fit.ship.traits is not None) else "" # empty string if no traits + self.lpane.AddWidget(FitItem( self.lpane, fit.ID, ( @@ -1480,7 +1470,7 @@ class FitItem(SFItem.SFBrowserItem): self.dragTLFBmp = None self.bkBitmap = None - if self.shipTrait != "": + if self.shipTrait != "": # show no tooltip if no trait available self.SetToolTip(wx.ToolTip(self.shipName+'\n--------------------------\n'+self.shipTrait)) self.padding = 4 self.editWidth = 150 From 684947822636dea845b63e2c9aa2eaf137f4829d Mon Sep 17 00:00:00 2001 From: blitzman Date: Sun, 6 Nov 2016 21:51:33 -0500 Subject: [PATCH 69/76] Change hyphens in fitting tooltip to unicode dashes --- gui/shipBrowser.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index fa3b8da15..ae600ef0e 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -1,3 +1,4 @@ +# -*- coding: utf-8 -*- import wx import re import copy @@ -1135,7 +1136,7 @@ class ShipItem(SFItem.SFBrowserItem): self.raceDropShadowBmp = drawUtils.CreateDropShadowBitmap(self.raceBmp, 0.2) - self.SetToolTip(wx.ToolTip(self.shipTrait)) + self.SetToolTip(wx.ToolTip(self.shipTrait)) self.shipBrowser = self.Parent.Parent @@ -1471,7 +1472,7 @@ class FitItem(SFItem.SFBrowserItem): self.bkBitmap = None if self.shipTrait != "": # show no tooltip if no trait available - self.SetToolTip(wx.ToolTip(self.shipName+'\n--------------------------\n'+self.shipTrait)) + self.SetToolTip(wx.ToolTip(u'{}\n{}\n{}'.format(self.shipName, u'─'*20, self.shipTrait))) self.padding = 4 self.editWidth = 150 From c0210895e9f7137c486f19814d4a5bea6531505d Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 9 Nov 2016 07:44:24 -0800 Subject: [PATCH 70/76] Ignore temp files These don't exist for long, but could catch them in a commit if you clicked commit too quickly. --- .gitignore | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index f0fc03606..4b6d3bde8 100644 --- a/.gitignore +++ b/.gitignore @@ -4,17 +4,17 @@ #Kwrite/Gedit/Other crapapps making backups *~ - #Patch files *.patch #Personal /saveddata/ - #Pyfa file pyfaFits.html +#Temporary files +*.py__jb_tmp__ # Based on https://github.com/github/gitignore From a9fb55feddda6336fe2fd76680a094670c3aa707 Mon Sep 17 00:00:00 2001 From: Indiction Date: Sun, 13 Nov 2016 20:48:44 +0100 Subject: [PATCH 71/76] Add "projected" to selected fitting via shipbrowser right click menu --- gui/shipBrowser.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index ae600ef0e..2a9fb2ba0 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -1543,6 +1543,16 @@ class FitItem(SFItem.SFBrowserItem): wx.PostEvent(self.mainFrame, BoosterListUpdated()) event.Skip() + def OnProjectToFit(self, event): + activeFit = self.mainFrame.getActiveFit() + if activeFit: + sFit = service.Fit.getInstance() + projectedFit = sFit.getFit(self.fitID) + sFit.project(activeFit, projectedFit) + wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=activeFit)) + + + def OnMouseCaptureLost(self, event): ''' Destroy drag information (GH issue #479)''' if self.dragging and self.dragged: @@ -1563,6 +1573,8 @@ class FitItem(SFItem.SFBrowserItem): self.mainFrame.additionsPane.gangPage.draggedFitID = self.fitID menu = wx.Menu() + projectedItem = menu.Append(wx.ID_ANY, "Set as 'Projected' to selected fitting") + self.Bind(wx.EVT_MENU, self.OnProjectToFit, projectedItem) toggleItem = menu.Append(wx.ID_ANY, "Booster Fit", kind=wx.ITEM_CHECK) menu.Check(toggleItem.GetId(), self.fitBooster) self.Bind(wx.EVT_MENU, self.OnToggleBooster, toggleItem) From d2a52e26b2563f3bfe4469f2c4eb3144a688494a Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Mon, 14 Nov 2016 05:27:16 -0800 Subject: [PATCH 72/76] Switch Shield/Cap to using new formula The old formula was surpsingly close in most scenarios. It is, however, hardcoded to 25% which isn't always peak cap/shield regen. --- eos/saveddata/fit.py | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index a3000267f..a360f638e 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -32,7 +32,7 @@ import time import copy from utils.timer import Timer from eos.enum import Enum - +from gnosis.formulas.formulas import Formulas import logging @@ -50,8 +50,6 @@ class ImplantLocation(Enum): class Fit(object): """Represents a fitting, with modules, ship, implants, etc.""" - PEAK_RECHARGE = 0.25 - def __init__(self, ship=None, name=""): """Initialize a fit from the program""" # use @mode.setter's to set __attr and IDs. This will set mode as well @@ -880,15 +878,29 @@ class Fit(object): return self.__sustainableTank - def calculateCapRecharge(self, percent = PEAK_RECHARGE): - capacity = self.ship.getModifiedItemAttr("capacitorCapacity") - rechargeRate = self.ship.getModifiedItemAttr("rechargeRate") / 1000.0 - return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity + def calculateCapRecharge(self): + return_matrix = Formulas.capacitor_shield_regen_matrix(self.ship.getModifiedItemAttr("capacitorCapacity"), + self.ship.getModifiedItemAttr("rechargeRate")) + high_water_percent = 0 + high_water_delta = 0 + for item in return_matrix: + if high_water_delta < item['DeltaAmount']: + high_water_percent = item['Percent'] + high_water_delta = item['DeltaAmount'] - def calculateShieldRecharge(self, percent = PEAK_RECHARGE): - capacity = self.ship.getModifiedItemAttr("shieldCapacity") - rechargeRate = self.ship.getModifiedItemAttr("shieldRechargeRate") / 1000.0 - return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity + return high_water_delta + + def calculateShieldRecharge(self): + return_matrix = Formulas.capacitor_shield_regen_matrix(self.ship.getModifiedItemAttr("shieldCapacity"), + self.ship.getModifiedItemAttr("shieldRechargeRate")) + high_water_percent = 0 + high_water_delta = 0 + for item in return_matrix: + if high_water_delta < item['DeltaAmount']: + high_water_percent = item['Percent'] + high_water_delta = item['DeltaAmount'] + + return high_water_delta def addDrain(self, src, cycleTime, capNeed, clipSize=0): """ Used for both cap drains and cap fills (fills have negative capNeed) """ From 5bca2d723e252ce7d62724e2f5721adc4d8ed284 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Tue, 15 Nov 2016 10:10:19 -0800 Subject: [PATCH 73/76] Change from multi to en-us only Allows this to run in 32 bit Python. --- scripts/jsonToSql.py | 2 +- scripts/prep_data.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/jsonToSql.py b/scripts/jsonToSql.py index ce4bdf5fa..42bc02e50 100755 --- a/scripts/jsonToSql.py +++ b/scripts/jsonToSql.py @@ -126,7 +126,7 @@ def main(db, json_path): for row in data: typeLines = [] typeId = row["typeID"] - traitData = row["traits_en-us"] + traitData = row["traits"] for skillData in sorted(traitData.get("skills", ()), key=lambda i: i["header"]): typeLines.append(convertSection(skillData)) if "role" in traitData: diff --git a/scripts/prep_data.py b/scripts/prep_data.py index b4508d208..a014b5c3e 100644 --- a/scripts/prep_data.py +++ b/scripts/prep_data.py @@ -82,7 +82,7 @@ if not args.nojson: "invtypes,mapbulk_marketGroups,phbmetadata,phbtraits,fsdTypeOverrides,"\ "evegroups,evetypes,evecategories,marketProxy()_GetMarketGroups()" - FlowManager(miners, writers).run(list, "multi") + FlowManager(miners, writers).run(list, "en-us") ### SQL Convert import jsonToSql From 3217980ada0e07e24c051db2256e564a9c86b951 Mon Sep 17 00:00:00 2001 From: Ebag333 Date: Wed, 16 Nov 2016 12:11:27 -0800 Subject: [PATCH 74/76] Revert "Switch Shield/Cap to using new formula" This reverts commit d2a52e26b2563f3bfe4469f2c4eb3144a688494a. --- eos/saveddata/fit.py | 34 +++++++++++----------------------- 1 file changed, 11 insertions(+), 23 deletions(-) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index a360f638e..a3000267f 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -32,7 +32,7 @@ import time import copy from utils.timer import Timer from eos.enum import Enum -from gnosis.formulas.formulas import Formulas + import logging @@ -50,6 +50,8 @@ class ImplantLocation(Enum): class Fit(object): """Represents a fitting, with modules, ship, implants, etc.""" + PEAK_RECHARGE = 0.25 + def __init__(self, ship=None, name=""): """Initialize a fit from the program""" # use @mode.setter's to set __attr and IDs. This will set mode as well @@ -878,29 +880,15 @@ class Fit(object): return self.__sustainableTank - def calculateCapRecharge(self): - return_matrix = Formulas.capacitor_shield_regen_matrix(self.ship.getModifiedItemAttr("capacitorCapacity"), - self.ship.getModifiedItemAttr("rechargeRate")) - high_water_percent = 0 - high_water_delta = 0 - for item in return_matrix: - if high_water_delta < item['DeltaAmount']: - high_water_percent = item['Percent'] - high_water_delta = item['DeltaAmount'] + def calculateCapRecharge(self, percent = PEAK_RECHARGE): + capacity = self.ship.getModifiedItemAttr("capacitorCapacity") + rechargeRate = self.ship.getModifiedItemAttr("rechargeRate") / 1000.0 + return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity - return high_water_delta - - def calculateShieldRecharge(self): - return_matrix = Formulas.capacitor_shield_regen_matrix(self.ship.getModifiedItemAttr("shieldCapacity"), - self.ship.getModifiedItemAttr("shieldRechargeRate")) - high_water_percent = 0 - high_water_delta = 0 - for item in return_matrix: - if high_water_delta < item['DeltaAmount']: - high_water_percent = item['Percent'] - high_water_delta = item['DeltaAmount'] - - return high_water_delta + def calculateShieldRecharge(self, percent = PEAK_RECHARGE): + capacity = self.ship.getModifiedItemAttr("shieldCapacity") + rechargeRate = self.ship.getModifiedItemAttr("shieldRechargeRate") / 1000.0 + return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity def addDrain(self, src, cycleTime, capNeed, clipSize=0): """ Used for both cap drains and cap fills (fills have negative capNeed) """ From 180166156a8cf488cd7a1aa80fecbb740d303947 Mon Sep 17 00:00:00 2001 From: blitzman Date: Sun, 20 Nov 2016 02:51:15 -0500 Subject: [PATCH 75/76] Revert mining change (#771) --- eos/effects/mininginfomultiplier.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eos/effects/mininginfomultiplier.py b/eos/effects/mininginfomultiplier.py index d6a961bd7..ca6a4eaed 100644 --- a/eos/effects/mininginfomultiplier.py +++ b/eos/effects/mininginfomultiplier.py @@ -5,5 +5,5 @@ # Charges named like: Mining Crystal (32 of 32) type = "passive" def handler(fit, module, context): - #module.multiplyItemAttr("specialtyMiningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) - module.multiplyItemAttr("miningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) + module.multiplyItemAttr("specialtyMiningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) + #module.multiplyItemAttr("miningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) From 26285cfc95f859ec8b91475eba8d0a8fa87abd42 Mon Sep 17 00:00:00 2001 From: blitzman Date: Sun, 20 Nov 2016 14:28:51 -0500 Subject: [PATCH 76/76] Tweaks --- gui/shipBrowser.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index 2a9fb2ba0..c590b61f0 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -1550,8 +1550,7 @@ class FitItem(SFItem.SFBrowserItem): projectedFit = sFit.getFit(self.fitID) sFit.project(activeFit, projectedFit) wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=activeFit)) - - + self.mainFrame.additionsPane.select("Projected") def OnMouseCaptureLost(self, event): ''' Destroy drag information (GH issue #479)''' @@ -1573,8 +1572,6 @@ class FitItem(SFItem.SFBrowserItem): self.mainFrame.additionsPane.gangPage.draggedFitID = self.fitID menu = wx.Menu() - projectedItem = menu.Append(wx.ID_ANY, "Set as 'Projected' to selected fitting") - self.Bind(wx.EVT_MENU, self.OnProjectToFit, projectedItem) toggleItem = menu.Append(wx.ID_ANY, "Booster Fit", kind=wx.ITEM_CHECK) menu.Check(toggleItem.GetId(), self.fitBooster) self.Bind(wx.EVT_MENU, self.OnToggleBooster, toggleItem) @@ -1582,6 +1579,10 @@ class FitItem(SFItem.SFBrowserItem): sFit = service.Fit.getInstance() fit = sFit.getFit(self.mainFrame.getActiveFit()) + if fit: + projectedItem = menu.Append(wx.ID_ANY, "Project onto Active Fit") + self.Bind(wx.EVT_MENU, self.OnProjectToFit, projectedItem) + if fit and not fit.isStructure: # If there is an active fit, get menu for setting individual boosters menu.AppendSeparator()