Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import org.gradle.api.publish.maven.MavenPublication

plugins {
java
alias(libs.plugins.loom) apply false
id("site.siredvin.root") version "0.9.0"
id("site.siredvin.release") version "0.9.0"
id("com.github.ben-manes.versions") version "0.51.0"
Expand All @@ -24,6 +25,10 @@ subprojects {
setupSubproject(this)
val module = this

if (name.endsWith("-core")) {
pluginManager.apply("net.fabricmc.fabric-loom-companion")
}

pluginManager.withPlugin("maven-publish") {
extensions.configure<PublishingExtension> {
publications.withType<MavenPublication>().configureEach {
Expand Down
4 changes: 2 additions & 2 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ kotlin-atomicfu = "0.20.2"

# Gradle plugins
sponge = "0.2.1-SNAPSHOT"
loom = "1.5.+"
loom = "1.17.11"
forgegradle = "6.+"
spotless = "6.19.0"

# Core mod dependencies
cc-tweaked = "1.113.0"
cc-tweaked = "1.120.0"
mixin = "0.8.5"

# Only core mod dependenceis
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.0-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@ package site.siredvin.tweakium.modules.platform

import com.mojang.authlib.GameProfile
import dan200.computercraft.api.peripheral.IPeripheral
import dan200.computercraft.api.peripheral.PeripheralCapability
import dan200.computercraft.api.pocket.IPocketUpgrade
import dan200.computercraft.api.turtle.ITurtleAccess
import dan200.computercraft.api.turtle.ITurtleUpgrade
import dan200.computercraft.api.upgrades.UpgradeData
import dan200.computercraft.impl.Peripherals
import dan200.computercraft.impl.PocketUpgrades
import dan200.computercraft.impl.TurtleUpgrades
import dan200.computercraft.shared.ModRegistry
Expand All @@ -19,12 +21,10 @@ import net.minecraft.core.component.DataComponentPatch
import net.minecraft.core.registries.BuiltInRegistries
import net.minecraft.nbt.NbtOps
import net.minecraft.nbt.Tag
import net.minecraft.resources.ResourceLocation
import net.minecraft.server.level.ServerLevel
import net.minecraft.server.level.ServerPlayer
import net.minecraft.world.item.ItemStack
import net.minecraft.world.level.block.entity.BlockEntity
import net.neoforged.neoforge.capabilities.BlockCapability
import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent
import site.siredvin.tweakium.modules.peripheral.api.IPeripheralProvider
import site.siredvin.tweakium.modules.platform.api.InnerComputerPlatformToolkit
Expand All @@ -33,13 +33,6 @@ import thedarkcolour.kotlinforforge.neoforge.forge.MOD_CONTEXT

@Suppress("UnstableApiUsage")
object ForgeComputerPlatformToolkit : InnerComputerPlatformToolkit {

private val PERIPHERAL_CAPABILITY: BlockCapability<IPeripheral, Direction?> =
BlockCapability.createSided(
ResourceLocation.fromNamespaceAndPath("computercraft", "peripheral"),
IPeripheral::class.java,
)

private var genericRegistered: Boolean = false

override fun createFakePlayer(level: ServerLevel, profile: GameProfile): ServerPlayer = ForgeFakePlayer(level, profile)
Expand All @@ -51,7 +44,8 @@ object ForgeComputerPlatformToolkit : InnerComputerPlatformToolkit {
return null
}

override fun getPeripheral(level: ServerLevel, pos: BlockPos, side: Direction): IPeripheral? = level.getCapability(PERIPHERAL_CAPABILITY, pos, side)
override fun getPeripheral(level: ServerLevel, pos: BlockPos, side: Direction): IPeripheral? = level.getCapability(PeripheralCapability.get(), pos, side)
?: Peripherals.getGenericPeripheral(level, pos, side, level.getBlockEntity(pos))

override fun nbtHash(tag: Tag?): String? = NBTUtil.getNBTHash(tag)

Expand Down Expand Up @@ -85,7 +79,7 @@ object ForgeComputerPlatformToolkit : InnerComputerPlatformToolkit {
if (!genericRegistered) {
MOD_CONTEXT.getKEventBus().addListener { event: RegisterCapabilitiesEvent ->
for (type in BuiltInRegistries.BLOCK_ENTITY_TYPE) {
event.registerBlockEntity(PERIPHERAL_CAPABILITY, type) { be, side ->
event.registerBlockEntity(PeripheralCapability.get(), type) { be, side ->
if (be is IPeripheralProvider<*> && side != null) {
be.getPeripheral(side)
} else {
Expand Down
1 change: 1 addition & 0 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ pluginManagement {
repositories {
mavenCentral()
gradlePluginPortal()
maven("https://maven.fabricmc.net/")
maven("https://mvn.siredvin.site/minecraft") {
name = "SirEdvin's Minecraft repository"
content {
Expand Down
Loading