Skip to content

Commit 87abf8a

Browse files
committed
Fix gems+extraction
1 parent 1099d54 commit 87abf8a

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

src/main/java/studio/magemonkey/divinity/modules/list/gems/GemManager.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,15 @@ public ItemStack insertSocket(@NotNull ItemStack item, @NotNull ItemStack src) {
8383
@NotNull
8484
public List<ItemStack> extractSocket(@NotNull ItemStack target, @NotNull String socketId, int index) {
8585
List<ItemStack> items = super.extractSocket(target, socketId, index);
86-
Gem gem = this.getModuleItem(target);
86+
if (items.size() < 2) return items;
87+
88+
ItemStack gemItem = items.get(1);
89+
Gem gem = this.getModuleItem(gemItem);
8790

8891
if (gem == null) return items;
8992

9093
ItemStack result = items.get(0);
91-
int gemLevel = ItemStats.getLevel(target);
94+
int gemLevel = ItemStats.getLevel(gemItem);
9295
gem.removeAbilities(result, gemLevel);
9396

9497
return items;
@@ -167,7 +170,8 @@ private void applyAbilities(ItemStack item, int level) {
167170
int i = 0;
168171
String[] abilityArray = new String[itemAbilities.size()];
169172
for (Map.Entry<String, AbilityGenerator.AbilityInfo> entry : itemAbilities.entrySet()) {
170-
abilityArray[i] = entry.getKey() + ":" + entry.getValue() + ":" + entry.getValue().getSource();
173+
abilityArray[i] =
174+
entry.getKey() + ":" + entry.getValue().getLevel() + ":" + entry.getValue().getSource();
171175
i++;
172176
}
173177
DataUT.setData(item, AbilityGenerator.ABILITY_KEY, abilityArray);

0 commit comments

Comments
 (0)