From dd231117c84fad69ab10e4598f3f66c6e928cdbe Mon Sep 17 00:00:00 2001 From: Doogla Date: Thu, 7 Nov 2013 09:30:03 -0800 Subject: [PATCH 1/2] Jedi Buff Update (Take 2) No project file this time. Force Run speed and duration based on expertise (I promise this does work.) Saber Block parry affected by expertise --- scripts/buffs/fs_force_run.py | 8 +++++++- scripts/buffs/saberblock.py | 5 ++--- .../expertise_fs_general_stance_saber_block_1.py | 4 ++-- scripts/skillMods/expertise_saber_block.py | 10 ++++++++++ 4 files changed, 21 insertions(+), 6 deletions(-) create mode 100644 scripts/skillMods/expertise_saber_block.py diff --git a/scripts/buffs/fs_force_run.py b/scripts/buffs/fs_force_run.py index 77f15bb1..f9dd288e 100644 --- a/scripts/buffs/fs_force_run.py +++ b/scripts/buffs/fs_force_run.py @@ -1,16 +1,22 @@ import sys -def setup(core, actor, buff): +def setup(core, actor, buff): + buff.setDuration(buff.getDuration()+(actor.getSkillModBase('expertise_buff_duration_line_fs_force_run'))) actor.playEffectObject('clienteffect/pl_force_run.cef', 'fs_force_run') actor.playEffectObject('appearance/pt_force_speed.prt', 'fs_force_run') + actor.setSpeedMultiplierBase(2.5 + (2.5 * (actor.getSkillModBase('expertise_movement_buff_fs_force_run')) / 100)) core.skillModService.addSkillMod(actor, 'slope_move', 5) core.skillModService.addSkillMod(actor, 'movement_resist_snare', 100) core.skillModService.addSkillMod(actor, 'movement_resist_root', 100) + ##For Testing Purposes + ##actor.sendSystemMessage('You are running at ' + str(actor.getSpeedMultiplierBase()) + ' times the running speed.', 0) + return def removeBuff(core, actor, buff): ##Waiting for a remove particle effect function in CreatureObject. Twinkle toes won't go away without it. + actor.setSpeedMultiplierBase(1) core.skillModService.deductSkillMod(actor, 'slope_move', 5) core.skillModService.deductSkillMod(actor, 'movement_resist_snare', 100) core.skillModService.deductSkillMod(actor, 'movement_resist_root', 100) diff --git a/scripts/buffs/saberblock.py b/scripts/buffs/saberblock.py index 932c2c68..15962ce9 100644 --- a/scripts/buffs/saberblock.py +++ b/scripts/buffs/saberblock.py @@ -1,11 +1,10 @@ import sys def setup(core, actor, buff): - core.skillModService.addSkillMod(actor, 'expertise_saber_block', 10) - + core.skillModService.addSkillMod(actor, 'display_only_parry', 1000 + (actor.getSkillModBase('expertise_saber_block') * 100)) return def removeBuff(core, actor, buff): - core.skillModService.deductSkillMod(actor, 'expertise_saber_block', 10) + core.skillModService.deductSkillMod(actor, 'display_only_parry', 1000 + (actor.getSkillModBase('expertise_saber_block') * 100)) return \ No newline at end of file diff --git a/scripts/expertise/expertise_fs_general_stance_saber_block_1.py b/scripts/expertise/expertise_fs_general_stance_saber_block_1.py index 7ea93dee..15799877 100644 --- a/scripts/expertise/expertise_fs_general_stance_saber_block_1.py +++ b/scripts/expertise/expertise_fs_general_stance_saber_block_1.py @@ -12,7 +12,7 @@ def addExpertisePoint(core, actor): actor.addSkill('expertise_fs_general_stance_saber_block_1') - actor.addSkillMod('expertise_stance_saber_block', 10) + actor.addSkillMod('display_only_parry', 1000) addAbilities(core, actor, player) @@ -30,7 +30,7 @@ def removeExpertisePoint(core, actor): actor.removeSkill('expertise_fs_general_stance_saber_block_1') - actor.removeSkillMod('expertise_stance_saber_block', 10) + actor.removeSkillMod('display_only_parry', 1000) removeAbilities(core, actor, player) diff --git a/scripts/skillMods/expertise_saber_block.py b/scripts/skillMods/expertise_saber_block.py new file mode 100644 index 00000000..ee7769e2 --- /dev/null +++ b/scripts/skillMods/expertise_saber_block.py @@ -0,0 +1,10 @@ +import sys + +def add(core, actor, name, base): + actor.addSkillMod(name, base) + return + +def deduct(core, actor, name, base): + actor.deductSkillMod(name, base) + return + \ No newline at end of file From 2410853e965361012bca6114e685ea65a14d86da Mon Sep 17 00:00:00 2001 From: Doogla Date: Thu, 7 Nov 2013 10:47:43 -0800 Subject: [PATCH 2/2] Buffs Take 3 Moved the speed modifier of force run to its correct skill mod script instead of being in the buff itself --- scripts/buffs/fs_force_run.py | 6 ++---- scripts/skillMods/slope_move.py | 2 ++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/buffs/fs_force_run.py b/scripts/buffs/fs_force_run.py index f9dd288e..e826d8bf 100644 --- a/scripts/buffs/fs_force_run.py +++ b/scripts/buffs/fs_force_run.py @@ -4,8 +4,7 @@ def setup(core, actor, buff): buff.setDuration(buff.getDuration()+(actor.getSkillModBase('expertise_buff_duration_line_fs_force_run'))) actor.playEffectObject('clienteffect/pl_force_run.cef', 'fs_force_run') actor.playEffectObject('appearance/pt_force_speed.prt', 'fs_force_run') - actor.setSpeedMultiplierBase(2.5 + (2.5 * (actor.getSkillModBase('expertise_movement_buff_fs_force_run')) / 100)) - core.skillModService.addSkillMod(actor, 'slope_move', 5) + core.skillModService.addSkillMod(actor, 'slope_move', 1) core.skillModService.addSkillMod(actor, 'movement_resist_snare', 100) core.skillModService.addSkillMod(actor, 'movement_resist_root', 100) @@ -16,8 +15,7 @@ def setup(core, actor, buff): def removeBuff(core, actor, buff): ##Waiting for a remove particle effect function in CreatureObject. Twinkle toes won't go away without it. - actor.setSpeedMultiplierBase(1) - core.skillModService.deductSkillMod(actor, 'slope_move', 5) + core.skillModService.deductSkillMod(actor, 'slope_move', 1) core.skillModService.deductSkillMod(actor, 'movement_resist_snare', 100) core.skillModService.deductSkillMod(actor, 'movement_resist_root', 100) return diff --git a/scripts/skillMods/slope_move.py b/scripts/skillMods/slope_move.py index ee7769e2..36febb30 100644 --- a/scripts/skillMods/slope_move.py +++ b/scripts/skillMods/slope_move.py @@ -2,9 +2,11 @@ import sys def add(core, actor, name, base): actor.addSkillMod(name, base) + actor.setSpeedMultiplierBase(2.5 + (2.5 * (actor.getSkillModBase('expertise_movement_buff_fs_force_run')) / 100)) return def deduct(core, actor, name, base): actor.deductSkillMod(name, base) + actor.setSpeedMultiplierBase(1) return \ No newline at end of file