1
1
package dev.sterner.common
2
2
3
3
import com.google.common.base.Supplier
4
- import com.google.common.cache.Cache
5
- import com.google.common.cache.CacheBuilder
6
4
import com.mojang.serialization.Codec
7
5
import com.mojang.serialization.codecs.RecordCodecBuilder
8
6
import dev.sterner.VoidBound
9
7
import dev.sterner.api.VoidBoundApi
10
8
import dev.sterner.api.item.ItemAbility
11
9
import io.github.fabricators_of_create.porting_lib.loot.IGlobalLootModifier
12
10
import io.github.fabricators_of_create.porting_lib.loot.LootModifier
13
- import io.github.fabricators_of_create.porting_lib.loot.LootTableIdCondition
14
11
import io.github.fabricators_of_create.porting_lib.loot.PortingLibLoot
15
12
import io.github.fabricators_of_create.porting_lib.util.LazyRegistrar
16
- import io.github.fabricators_of_create.porting_lib.util.RegistryObject
17
13
import it.unimi.dsi.fastutil.objects.ObjectArrayList
18
14
import net.minecraft.world.SimpleContainer
19
- import net.minecraft.world.item.Item
20
15
import net.minecraft.world.item.ItemStack
21
16
import net.minecraft.world.item.crafting.RecipeType
22
- import net.minecraft.world.item.crafting.SmeltingRecipe
23
17
import net.minecraft.world.level.storage.loot.LootContext
24
18
import net.minecraft.world.level.storage.loot.parameters.LootContextParams
25
19
import net.minecraft.world.level.storage.loot.predicates.LootItemCondition
26
- import net.minecraft.world.level.storage.loot.predicates.LootItemConditions
27
- import java.util.*
28
20
29
21
30
22
class VoidBoundLootModifier (conditionsIn : Array <out LootItemCondition >? ) : LootModifier(conditionsIn) {
31
23
32
-
33
-
34
24
override fun codec (): Codec <out IGlobalLootModifier > {
35
25
return CODEC .get()
36
26
}
@@ -43,7 +33,7 @@ class VoidBoundLootModifier(conditionsIn: Array<out LootItemCondition>?) : LootM
43
33
val stack = context?.getParamOrNull(LootContextParams .TOOL )
44
34
if (stack != null && VoidBoundApi .hasItemAbility(stack, ItemAbility .AUTOSMELT )) {
45
35
46
- val level = context!! .level
36
+ val level = context.level
47
37
val smeltedItems = generatedLoot?.asSequence()?.map { originalStack ->
48
38
val inventory = SimpleContainer (originalStack)
49
39
val smeltingRecipe = level.recipeManager.getRecipeFor(RecipeType .SMELTING , inventory, level)
@@ -75,7 +65,6 @@ class VoidBoundLootModifier(conditionsIn: Array<out LootItemCondition>?) : LootM
75
65
}
76
66
}
77
67
78
-
79
68
val AUTOSMELT = MODIFIERS .register(" autosmelt" , CODEC )
80
69
}
81
70
}
0 commit comments