File tree Expand file tree Collapse file tree
src/main/kotlin/dev/bluemethyst/mods/toolsjs Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ StartupEvents.registry("item", (event) => {
1414 event .create (" test_hammer" , " exdeorum:hammer" ).tag (" exdeorum:hammers" );
1515 event .create (" test_crook" , " exdeorum:crook" ).tag (" exdeorum:crooks" );
1616 event .create (" test_mesh" , " exdeorum:mesh" );
17- event .create (" test_wateringcan" , " exdeorum:watering_can" ).capacity (3000 ); // capacity not working
17+ event .create (" test_wateringcan" , " exdeorum:watering_can" ).capacity (3000 );
1818 event .create (" test_brush" , " brush" );
1919 event .create (" test_shield" , " shield" );
2020 event .create (" test_paxel" , " paxel" );
Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ package dev.bluemethyst.mods.toolsjs
33import dev.bluemethyst.mods.toolsjs.kubejs.builders.exdeorum.WATERING_CANS
44import net.minecraft.world.item.ItemStack
55import net.neoforged.bus.api.IEventBus
6+ import net.neoforged.fml.ModList
67import net.neoforged.neoforge.capabilities.Capabilities
78import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent
89import thedarkcolour.exdeorum.item.WateringCanItem
@@ -13,10 +14,12 @@ object EventHandler {
1314 }
1415
1516 private fun registerCapabilities (event : RegisterCapabilitiesEvent ) {
16- event.registerItem(
17+ if (ModList .get().isLoaded(" exdeorum" ) && WATERING_CANS .isNotEmpty()) {
18+ event.registerItem(
1719 Capabilities .FluidHandler .ITEM ,
1820 { stack: ItemStack ? , ctx: Void ? -> WateringCanItem .FluidHandler (stack) },
1921 * WATERING_CANS .toTypedArray()
20- )
22+ )
23+ }
2124 }
2225}
Original file line number Diff line number Diff line change @@ -34,7 +34,7 @@ class ToolsJS(modBus: IEventBus) {
3434 fun onClientSetup (event : FMLClientSetupEvent ? ) {
3535 for (bow in BOWS ) {
3636 LOGGER .info(" Registering bow properties for $bow " )
37- ModItemProperties .makeCustomBows(bow)
37+ ModItemProperties .makeCustomBows(bow.key )
3838 }
3939 for (crossbow in CROSSBOWS ) {
4040 LOGGER .info(" Registering crossbow properties for $crossbow " )
Original file line number Diff line number Diff line change @@ -12,7 +12,8 @@ import net.neoforged.neoforge.client.event.ComputeFovModifierEvent
1212object ModClientEvents {
1313 @SubscribeEvent
1414 fun onComputeFovModifierEvent (event : ComputeFovModifierEvent ) {
15- if (event.getPlayer().isUsingItem() && BOWS .contains(event.getPlayer().getUseItem().getItem())) {
15+ val item = event.getPlayer().getUseItem().getItem()
16+ if (event.getPlayer().isUsingItem() && BOWS [item] == true ) {
1617 var fovModifier = 1f
1718 val ticksUsingItem = event.getPlayer().getTicksUsingItem()
1819 var deltaTicks = ticksUsingItem.toFloat() / 20f
Original file line number Diff line number Diff line change 11package dev.bluemethyst.mods.toolsjs.kubejs.builders
22
33import dev.latvian.mods.kubejs.item.ItemBuilder
4+ import dev.latvian.mods.kubejs.typings.Info
45import net.minecraft.resources.ResourceLocation
56import net.minecraft.world.item.BowItem
67import net.minecraft.world.item.Item
78
8- val BOWS = mutableListOf <BowItem >()
9+ val BOWS = mutableMapOf <BowItem , Boolean >()
910
1011class BowItemBuilder (i : ResourceLocation ? ) : ItemBuilder(i) {
12+
13+ var changeFovWhileAiming: Boolean = true
14+
1115 override fun createObject (): Item {
1216 val bow = BowItem (createItemProperties())
13- BOWS .add (bow)
17+ BOWS .put (bow, changeFovWhileAiming )
1418 return bow
1519 }
20+
21+ @Info( value = " If true, the fov will change while aiming with the bow. Defaults to `true`" )
22+ fun changeFovWhileAiming (change : Boolean ): BowItemBuilder {
23+ changeFovWhileAiming = change
24+ return this
25+ }
1626}
You can’t perform that action at this time.
0 commit comments