From fd45dcc02ea459842b8bfa439242fe86f028bfd9 Mon Sep 17 00:00:00 2001 From: Idart Date: Mon, 23 Sep 2013 01:51:35 +0300 Subject: [PATCH] Added BH jewelry sets and buffs Added BH heroic jewelry sets for Bounty Hunter with their buffs. Added 5-piece bonus to each sets necklace for testing purposes. --- scripts/buffs/flawless_bead_1.py | 7 + scripts/buffs/flawless_bead_2.py | 7 + scripts/buffs/flawless_bead_3.py | 7 + scripts/buffs/set_bonus_bh_dps_1.py | 9 + scripts/buffs/set_bonus_bh_dps_2.py | 11 + scripts/buffs/set_bonus_bh_dps_3.py | 17 ++ scripts/buffs/set_bonus_bh_utility_a_1.py | 9 + scripts/buffs/set_bonus_bh_utility_a_2.py | 9 + scripts/buffs/set_bonus_bh_utility_a_3.py | 10 + scripts/buffs/set_bonus_bh_utility_b_1.py | 9 + scripts/buffs/set_bonus_bh_utility_b_2.py | 13 + scripts/buffs/set_bonus_bh_utility_b_3.py | 13 + scripts/demo.py | 258 ++++++++++++++++++ .../wearables/bracelet/bracelet_s02_l.py | 25 +- .../wearables/bracelet/bracelet_s02_r.py | 25 +- .../wearables/bracelet/bracelet_s03_l.py | 12 + .../wearables/bracelet/bracelet_s03_r.py | 12 + .../wearables/bracelet/bracelet_s04_l.py | 23 +- .../wearables/bracelet/bracelet_s04_r.py | 24 +- .../wearables/necklace/necklace_s01.py | 35 ++- .../wearables/necklace/necklace_s02.py | 34 ++- .../wearables/necklace/necklace_s03.py | 38 ++- .../wearables/necklace/necklace_s10.py | 15 +- .../tangible/wearables/ring/ring_s01.py | 40 ++- .../tangible/wearables/ring/ring_s02.py | 13 +- .../tangible/wearables/ring/ring_s03.py | 40 ++- .../tangible/wearables/ring/ring_s04.py | 12 + 27 files changed, 715 insertions(+), 12 deletions(-) create mode 100644 scripts/buffs/flawless_bead_1.py create mode 100644 scripts/buffs/flawless_bead_2.py create mode 100644 scripts/buffs/flawless_bead_3.py create mode 100644 scripts/buffs/set_bonus_bh_dps_1.py create mode 100644 scripts/buffs/set_bonus_bh_dps_2.py create mode 100644 scripts/buffs/set_bonus_bh_dps_3.py create mode 100644 scripts/buffs/set_bonus_bh_utility_a_1.py create mode 100644 scripts/buffs/set_bonus_bh_utility_a_2.py create mode 100644 scripts/buffs/set_bonus_bh_utility_a_3.py create mode 100644 scripts/buffs/set_bonus_bh_utility_b_1.py create mode 100644 scripts/buffs/set_bonus_bh_utility_b_2.py create mode 100644 scripts/buffs/set_bonus_bh_utility_b_3.py diff --git a/scripts/buffs/flawless_bead_1.py b/scripts/buffs/flawless_bead_1.py new file mode 100644 index 00000000..84123a88 --- /dev/null +++ b/scripts/buffs/flawless_bead_1.py @@ -0,0 +1,7 @@ +import sys + +def setup(core, actor, buff): + return + +def removeBuff(core, actor, buff): + return \ No newline at end of file diff --git a/scripts/buffs/flawless_bead_2.py b/scripts/buffs/flawless_bead_2.py new file mode 100644 index 00000000..84123a88 --- /dev/null +++ b/scripts/buffs/flawless_bead_2.py @@ -0,0 +1,7 @@ +import sys + +def setup(core, actor, buff): + return + +def removeBuff(core, actor, buff): + return \ No newline at end of file diff --git a/scripts/buffs/flawless_bead_3.py b/scripts/buffs/flawless_bead_3.py new file mode 100644 index 00000000..84123a88 --- /dev/null +++ b/scripts/buffs/flawless_bead_3.py @@ -0,0 +1,7 @@ +import sys + +def setup(core, actor, buff): + return + +def removeBuff(core, actor, buff): + return \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_dps_1.py b/scripts/buffs/set_bonus_bh_dps_1.py new file mode 100644 index 00000000..58d3ed08 --- /dev/null +++ b/scripts/buffs/set_bonus_bh_dps_1.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm', 5) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm', 5) + return \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_dps_2.py b/scripts/buffs/set_bonus_bh_dps_2.py new file mode 100644 index 00000000..cf463a7a --- /dev/null +++ b/scripts/buffs/set_bonus_bh_dps_2.py @@ -0,0 +1,11 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm', 5) + core.skillModService.addSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 5) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm', 5) + core.skillModService.deductSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 5) + return \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_dps_3.py b/scripts/buffs/set_bonus_bh_dps_3.py new file mode 100644 index 00000000..06bcee28 --- /dev/null +++ b/scripts/buffs/set_bonus_bh_dps_3.py @@ -0,0 +1,17 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm', 10) + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm_crit', 10) + core.skillModService.addSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 10) + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_dm' , 10) + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_bh_return_fire' , 750) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm', 10) + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm_crit', 10) + core.skillModService.deductSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 10) + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_dm' , 10) + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_bh_return_fire' , 750) + return \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_utility_a_1.py b/scripts/buffs/set_bonus_bh_utility_a_1.py new file mode 100644 index 00000000..4f9e42e4 --- /dev/null +++ b/scripts/buffs/set_bonus_bh_utility_a_1.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_bh_flawless_strike', 15) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_bh_flawless_strike', 15) + return \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_utility_a_2.py b/scripts/buffs/set_bonus_bh_utility_a_2.py new file mode 100644 index 00000000..4f9e42e4 --- /dev/null +++ b/scripts/buffs/set_bonus_bh_utility_a_2.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_bh_flawless_strike', 15) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_bh_flawless_strike', 15) + return \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_utility_a_3.py b/scripts/buffs/set_bonus_bh_utility_a_3.py new file mode 100644 index 00000000..e98992f3 --- /dev/null +++ b/scripts/buffs/set_bonus_bh_utility_a_3.py @@ -0,0 +1,10 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_bh_flawless_strike', 30) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_bh_flawless_strike', 30) + return + \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_utility_b_1.py b/scripts/buffs/set_bonus_bh_utility_b_1.py new file mode 100644 index 00000000..0f4597fe --- /dev/null +++ b/scripts/buffs/set_bonus_bh_utility_b_1.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'fast_attack_line_dm_cc', 5) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'fast_attack_line_dm_cc', 5) + return \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_utility_b_2.py b/scripts/buffs/set_bonus_bh_utility_b_2.py new file mode 100644 index 00000000..945c2883 --- /dev/null +++ b/scripts/buffs/set_bonus_bh_utility_b_2.py @@ -0,0 +1,13 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'fast_attack_line_dm_cc', 10) + core.skillModService.addSkillMod(actor, 'bh_dire_root', 20) + core.skillModService.addSkillMod(actor, 'bh_dire_snare', 20) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'fast_attack_line_dm_cc', 10) + core.skillModService.deductSkillMod(actor, 'bh_dire_root', 20) + core.skillModService.deductSkillMod(actor, 'bh_dire_snare', 20) + return \ No newline at end of file diff --git a/scripts/buffs/set_bonus_bh_utility_b_3.py b/scripts/buffs/set_bonus_bh_utility_b_3.py new file mode 100644 index 00000000..d136c4ec --- /dev/null +++ b/scripts/buffs/set_bonus_bh_utility_b_3.py @@ -0,0 +1,13 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'fast_attack_line_dm_cc', 35) + core.skillModService.addSkillMod(actor, 'bh_dire_root', 45) + core.skillModService.addSkillMod(actor, 'bh_dire_snare', 45) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'fast_attack_line_dm_cc', 35) + core.skillModService.deductSkillMod(actor, 'bh_dire_root', 45) + core.skillModService.deductSkillMod(actor, 'bh_dire_snare', 45) + return \ No newline at end of file diff --git a/scripts/demo.py b/scripts/demo.py index 2cda8a16..18c56256 100644 --- a/scripts/demo.py +++ b/scripts/demo.py @@ -189,4 +189,262 @@ def addProfessionAbilities(core, object, profession): object.addAbility('bh_intimidate_6') object.addAbility('bh_flawless_strike') + direfate1 = core.objectService.createObject('object/tangible/wearables/necklace/shared_necklace_s03.iff', object.getPlanet()) + direfate1.setStfFilename('static_item_n') + direfate1.setStfName('item_necklace_set_bh_utility_b_01_01') + direfate1.setDetailFilename('static_item_d') + direfate1.setDetailName('item_necklace_set_bh_utility_b_01_01') + direfate1.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + direfate1.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + direfate1.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + direfate1.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_root' , 1) + direfate1.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_snare' , 1) + direfate1.setIntAttribute('cat_skill_mod_bonus.@stat_n:fast_attack_line_dm_cc' , 2) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(direfate1) + + direfate2 = core.objectService.createObject('object/tangible/wearables/bracelet/shared_bracelet_s04_r.iff', object.getPlanet()) + direfate2.setStfFilename('static_item_n') + direfate2.setStfName('item_bracelet_r_set_bh_utility_b_01_01') + direfate2.setDetailFilename('static_item_d') + direfate2.setDetailName('item_bracelet_r_set_bh_utility_b_01_01') + direfate2.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + direfate2.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + direfate2.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + direfate2.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_root' , 1) + direfate2.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_snare' , 1) + direfate2.setIntAttribute('cat_skill_mod_bonus.@stat_n:fast_attack_line_dm_cc' , 2) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(direfate2) + + direfate3 = core.objectService.createObject('object/tangible/wearables/bracelet/shared_bracelet_s04_l.iff', object.getPlanet()) + direfate3.setStfFilename('static_item_n') + direfate3.setStfName('item_bracelet_l_set_bh_utility_b_01_01') + direfate3.setDetailFilename('static_item_d') + direfate3.setDetailName('item_bracelet_l_set_bh_utility_b_01_01') + direfate3.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + direfate3.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + direfate3.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + direfate3.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_root' , 1) + direfate3.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_snare' , 1) + direfate3.setIntAttribute('cat_skill_mod_bonus.@stat_n:fast_attack_line_dm_cc' , 2) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(direfate3) + + direfate4 = core.objectService.createObject('object/tangible/wearables/ring/shared_ring_s01.iff', object.getPlanet()) + direfate4.setStfFilename('static_item_n') + direfate4.setStfName('item_ring_set_bh_utility_b_01_01') + direfate4.setDetailFilename('static_item_d') + direfate4.setDetailName('item_ring_set_bh_utility_b_01_01') + direfate4.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + direfate4.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + direfate4.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + direfate4.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_root' , 1) + direfate4.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_snare' , 1) + direfate4.setIntAttribute('cat_skill_mod_bonus.@stat_n:fast_attack_line_dm_cc' , 2) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(direfate4) + + direfate5 = core.objectService.createObject('object/tangible/wearables/ring/shared_ring_s03.iff', object.getPlanet()) + direfate5.setStfFilename('static_item_n') + direfate5.setStfName('item_ring_a_set_bh_utility_b') + direfate5.setDetailFilename('static_item_d') + direfate5.setDetailName('item_ring_a_set_bh_utility_b') + direfate5.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + direfate5.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + direfate5.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + direfate5.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_root' , 1) + direfate5.setIntAttribute('cat_skill_mod_bonus.@stat_n:bh_dire_snare' , 1) + direfate5.setIntAttribute('cat_skill_mod_bonus.@stat_n:fast_attack_line_dm_cc' , 2) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(direfate5) + + flawless1 = core.objectService.createObject('object/tangible/wearables/necklace/shared_necklace_s02.iff', object.getPlanet()) + flawless1.setStfFilename('static_item_n') + flawless1.setStfName('item_necklace_set_bh_utility_a_01_01') + flawless1.setDetailFilename('static_item_d') + flawless1.setDetailName('item_necklace_set_bh_utility_a_01_01') + flawless1.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_a_1') + flawless1.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_a_2') + flawless1.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_a_3') + flawless1.setIntAttribute('cat_stat_mod_bonus.food_luck_modified' , 30) + flawless1.setIntAttribute('cat_stat_mod_bonus.food_precision_modified' , 50) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(flawless1) + + flawless2 = core.objectService.createObject('object/tangible/wearables/bracelet/shared_bracelet_s03_r.iff', object.getPlanet()) + flawless2.setStfFilename('static_item_n') + flawless2.setStfName('item_bracelet_r_set_bh_utility_a_01_01') + flawless2.setDetailFilename('static_item_d') + flawless2.setDetailName('item_bracelet_r_set_bh_utility_a_01_01') + flawless2.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + flawless2.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + flawless2.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + flawless2.setIntAttribute('cat_stat_mod_bonus.food_luck_modified' , 30) + flawless2.setIntAttribute('cat_stat_mod_bonus.food_precision_modified' , 50) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(flawless2) + + flawless3 = core.objectService.createObject('object/tangible/wearables/bracelet/shared_bracelet_s03_l.iff', object.getPlanet()) + flawless3.setStfFilename('static_item_n') + flawless3.setStfName('item_bracelet_l_set_bh_utility_a_01_01') + flawless3.setDetailFilename('static_item_d') + flawless3.setDetailName('item_bracelet_l_set_bh_utility_a_01_01') + flawless3.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + flawless3.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + flawless3.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + flawless3.setIntAttribute('cat_stat_mod_bonus.food_luck_modified' , 30) + flawless3.setIntAttribute('cat_stat_mod_bonus.food_precision_modified' , 50) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(flawless3) + + flawless4 = core.objectService.createObject('object/tangible/wearables/ring/shared_ring_s02.iff', object.getPlanet()) + flawless4.setStfFilename('static_item_n') + flawless4.setStfName('item_ring_set_bh_utility_a_01_01') + flawless4.setDetailFilename('static_item_d') + flawless4.setDetailName('item_ring_set_bh_utility_a_01_01') + flawless4.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + flawless4.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + flawless4.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + flawless4.setIntAttribute('cat_stat_mod_bonus.food_luck_modified' , 30) + flawless4.setIntAttribute('cat_stat_mod_bonus.food_precision_modified' , 50) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(flawless4) + + flawless5 = core.objectService.createObject('object/tangible/wearables/ring/shared_ring_s04.iff', object.getPlanet()) + flawless5.setStfFilename('static_item_n') + flawless5.setStfName('item_ring_a_set_bh_utility_a') + flawless5.setDetailFilename('static_item_d') + flawless5.setDetailName('item_ring_a_set_bh_utility_a') + flawless5.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_utility_b_1') + flawless5.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_utility_b_2') + flawless5.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_utility_b_3') + flawless5.setIntAttribute('cat_stat_mod_bonus.food_luck_modified' , 30) + flawless5.setIntAttribute('cat_stat_mod_bonus.food_precision_modified' , 50) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(flawless5) + + enforcer1 = core.objectService.createObject('object/tangible/wearables/necklace/shared_necklace_s01.iff', object.getPlanet()) + enforcer1.setStfFilename('static_item_n') + enforcer1.setStfName('item_necklace_set_bh_dps_01_01') + enforcer1.setDetailFilename('static_item_d') + enforcer1.setDetailName('item_necklace_set_bh_dps_01_01') + enforcer1.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_dps_1') + enforcer1.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_dps_2') + enforcer1.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_dps_3') + enforcer1.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm' , 1) + enforcer1.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm_crit' , 1) + enforcer1.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_buff_duration_line_bh_return_fire' , 1) + enforcer1.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_cooldown_line_dm' , 1) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(enforcer1) + + enforcer2 = core.objectService.createObject('object/tangible/wearables/bracelet/shared_bracelet_s02_r.iff', object.getPlanet()) + enforcer2.setStfFilename('static_item_n') + enforcer2.setStfName('item_bracelet_r_set_bh_dps_01_01') + enforcer2.setDetailFilename('static_item_d') + enforcer2.setDetailName('item_bracelet_r_set_dps_01_01') + enforcer2.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_dps_1') + enforcer2.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_dps_2') + enforcer2.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_dps_3') + enforcer2.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm' , 1) + enforcer2.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm_crit' , 1) + enforcer2.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_buff_duration_line_bh_return_fire' , 1) + enforcer2.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_cooldown_line_dm' , 1) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(enforcer2) + + enforcer3 = core.objectService.createObject('object/tangible/wearables/bracelet/shared_bracelet_s02_l.iff', object.getPlanet()) + enforcer3.setStfFilename('static_item_n') + enforcer3.setStfName('item_bracelet_l_set_bh_dps_01_01') + enforcer3.setDetailFilename('static_item_d') + enforcer3.setDetailName('item_bracelet_l_set_bh_dps_01_01') + enforcer3.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_dps_1') + enforcer3.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_dps_2') + enforcer3.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_dps_3') + enforcer3.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm' , 1) + enforcer3.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm_crit' , 1) + enforcer3.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_buff_duration_line_bh_return_fire' , 1) + enforcer3.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_cooldown_line_dm' , 1) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(enforcer3) + + enforcer4 = core.objectService.createObject('object/tangible/wearables/ring/shared_ring_s01.iff', object.getPlanet()) + enforcer4.setStfFilename('static_item_n') + enforcer4.setStfName('item_ring_set_bh_dps_01_01') + enforcer4.setDetailFilename('static_item_d') + enforcer4.setDetailName('item_ring_set_bh_dps_01_01') + enforcer4.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_dps_1') + enforcer4.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_dps_2') + enforcer4.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_dps_3') + enforcer4.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm' , 1) + enforcer4.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm_crit' , 1) + enforcer4.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_buff_duration_line_bh_return_fire' , 1) + enforcer4.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_cooldown_line_dm' , 1) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(enforcer4) + + enforcer5 = core.objectService.createObject('object/tangible/wearables/ring/shared_ring_s03.iff', object.getPlanet()) + enforcer5.setStfFilename('static_item_n') + enforcer5.setStfName('item_ring_a_set_bh_dps') + enforcer5.setDetailFilename('static_item_d') + enforcer5.setDetailName('item_ring_a_set_bh_dps') + enforcer5.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_bh_dps_1') + enforcer5.setStringAttribute('@set_bonus:piece_bonus_count_3', '@set_bonus:set_bonus_bh_dps_2') + enforcer5.setStringAttribute('@set_bonus:piece_bonus_count_5', '@set_bonus:set_bonus_bh_dps_3') + enforcer5.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm' , 1) + enforcer5.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_action_line_dm_crit' , 1) + enforcer5.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_buff_duration_line_bh_return_fire' , 1) + enforcer5.setIntAttribute('cat_skill_mod_bonus.@stat_n:expertise_cooldown_line_dm' , 1) + + inventory = object.getSlottedObject('inventory') + if not inventory: + return + inventory.add(enforcer5) + return + return + + return diff --git a/scripts/object/tangible/wearables/bracelet/bracelet_s02_l.py b/scripts/object/tangible/wearables/bracelet/bracelet_s02_l.py index ccad8904..f4f028dd 100644 --- a/scripts/object/tangible/wearables/bracelet/bracelet_s02_l.py +++ b/scripts/object/tangible/wearables/bracelet/bracelet_s02_l.py @@ -1,4 +1,27 @@ import sys def setup(core, object): - return \ No newline at end of file + return + +def equip(core, actor, object): + + ##Enforcer + if object.getStfName() == ('item_bracelet_l_set_bh_dps_01_01'): + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.addSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + return + return + +def unequip(core, actor, object): + + ##Enforcer + if object.getStfName() == ('item_bracelet_l_set_bh_dps_01_01'): + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.deductSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + return + return + diff --git a/scripts/object/tangible/wearables/bracelet/bracelet_s02_r.py b/scripts/object/tangible/wearables/bracelet/bracelet_s02_r.py index ccad8904..99b3e2a7 100644 --- a/scripts/object/tangible/wearables/bracelet/bracelet_s02_r.py +++ b/scripts/object/tangible/wearables/bracelet/bracelet_s02_r.py @@ -1,4 +1,27 @@ import sys def setup(core, object): - return \ No newline at end of file + return + +def equip(core, actor, object): + + ##Enforcer + if object.getStfName() == ('item_bracelet_r_set_bh_dps_01_01'): + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.addSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + return + return + +def unequip(core, actor, object): + + ##Enforcer + if object.getStfName() == ('item_bracelet_r_set_bh_dps_01_01'): + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.deductSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + return + return + diff --git a/scripts/object/tangible/wearables/bracelet/bracelet_s03_l.py b/scripts/object/tangible/wearables/bracelet/bracelet_s03_l.py index 37f98a3a..7910082d 100644 --- a/scripts/object/tangible/wearables/bracelet/bracelet_s03_l.py +++ b/scripts/object/tangible/wearables/bracelet/bracelet_s03_l.py @@ -12,6 +12,12 @@ def equip(core, actor, object): core.skillModService.addSkillMod(actor, 'precision_modified', 30) core.skillModService.addSkillMod(actor, 'luck_modified', 30) return + + ##Flawless + elif object.getStfName() == ('item_bracelet_l_set_bh_utility_a_01_01'): + core.skillModService.addSkillMod(actor, 'precision_modified', 50) + core.skillModService.addSkillMod(actor, 'luck_modified', 30) + return return def unequip(core, actor, object): @@ -22,5 +28,11 @@ def unequip(core, actor, object): core.skillModService.deductSkillMod(actor, 'precision_modified', 30) core.skillModService.deductSkillMod(actor, 'luck_modified', 30) return + + ##Flawless + elif object.getStfName() == ('item_bracelet_l_set_bh_utility_a_01_01'): + core.skillModService.deductSkillMod(actor, 'precision_modified', 50) + core.skillModService.deductSkillMod(actor, 'luck_modified', 30) + return return \ No newline at end of file diff --git a/scripts/object/tangible/wearables/bracelet/bracelet_s03_r.py b/scripts/object/tangible/wearables/bracelet/bracelet_s03_r.py index bc8f4ae5..6aef422c 100644 --- a/scripts/object/tangible/wearables/bracelet/bracelet_s03_r.py +++ b/scripts/object/tangible/wearables/bracelet/bracelet_s03_r.py @@ -12,6 +12,12 @@ def equip(core, actor, object): core.skillModService.addSkillMod(actor, 'precision_modified', 30) core.skillModService.addSkillMod(actor, 'luck_modified', 30) return + + ##Flawless + elif object.getStfName() == ('item_bracelet_r_set_bh_utility_a_01_01'): + core.skillModService.addSkillMod(actor, 'precision_modified', 50) + core.skillModService.addSkillMod(actor, 'luck_modified', 30) + return return def unequip(core, actor, object): @@ -22,4 +28,10 @@ def unequip(core, actor, object): core.skillModService.deductSkillMod(actor, 'precision_modified', 30) core.skillModService.deductSkillMod(actor, 'luck_modified', 30) return + + ##Flawless + elif object.getStfName() == ('item_bracelet_r_set_bh_utility_a_01_01'): + core.skillModService.deductSkillMod(actor, 'precision_modified', 50) + core.skillModService.deductSkillMod(actor, 'luck_modified', 30) + return return \ No newline at end of file diff --git a/scripts/object/tangible/wearables/bracelet/bracelet_s04_l.py b/scripts/object/tangible/wearables/bracelet/bracelet_s04_l.py index ccad8904..69ebd639 100644 --- a/scripts/object/tangible/wearables/bracelet/bracelet_s04_l.py +++ b/scripts/object/tangible/wearables/bracelet/bracelet_s04_l.py @@ -1,4 +1,25 @@ import sys def setup(core, object): - return \ No newline at end of file + return + +def equip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_bracelet_l_set_bh_utility_b_01_01'): + core.skillModService.addSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.addSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.addSkillMod(actor, 'fast_attack_line_dm_cc', 2) + return + return + +def unequip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_bracelet_l_set_bh_utility_b_01_01'): + core.skillModService.deductSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.deductSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.deductSkillMod(actor, 'fast_attack_line_dm_cc', 2) + return + return + diff --git a/scripts/object/tangible/wearables/bracelet/bracelet_s04_r.py b/scripts/object/tangible/wearables/bracelet/bracelet_s04_r.py index ccad8904..a82456f4 100644 --- a/scripts/object/tangible/wearables/bracelet/bracelet_s04_r.py +++ b/scripts/object/tangible/wearables/bracelet/bracelet_s04_r.py @@ -1,4 +1,26 @@ import sys def setup(core, object): - return \ No newline at end of file + return + +def equip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_bracelet_r_set_bh_utility_b_01_01'): + core.skillModService.addSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.addSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.addSkillMod(actor, 'fast_attack_line_dm_cc', 2) + return + return + +def unequip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_bracelet_r_set_bh_utility_b_01_01'): + core.skillModService.deductSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.deductSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.deductSkillMod(actor, 'fast_attack_line_dm_cc', 2) + return + return + + \ No newline at end of file diff --git a/scripts/object/tangible/wearables/necklace/necklace_s01.py b/scripts/object/tangible/wearables/necklace/necklace_s01.py index 767c6be7..0890489c 100644 --- a/scripts/object/tangible/wearables/necklace/necklace_s01.py +++ b/scripts/object/tangible/wearables/necklace/necklace_s01.py @@ -3,9 +3,40 @@ import sys def setup(core, object): return -def equip(core, actor, target): +def equip(core, actor, object): + + ##Enforcer + if object.getStfName() == ('item_necklace_set_bh_dps_01_01'): + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.addSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + + Buff = actor.getBuffByName('set_bonus_bh_dps_3') + if actor.getBuffList().contains(Buff): + core.buffService.removeBuffFromCreature(actor, Buff) + return + + if actor: + core.buffService.addBuffToCreature(actor, 'set_bonus_bh_dps_3') + return + return return -def unequip(core, actor, target): +def unequip(core, actor, object): + ##Enforcer + if object.getStfName() == ('item_necklace_set_bh_dps_01_01'): + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.deductSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + + Buff = actor.getBuffByName('set_bonus_bh_dps_3') + if actor.getBuffList().contains(Buff): + core.buffService.removeBuffFromCreature(actor, Buff) + return + return return + + diff --git a/scripts/object/tangible/wearables/necklace/necklace_s02.py b/scripts/object/tangible/wearables/necklace/necklace_s02.py index ccad8904..9f15ed48 100644 --- a/scripts/object/tangible/wearables/necklace/necklace_s02.py +++ b/scripts/object/tangible/wearables/necklace/necklace_s02.py @@ -1,4 +1,36 @@ import sys def setup(core, object): - return \ No newline at end of file + return + +def equip(core, actor, object): + + ##Flawless + if object.getStfName() == ('item_necklace_set_bh_utility_a_01_01'): + core.skillModService.addSkillMod(actor, 'precision_modified', 50) + core.skillModService.addSkillMod(actor, 'luck_modified', 30) + + Buff = actor.getBuffByName('set_bonus_bh_utility_a_3') + if actor.getBuffList().contains(Buff): + core.buffService.removeBuffFromCreature(actor, Buff) + return + + if actor: + core.buffService.addBuffToCreature(actor, 'set_bonus_bh_utility_a_3') + return + return + return + +def unequip(core, actor, object): + + ##Flawless + if object.getStfName() == ('item_necklace_set_bh_utility_a_01_01'): + core.skillModService.deductSkillMod(actor, 'precision_modified', 50) + core.skillModService.deductSkillMod(actor, 'luck_modified', 30) + + Buff = actor.getBuffByName('set_bonus_bh_utility_a_3') + if actor.getBuffList().contains(Buff): + core.buffService.removeBuffFromCreature(actor, Buff) + return + return + return diff --git a/scripts/object/tangible/wearables/necklace/necklace_s03.py b/scripts/object/tangible/wearables/necklace/necklace_s03.py index ccad8904..76b8141c 100644 --- a/scripts/object/tangible/wearables/necklace/necklace_s03.py +++ b/scripts/object/tangible/wearables/necklace/necklace_s03.py @@ -1,4 +1,40 @@ import sys def setup(core, object): - return \ No newline at end of file + return + +def equip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_necklace_set_bh_utility_b_01_01'): + core.skillModService.addSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.addSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.addSkillMod(actor, 'fast_attack_line_dm_cc', 2) + + Buff = actor.getBuffByName('set_bonus_bh_utility_b_3') + if actor.getBuffList().contains(Buff): + core.buffService.removeBuffFromCreature(actor, Buff) + return + + if actor: + core.buffService.addBuffToCreature(actor, 'set_bonus_bh_utility_b_3') + return + return + return + +def unequip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_necklace_set_bh_utility_b_01_01'): + core.skillModService.deductSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.deductSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.deductSkillMod(actor, 'fast_attack_line_dm_cc', 2) + + Buff = actor.getBuffByName('set_bonus_bh_utility_b_3') + if actor.getBuffList().contains(Buff): + core.buffService.removeBuffFromCreature(actor, Buff) + return + return + return + + \ No newline at end of file diff --git a/scripts/object/tangible/wearables/necklace/necklace_s10.py b/scripts/object/tangible/wearables/necklace/necklace_s10.py index c55ced68..91ab9c88 100644 --- a/scripts/object/tangible/wearables/necklace/necklace_s10.py +++ b/scripts/object/tangible/wearables/necklace/necklace_s10.py @@ -5,12 +5,20 @@ def setup(core, object): def equip(core, actor, object): - ##Heroism if object.getStfName() == ('item_necklace_set_hero_01_01'): core.skillModService.addSkillMod(actor, 'strength_modified', 30) core.skillModService.addSkillMod(actor, 'precision_modified', 30) core.skillModService.addSkillMod(actor, 'luck_modified', 30) + + Buff = actor.getBuffByName('set_bonus_hero_3') + if actor.getBuffList().contains(Buff): + core.buffService.removeBuffFromCreature(actor, Buff) + return + + if actor: + core.buffService.addBuffToCreature(actor, 'set_bonus_hero_3') + return return return @@ -21,5 +29,10 @@ def unequip(core, actor, object): core.skillModService.deductSkillMod(actor, 'strength_modified', 30) core.skillModService.deductSkillMod(actor, 'precision_modified', 30) core.skillModService.deductSkillMod(actor, 'luck_modified', 30) + + Buff = actor.getBuffByName('set_bonus_hero_3') + if actor.getBuffList().contains(Buff): + core.buffService.removeBuffFromCreature(actor, Buff) + return return return \ No newline at end of file diff --git a/scripts/object/tangible/wearables/ring/ring_s01.py b/scripts/object/tangible/wearables/ring/ring_s01.py index ccad8904..dc6ea0b1 100644 --- a/scripts/object/tangible/wearables/ring/ring_s01.py +++ b/scripts/object/tangible/wearables/ring/ring_s01.py @@ -1,4 +1,42 @@ import sys def setup(core, object): - return \ No newline at end of file + return + +def equip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_ring_set_bh_utility_b_01_01'): + core.skillModService.addSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.addSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.addSkillMod(actor, 'fast_attack_line_dm_cc', 2) + return + + ##Enforcer + elif object.getStfName() == ('item_ring_set_bh_dps_01_01'): + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.addSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + return + return + +def unequip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_ring_set_bh_utility_b_01_01'): + core.skillModService.deductSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.deductSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.deductSkillMod(actor, 'fast_attack_line_dm_cc', 2) + return + + ##Enforcer + elif object.getStfName() == ('item_ring_set_bh_dps_01_01'): + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.deductSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + return + return + + \ No newline at end of file diff --git a/scripts/object/tangible/wearables/ring/ring_s02.py b/scripts/object/tangible/wearables/ring/ring_s02.py index 6d8de3a6..2ca3d3ca 100644 --- a/scripts/object/tangible/wearables/ring/ring_s02.py +++ b/scripts/object/tangible/wearables/ring/ring_s02.py @@ -5,13 +5,18 @@ def setup(core, object): def equip(core, actor, object): - ##Heroism if object.getStfName() == ('item_ring_a_set_hero'): core.skillModService.addSkillMod(actor, 'strength_modified', 30) core.skillModService.addSkillMod(actor, 'precision_modified', 30) core.skillModService.addSkillMod(actor, 'luck_modified', 30) return + + ##Flawless + elif object.getStfName() == ('item_ring_set_bh_utility_a_01_01'): + core.skillModService.addSkillMod(actor, 'precision_modified', 50) + core.skillModService.addSkillMod(actor, 'luck_modified', 30) + return return def unequip(core, actor, object): @@ -22,5 +27,11 @@ def unequip(core, actor, object): core.skillModService.deductSkillMod(actor, 'precision_modified', 30) core.skillModService.deductSkillMod(actor, 'luck_modified', 30) return + + ##Flawless + elif object.getStfName() == ('item_ring_set_bh_utility_a_01_01'): + core.skillModService.deductSkillMod(actor, 'precision_modified', 50) + core.skillModService.deductSkillMod(actor, 'luck_modified', 30) + return return \ No newline at end of file diff --git a/scripts/object/tangible/wearables/ring/ring_s03.py b/scripts/object/tangible/wearables/ring/ring_s03.py index ccad8904..418b5aa4 100644 --- a/scripts/object/tangible/wearables/ring/ring_s03.py +++ b/scripts/object/tangible/wearables/ring/ring_s03.py @@ -1,4 +1,42 @@ import sys def setup(core, object): - return \ No newline at end of file + return + +def equip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_ring_a_set_bh_utility_b'): + core.skillModService.addSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.addSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.addSkillMod(actor, 'fast_attack_line_dm_cc', 2) + return + + ##Enforcer + elif object.getStfName() == ('item_ring_a_set_bh_dps'): + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.addSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.addSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.addSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + return + return + +def unequip(core, actor, object): + + ##Direfate + if object.getStfName() == ('item_ring_a_set_bh_utility_b'): + core.skillModService.deductSkillMod(actor, 'bh_dire_root', 1) + core.skillModService.deductSkillMod(actor, 'bh_dire_snare', 1) + core.skillModService.deductSkillMod(actor, 'fast_attack_line_dm_cc', 2) + return + + ##Enforcer + elif object.getStfName() == ('item_ring_a_set_bh_dps'): + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm', 1) + core.skillModService.deductSkillMod(actor, 'expertise_action_line_dm_crit', 1) + core.skillModService.deductSkillMod(actor, 'expertise_buff_duration_line_bh_return_fire' , 1) + core.skillModService.deductSkillMod(actor, 'expertise_cooldown_line_dm' , 1) + return + return + + \ No newline at end of file diff --git a/scripts/object/tangible/wearables/ring/ring_s04.py b/scripts/object/tangible/wearables/ring/ring_s04.py index 1ffda287..6410d76f 100644 --- a/scripts/object/tangible/wearables/ring/ring_s04.py +++ b/scripts/object/tangible/wearables/ring/ring_s04.py @@ -12,6 +12,12 @@ def equip(core, actor, object): core.skillModService.addSkillMod(actor, 'precision_modified', 30) core.skillModService.addSkillMod(actor, 'luck_modified', 30) return + + ##Flawless + elif object.getStfName() == ('item_ring_a_set_bh_utility_a'): + core.skillModService.addSkillMod(actor, 'precision_modified', 50) + core.skillModService.addSkillMod(actor, 'luck_modified', 30) + return return def unequip(core, actor, object): @@ -22,5 +28,11 @@ def unequip(core, actor, object): core.skillModService.deductSkillMod(actor, 'precision_modified', 30) core.skillModService.deductSkillMod(actor, 'luck_modified', 30) return + + ##Flawless + elif object.getStfName() == ('item_ring_a_set_bh_utility_a'): + core.skillModService.deductSkillMod(actor, 'precision_modified', 50) + core.skillModService.deductSkillMod(actor, 'luck_modified', 30) + return return \ No newline at end of file