Compatibility
Minecraft: Java Edition
1.20.1–1.20.2
1.19.2
Platforms
Forge
Supported environments
90% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Details
Licensed LGPL-2.1-only
Published 6 months ago
Updated 6 months ago
Credits go to Amygdaloideae (Prunoideae on GitHub). Original mod here
Big thanks to richie3366 for helping to make the port work!
Mod icon made by FooterMan16 \
Available on both Curseforge and Modrinth
CurseForge: \Modrinth:
Adds support for KubeJS to add peripherals to any block.
GO VISIT THE WIKIÂ HERE! All things are there!
Example of methods you could add to furnaces:
// priority: 0
// The following code was last updated: April 30th 2024
// Visit the wiki for more info - https://kubejs.com/
ComputerCraftEvents.peripheral(event => {
// First Param: peripheral type
// Second Param: What block it goes to
// Note: you can use regex for the second param
event.registerPeripheral("furnace", "minecraft:furnace")
// This limits the method to 1 call/tick,
// as the method is scheduled on main thread.
// The main thread is synced with the block
.mainThreadMethod("burnTime", (container, direction, arguments) => {
// This custom method returns the current
// remaining burntime the furnace has.
return container.entityData.getInt("BurnTime")
})
.mainThreadMethod("cookingProgress", (container) => {
// This custom method returns the percentage
// of the current cooking process going on.
// A progress of 0 returned during two consecutive
// ticks means that there is no cooking happening.
let data = container.entityData
let cookTime = data.getInt('CookTime')
let cookTimeTotal = data.getInt('CookTimeTotal')
if (!cookTimeTotal) return 0;
return (cookTime / cookTimeTotal) * 100
})
// This has no limit on calling
// however, the method can't access most of the in-world data.
// For example, it couldn't access the NBT of a tile entity
.method("say_hi", (container, direction, arguments) => {
container.up.set("diamond_block")
return "hi, here's your diamond block"
})
})