aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornea <nea@nea.moe>2023-05-03 00:52:37 +0200
committernea <nea@nea.moe>2023-05-03 00:52:49 +0200
commit3be33bb522f468b812bb59b7f2edc8d1ca352661 (patch)
tree1292a52cb661ab71584b1ae248204e18b869afe1
parenta8ab8f3d6326211f6e07694c64ebd8b6ba195988 (diff)
downloadfirmament-3be33bb522f468b812bb59b7f2edc8d1ca352661.tar.gz
firmament-3be33bb522f468b812bb59b7f2edc8d1ca352661.tar.bz2
firmament-3be33bb522f468b812bb59b7f2edc8d1ca352661.zip
Modernize and 1.19.4ify
-rw-r--r--README.md2
-rw-r--r--TODO.txt1
-rw-r--r--build.gradle.kts25
-rw-r--r--gradle.properties18
-rw-r--r--src/main/java/moe/nea/notenoughupdates/mixins/MixinClientPlayNetworkHandler.java17
-rw-r--r--src/main/java/moe/nea/notenoughupdates/mixins/MixinMessageHandler.java34
-rw-r--r--src/main/java/moe/nea/notenoughupdates/mixins/MixinMinecraft.java26
-rw-r--r--src/main/java/moe/nea/notenoughupdates/mixins/MixinWorldRenderer.java26
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/events/WorldRenderLastEvent.kt2
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinClientBrandRetriever.kt18
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinClientPlayNetworkHandler.kt17
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinMessageHandler.kt33
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinMinecraft.kt20
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinWorldRenderer.kt41
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/rei/SBItemEntryDefinition.kt4
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/util/SBData.kt15
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/util/render/block.kt4
-rw-r--r--src/main/resources/fabric.mod.json4
-rw-r--r--src/main/resources/notenoughupdates.mixins.json3
19 files changed, 134 insertions, 176 deletions
diff --git a/README.md b/README.md
index f50ba91..daa8682 100644
--- a/README.md
+++ b/README.md
@@ -2,6 +2,8 @@
> This is still very much more of a tech demo, than an actual usable project. Please do not confuse it for one.
+This project is subject to renaming. This is not NEU, but 1.19, even tho the goal is to have some of NEUs features.
+
### Building your own
Use Java 17.
diff --git a/TODO.txt b/TODO.txt
index 98158ed..967250d 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -1,4 +1,5 @@
- recipes
+- replace REI with custom renderer (if needed)
- easy config gui builder
- Storage Overlay
- PV
diff --git a/build.gradle.kts b/build.gradle.kts
index 1fb3d25..8109e06 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -5,7 +5,7 @@ plugins {
`maven-publish`
kotlin("jvm") version "1.7.10"
kotlin("plugin.serialization") version "1.7.10"
- id("dev.architectury.loom") version "0.12.0.+"
+ id("dev.architectury.loom") version "1.1.336"
id("com.github.johnrengelman.shadow") version "7.1.2"
id("moe.nea.licenseextractificator") version "fffc76c"
id("io.github.juuxel.loom-quiltflower") version "1.7.3"
@@ -13,22 +13,15 @@ plugins {
loom {
accessWidenerPath.set(project.file("src/main/resources/notenoughupdates.accesswidener"))
- runConfigs {
+ runs {
removeIf { it.name != "client" }
- }
- launches {
named("client") {
property("devauth.enabled", "true")
property("fabric.log.level", "info")
property("notenoughupdates.debug", "true")
- }
- }
- runs {
- named("client") {
/*
vmArg("-XX:+AllowEnhancedClassRedefinition")
vmArg("-XX:HotswapAgent=fatjar")
-
*/
}
}
@@ -68,7 +61,7 @@ dependencies {
modImplementation("net.fabricmc:fabric-loader:${project.property("fabric_loader_version")}")
modApi("net.fabricmc.fabric-api:fabric-api:${project.property("fabric_api_version")}")
modImplementation("net.fabricmc:fabric-language-kotlin:${project.property("fabric_kotlin_version")}")
- modApi("dev.architectury:architectury:6.2.46")
+ modApi("dev.architectury:architectury:8.1.79")
// Actual dependencies
modCompileOnly("me.shedaniel:RoughlyEnoughItems-api:${rootProject.property("rei_version")}") {
@@ -88,7 +81,7 @@ dependencies {
modImplementation(include("io.github.cottonmc:LibGui:${project.property("libgui_version")}")!!)
// Dev environment preinstalled mods
- modRuntimeOnly("dev.architectury:architectury-fabric:6.2.46")
+ modRuntimeOnly("dev.architectury:architectury-fabric:8.1.79")
modRuntimeOnly("me.shedaniel:RoughlyEnoughItems-fabric:${project.property("rei_version")}") {
exclude(module = "architectury")
exclude(module = "architectury-fabric")
@@ -138,10 +131,14 @@ tasks.remapJar {
}
tasks.processResources {
+ val replacements = listOf(
+ "version" to project.version,
+ "minecraft_version" to project.property("minecraft_version"),
+ "fabric_kotlin_version" to project.property("fabric_kotlin_version")
+ ).map { (k, v) -> k to v.toString() }
+ replacements.forEach { (key, value) -> inputs.property(key, value) }
filesMatching("**/fabric.mod.json") {
- expand(
- "version" to project.version
- )
+ expand(*replacements.toTypedArray())
}
filesMatching("**/lang/*.json") {
// flattenJson(this)
diff --git a/gradle.properties b/gradle.properties
index f9e65d9..975ab21 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,22 +1,22 @@
# suppress inspection "UnusedProperty" for whole file
org.gradle.jvmargs=-Xmx4096M
-minecraft_version=1.19.2
+minecraft_version=1.19.4
loom.platform=fabric
archives_base_name=notenoughupdates
mod_version=1.0.0
maven_group=moe.nea.notenoughupdates
-fabric_loader_version=0.14.9
-fabric_api_version=0.60.0+1.19.2
-fabric_kotlin_version=1.8.2+kotlin.1.7.10
-yarn_version=1.19.2+build.9
+fabric_loader_version=0.14.19
+fabric_api_version=0.80.0+1.19.4
+fabric_kotlin_version=1.9.4+kotlin.1.8.21
+yarn_version=1.19.4+build.2
-libgui_version=6.1.0+1.19
-rei_version=9.1.537
+libgui_version=7.0.0-rc.1+1.19.4
+rei_version=11.0.597
devauth_version=1.0.0
-modmenu_version=4.0.6
-ktor_version=2.0.3
+modmenu_version=6.2.1
+ktor_version=2.3.0
dbus_java_version=4.2.1
diff --git a/src/main/java/moe/nea/notenoughupdates/mixins/MixinClientPlayNetworkHandler.java b/src/main/java/moe/nea/notenoughupdates/mixins/MixinClientPlayNetworkHandler.java
new file mode 100644
index 0000000..34334b6
--- /dev/null
+++ b/src/main/java/moe/nea/notenoughupdates/mixins/MixinClientPlayNetworkHandler.java
@@ -0,0 +1,17 @@
+package moe.nea.notenoughupdates.mixins;
+
+import moe.nea.notenoughupdates.events.WorldReadyEvent;
+import net.minecraft.client.network.ClientPlayNetworkHandler;
+import net.minecraft.network.packet.s2c.play.PlayerSpawnPositionS2CPacket;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
+
+@Mixin(ClientPlayNetworkHandler.class)
+public class MixinClientPlayNetworkHandler {
+ @Inject(method = "onPlayerSpawnPosition", at = @At("RETURN"))
+ public void onOnPlayerSpawnPosition(PlayerSpawnPositionS2CPacket packet, CallbackInfo ci) {
+ WorldReadyEvent.Companion.publish(new WorldReadyEvent());
+ }
+}
diff --git a/src/main/java/moe/nea/notenoughupdates/mixins/MixinMessageHandler.java b/src/main/java/moe/nea/notenoughupdates/mixins/MixinMessageHandler.java
new file mode 100644
index 0000000..5d3e70f
--- /dev/null
+++ b/src/main/java/moe/nea/notenoughupdates/mixins/MixinMessageHandler.java
@@ -0,0 +1,34 @@
+package moe.nea.notenoughupdates.mixins;
+
+import com.mojang.authlib.GameProfile;
+import moe.nea.notenoughupdates.events.ServerChatLineReceivedEvent;
+import net.minecraft.client.network.message.MessageHandler;
+import net.minecraft.network.message.MessageType;
+import net.minecraft.network.message.SignedMessage;
+import net.minecraft.text.Text;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
+
+@Mixin(MessageHandler.class)
+public class MixinMessageHandler {
+ @Inject(method = "onChatMessage", cancellable = true, at = @At("HEAD"))
+ public void onOnChatMessage(SignedMessage message, GameProfile sender, MessageType.Parameters params, CallbackInfo ci) {
+ var decoratedText = params.applyChatDecoration(message.unsignedContent() != null ? message.unsignedContent() : message.getContent());
+ var event = new ServerChatLineReceivedEvent(decoratedText);
+ if (ServerChatLineReceivedEvent.Companion.publish(event).getCancelled()) {
+ ci.cancel();
+ }
+ }
+
+ @Inject(method = "onGameMessage", at = @At("HEAD"), cancellable = true)
+ public void onOnGameMessage(Text message, boolean overlay, CallbackInfo ci) {
+ if (!overlay) {
+ var event = new ServerChatLineReceivedEvent(message);
+ if (ServerChatLineReceivedEvent.Companion.publish(event).getCancelled()) {
+ ci.cancel();
+ }
+ }
+ }
+}
diff --git a/src/main/java/moe/nea/notenoughupdates/mixins/MixinMinecraft.java b/src/main/java/moe/nea/notenoughupdates/mixins/MixinMinecraft.java
new file mode 100644
index 0000000..17f49e1
--- /dev/null
+++ b/src/main/java/moe/nea/notenoughupdates/mixins/MixinMinecraft.java
@@ -0,0 +1,26 @@
+package moe.nea.notenoughupdates.mixins;
+
+import moe.nea.notenoughupdates.events.ScreenOpenEvent;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.gui.screen.Screen;
+import org.jetbrains.annotations.Nullable;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.Shadow;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
+
+@Mixin(MinecraftClient.class)
+public abstract class MixinMinecraft {
+ @Shadow
+ @Nullable
+ public Screen currentScreen;
+
+ @Inject(method = "setScreen", at = @At("HEAD"), cancellable = true)
+ public void onScreenChange(Screen screen, CallbackInfo ci) {
+ var event = new ScreenOpenEvent(currentScreen, screen);
+ if (ScreenOpenEvent.Companion.publish(event).getCancelled()) {
+ ci.cancel();
+ }
+ }
+}
diff --git a/src/main/java/moe/nea/notenoughupdates/mixins/MixinWorldRenderer.java b/src/main/java/moe/nea/notenoughupdates/mixins/MixinWorldRenderer.java
new file mode 100644
index 0000000..c3d70fe
--- /dev/null
+++ b/src/main/java/moe/nea/notenoughupdates/mixins/MixinWorldRenderer.java
@@ -0,0 +1,26 @@
+package moe.nea.notenoughupdates.mixins;
+
+import moe.nea.notenoughupdates.events.WorldRenderLastEvent;
+import net.minecraft.client.render.Camera;
+import net.minecraft.client.render.GameRenderer;
+import net.minecraft.client.render.LightmapTextureManager;
+import net.minecraft.client.render.WorldRenderer;
+import net.minecraft.client.util.math.MatrixStack;
+import org.joml.Matrix4f;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
+
+@Mixin(WorldRenderer.class)
+public class MixinWorldRenderer {
+ @Inject(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/render/WorldRenderer;renderChunkDebugInfo(Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/render/VertexConsumerProvider;Lnet/minecraft/client/render/Camera;)V", shift = At.Shift.AFTER))
+ public void onWorldRenderLast(MatrixStack matrices, float tickDelta, long limitTime, boolean renderBlockOutline, Camera camera, GameRenderer gameRenderer, LightmapTextureManager lightmapTextureManager, Matrix4f positionMatrix, CallbackInfo ci) {
+ var event = new WorldRenderLastEvent(
+ matrices, tickDelta, renderBlockOutline,
+ camera, gameRenderer, lightmapTextureManager,
+ positionMatrix
+ );
+ WorldRenderLastEvent.Companion.publish(event);
+ }
+}
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/events/WorldRenderLastEvent.kt b/src/main/kotlin/moe/nea/notenoughupdates/events/WorldRenderLastEvent.kt
index c230c9c..60b7e06 100644
--- a/src/main/kotlin/moe/nea/notenoughupdates/events/WorldRenderLastEvent.kt
+++ b/src/main/kotlin/moe/nea/notenoughupdates/events/WorldRenderLastEvent.kt
@@ -1,10 +1,10 @@
package moe.nea.notenoughupdates.events
+import org.joml.Matrix4f
import net.minecraft.client.render.Camera
import net.minecraft.client.render.GameRenderer
import net.minecraft.client.render.LightmapTextureManager
import net.minecraft.client.util.math.MatrixStack
-import net.minecraft.util.math.Matrix4f
/**
* This event is called after all world rendering is done, but before any GUI rendering (including hand) has been done.
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinClientBrandRetriever.kt b/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinClientBrandRetriever.kt
deleted file mode 100644
index f5ccf23..0000000
--- a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinClientBrandRetriever.kt
+++ /dev/null
@@ -1,18 +0,0 @@
-package moe.nea.notenoughupdates.mixins
-
-import org.spongepowered.asm.mixin.Mixin
-import org.spongepowered.asm.mixin.Overwrite
-import net.minecraft.client.ClientBrandRetriever
-
-@Mixin(ClientBrandRetriever::class)
-class MixinClientBrandRetriever {
-
-private companion object {
- @JvmStatic
- @Overwrite
- fun getClientModName(): String {
- return "penis"
- }
- }
-
-}
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinClientPlayNetworkHandler.kt b/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinClientPlayNetworkHandler.kt
deleted file mode 100644
index b94ff65..0000000
--- a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinClientPlayNetworkHandler.kt
+++ /dev/null
@@ -1,17 +0,0 @@
-package moe.nea.notenoughupdates.mixins
-
-import org.spongepowered.asm.mixin.Mixin
-import org.spongepowered.asm.mixin.injection.At
-import org.spongepowered.asm.mixin.injection.Inject
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo
-import net.minecraft.client.network.ClientPlayNetworkHandler
-import net.minecraft.network.packet.s2c.play.PlayerSpawnPositionS2CPacket
-import moe.nea.notenoughupdates.events.WorldReadyEvent
-
-@Mixin(ClientPlayNetworkHandler::class)
-class MixinClientPlayNetworkHandler {
- @Inject(method = ["onPlayerSpawnPosition"], at = [At("RETURN")])
- fun onOnPlayerSpawnPosition(packet: PlayerSpawnPositionS2CPacket, ci: CallbackInfo) {
- WorldReadyEvent.publish(WorldReadyEvent())
- }
-}
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinMessageHandler.kt b/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinMessageHandler.kt
deleted file mode 100644
index b6151b9..0000000
--- a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinMessageHandler.kt
+++ /dev/null
@@ -1,33 +0,0 @@
-package moe.nea.notenoughupdates.mixins
-
-import org.spongepowered.asm.mixin.Mixin
-import org.spongepowered.asm.mixin.injection.At
-import org.spongepowered.asm.mixin.injection.Inject
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo
-import net.minecraft.client.network.message.MessageHandler
-import net.minecraft.network.message.MessageType
-import net.minecraft.network.message.SignedMessage
-import net.minecraft.text.Text
-import moe.nea.notenoughupdates.events.ServerChatLineReceivedEvent
-
-@Mixin(MessageHandler::class)
-class MixinMessageHandler {
- @Inject(method = ["onChatMessage"], at = [At("HEAD")], cancellable = true)
- fun onOnChatMessage(message: SignedMessage, params: MessageType.Parameters, ci: CallbackInfo) {
- val decoratedText = params.applyChatDecoration(message.unsignedContent.orElse(message.content))
- val event = ServerChatLineReceivedEvent(decoratedText)
- if (ServerChatLineReceivedEvent.publish(event).cancelled) {
- ci.cancel()
- }
- }
-
- @Inject(method = ["onGameMessage"], at = [At("HEAD")], cancellable = true)
- fun onOnGameMessage(message: Text, overlay: Boolean, ci: CallbackInfo) {
- if (!overlay) {
- val event = ServerChatLineReceivedEvent(message)
- if (ServerChatLineReceivedEvent.publish(event).cancelled) {
- ci.cancel()
- }
- }
- }
-}
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinMinecraft.kt b/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinMinecraft.kt
deleted file mode 100644
index 3bc1a5f..0000000
--- a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinMinecraft.kt
+++ /dev/null
@@ -1,20 +0,0 @@
-package moe.nea.notenoughupdates.mixins
-
-import org.spongepowered.asm.mixin.Mixin
-import org.spongepowered.asm.mixin.injection.At
-import org.spongepowered.asm.mixin.injection.Inject
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo
-import net.minecraft.client.MinecraftClient
-import net.minecraft.client.gui.screen.Screen
-import moe.nea.notenoughupdates.events.ScreenOpenEvent
-
-@Suppress("CAST_NEVER_SUCCEEDS")
-@Mixin(MinecraftClient::class)
-class MixinMinecraft {
- @Inject(method = ["setScreen"], at = [At("HEAD")], cancellable = true)
- fun onScreenChange(screen: Screen?, ci: CallbackInfo) {
- val event = ScreenOpenEvent((this as MinecraftClient).currentScreen, screen)
- if (ScreenOpenEvent.publish(event).cancelled)
- ci.cancel()
- }
-}
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinWorldRenderer.kt b/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinWorldRenderer.kt
deleted file mode 100644
index ac9ea15..0000000
--- a/src/main/kotlin/moe/nea/notenoughupdates/mixins/MixinWorldRenderer.kt
+++ /dev/null
@@ -1,41 +0,0 @@
-package moe.nea.notenoughupdates.mixins
-
-import org.spongepowered.asm.mixin.Mixin
-import org.spongepowered.asm.mixin.injection.At
-import org.spongepowered.asm.mixin.injection.Inject
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo
-import net.minecraft.client.render.Camera
-import net.minecraft.client.render.GameRenderer
-import net.minecraft.client.render.LightmapTextureManager
-import net.minecraft.client.render.WorldRenderer
-import net.minecraft.client.util.math.MatrixStack
-import net.minecraft.util.math.Matrix4f
-import moe.nea.notenoughupdates.events.WorldRenderLastEvent
-
-@Mixin(WorldRenderer::class)
-class MixinWorldRenderer {
-
- @Inject(
- method = ["render"],
- at = [At("INVOKE", target = "renderChunkDebugInfo", shift = At.Shift.AFTER)],
- )
- fun onWorldRenderLast(
- matrices: MatrixStack,
- tickDelta: Float,
- arg2: Long,
- renderBlockOutline: Boolean,
- camera: Camera,
- gameRenderer: GameRenderer,
- lightmapTextureManager: LightmapTextureManager,
- positionMatrix: Matrix4f,
- ci: CallbackInfo
- ) {
- val event = WorldRenderLastEvent(
- matrices, tickDelta, renderBlockOutline,
- camera, gameRenderer, lightmapTextureManager,
- positionMatrix
- )
- WorldRenderLastEvent.publish(event)
- }
-
-}
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/rei/SBItemEntryDefinition.kt b/src/main/kotlin/moe/nea/notenoughupdates/rei/SBItemEntryDefinition.kt
index c851758..6e88b42 100644
--- a/src/main/kotlin/moe/nea/notenoughupdates/rei/SBItemEntryDefinition.kt
+++ b/src/main/kotlin/moe/nea/notenoughupdates/rei/SBItemEntryDefinition.kt
@@ -16,10 +16,10 @@ import moe.nea.notenoughupdates.repo.ItemCache.asItemStack
import moe.nea.notenoughupdates.repo.ItemCache.getIdentifier
import net.minecraft.client.util.math.MatrixStack
import net.minecraft.item.ItemStack
-import net.minecraft.tag.TagKey
import net.minecraft.text.Text
import net.minecraft.util.Identifier
import java.util.stream.Stream
+import net.minecraft.registry.tag.TagKey
object SBItemEntryDefinition : EntryDefinition<NEUItem> {
override fun equals(o1: NEUItem?, o2: NEUItem?, context: ComparisonContext?): Boolean {
@@ -61,7 +61,7 @@ object SBItemEntryDefinition : EntryDefinition<NEUItem> {
return null
}
- override fun getTagsFor(entry: EntryStack<NEUItem>?, value: NEUItem?): Stream<out TagKey<*>> {
+ override fun getTagsFor(entry: EntryStack<NEUItem>?, value: NEUItem?): Stream<out TagKey<*>>? {
return Stream.empty()
}
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/util/SBData.kt b/src/main/kotlin/moe/nea/notenoughupdates/util/SBData.kt
index 5aad7fc..6d4af7e 100644
--- a/src/main/kotlin/moe/nea/notenoughupdates/util/SBData.kt
+++ b/src/main/kotlin/moe/nea/notenoughupdates/util/SBData.kt
@@ -1,14 +1,11 @@
package moe.nea.notenoughupdates.util
-import java.time.Instant
import kotlinx.serialization.SerializationException
import kotlinx.serialization.decodeFromString
import kotlin.time.Duration
import kotlin.time.Duration.Companion.seconds
import kotlin.time.ExperimentalTime
import kotlin.time.TimeSource
-import net.minecraft.network.message.ArgumentSignatureDataMap
-import net.minecraft.network.packet.c2s.play.CommandExecutionC2SPacket
import moe.nea.notenoughupdates.NotEnoughUpdates
import moe.nea.notenoughupdates.events.ServerChatLineReceivedEvent
import moe.nea.notenoughupdates.events.SkyblockServerUpdateEvent
@@ -62,17 +59,7 @@ object SBData {
fun sendLocraw() {
lastLocrawSent = TimeSource.Monotonic.markNow()
val nh = MC.player?.networkHandler ?: return
- val ack = nh.consumeAcknowledgment()
- nh.sendPacket(
- CommandExecutionC2SPacket(
- "locraw",
- Instant.now(),
- 0L,
- ArgumentSignatureDataMap.EMPTY,
- false,
- ack
- )
- )
+nh.sendChatCommand("locraw")
}
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/util/render/block.kt b/src/main/kotlin/moe/nea/notenoughupdates/util/render/block.kt
index 9b5432a..9a02996 100644
--- a/src/main/kotlin/moe/nea/notenoughupdates/util/render/block.kt
+++ b/src/main/kotlin/moe/nea/notenoughupdates/util/render/block.kt
@@ -22,7 +22,7 @@ class RenderBlockContext(val tesselator: Tessellator, val camPos: Vec3d) {
matrixStack.push()
matrixStack.translate(blockPos.x - camPos.x, blockPos.y - camPos.y, blockPos.z - camPos.z)
RenderSystem.applyModelViewMatrix()
- RenderSystem.setShader(GameRenderer::getPositionColorShader)
+ RenderSystem.setShader(GameRenderer::getPositionColorProgram)
buildCube(buffer)
tesselator.draw()
matrixStack.pop()
@@ -73,7 +73,6 @@ class RenderBlockContext(val tesselator: Tessellator, val camPos: Vec3d) {
fun renderBlocks(camera: Camera, block: RenderBlockContext. () -> Unit) {
RenderSystem.disableDepthTest()
- RenderSystem.disableTexture()
RenderSystem.enableBlend()
RenderSystem.defaultBlendFunc()
@@ -82,7 +81,6 @@ class RenderBlockContext(val tesselator: Tessellator, val camPos: Vec3d) {
VertexBuffer.unbind()
RenderSystem.enableDepthTest()
- RenderSystem.enableTexture()
RenderSystem.disableBlend()
}
}
diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json
index 66c18a3..64d7bb2 100644
--- a/src/main/resources/fabric.mod.json
+++ b/src/main/resources/fabric.mod.json
@@ -41,7 +41,7 @@
],
"depends": {
"fabric": "*",
- "fabric-language-kotlin": ">=1.8.2+kotlin.1.7.10",
- "minecraft": ">=1.18.2"
+ "fabric-language-kotlin": ">=${fabric_kotlin_version}",
+ "minecraft": ">=${minecraft_version}"
}
}
diff --git a/src/main/resources/notenoughupdates.mixins.json b/src/main/resources/notenoughupdates.mixins.json
index 7c1ec6b..52d30a7 100644
--- a/src/main/resources/notenoughupdates.mixins.json
+++ b/src/main/resources/notenoughupdates.mixins.json
@@ -6,8 +6,7 @@
"MixinClientPlayNetworkHandler",
"MixinMessageHandler",
"MixinMinecraft",
- "MixinWorldRenderer",
- "MixinClientBrandRetriever"
+ "MixinWorldRenderer"
],
"mixins": [
],