diff --git a/scripts/loot/lootItems/treasureloot/bracelet_of_Inspired_Status(right).py b/scripts/loot/lootItems/treasureloot/bracelet_of_Inspired_Status(right).py new file mode 100644 index 00000000..57fbb45d --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/bracelet_of_Inspired_Status(right).py @@ -0,0 +1,21 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Bracelet of Inspired Status (Right)' + +def requiredProfession(): + + return 'Entertainer' + +def requiredCL(): + + return 80 + +def itemSkillMods(): + + mods = ['expertise_en_inspire_pulse_duration_increase','1'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/counter-toxin_wristband_prototype_IV_(right).py b/scripts/loot/lootItems/treasureloot/counter-toxin_wristband_prototype_IV_(right).py new file mode 100644 index 00000000..13e10f5e --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/counter-toxin_wristband_prototype_IV_(right).py @@ -0,0 +1,24 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Adventurer Hiker & Hunter Counter-Toxin Wristband Prototype IV (right)' + +def biolink(): + + return 1 + +def requiredCL(): + + return 75 + +def itemSkillMods(): + + mods = ['absorption_bleeding','8'] + mods += ['absorption_disease','8'] + mods += ['absorption_fire','8'] + mods += ['absorption_poison','8'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/insurgency_wrist_implantat-BLACK-(right).py b/scripts/loot/lootItems/treasureloot/insurgency_wrist_implantat-BLACK-(right).py new file mode 100644 index 00000000..91289dfb --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/insurgency_wrist_implantat-BLACK-(right).py @@ -0,0 +1,24 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Corellidyne Personal Insurgency Wris Implantat -BLACK- (Right)' + +def requiredProfession(): + + return 'Spy' + +def requiredCL(): + + return 75 + +def itemSkillMods(): + + mods = ['expertise_action_line_sp_dm','4'] + mods += ['expertise_critical_line_sp_dm','4'] + mods += ['expertise_damage_line_sp_dm','4'] + mods += ['expertise_freeshot_sp_dm','4'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/insurgent_scanner_wrist_module_(right).py b/scripts/loot/lootItems/treasureloot/insurgent_scanner_wrist_module_(right).py new file mode 100644 index 00000000..9311b78f --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/insurgent_scanner_wrist_module_(right).py @@ -0,0 +1,21 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Idellian Arrays PLFS-4000 Insurgent Scanner Wrist Module (Right)' + +def biolink(): + + return 1 + +def requiredCL(): + + return 75 + +def itemSkillMods(): + + mods = ['detect_hidden','10'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/jedi_knight_meditation_bracelet_(right).py b/scripts/loot/lootItems/treasureloot/jedi_knight_meditation_bracelet_(right).py new file mode 100644 index 00000000..92ef3974 --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/jedi_knight_meditation_bracelet_(right).py @@ -0,0 +1,26 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Jedi Knight Meditation Bracelet (right)' + +def requiredProfession(): + + return 'Jedi' + +def requiredCL(): + + return 75 + +def biolink(): + + return 1 + +def itemSkillMods(): + + mods = ['jedi_saber_assembly','3'] + mods += ['jedi_saber_experimentation','10'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/jedi_knights_wristguard_(right).py b/scripts/loot/lootItems/treasureloot/jedi_knights_wristguard_(right).py new file mode 100644 index 00000000..0056d769 --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/jedi_knights_wristguard_(right).py @@ -0,0 +1,24 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Jedi Knight\'s Wristguard (Right)' + +def requiredProfession(): + + return 'Jedi' + +def requiredCL(): + + return 85 + +def itemSkillMods(): + + mods = ['expertise_action_line_fs_dm','4'] + mods += ['expertise_critical_line_fs_dm','4'] + mods += ['expertise_damage_line_fs_dm','4'] + mods += ['expertise_freeshot_fs_dm','4'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/jedi_wristguard(right).py b/scripts/loot/lootItems/treasureloot/jedi_wristguard(right).py new file mode 100644 index 00000000..ecc1101b --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/jedi_wristguard(right).py @@ -0,0 +1,28 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Jedi\'s Wristguard (Right)' + +def requiredProfession(): + + return 'Jedi' + +def biolink(): + + return 1 + +def requiredCL(): + + return 61 + +def itemSkillMods(): + + mods = ['expertise_action_line_fs_dm','3'] + mods += ['expertise_critical_line_fs_dm','3'] + mods += ['expertise_damage_line_fs_dm','3'] + mods += ['expertise_freeshot_fs_dm','3'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/manufacturing_verdicator_200a_(right).py b/scripts/loot/lootItems/treasureloot/manufacturing_verdicator_200a_(right).py new file mode 100644 index 00000000..0442286f --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/manufacturing_verdicator_200a_(right).py @@ -0,0 +1,24 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Saldalith Manufacturing Verdicator 200A (Right)' + +def requiredProfession(): + + return 'Medic' + +def requiredCL(): + + return 85 + +def itemSkillMods(): + + mods = ['expertise_action_line_me_dm','4'] + mods += ['expertise_critical_line_me_dm','4'] + mods += ['expertise_damage_line_me_dm','4'] + mods += ['expertise_healing_all','4'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/personnel_comlink_wrist-P4_(right).py b/scripts/loot/lootItems/treasureloot/personnel_comlink_wrist-P4_(right).py new file mode 100644 index 00000000..86de451f --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/personnel_comlink_wrist-P4_(right).py @@ -0,0 +1,24 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'SoroSuub Personnel Comlink Wrist-P4 (right)' + +def requiredProfession(): + + return 'Officer' + +def requiredCL(): + + return 85 + +def itemSkillMods(): + + mods = ['expertise_action_line_of_sure','4'] + mods += ['expertise_critical_line_of_sure','4'] + mods += ['expertise_damage_line_of_sure','4'] + mods += ['expertise_freeshot_of_sure','4'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/targeter_ranging_wrist_assist_V4_(right).py b/scripts/loot/lootItems/treasureloot/targeter_ranging_wrist_assist_V4_(right).py new file mode 100644 index 00000000..79e0623d --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/targeter_ranging_wrist_assist_V4_(right).py @@ -0,0 +1,24 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Merr-Sonn Targeter Ranging Wrist Assist V4 (right)' + +def requiredProfession(): + + return 'Smuggler' + +def requiredCL(): + + return 85 + +def itemSkillMods(): + + mods = ['fast_attack_line_sm_dm','4'] + mods += ['expertise_critical_line_sm_dm','4'] + mods += ['expertise_damage_line_sm_dm','4'] + mods += ['expertise_freeshot_sm_dm','4'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/targeting_assist_wrist_implant_PTI-IV_(right).py b/scripts/loot/lootItems/treasureloot/targeting_assist_wrist_implant_PTI-IV_(right).py new file mode 100644 index 00000000..0c4d1431 --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/targeting_assist_wrist_implant_PTI-IV_(right).py @@ -0,0 +1,24 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Traxes BioElectronic Targeting Assist Wrist Implant PTI-IV (Right)' + +def requiredProfession(): + + return 'Commando' + +def requiredCL(): + + return 85 + +def itemSkillMods(): + + mods = ['expertise_action_line_co_dm','4'] + mods += ['expertise_critical_line_co_dm','4'] + mods += ['expertise_damage_line_co_dm','4'] + mods += ['expertise_freeshot_co_dm','4'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/wrist_assault_booster_zulu_(right).py b/scripts/loot/lootItems/treasureloot/wrist_assault_booster_zulu_(right).py new file mode 100644 index 00000000..fb8787d9 --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/wrist_assault_booster_zulu_(right).py @@ -0,0 +1,24 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Blastech Wristek - Wrist Assault Booster Zulu (right)' + +def requiredProfession(): + + return 'Bounty Hunter' + +def requiredCL(): + + return 85 + +def itemSkillMods(): + + mods = ['expertise_action_line_fs_dm','4'] + mods += ['expertise_critical_line_dm','4'] + mods += ['expertise_damage_line_dm','4'] + mods += ['expertise_freeshot_dm','4'] + return mods diff --git a/scripts/loot/lootItems/treasureloot/wrist_communications_scanner_SCNv4_(right).py b/scripts/loot/lootItems/treasureloot/wrist_communications_scanner_SCNv4_(right).py new file mode 100644 index 00000000..b90c0a36 --- /dev/null +++ b/scripts/loot/lootItems/treasureloot/wrist_communications_scanner_SCNv4_(right).py @@ -0,0 +1,22 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Courier Wrist Communications Scanner SCNv4 (Right)' + +def requiredProfession(): + + return 'Bounty Hunter' + +def requiredCL(): + + return 75 + +def itemSkillMods(): + + mods = ['droid_find_speed','10'] + mods += ['expertise_critical_niche_pvp','2'] + return mods diff --git a/scripts/loot/lootItems/veryrareloot/rare_ankarres_sapphire.py b/scripts/loot/lootItems/veryrareloot/rare_ankarres_sapphire.py new file mode 100644 index 00000000..652de8d4 --- /dev/null +++ b/scripts/loot/lootItems/veryrareloot/rare_ankarres_sapphire.py @@ -0,0 +1,17 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Rare Ankarres Sapphire' + +def biolink(): + + return 1 + +def requiredCL(): + + return 80 + diff --git a/scripts/loot/lootItems/veryrareloot/rare_corusca_gem.py b/scripts/loot/lootItems/veryrareloot/rare_corusca_gem.py new file mode 100644 index 00000000..ffac6875 --- /dev/null +++ b/scripts/loot/lootItems/veryrareloot/rare_corusca_gem.py @@ -0,0 +1,16 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Rare Corusca Gem' + +def biolink(): + + return 1 + +def requiredCL(): + + return 80 diff --git a/scripts/loot/lootItems/veryrareloot/rare_nova_crystal.py b/scripts/loot/lootItems/veryrareloot/rare_nova_crystal.py new file mode 100644 index 00000000..0e6c09cb --- /dev/null +++ b/scripts/loot/lootItems/veryrareloot/rare_nova_crystal.py @@ -0,0 +1,17 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Rare Nova Crystal' + +def biolink(): + + return 1 + +def requiredCL(): + + return 80 + diff --git a/scripts/loot/lootItems/veryrareloot/rare_power_gem.py b/scripts/loot/lootItems/veryrareloot/rare_power_gem.py new file mode 100644 index 00000000..98e4c801 --- /dev/null +++ b/scripts/loot/lootItems/veryrareloot/rare_power_gem.py @@ -0,0 +1,17 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Rare Power Gem' + +def biolink(): + + return 1 + +def requiredCL(): + + return 80 + diff --git a/scripts/loot/lootItems/veryrareloot/rare_rol_stone.py b/scripts/loot/lootItems/veryrareloot/rare_rol_stone.py new file mode 100644 index 00000000..122d8292 --- /dev/null +++ b/scripts/loot/lootItems/veryrareloot/rare_rol_stone.py @@ -0,0 +1,17 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Rare Rol Stone' + +def biolink(): + + return 1 + +def requiredCL(): + + return 80 + diff --git a/scripts/loot/lootItems/veryrareloot/rare_sasho_gem.py b/scripts/loot/lootItems/veryrareloot/rare_sasho_gem.py new file mode 100644 index 00000000..50c7655d --- /dev/null +++ b/scripts/loot/lootItems/veryrareloot/rare_sasho_gem.py @@ -0,0 +1,17 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/composite/shared_armor_composite_bicep_l.iff'] + +def customItemName(): + + return 'Rare Sasho Gem' + +def biolink(): + + return 1 + +def requiredCL(): + + return 80 + diff --git a/scripts/loot/lootPools/profession_bracelets_75.py b/scripts/loot/lootPools/profession_bracelets_75.py index 8a765e2f..1ac31b60 100644 --- a/scripts/loot/lootPools/profession_bracelets_75.py +++ b/scripts/loot/lootPools/profession_bracelets_75.py @@ -1,8 +1,8 @@ def itemNames(): names = ['jedi_knight_meditation_bracelet_(right)','wrist_communications_scanner_SCNv4_(right)'] - names += ['insurgent_scanner_wrist_module_(right)','counter-toxin_wristband_prototype_IV_(right)'] + names += ['insurgent_scanner_wrist_module_(right)','counter-toxin_wristband_prototype_IV_(right)','insurgency_wrist_implantat-BLACK-(right)'] return names def itemChances(): - return [25,25,25,25] \ No newline at end of file + return [20,20,20,20,20] \ No newline at end of file diff --git a/scripts/loot/lootPools/profession_bracelets_85.py b/scripts/loot/lootPools/profession_bracelets_85.py index 9d609ba1..dbaba8db 100644 --- a/scripts/loot/lootPools/profession_bracelets_85.py +++ b/scripts/loot/lootPools/profession_bracelets_85.py @@ -1,10 +1,10 @@ def itemNames(): names = ['jedi_knights_wristguard_(right)','wrist_assault_booster_zulu_(right)','targeting_assist_wrist_implant_PTI-IV_(right)'] - names += ['personnel_comlink_wrist-P4_(right)','manufacturing_verdicator_200a_(right)','insurgency_wrist_implantat-BLACK-(right)'] + names += ['personnel_comlink_wrist-P4_(right)','manufacturing_verdicator_200a_(right)'] names += ['targeter_ranging_wrist_assist_V4_(right)','bracelet_of_Inspired_Status(right)'] return names def itemChances(): - return [16,12,12,12,12,12,12,12] \ No newline at end of file + return [16,14,14,14,14,14,14] \ No newline at end of file diff --git a/src/services/LootService.java b/src/services/LootService.java index 8f9fb3db..eabfc27a 100644 --- a/src/services/LootService.java +++ b/src/services/LootService.java @@ -292,6 +292,7 @@ public class LootService implements INetworkDispatch { Vector customizationAttributes = null; Vector customizationValues = null; Vector itemStats = null; + Vector itemSkillMods = null; if(core.scriptService.getMethod(itemPath,"","itemTemplate")==null){ String errorMessage = "Loot item '" + itemName + "' has no template function assigned in its script. Please contact Charon about this issue."; @@ -322,6 +323,9 @@ public class LootService implements INetworkDispatch { if(core.scriptService.getMethod(itemPath,"","itemStats")!=null) itemStats = (Vector)core.scriptService.fetchStringVector(itemPath,"itemStats"); + if(core.scriptService.getMethod(itemPath,"","itemStats")!=null) + itemSkillMods = (Vector)core.scriptService.fetchStringVector(itemPath,"itemSkillMods"); + if(core.scriptService.getMethod(itemPath,"","biolink")!=null) biolink = (Integer)core.scriptService.fetchInteger(itemPath,"biolink"); @@ -376,6 +380,13 @@ public class LootService implements INetworkDispatch { } handleStats(droppedItem, itemStats); } + + if (itemSkillMods!=null){ + handleSkillMods(droppedItem, itemSkillMods); + } + + + // if (customizationValues!=null) // setCustomization(droppedItem, itemName); @@ -532,6 +543,14 @@ public class LootService implements INetworkDispatch { } } + private void handleSkillMods(TangibleObject droppedItem, Vector skillMods) { + for (int i=0;i