From cf27c2be100a236c4d128a50c3132dd7cb306830 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Fri, 2 Nov 2018 15:49:35 +0300 Subject: [PATCH 01/34] Update database and add effects for two new triglavian ships --- eos/effects/shiparmoremresistancepbc2.py | 6 ++++++ .../shiparmorexplosiveresistancepbc2.py | 6 ++++++ eos/effects/shiparmorkineticresistancepbc2.py | 6 ++++++ eos/effects/shiparmorthermalresistancepbc2.py | 6 ++++++ .../shipbonuspbc1disintegratordamage.py | 7 +++++++ .../shipbonuspd1disintegratordamage.py | 7 +++++++ .../shipbonuspd2disintegratormaxrange.py | 7 +++++++ .../shiproledisintegratormaxrangecbc.py | 6 ++++++ .../smalldisintegratormaxrangebonus.py | 6 ++++++ .../{warpscramble.py => warpdisrupt.py} | 0 eve.db | Bin 16371712 -> 16404480 bytes 11 files changed, 57 insertions(+) create mode 100644 eos/effects/shiparmoremresistancepbc2.py create mode 100644 eos/effects/shiparmorexplosiveresistancepbc2.py create mode 100644 eos/effects/shiparmorkineticresistancepbc2.py create mode 100644 eos/effects/shiparmorthermalresistancepbc2.py create mode 100644 eos/effects/shipbonuspbc1disintegratordamage.py create mode 100644 eos/effects/shipbonuspd1disintegratordamage.py create mode 100644 eos/effects/shipbonuspd2disintegratormaxrange.py create mode 100644 eos/effects/shiproledisintegratormaxrangecbc.py create mode 100644 eos/effects/smalldisintegratormaxrangebonus.py rename eos/effects/{warpscramble.py => warpdisrupt.py} (100%) diff --git a/eos/effects/shiparmoremresistancepbc2.py b/eos/effects/shiparmoremresistancepbc2.py new file mode 100644 index 000000000..9cf226dae --- /dev/null +++ b/eos/effects/shiparmoremresistancepbc2.py @@ -0,0 +1,6 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusPBC2"), + skill="Precursor Battlecruiser") diff --git a/eos/effects/shiparmorexplosiveresistancepbc2.py b/eos/effects/shiparmorexplosiveresistancepbc2.py new file mode 100644 index 000000000..4e5fc21b9 --- /dev/null +++ b/eos/effects/shiparmorexplosiveresistancepbc2.py @@ -0,0 +1,6 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusPBC2"), + skill="Precursor Battlecruiser") diff --git a/eos/effects/shiparmorkineticresistancepbc2.py b/eos/effects/shiparmorkineticresistancepbc2.py new file mode 100644 index 000000000..94208376c --- /dev/null +++ b/eos/effects/shiparmorkineticresistancepbc2.py @@ -0,0 +1,6 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusPBC2"), + skill="Precursor Battlecruiser") diff --git a/eos/effects/shiparmorthermalresistancepbc2.py b/eos/effects/shiparmorthermalresistancepbc2.py new file mode 100644 index 000000000..e158932d8 --- /dev/null +++ b/eos/effects/shiparmorthermalresistancepbc2.py @@ -0,0 +1,6 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusPBC2"), + skill="Precursor Battlecruiser") diff --git a/eos/effects/shipbonuspbc1disintegratordamage.py b/eos/effects/shipbonuspbc1disintegratordamage.py new file mode 100644 index 000000000..21251180b --- /dev/null +++ b/eos/effects/shipbonuspbc1disintegratordamage.py @@ -0,0 +1,7 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Precursor Weapon"), + "damageMultiplier", ship.getModifiedItemAttr("shipBonusPBC1"), + skill="Precursor Battlecruiser") diff --git a/eos/effects/shipbonuspd1disintegratordamage.py b/eos/effects/shipbonuspd1disintegratordamage.py new file mode 100644 index 000000000..23ed2dc5b --- /dev/null +++ b/eos/effects/shipbonuspd1disintegratordamage.py @@ -0,0 +1,7 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), + "damageMultiplier", ship.getModifiedItemAttr("shipBonusPD1"), + skill="Precursor Destroyer") diff --git a/eos/effects/shipbonuspd2disintegratormaxrange.py b/eos/effects/shipbonuspd2disintegratormaxrange.py new file mode 100644 index 000000000..740734435 --- /dev/null +++ b/eos/effects/shipbonuspd2disintegratormaxrange.py @@ -0,0 +1,7 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), + "maxRange", ship.getModifiedItemAttr("shipBonusPD2"), + skill="Precursor Destroyer") diff --git a/eos/effects/shiproledisintegratormaxrangecbc.py b/eos/effects/shiproledisintegratormaxrangecbc.py new file mode 100644 index 000000000..c89d0d8c2 --- /dev/null +++ b/eos/effects/shiproledisintegratormaxrangecbc.py @@ -0,0 +1,6 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Precursor Weapon"), + "maxRange", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/smalldisintegratormaxrangebonus.py b/eos/effects/smalldisintegratormaxrangebonus.py new file mode 100644 index 000000000..232bf0c2f --- /dev/null +++ b/eos/effects/smalldisintegratormaxrangebonus.py @@ -0,0 +1,6 @@ +type = "passive" + + +def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), + "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/warpscramble.py b/eos/effects/warpdisrupt.py similarity index 100% rename from eos/effects/warpscramble.py rename to eos/effects/warpdisrupt.py diff --git a/eve.db b/eve.db index eb63928d4a9109ee975d623843bec4db4d03d969..e8d6c086286063aff1b044020b492b6717d0c959 100644 GIT binary patch literal 16404480 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