diff --git a/scripts/buffs/bleeding.py b/scripts/buffs/bleeding.py new file mode 100644 index 00000000..e09c02e5 --- /dev/null +++ b/scripts/buffs/bleeding.py @@ -0,0 +1,8 @@ +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/fs_force_throw.py b/scripts/buffs/fs_force_throw.py new file mode 100644 index 00000000..f20ef882 --- /dev/null +++ b/scripts/buffs/fs_force_throw.py @@ -0,0 +1,11 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'movement', float(-0.5)) + + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'movement', float(-0.5)) + return + \ No newline at end of file diff --git a/scripts/buffs/of_ae_dm_cc_1.py b/scripts/buffs/of_ae_dm_cc_1.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_ae_dm_cc_1.py +++ b/scripts/buffs/of_ae_dm_cc_1.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_ae_dm_cc_2.py b/scripts/buffs/of_ae_dm_cc_2.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_ae_dm_cc_2.py +++ b/scripts/buffs/of_ae_dm_cc_2.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_ae_dm_cc_3.py b/scripts/buffs/of_ae_dm_cc_3.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_ae_dm_cc_3.py +++ b/scripts/buffs/of_ae_dm_cc_3.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_cc_melee_1.py b/scripts/buffs/of_cc_melee_1.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_cc_melee_1.py +++ b/scripts/buffs/of_cc_melee_1.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_cc_melee_2.py b/scripts/buffs/of_cc_melee_2.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_cc_melee_2.py +++ b/scripts/buffs/of_cc_melee_2.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_cc_melee_3.py b/scripts/buffs/of_cc_melee_3.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_cc_melee_3.py +++ b/scripts/buffs/of_cc_melee_3.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_cc_melee_4.py b/scripts/buffs/of_cc_melee_4.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_cc_melee_4.py +++ b/scripts/buffs/of_cc_melee_4.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_cc_melee_5.py b/scripts/buffs/of_cc_melee_5.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_cc_melee_5.py +++ b/scripts/buffs/of_cc_melee_5.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_cc_melee_6.py b/scripts/buffs/of_cc_melee_6.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_cc_melee_6.py +++ b/scripts/buffs/of_cc_melee_6.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_cc_melee_7.py b/scripts/buffs/of_cc_melee_7.py index 5452db94..620bbaaa 100644 --- a/scripts/buffs/of_cc_melee_7.py +++ b/scripts/buffs/of_cc_melee_7.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0.5) + core.skillModService.addSkillMod(actor, 'movement', -5) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 15) return \ No newline at end of file diff --git a/scripts/buffs/of_charge_1.py b/scripts/buffs/of_charge_1.py index 98327ebc..1edd38b5 100644 --- a/scripts/buffs/of_charge_1.py +++ b/scripts/buffs/of_charge_1.py @@ -4,13 +4,13 @@ def setup(core, actor, buff): core.skillModService.addSkillMod(actor, 'expertise_damage_all', 10) core.skillModService.addSkillMod(actor, 'expertise_action_all', 10) core.skillModService.addSkillMod(actor, 'movement_resist_snare', 100) - actor.setSpeedMultiplierBase(1.5) + core.skillModService.addSkillMod(actor, 'movement', 5) return def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'movement', 5) core.skillModService.deductSkillMod(actor, 'expertise_damage_all', 10) core.skillModService.deductSkillMod(actor, 'expertise_action_all', 10) core.skillModService.deductSkillMod(actor, 'movement_resist_snare', 100) - actor.setSpeedMultiplierBase(1) return \ No newline at end of file diff --git a/scripts/buffs/of_deadeye_debuff.py b/scripts/buffs/of_deadeye_debuff.py index 9ecd0f4d..533e3262 100644 --- a/scripts/buffs/of_deadeye_debuff.py +++ b/scripts/buffs/of_deadeye_debuff.py @@ -3,11 +3,9 @@ import sys def setup(core, actor, buff): core.skillModService.addSkillMod(actor, 'action_burn', 50) core.skillModService.addSkillMod(actor, 'glancing_blow_vulnerable', 30) - actor.setSpeedMultiplierBase(1.5) return def removeBuff(core, actor, buff): - core.skillModService.deductSkillMod(actor, 'expertise_dodge', 50) - core.skillModService.deductSkillMod(actor, 'constitution_modified', 30) - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'action_burn', 50) + core.skillModService.deductSkillMod(actor, 'glancing_blow_vulnerable', 30) return \ No newline at end of file diff --git a/scripts/buffs/of_drillmaster_1.py b/scripts/buffs/of_drillmaster_1.py new file mode 100644 index 00000000..9dd26849 --- /dev/null +++ b/scripts/buffs/of_drillmaster_1.py @@ -0,0 +1,14 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'expertise_damage_all', 5) + core.skillModService.addSkillMod(actor, 'expertise_action_all', 5) + core.skillModService.addSkillMod(actor, 'expertise_damage_weapon_2', 5) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'expertise_damage_all', 5) + core.skillModService.deductSkillMod(actor, 'expertise_action_all', 5) + core.skillModService.deductSkillMod(actor, 'expertise_damage_weapon_2', 5) + return + \ No newline at end of file diff --git a/scripts/buffs/of_scatter_1.py b/scripts/buffs/of_scatter_1.py index efbdf183..c00fa680 100644 --- a/scripts/buffs/of_scatter_1.py +++ b/scripts/buffs/of_scatter_1.py @@ -4,12 +4,12 @@ def setup(core, actor, buff): core.skillModService.addSkillMod(actor, 'expertise_glancing_blow_all', 2) core.skillModService.addSkillMod(actor, 'movement_resist_snare', 15) core.skillModService.addSkillMod(actor, 'movement_resist_root', 2) - actor.setSpeedMultiplierBase(1.5) + core.skillModService.addSkillMod(actor, 'movement', 5) return def removeBuff(core, actor, buff): core.skillModService.deductSkillMod(actor, 'expertise_glancing_blow_all', 2) core.skillModService.deductSkillMod(actor, 'movement_resist_snare', 15) core.skillModService.deductSkillMod(actor, 'movement_resist_root', 2) - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 5) return \ No newline at end of file diff --git a/scripts/buffs/of_stimulator_1.py b/scripts/buffs/of_stimulator_1.py new file mode 100644 index 00000000..f28888e7 --- /dev/null +++ b/scripts/buffs/of_stimulator_1.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'debuff_purge', 2) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'debuff_purge', 2) + return \ No newline at end of file diff --git a/scripts/buffs/of_vortex_root.py b/scripts/buffs/of_vortex_root.py index eab4b6a4..5048a0be 100644 --- a/scripts/buffs/of_vortex_root.py +++ b/scripts/buffs/of_vortex_root.py @@ -1,9 +1,9 @@ import sys def setup(core, actor, buff): - actor.setSpeedMultiplierBase(0) + core.skillModService.addSkillMod(actor, 'movement', 0) return def removeBuff(core, actor, buff): - actor.setSpeedMultiplierBase(1) + core.skillModService.deductSkillMod(actor, 'movement', 10) return \ No newline at end of file diff --git a/scripts/buffs/sm_ae_dm_cc_1.py b/scripts/buffs/sm_ae_dm_cc_1.py new file mode 100644 index 00000000..18da7f78 --- /dev/null +++ b/scripts/buffs/sm_ae_dm_cc_1.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return + +def removeBuff(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return \ No newline at end of file diff --git a/scripts/buffs/sm_ae_dm_cc_2.py b/scripts/buffs/sm_ae_dm_cc_2.py new file mode 100644 index 00000000..18da7f78 --- /dev/null +++ b/scripts/buffs/sm_ae_dm_cc_2.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return + +def removeBuff(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return \ No newline at end of file diff --git a/scripts/buffs/sm_ae_dm_cc_3.py b/scripts/buffs/sm_ae_dm_cc_3.py new file mode 100644 index 00000000..18da7f78 --- /dev/null +++ b/scripts/buffs/sm_ae_dm_cc_3.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return + +def removeBuff(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return \ No newline at end of file diff --git a/scripts/buffs/sm_ae_dm_cc_4.py b/scripts/buffs/sm_ae_dm_cc_4.py new file mode 100644 index 00000000..18da7f78 --- /dev/null +++ b/scripts/buffs/sm_ae_dm_cc_4.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return + +def removeBuff(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return \ No newline at end of file diff --git a/scripts/buffs/sm_ae_dm_cc_5.py b/scripts/buffs/sm_ae_dm_cc_5.py new file mode 100644 index 00000000..18da7f78 --- /dev/null +++ b/scripts/buffs/sm_ae_dm_cc_5.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return + +def removeBuff(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return \ No newline at end of file diff --git a/scripts/buffs/sm_ae_dm_cc_6.py b/scripts/buffs/sm_ae_dm_cc_6.py new file mode 100644 index 00000000..18da7f78 --- /dev/null +++ b/scripts/buffs/sm_ae_dm_cc_6.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return + +def removeBuff(core, actor, buff): + actor.setSpeedMultiplierBase(1) + return \ No newline at end of file diff --git a/scripts/buffs/sm_pistol_whip_1.py b/scripts/buffs/sm_pistol_whip_1.py new file mode 100644 index 00000000..5537d303 --- /dev/null +++ b/scripts/buffs/sm_pistol_whip_1.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + core.skillModService.addSkillMod(actor, 'sm_pistol_whip', 0) + return + +def removeBuff(core, actor, buff): + core.skillModService.deductSkillMod(actor, 'sm_pistol_whip', 0) + return \ No newline at end of file diff --git a/scripts/commands/combat/forcethrow.py b/scripts/commands/combat/forcethrow.py new file mode 100644 index 00000000..276deb65 --- /dev/null +++ b/scripts/commands/combat/forcethrow.py @@ -0,0 +1,11 @@ +import sys + +def setup(core, actor, target, command): + core.buffService.addBuffToCreature(target, 'fs_force_throw') + return + +def preRun(core, actor, target, command): + return + +def run(core, actor, target, commandString): + return \ No newline at end of file diff --git a/scripts/commands/giveitem.py b/scripts/commands/giveitem.py index d0e7995b..5f31cfe8 100644 --- a/scripts/commands/giveitem.py +++ b/scripts/commands/giveitem.py @@ -4,19 +4,6 @@ def setup(): return def run(core, actor, target, commandString): - - if not commandString.startswith('object/tangible') and not commandString.startswith('object/weapon'): - return - - object = core.objectService.createObject(commandString, actor.getPlanet()) - - if not object: - return - - inventory = actor.getSlottedObject('inventory') - - if inventory: - inventory.add(object) - + core.playerService.giveExperience(actor, 25000) return \ No newline at end of file diff --git a/scripts/commands/of_drillmaster_1.py b/scripts/commands/of_drillmaster_1.py new file mode 100644 index 00000000..313f855b --- /dev/null +++ b/scripts/commands/of_drillmaster_1.py @@ -0,0 +1,12 @@ +import sys + +def setup(core, actor, buff): + return + +def run(core, actor, target, commandString): + core.buffService.addBuffToCreature(actor, 'of_drillmaster_1') + group = core.objectService.getObject(actor.getGroupId()) + for creature in group.getMemberList(): + core.buffService.addBuffToCreature(creature, 'of_drillmaster_1') + return + \ No newline at end of file diff --git a/scripts/commands/of_stimulator_1.py b/scripts/commands/of_stimulator_1.py new file mode 100644 index 00000000..c9b5a1c1 --- /dev/null +++ b/scripts/commands/of_stimulator_1.py @@ -0,0 +1,9 @@ +import sys + +def setup(core, actor, buff): + return + +def run(core, actor, target, commandString): + core.buffService.addBuffToCreature(actor, 'of_stimulator_1') + return + \ No newline at end of file diff --git a/scripts/commands/purchaseticket.py b/scripts/commands/purchaseticket.py new file mode 100644 index 00000000..b14d8ca2 --- /dev/null +++ b/scripts/commands/purchaseticket.py @@ -0,0 +1,22 @@ +import sys + +def setup(): + return + +def run(core, actor, target, commandString): + #playerObject = actor.getSlottedObject('ghost') + #playerObject.setTitle(str(commandString)) + #print ('Command string: ' + commandString) + + trvSvc = core.travelService + + cmdArgs = commandString.split(" ") + + departurePlanet = cmdArgs[0] + departureLoc = cmdArgs[1].replace("_"," ") + arrivalPlanet = cmdArgs[2] + arrivalLoc = cmdArgs[3].replace("_", " ") + + trvSvc.purchaseTravelTicket(actor, departurePlanet, departureLoc, arrivalPlanet, arrivalLoc) + + return \ No newline at end of file diff --git a/scripts/commands/setwaypointactivestatus.py b/scripts/commands/setwaypointactivestatus.py index e8ff2891..70d5b50c 100644 --- a/scripts/commands/setwaypointactivestatus.py +++ b/scripts/commands/setwaypointactivestatus.py @@ -5,6 +5,8 @@ def setup(): def run(core, actor, target, commandString): playerObject = actor.getSlottedObject('ghost') + if target is None: + return waypointTarget = core.objectService.getObject(target.getObjectID()) wp = playerObject.getWaypointFromList(target) if wp.isActive() == True: diff --git a/scripts/commands/transferitemarmor.py b/scripts/commands/transferitemarmor.py index 931dc47d..ab107cf3 100644 --- a/scripts/commands/transferitemarmor.py +++ b/scripts/commands/transferitemarmor.py @@ -9,9 +9,31 @@ def run(core, actor, target, commandString): containerID = long(parsedMsg[1]) container = objService.getObject(containerID) if target and container and target.getContainer(): - print 'Armor Test' oldContainer = target.getContainer() - oldContainer.transferTo(actor, container, target) + if container == oldContainer: + print 'Error: New container is same as old container.' + return; + replacedObject = None + slotName = None + if actor == container: + slotName = container.getSlotNameForObject(target) + replacedObject = container.getSlottedObject(slotName) + + oldContainer.transferTo(actor, container, target) + + if actor == container: + if target.getTemplate().find('/wearables/') or target.getTemplate().find('/weapon/'): + core.equipmentService.equip(actor, target, replacedObject) + #path = 'scripts/' + target.getTemplate().rpartition('/')[0] + '/' + #module = target.getTemplate().rpartition('/')[2].replace('shared_', '').replace('.iff', '') + #core.scriptService.callScript(path, 'equip', module, core, actor, target) + + if actor == oldContainer: + if target.getTemplate().find('/wearables/') or target.getTemplate().find('/weapon/'): + #path = 'scripts/' + target.getTemplate().rpartition('/')[0] + '/' + #module = target.getTemplate().rpartition('/')[2].replace('shared_', '').replace('.iff', '') + #core.scriptService.callScript(path, 'unequip', module, core, actor, target) + core.equipmentService.unequip(actor, target, replacedObject) return \ No newline at end of file diff --git a/scripts/commands/transferitemmisc.py b/scripts/commands/transferitemmisc.py index 83f34e8d..53eef0d6 100644 --- a/scripts/commands/transferitemmisc.py +++ b/scripts/commands/transferitemmisc.py @@ -15,18 +15,26 @@ def run(core, actor, target, commandString): print 'Error: New container is same as old container.' return; + replacedObject = None + slotName = None + if actor == container: + slotName = container.getSlotNameForObject(target) + replacedObject = container.getSlottedObject(slotName) + oldContainer.transferTo(actor, container, target) if actor == container: if target.getTemplate().find('/wearables/') or target.getTemplate().find('/weapon/'): - path = 'scripts/' + target.getTemplate().rpartition('/')[0] + '/' - module = target.getTemplate().rpartition('/')[2].replace('shared_', '').replace('.iff', '') - core.scriptService.callScript(path, 'equip', module, core, actor, target) + core.equipmentService.equip(actor, target, replacedObject) + #path = 'scripts/' + target.getTemplate().rpartition('/')[0] + '/' + #module = target.getTemplate().rpartition('/')[2].replace('shared_', '').replace('.iff', '') + #core.scriptService.callScript(path, 'equip', module, core, actor, target) if actor == oldContainer: if target.getTemplate().find('/wearables/') or target.getTemplate().find('/weapon/'): - path = 'scripts/' + target.getTemplate().rpartition('/')[0] + '/' - module = target.getTemplate().rpartition('/')[2].replace('shared_', '').replace('.iff', '') - core.scriptService.callScript(path, 'unequip', module, core, actor, target) - + #path = 'scripts/' + target.getTemplate().rpartition('/')[0] + '/' + #module = target.getTemplate().rpartition('/')[2].replace('shared_', '').replace('.iff', '') + #core.scriptService.callScript(path, 'unequip', module, core, actor, target) + core.equipmentService.unequip(actor, target) + return \ No newline at end of file diff --git a/scripts/commands/transferitemweapon.py b/scripts/commands/transferitemweapon.py index a480461a..0bb7f55f 100644 --- a/scripts/commands/transferitemweapon.py +++ b/scripts/commands/transferitemweapon.py @@ -9,9 +9,32 @@ def run(core, actor, target, commandString): containerID = long(parsedMsg[1]) container = objService.getObject(containerID) if target and container and target.getContainer(): - print 'Weapon Test' oldContainer = target.getContainer() - oldContainer.transferTo(actor, container, target) + if container == oldContainer: + print 'Error: New container is same as old container.' + return; + + replacedObject = None + slotName = None + if actor == container: + slotName = container.getSlotNameForObject(target) + replacedObject = container.getSlottedObject(slotName) + + oldContainer.transferTo(actor, container, target) + + if actor == container: + if target.getTemplate().find('/wearables/') or target.getTemplate().find('/weapon/'): + core.equipmentService.equip(actor, target, replacedObject) + #path = 'scripts/' + target.getTemplate().rpartition('/')[0] + '/' + #module = target.getTemplate().rpartition('/')[2].replace('shared_', '').replace('.iff', '') + #core.scriptService.callScript(path, 'equip', module, core, actor, target) + + if actor == oldContainer: + if target.getTemplate().find('/wearables/') or target.getTemplate().find('/weapon/'): + #path = 'scripts/' + target.getTemplate().rpartition('/')[0] + '/' + #module = target.getTemplate().rpartition('/')[2].replace('shared_', '').replace('.iff', '') + #core.scriptService.callScript(path, 'unequip', module, core, actor, target) + core.equipmentService.unequip(actor, target, replacedObject) actor.setWeaponId(target.getObjectID()) return \ No newline at end of file diff --git a/scripts/commands/waypoint.py b/scripts/commands/waypoint.py index 3d7b5c12..64e33136 100644 --- a/scripts/commands/waypoint.py +++ b/scripts/commands/waypoint.py @@ -33,7 +33,7 @@ def run(core, actor, target, commandString): #/wp X Z Y NAME if isFloat(commandArgs[0]) and isFloat(commandArgs[1]) and isFloat(commandArgs[2]): - waypoint = core.objectService.createObject('object/waypoint/shared_waypoint.iff', actor.getPlanet(), actor.getWorldPosition().x, actor.getWorldPosition().z, actor.getWorldPosition().y) + waypoint = core.objectService.createObject('object/waypoint/shared_waypoint.iff', actor.getPlanet(), float(commandArgs[0]), float(commandArgs[2]), float(commandArgs[1])) waypoint.setActive(True) waypoint.setColor(WaypointObject.BLUE) name = commandString.split(" ", 3) diff --git a/scripts/skillMods/agility.py b/scripts/skillMods/agility.py new file mode 100644 index 00000000..80b31400 --- /dev/null +++ b/scripts/skillMods/agility.py @@ -0,0 +1,16 @@ +import sys + +def add(core, actor, name, base): + actor.addSkillMod(name, base) + actor.addSkillMod('display_only_dodge', base) + actor.addSkillMod('display_only_parry', base / 2) + actor.addSkillMod('display_only_evasion', base) + return + +def deduct(core, actor, name, base): + actor.deductSkillMod(name, base) + actor.deductSkillMod('display_only_dodge', base) + actor.deductSkillMod('display_only_parry', base / 2) + actor.deductSkillMod('display_only_evasion', base) + return + \ No newline at end of file diff --git a/scripts/skillMods/constitution.py b/scripts/skillMods/constitution.py new file mode 100644 index 00000000..edf5e01c --- /dev/null +++ b/scripts/skillMods/constitution.py @@ -0,0 +1,14 @@ +import sys + +def add(core, actor, name, base): + actor.addSkillMod(name, base) + actor.setMaxHealth(actor.getMaxHealth() + base * 8) + actor.setMaxAction(actor.getMaxAction() + base * 2) + return + +def deduct(core, actor, name, base): + actor.deductSkillMod(name, base) + actor.setMaxHealth(actor.getMaxHealth() - base * 8) + actor.setMaxAction(actor.getMaxAction() - base * 2) + return + diff --git a/scripts/skillMods/luck.py b/scripts/skillMods/luck.py new file mode 100644 index 00000000..d036f779 --- /dev/null +++ b/scripts/skillMods/luck.py @@ -0,0 +1,18 @@ +import sys + +def add(core, actor, name, base): + actor.addSkillMod(name, base) + actor.addSkillMod('display_only_dodge', base / 3) + actor.addSkillMod('display_only_evasion', base / 3) + actor.addSkillMod('display_only_critical', base / 3) + actor.addSkillMod('display_only_strikethrough', base / 2) + return + +def deduct(core, actor, name, base): + actor.deductSkillMod(name, base) + actor.deductSkillMod('display_only_dodge', base / 3) + actor.deductSkillMod('display_only_evasion', base / 3) + actor.deductSkillMod('display_only_critical', base / 3) + actor.deductSkillMod('display_only_strikethrough', base / 2) + return + \ No newline at end of file diff --git a/scripts/skillMods/movement.py b/scripts/skillMods/movement.py index ee7769e2..47ce841d 100644 --- a/scripts/skillMods/movement.py +++ b/scripts/skillMods/movement.py @@ -2,9 +2,13 @@ import sys def add(core, actor, name, base): actor.addSkillMod(name, base) + actor.getSkillMod(name).setModifier(10) + modifier = actor.getSkillMod(name).getModifier() + actor.setSpeedMultiplierBase(actor.getSpeedMultiplierBase() + float(float(base) / float(modifier))) return - + def deduct(core, actor, name, base): + modifier = actor.getSkillMod(name).getModifier() + actor.setSpeedMultiplierBase(actor.getSpeedMultiplierBase() - float(float(base) / float(modifier))) actor.deductSkillMod(name, base) - return - \ No newline at end of file + return \ No newline at end of file diff --git a/scripts/skillMods/precision.py b/scripts/skillMods/precision.py new file mode 100644 index 00000000..6d31b77e --- /dev/null +++ b/scripts/skillMods/precision.py @@ -0,0 +1,18 @@ +import sys + +def add(core, actor, name, base): + actor.addSkillMod(name, base) + actor.addSkillMod('display_only_block', base / 2) + actor.addSkillMod('display_only_parry', base / 2) + actor.addSkillMod('display_only_critical', base) + actor.addSkillMod('display_only_strikethrough', base / 2) + return + +def deduct(core, actor, name, base): + actor.deductSkillMod(name, base) + actor.deductSkillMod('display_only_block', base / 2) + actor.deductSkillMod('display_only_parry', base / 2) + actor.deductSkillMod('display_only_critical', base) + actor.deductSkillMod('display_only_strikethrough', base / 2) + return + \ No newline at end of file diff --git a/scripts/skillMods/stamina.py b/scripts/skillMods/stamina.py new file mode 100644 index 00000000..b58840b6 --- /dev/null +++ b/scripts/skillMods/stamina.py @@ -0,0 +1,14 @@ +import sys + +def add(core, actor, name, base): + actor.addSkillMod(name, base) + actor.setMaxHealth(actor.getMaxHealth() + base * 2) + actor.setMaxAction(actor.getMaxAction() + base * 8) + return + +def deduct(core, actor, name, base): + actor.deductSkillMod(name, base) + actor.setMaxHealth(actor.getMaxHealth() - base * 2) + actor.setMaxAction(actor.getMaxAction() - base * 8) + return + diff --git a/scripts/skillMods/strength.py b/scripts/skillMods/strength.py new file mode 100644 index 00000000..4e702217 --- /dev/null +++ b/scripts/skillMods/strength.py @@ -0,0 +1,12 @@ +import sys + +def add(core, actor, name, base): + actor.addSkillMod(name, base) + actor.addSkillMod('display_only_block', base / 2) + return + +def deduct(core, actor, name, base): + actor.deductSkillMod(name, base) + actor.deductSkillMod('display_only_block', base / 2) + return + \ No newline at end of file diff --git a/src/services/combat/CombatCommands.java b/src/services/combat/CombatCommands.java index 9d60b5b6..e0152cb6 100644 --- a/src/services/combat/CombatCommands.java +++ b/src/services/combat/CombatCommands.java @@ -27,6 +27,10 @@ public class CombatCommands { public static void registerCommands(NGECore core) { + // commands that arent associated with anythin + + core.commandService.registerCommand("setXp"); + // Auto Attacks core.commandService.registerCombatCommand("rangedshotrifle"); @@ -193,6 +197,8 @@ public class CombatCommands { core.commandService.registerCommand("saberBlock"); // Saber Block core.commandService.registerCommand("forcerun"); // Force Run core.commandService.registerCommand("fs_buff_invis_1"); // Force Cloak + core.commandService.registerCombatCommand("fs_force_throw_1"); + core.commandService.registerCommand("forceThrow"); // Commando @@ -492,6 +498,34 @@ public class CombatCommands { core.commandService.registerCombatCommand("of_vortex_3"); core.commandService.registerCombatCommand("of_vortex_4"); core.commandService.registerCombatCommand("of_vortex_5"); + core.commandService.registerCommand("of_charge_1"); + core.commandService.registerCommand("of_inspiration_1"); + core.commandService.registerCommand("of_inspiration_2"); + core.commandService.registerCommand("of_inspiration_3"); + core.commandService.registerCommand("of_inspiration_4"); + core.commandService.registerCommand("of_inspiration_5"); + core.commandService.registerCommand("of_inspiration_6"); + core.commandService.registerCommand("of_focus_fire_1"); + core.commandService.registerCommand("of_focus_fire_2"); + core.commandService.registerCommand("of_focus_fire_3"); + core.commandService.registerCommand("of_focus_fire_4"); + core.commandService.registerCommand("of_focus_fire_5"); + core.commandService.registerCommand("of_focus_fire_6"); + core.commandService.registerCommand("of_drillmaster_1"); + core.commandService.registerCommand("of_buff_def_1"); + core.commandService.registerCommand("of_buff_def_2"); + core.commandService.registerCommand("of_buff_def_3"); + core.commandService.registerCommand("of_buff_def_4"); + core.commandService.registerCommand("of_buff_def_5"); + core.commandService.registerCommand("of_buff_def_6"); + core.commandService.registerCommand("of_buff_def_7"); + core.commandService.registerCommand("of_buff_def_8"); + core.commandService.registerCommand("of_buff_def_9"); + core.commandService.registerCommand("of_emergency_shield"); + core.commandService.registerCommand("of_firepower_1"); + core.commandService.registerCommand("of_purge_1"); + core.commandService.registerCommand("of_scatter_1"); + core.commandService.registerCommand("of_stimulator_1"); // Smuggler