Compare commits
121 Commits
v1.1.22-ta
...
v1.2.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3c6850fe7a | ||
|
|
e3590f8d16 | ||
|
|
5a586c5632 | ||
|
|
a946c9c9ed | ||
|
|
2ea0c57be5 | ||
|
|
dcd2cdeddc | ||
|
|
5a1e39180a | ||
|
|
18385584bf | ||
|
|
7d58b2caa1 | ||
|
|
08f22172a6 | ||
|
|
88344dcfdc | ||
|
|
4ea69201ea | ||
|
|
07692584cf | ||
|
|
96707275be | ||
|
|
239fec48e8 | ||
|
|
6fc2cfff71 | ||
|
|
faff60c5e0 | ||
|
|
9a51d1fe3c | ||
|
|
8313fa03b8 | ||
|
|
665a1c473c | ||
|
|
c9dca6cd2a | ||
|
|
7b3e0fe3b0 | ||
|
|
8ea4ef1b44 | ||
|
|
933fbb26d7 | ||
|
|
de9ae5c78c | ||
|
|
0d1c7b93be | ||
|
|
749934b89d | ||
|
|
1c84e9dc4b | ||
|
|
df046769ff | ||
|
|
ae386cae4e | ||
|
|
d2635d6405 | ||
|
|
45fca2a87d | ||
|
|
f1f9da9214 | ||
|
|
a1416e6bec | ||
|
|
2d82eb7c92 | ||
|
|
9a2408741e | ||
|
|
b7e2b62562 | ||
|
|
fbc336b038 | ||
|
|
9dea4a26bf | ||
|
|
0ea8a7a921 | ||
|
|
0bf956e9b3 | ||
|
|
3bd66f174d | ||
|
|
4f38d71676 | ||
|
|
493294e648 | ||
|
|
2a12e4c566 | ||
|
|
b75c86d251 | ||
|
|
a148a6d818 | ||
|
|
ee8f514266 | ||
|
|
8a0778662f | ||
|
|
f9c141fa25 | ||
|
|
b783f0641c | ||
|
|
a0c1686ac5 | ||
|
|
af325caecc | ||
|
|
60a786a6a2 | ||
|
|
40c1bc8ae6 | ||
|
|
6992537750 | ||
|
|
a604093387 | ||
|
|
d9e61a3305 | ||
|
|
0c42848d52 | ||
|
|
294f51ae5d | ||
|
|
ecd82ac7a4 | ||
|
|
5395c04b18 | ||
|
|
d05b78a451 | ||
|
|
19f0bbc811 | ||
|
|
ac144e51e0 | ||
|
|
f7ef3705b5 | ||
|
|
8e9ea0a36b | ||
|
|
89a8bde574 | ||
|
|
2651a04880 | ||
|
|
197a61253f | ||
|
|
fb9da5ec8d | ||
|
|
a2727d5f47 | ||
|
|
0c40aa7244 | ||
|
|
234af1ac3d | ||
|
|
fb1323ba17 | ||
|
|
38bd33dce4 | ||
|
|
d32407b9f8 | ||
|
|
83c0bbe37b | ||
|
|
1fea4e5876 | ||
|
|
1fe19c4853 | ||
|
|
d9653ea43c | ||
|
|
943ddd3da1 | ||
|
|
08573899d3 | ||
|
|
e873f1b88e | ||
|
|
6dc4161a36 | ||
|
|
507c423e09 | ||
|
|
631d97e21a | ||
|
|
23e6331909 | ||
|
|
9bbe7f7fb0 | ||
|
|
5df7e193e7 | ||
|
|
e87ac96c6c | ||
|
|
795724cbe1 | ||
|
|
3cfa1c0822 | ||
|
|
4faa2abe96 | ||
|
|
890ff55690 | ||
|
|
73a67d0fc3 | ||
|
|
8fad69c344 | ||
|
|
76b6fb5898 | ||
|
|
641f5999f0 | ||
|
|
47ef37274b | ||
|
|
264824e7de | ||
|
|
fe824943e4 | ||
|
|
eb571b3ab3 | ||
|
|
5e464bfcf8 | ||
|
|
5df3672adf | ||
|
|
d5e8938c70 | ||
|
|
1f37656169 | ||
|
|
3a05abe490 | ||
|
|
c3ce580b8c | ||
|
|
47c46cc9c5 | ||
|
|
7a2ddad70c | ||
|
|
2f90ac64ec | ||
|
|
e23ad7b002 | ||
|
|
b98edc3f65 | ||
|
|
22f92bed24 | ||
|
|
cbea2dd55a | ||
|
|
26846fd102 | ||
|
|
004f9cb062 | ||
|
|
4bcb368d17 | ||
|
|
f42fd1de43 | ||
|
|
4f4829ebb4 |
@@ -13,10 +13,10 @@ debug = False
|
||||
saveInRoot = False
|
||||
|
||||
# Version data
|
||||
version = "1.1.23"
|
||||
tag = "git"
|
||||
expansionName = "Rubicon"
|
||||
expansionVersion = "1.3"
|
||||
version = "1.2.0"
|
||||
tag = "stable"
|
||||
expansionName = "Kronos"
|
||||
expansionVersion = "1.0"
|
||||
evemonMinVersion = "4081"
|
||||
|
||||
pyfaPath = None
|
||||
|
||||
@@ -66,7 +66,7 @@ from eos.db.saveddata.queries import getUser, getCharacter, getFit, getFitsWithS
|
||||
getCharacterList, getPrice, getDamagePatternList, getDamagePattern, \
|
||||
getFitList, getFleetList, getFleet, save, remove, commit, add, \
|
||||
getCharactersForUser, getMiscData, getSquadsIDsWithFitID, getWing, \
|
||||
getSquad, getBoosterFits
|
||||
getSquad, getBoosterFits, getProjectedFits
|
||||
|
||||
#If using in memory saveddata, you'll want to reflect it so the data structure is good.
|
||||
if config.saveddata_connectionstring == "sqlite:///:memory:":
|
||||
|
||||
32
eos/db/saveddata/cargo.py
Normal file
32
eos/db/saveddata/cargo.py
Normal file
@@ -0,0 +1,32 @@
|
||||
#===============================================================================
|
||||
# Copyright (C) 2010 Diego Duclos
|
||||
#
|
||||
# This file is part of eos.
|
||||
#
|
||||
# eos is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# eos is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with eos. If not, see <http://www.gnu.org/licenses/>.
|
||||
#===============================================================================
|
||||
|
||||
from sqlalchemy import Table, Column, Integer, ForeignKey, Boolean
|
||||
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))
|
||||
|
||||
mapper(Cargo, cargo_table)
|
||||
@@ -24,11 +24,12 @@ from sqlalchemy.sql import and_
|
||||
from eos.db import saveddata_meta
|
||||
from eos.db.saveddata.module import modules_table
|
||||
from eos.db.saveddata.drone import drones_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, Implant, Character, DamagePattern
|
||||
from eos.types import Fit, Module, User, Booster, Drone, Cargo, Implant, Character, DamagePattern
|
||||
from eos.effectHandlerHelpers import HandledModuleList, HandledDroneList, \
|
||||
HandledImplantBoosterList, HandledProjectedModList, HandledProjectedDroneList, \
|
||||
HandledProjectedFitList
|
||||
HandledProjectedFitList, HandledCargoList
|
||||
fits_table = Table("fits", saveddata_meta,
|
||||
Column("ID", Integer, primary_key = True),
|
||||
Column("ownerID", ForeignKey("users.ID"), nullable = True, index = True),
|
||||
@@ -53,6 +54,8 @@ mapper(Fit, fits_table,
|
||||
"_Fit__boosters" : relation(Booster, collection_class = HandledImplantBoosterList, cascade='all, delete, delete-orphan', single_parent=True),
|
||||
"_Fit__drones" : relation(Drone, collection_class = HandledDroneList, cascade='all, delete, delete-orphan', single_parent=True,
|
||||
primaryjoin = and_(drones_table.c.fitID == fits_table.c.ID, drones_table.c.projected == False)),
|
||||
"_Fit__cargo" : relation(Cargo, collection_class = HandledCargoList, 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__implants" : relation(Implant, collection_class = HandledImplantBoosterList, cascade='all, delete, delete-orphan', single_parent=True,
|
||||
|
||||
@@ -21,6 +21,7 @@ from eos.db.util import processEager, processWhere
|
||||
from eos.db import saveddata_session, sd_lock
|
||||
from eos.types import User, Character, Fit, Price, DamagePattern, Fleet, MiscData, Wing, Squad
|
||||
from eos.db.saveddata.fleet import squadmembers_table
|
||||
from eos.db.saveddata.fit import projectedFits_table
|
||||
from sqlalchemy.sql import and_
|
||||
import eos.config
|
||||
|
||||
@@ -360,7 +361,15 @@ def getSquadsIDsWithFitID(fitID):
|
||||
return squads
|
||||
else:
|
||||
raise TypeError("Need integer as argument")
|
||||
|
||||
|
||||
def getProjectedFits(fitID):
|
||||
if isinstance(fitID, int):
|
||||
with sd_lock:
|
||||
filter = and_(projectedFits_table.c.sourceID == fitID, Fit.ID == projectedFits_table.c.victimID)
|
||||
fits = saveddata_session.query(Fit).filter(filter).all()
|
||||
return fits
|
||||
else:
|
||||
raise TypeError("Need integer as argument")
|
||||
|
||||
def add(stuff):
|
||||
with sd_lock:
|
||||
|
||||
@@ -187,6 +187,46 @@ class HandledDroneList(HandledList):
|
||||
|
||||
return d
|
||||
|
||||
class HandledCargoList(HandledList):
|
||||
# shameless copy of HandledDroneList
|
||||
# I have no idea what this does, but I needed it
|
||||
# @todo: investigate this
|
||||
def find(self, item):
|
||||
for d in self:
|
||||
if d.item == item:
|
||||
yield d
|
||||
|
||||
def findFirst(self, item):
|
||||
for d in self.find(item):
|
||||
return d
|
||||
|
||||
def append(self, cargo):
|
||||
list.append(self, cargo)
|
||||
|
||||
def remove(self, cargo):
|
||||
HandledList.remove(self, cargo)
|
||||
|
||||
def appendItem(self, item, qty = 1):
|
||||
if qty < 1: ValueError("Amount of cargo to add should be >= 1")
|
||||
d = self.findFirst(item)
|
||||
|
||||
if d is None:
|
||||
d = eos.types.Cargo(item)
|
||||
self.append(d)
|
||||
|
||||
d.qty += qty
|
||||
return d
|
||||
|
||||
def removeItem(self, item, qty):
|
||||
if qty < 1: ValueError("Amount of cargo to remove should be >= 1")
|
||||
d = self.findFirst(item)
|
||||
if d is None: return
|
||||
d.qty -= qty
|
||||
if d.qty <= 0:
|
||||
self.remove(d)
|
||||
return None
|
||||
|
||||
return d
|
||||
|
||||
class HandledImplantBoosterList(HandledList):
|
||||
def __init__(self):
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# Used by:
|
||||
# Modules named like: Emission Scope Sharpener (8 of 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"),
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# Used by:
|
||||
# Modules named like: Memetic Algorithm Bank (8 of 8)
|
||||
# Implant: Poteque 'Prospector' Environmental Analysis EY-1005
|
||||
# Implant: Poteque 'Prospector' Hacking HC-905
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Halo (12 of 12)
|
||||
# Implants named like: grade Halo (18 of 18)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# Used by:
|
||||
# Modules named like: Emission Scope Sharpener (8 of 8)
|
||||
# Implant: Poteque 'Prospector' Archaeology AC-905
|
||||
# Implant: Poteque 'Prospector' Environmental Analysis EY-1005
|
||||
# Skill: Archaeology
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Used by:
|
||||
# Modules from group: Scan Probe Launcher (4 of 7)
|
||||
# Implants named like: Low grade Virtue (5 of 6)
|
||||
# Implants named like: Poteque 'Prospector' Astrometric Rangefinding AR (3 of 3)
|
||||
# Implants named like: grade Virtue (10 of 12)
|
||||
# Modules named like: Gravity Capacitor Upgrade (8 of 8)
|
||||
# Skill: Astrometric Rangefinding
|
||||
# Skill: Astrometrics
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Implants named like: Eifyr and Co. 'Alchemist' Nanite Control NC (2 of 2)
|
||||
# Implants named like: Low grade Edge (5 of 6)
|
||||
# Implants named like: grade Edge (10 of 12)
|
||||
# Skill: Neurotoxin Control
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Implants named like: Eifyr and Co. 'Alchemist' Nanite Control NC (2 of 2)
|
||||
# Implants named like: Low grade Edge (5 of 6)
|
||||
# Implants named like: grade Edge (10 of 12)
|
||||
# Skill: Neurotoxin Control
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Implants named like: Eifyr and Co. 'Alchemist' Nanite Control NC (2 of 2)
|
||||
# Implants named like: Low grade Edge (5 of 6)
|
||||
# Implants named like: grade Edge (10 of 12)
|
||||
# Skill: Neurotoxin Control
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Implants named like: Eifyr and Co. 'Alchemist' Nanite Control NC (2 of 2)
|
||||
# Implants named like: Low grade Edge (5 of 6)
|
||||
# Implants named like: grade Edge (10 of 12)
|
||||
# Skill: Neurotoxin Control
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Implants named like: Eifyr and Co. 'Alchemist' Nanite Control NC (2 of 2)
|
||||
# Implants named like: Low grade Edge (5 of 6)
|
||||
# Implants named like: grade Edge (10 of 12)
|
||||
# Skill: Neurotoxin Control
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Talon (6 of 12)
|
||||
# Implants named like: High grade Talon (6 of 6)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# Used by:
|
||||
# Modules from group: Expanded Cargohold (13 of 13)
|
||||
# Modules from group: Overdrive Injector System (14 of 14)
|
||||
# Modules from group: Reinforced Bulkhead (12 of 12)
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
fit.ship.multiplyItemAttr("capacity", module.getModifiedItemAttr("cargoCapacityMultiplier"))
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
# Used by:
|
||||
# Ship: Chimera
|
||||
# Ship: Revenant
|
||||
# Ship: Wyvern
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
|
||||
7
eos/effects/carriercaldarifightersandbomberssig1.py
Normal file
7
eos/effects/carriercaldarifightersandbomberssig1.py
Normal file
@@ -0,0 +1,7 @@
|
||||
# Used by:
|
||||
# Ship: Revenant
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Caldari Carrier").level
|
||||
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Fighters") or drone.item.requiresSkill("Fighter Bombers"),
|
||||
"signatureRadius", ship.getModifiedItemAttr("carrierCaldariBonus1") * level)
|
||||
@@ -6,7 +6,7 @@ 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.group.name == "ECM",
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Electronic Warfare"),
|
||||
"scan%sStrengthBonus" % scanType,
|
||||
module.getModifiedItemAttr("commandBonusECM"),
|
||||
stackingPenalties = True)
|
||||
|
||||
@@ -5,8 +5,8 @@ gangBoost = "ewarStrRSD"
|
||||
type = "active", "gang"
|
||||
def handler(fit, module, context):
|
||||
if "gang" not in context: return
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Sensor Damper",
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"),
|
||||
"maxTargetRangeBonus", module.getModifiedItemAttr("commandBonusRSD"))
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Sensor Damper",
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"),
|
||||
"scanResolutionBonus", module.getModifiedItemAttr("commandBonusRSD"),
|
||||
stackingPenalties=True)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Used by:
|
||||
# Ships from group: Capital Industrial Ship (2 of 2)
|
||||
# Ships from group: Command Ship (8 of 8)
|
||||
# Ship: Orca
|
||||
# Ship: Rorqual
|
||||
# Ships from group: Industrial Command Ship (2 of 2)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator",
|
||||
|
||||
@@ -7,7 +7,8 @@
|
||||
# Ships named like: Stratios (2 of 2)
|
||||
# Subsystems named like: Offensive Covert Reconfiguration (4 of 4)
|
||||
# Ship: Astero
|
||||
# Ship: Prospect
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
fit.modules.filteredItemForce(lambda mod: mod.item.group.name == "Cloaking Device",
|
||||
fit.modules.filteredItemForce(lambda mod: mod.item.requiresSkill("Cloaking"),
|
||||
"moduleReactivationDelay", container.getModifiedItemAttr("covertOpsAndReconOpsCloakModuleDelay"))
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# Used by:
|
||||
# Ship: Astero
|
||||
# Ship: Prospect
|
||||
type = "passive"
|
||||
runTime = "early"
|
||||
def handler(fit, ship, context):
|
||||
|
||||
5
eos/effects/drawbackcargocapacity.py
Normal file
5
eos/effects/drawbackcargocapacity.py
Normal file
@@ -0,0 +1,5 @@
|
||||
# Used by:
|
||||
# Modules named like: Transverse Bulkhead (8 of 8)
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
fit.ship.boostItemAttr("capacity", module.getModifiedItemAttr("drawback"))
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Modules from group: Rig Armor (48 of 64)
|
||||
# Modules from group: Rig Armor (48 of 72)
|
||||
# Modules from group: Rig Resource Processing (8 of 10)
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
|
||||
8
eos/effects/dreadnoughtshipbonusshieldresistancesc2.py
Normal file
8
eos/effects/dreadnoughtshipbonusshieldresistancesc2.py
Normal file
@@ -0,0 +1,8 @@
|
||||
# Used by:
|
||||
# Ship: Phoenix
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Caldari Dreadnought").level
|
||||
for damageType in ("em", "thermal", "explosive", "kinetic"):
|
||||
fit.ship.boostItemAttr("shield{}DamageResonance".format(damageType.capitalize()),
|
||||
ship.getModifiedItemAttr("dreadnoughtShipBonusC2") * level)
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Modules from group: Drone Damage Modules (6 of 6)
|
||||
# Modules from group: Drone Damage Modules (10 of 10)
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"),
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# Used by:
|
||||
# Skills from group: Drones (8 of 21)
|
||||
# Skills named like: Drone Specialization (4 of 4)
|
||||
# Skill: Heavy Drone Operation
|
||||
# Skill: Sentry Drone Interfacing
|
||||
type = "passive"
|
||||
def handler(fit, skill, context):
|
||||
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill(skill),
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
# Used by:
|
||||
# Skill: Combat Drone Operation
|
||||
type = "passive"
|
||||
def handler(fit, skill, context):
|
||||
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Scout Drone Operation"),
|
||||
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)
|
||||
4
eos/effects/dronemwdboostonline.py → eos/effects/dronemwdspeedbonus.py
Executable file → Normal file
4
eos/effects/dronemwdboostonline.py → eos/effects/dronemwdspeedbonus.py
Executable file → Normal file
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Modules from group: Drone Navigation Computer (6 of 6)
|
||||
# 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("speedBoostFactor"), stackingPenalties = True)
|
||||
module.getModifiedItemAttr("speedFactor"), stackingPenalties = True)
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Modules from group: Drone Tracking Modules (7 of 7)
|
||||
# Variations of module: Omnidirectional Tracking Link I (8 of 8)
|
||||
type = "active"
|
||||
def handler(fit, module, context):
|
||||
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"),
|
||||
|
||||
13
eos/effects/dronetrackingenhancerbonus.py
Normal file
13
eos/effects/dronetrackingenhancerbonus.py
Normal file
@@ -0,0 +1,13 @@
|
||||
# Used by:
|
||||
# Variations of module: Omnidirectional Tracking Enhancer I (9 of 9)
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"),
|
||||
"maxRange", module.getModifiedItemAttr("maxRangeBonus"),
|
||||
stackingPenalties = True)
|
||||
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"),
|
||||
"falloff", module.getModifiedItemAttr("falloffBonus"),
|
||||
stackingPenalties = True)
|
||||
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"),
|
||||
"trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"),
|
||||
stackingPenalties = True)
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Ships from group: Exhumer (3 of 3)
|
||||
# Ships from group: Exhumer (4 of 4)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Exhumers").level
|
||||
|
||||
12
eos/effects/eliteindustrialarmorrepairdurationelite2.py → eos/effects/elitebargebonusminingdurationbarge2.py
Executable file → Normal file
12
eos/effects/eliteindustrialarmorrepairdurationelite2.py → eos/effects/elitebargebonusminingdurationbarge2.py
Executable file → Normal file
@@ -1,7 +1,7 @@
|
||||
# Used by:
|
||||
# Ship: Viator
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Transport Ships").level
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"),
|
||||
"duration", ship.getModifiedItemAttr("eliteBonusIndustrial2") * level)
|
||||
# Ships from group: Exhumer (4 of 4)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Exhumers").level
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"),
|
||||
"duration", ship.getModifiedItemAttr("eliteBonusBarge2") * level)
|
||||
8
eos/effects/elitebargeshieldresistance1.py
Normal file
8
eos/effects/elitebargeshieldresistance1.py
Normal file
@@ -0,0 +1,8 @@
|
||||
# Used by:
|
||||
# Ships from group: Exhumer (4 of 4)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Exhumers").level
|
||||
for damageType in ("em", "thermal", "explosive", "kinetic"):
|
||||
fit.ship.boostItemAttr("shield{}DamageResonance".format(damageType.capitalize()),
|
||||
ship.getModifiedItemAttr("eliteBonusBarge1") * level)
|
||||
@@ -1,8 +0,0 @@
|
||||
# Used by:
|
||||
# Ships from group: Exhumer (3 of 3)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Exhumers").level
|
||||
groups = ("Strip Miner", "Frequency Mining Laser")
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
|
||||
"miningAmount", ship.getModifiedItemAttr("eliteBonusBarge1") * level)
|
||||
7
eos/effects/elitebonusexpeditionmining1.py
Normal file
7
eos/effects/elitebonusexpeditionmining1.py
Normal file
@@ -0,0 +1,7 @@
|
||||
# Used by:
|
||||
# Ship: Prospect
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
level = fit.character.getSkill("Expedition Frigates").level
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"),
|
||||
"miningAmount", module.getModifiedItemAttr("eliteBonusExpedition1") * level)
|
||||
6
eos/effects/elitebonusexpeditionsigradius2.py
Normal file
6
eos/effects/elitebonusexpeditionsigradius2.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# Used by:
|
||||
# Ship: Prospect
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Expedition Frigates").level
|
||||
fit.ship.boostItemAttr("signatureRadius", ship.getModifiedItemAttr("eliteBonusExpedition2") * level)
|
||||
@@ -1,5 +1,6 @@
|
||||
# Used by:
|
||||
# Ships from group: Jump Freighter (4 of 4)
|
||||
# Ship: Anshar
|
||||
# Ship: Ark
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Jump Freighters").level
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# Used by:
|
||||
# Ships from group: Jump Freighter (4 of 4)
|
||||
# Ship: Nomad
|
||||
# Ship: Rhea
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Jump Freighters").level
|
||||
|
||||
6
eos/effects/eliteindustrialabheatbonus.py
Normal file
6
eos/effects/eliteindustrialabheatbonus.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# 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"))
|
||||
6
eos/effects/eliteindustrialarmorhardenerheatbonus.py
Normal file
6
eos/effects/eliteindustrialarmorhardenerheatbonus.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# 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"))
|
||||
8
eos/effects/eliteindustrialarmorrepairheatbonus.py
Normal file
8
eos/effects/eliteindustrialarmorrepairheatbonus.py
Normal file
@@ -0,0 +1,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"))
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"),
|
||||
"overloadSelfDurationBonus", ship.getModifiedItemAttr("roleBonusOverheatDST"))
|
||||
9
eos/effects/eliteindustrialarmorresists2.py
Normal file
9
eos/effects/eliteindustrialarmorresists2.py
Normal file
@@ -0,0 +1,9 @@
|
||||
# Used by:
|
||||
# Ship: Impel
|
||||
# Ship: Occator
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Transport Ships").level
|
||||
for damageType in ("em", "thermal", "explosive", "kinetic"):
|
||||
fit.ship.boostItemAttr("armor{}DamageResonance".format(damageType.capitalize()),
|
||||
ship.getModifiedItemAttr("eliteBonusIndustrial2") * level)
|
||||
6
eos/effects/eliteindustrialfleetcapacity1.py
Normal file
6
eos/effects/eliteindustrialfleetcapacity1.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# Used by:
|
||||
# Ships from group: Deep Space Transport (4 of 4)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Transport Ships").level
|
||||
fit.ship.boostItemAttr("fleetHangarCapacity", ship.getModifiedItemAttr("eliteBonusIndustrial1") * level)
|
||||
6
eos/effects/eliteindustrialmwdheatbonus.py
Normal file
6
eos/effects/eliteindustrialmwdheatbonus.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# 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"))
|
||||
@@ -0,0 +1,6 @@
|
||||
# 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"))
|
||||
8
eos/effects/eliteindustrialshieldboosterheatbonus.py
Normal file
8
eos/effects/eliteindustrialshieldboosterheatbonus.py
Normal file
@@ -0,0 +1,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"))
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"),
|
||||
"overloadSelfDurationBonus", ship.getModifiedItemAttr("roleBonusOverheatDST"))
|
||||
6
eos/effects/eliteindustrialshieldhardenerheatbonus.py
Normal file
6
eos/effects/eliteindustrialshieldhardenerheatbonus.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# 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"))
|
||||
9
eos/effects/eliteindustrialshieldresists2.py
Normal file
9
eos/effects/eliteindustrialshieldresists2.py
Normal file
@@ -0,0 +1,9 @@
|
||||
# Used by:
|
||||
# Ship: Bustard
|
||||
# Ship: Mastodon
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Transport Ships").level
|
||||
for damageType in ("em", "thermal", "explosive", "kinetic"):
|
||||
fit.ship.boostItemAttr("shield{}DamageResonance".format(damageType.capitalize()),
|
||||
ship.getModifiedItemAttr("eliteBonusIndustrial2") * level)
|
||||
6
eos/effects/eliteindustrialwarpspeedbonus1.py
Normal file
6
eos/effects/eliteindustrialwarpspeedbonus1.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# Used by:
|
||||
# Ships from group: Blockade Runner (4 of 4)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Transport Ships").level
|
||||
fit.ship.boostItemAttr("warpSpeedMultiplier", ship.getModifiedItemAttr("eliteBonusIndustrial1") * level)
|
||||
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Implants named like: Eifyr and Co. 'Rogue' Evasive Maneuvering EM (6 of 6)
|
||||
# Implants named like: Low grade Nomad (5 of 6)
|
||||
# Implants named like: grade Nomad (10 of 12)
|
||||
# Modules named like: Low Friction Nozzle Joints (8 of 8)
|
||||
# Implant: Genolution Core Augmentation CA-4
|
||||
# Skill: Evasive Maneuvering
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Centurion (5 of 6)
|
||||
# Implants named like: grade Centurion (10 of 12)
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote ECM Burst",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Centurion (5 of 6)
|
||||
# Implants named like: grade Centurion (10 of 12)
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Sensor Damper",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Centurion (5 of 6)
|
||||
# Implants named like: grade Centurion (10 of 12)
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tracking Disruptor",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Centurion (5 of 6)
|
||||
# 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",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Centurion (5 of 6)
|
||||
# Implants named like: grade Centurion (10 of 12)
|
||||
# Modules named like: Particle Dispersion Projector (8 of 8)
|
||||
# Skill: Long Distance Jamming
|
||||
type = "passive"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Spur (6 of 12)
|
||||
# Implants named like: High grade Spur (6 of 6)
|
||||
type = "passive"
|
||||
runTime = "early"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
6
eos/effects/frequencymininglasermaxrangebonus.py
Normal file
6
eos/effects/frequencymininglasermaxrangebonus.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# 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"))
|
||||
@@ -4,8 +4,8 @@ type = "gang", "active"
|
||||
gangBoost = "miningMaxRange"
|
||||
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,
|
||||
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)
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("CPU Management"),
|
||||
"surveyScanRange", module.getModifiedItemAttr("commandBonus"))
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Harvest (5 of 6)
|
||||
# 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",
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting"),
|
||||
"duration", implant.getModifiedItemAttr("durationBonus"))
|
||||
"duration", implant.getModifiedItemAttr("durationBonus"))
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Ship: Venture
|
||||
# Variations of ship: Venture (2 of 2)
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting"),
|
||||
"miningAmount", module.getModifiedItemAttr("miningAmountMultiplier"))
|
||||
fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Gas Cloud Harvester",
|
||||
"miningAmount", module.getModifiedItemAttr("miningAmountMultiplier"))
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# Used by:
|
||||
# Modules named like: Memetic Algorithm Bank (8 of 8)
|
||||
# Implant: Poteque 'Prospector' Environmental Analysis EY-1005
|
||||
# Implant: Poteque 'Prospector' Hacking HC-905
|
||||
# Skill: Hacking
|
||||
type = "passive"
|
||||
|
||||
6
eos/effects/heatdamagebonus.py
Normal file
6
eos/effects/heatdamagebonus.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# 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"))
|
||||
@@ -1,7 +1,8 @@
|
||||
# Used by:
|
||||
# Implants named like: Slave (10 of 12)
|
||||
# Implants named like: grade Slave (15 of 18)
|
||||
# Modules named like: Trimark Armor Pump (8 of 8)
|
||||
# Implant: Low-grade Snake Epsilon
|
||||
# Implant: Mid-grade Snake Epsilon
|
||||
# Skill: Hull Upgrades
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# Used by:
|
||||
# Variations of ship: Procurer (2 of 2)
|
||||
# Variations of ship: Retriever (2 of 2)
|
||||
# Ships from group: Exhumer (3 of 4)
|
||||
# Ship: Procurer
|
||||
# Ship: Retriever
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Ice Harvesting"),
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# Used by:
|
||||
# Variations of ship: Procurer (2 of 2)
|
||||
# Variations of ship: Retriever (2 of 2)
|
||||
# Ships from group: Exhumer (3 of 4)
|
||||
# Ship: Procurer
|
||||
# Ship: Retriever
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Ice Harvesting"),
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Grail (6 of 12)
|
||||
# Implants named like: High grade Grail (6 of 6)
|
||||
type = "passive"
|
||||
runTime = "early"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Ascendancy (12 of 12)
|
||||
# Implants named like: grade Ascendancy (12 of 12)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# Used by:
|
||||
# Implants named like: Inherent Implants 'Noble' Mechanic MC (6 of 6)
|
||||
# Modules named like: Transverse Bulkhead (8 of 8)
|
||||
# Skill: Mechanics
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Module: Large Micro Jump Drive
|
||||
# Modules from group: Micro Jump Drive (2 of 2)
|
||||
type = "active"
|
||||
def handler(fit, module, context):
|
||||
fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonusPercent"))
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Ship: Rorqual
|
||||
# Ships from group: Capital Industrial Ship (2 of 2)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Director"),
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Harvest (5 of 6)
|
||||
# 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",
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
# Used by:
|
||||
# Variations of ship: Procurer (2 of 2)
|
||||
# Variations of ship: Retriever (2 of 2)
|
||||
# Ship: Venture
|
||||
# Ships from group: Exhumer (3 of 4)
|
||||
# Variations of ship: Venture (2 of 2)
|
||||
# Ship: Procurer
|
||||
# Ship: Retriever
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Mining"),
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
# Used by:
|
||||
# Modules from group: Reinforced Bulkhead (12 of 12)
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
fit.ship.multiplyItemAttr("maxVelocity", module.getModifiedItemAttr("maxVelocityBonus"),
|
||||
stackingPenalties = True)
|
||||
@@ -1,5 +1,6 @@
|
||||
# Used by:
|
||||
# Implant: Low-grade Snake Alpha
|
||||
# Implant: Mid-grade Snake Alpha
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("velocityBonus"))
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Snake (11 of 12)
|
||||
# Implants named like: grade Snake (16 of 18)
|
||||
# Modules named like: Auxiliary Thrusters (8 of 8)
|
||||
# Implant: Quafe Zero
|
||||
# Skill: Navigation
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Ship: Rorqual
|
||||
# Ships from group: Capital Industrial Ship (2 of 2)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
level = fit.character.getSkill("Capital Industrial Ships").level
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# Used by:
|
||||
# Modules from group: Drone Tracking Modules (7 of 7)
|
||||
# Modules from group: Remote Tracking Computer (10 of 10)
|
||||
# Modules from group: Tracking Computer (14 of 14)
|
||||
# Modules from group: Tracking Disruptor (10 of 10)
|
||||
# Variations of module: Omnidirectional Tracking Link I (8 of 8)
|
||||
type = "overheat"
|
||||
def handler(fit, module, context):
|
||||
module.boostItemAttr("maxRangeBonus", module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus"))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Jackal (6 of 12)
|
||||
# Implants named like: High grade Jackal (6 of 6)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
7
eos/effects/rolebonusbulkheadcpu.py
Normal file
7
eos/effects/rolebonusbulkheadcpu.py
Normal file
@@ -0,0 +1,7 @@
|
||||
# Used by:
|
||||
# Ships from group: Freighter (4 of 4)
|
||||
# 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"))
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Ship: Rorqual
|
||||
# Ships from group: Capital Industrial Ship (2 of 2)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cargo Scanner",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Ship: Rorqual
|
||||
# Ships from group: Capital Industrial Ship (2 of 2)
|
||||
type = "passive"
|
||||
def handler(fit, ship, context):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Survey Scanner",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants from group: Cyberimplant (20 of 157)
|
||||
# Implants named like: High grade (20 of 60)
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
for type in ("Gravimetric", "Magnetometric", "Radar", "Ladar"):
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# Used by:
|
||||
# Modules named like: Drone Control Range Augmentor (8 of 8)
|
||||
# Skill: Electronic Warfare Drone Interfacing
|
||||
# Skill: Scout Drone Operation
|
||||
# Skills named like: Drone Avionics (2 of 2)
|
||||
type = "passive"
|
||||
def handler(fit, container, context):
|
||||
level = container.level if "skill" in context else 1
|
||||
|
||||
6
eos/effects/scripttrackingcomputerfalloffbonusbonus.py
Normal file
6
eos/effects/scripttrackingcomputerfalloffbonusbonus.py
Normal file
@@ -0,0 +1,6 @@
|
||||
# Used by:
|
||||
# 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"))
|
||||
@@ -4,4 +4,3 @@
|
||||
type = "passive"
|
||||
def handler(fit, module, context):
|
||||
module.boostItemAttr("maxRangeBonus", module.getModifiedChargeAttr("maxRangeBonusBonus"))
|
||||
module.boostItemAttr("falloffBonus", module.getModifiedChargeAttr("falloffBonusBonus"))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Talisman (12 of 12)
|
||||
# Implants named like: grade Talisman (18 of 18)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Talisman (10 of 12)
|
||||
# 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"),
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Crystal (12 of 12)
|
||||
# Implants named like: grade Crystal (18 of 18)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Centurion (6 of 6)
|
||||
# Implants named like: grade Centurion (12 of 12)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Harvest (6 of 6)
|
||||
# Implants named like: grade Harvest (12 of 12)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Used by:
|
||||
# Implants named like: Slave (12 of 12)
|
||||
# Implant: Halo Omega
|
||||
# Implants named like: grade Slave (18 of 18)
|
||||
# Implant: High-grade Halo Omega
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Snake (12 of 12)
|
||||
# Implants named like: grade Snake (18 of 18)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Virtue (6 of 6)
|
||||
# Implants named like: grade Virtue (12 of 12)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Edge (6 of 6)
|
||||
# Implants named like: grade Edge (12 of 12)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Used by:
|
||||
# Implants named like: Low grade Nomad (6 of 6)
|
||||
# Implants named like: grade Nomad (12 of 12)
|
||||
runTime = "early"
|
||||
type = "passive"
|
||||
def handler(fit, implant, context):
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user