diff --git a/Common/build.gradle b/Common/build.gradle index 2ecc69c..2015d82 100644 --- a/Common/build.gradle +++ b/Common/build.gradle @@ -38,7 +38,7 @@ shadowJar { relocate 'me.hypherionmc.moonconfig', 'shadow.hypherionmc.moonconfig' } - classifier '' + setArchiveClassifier('') } build.dependsOn shadowJar diff --git a/Common/src/main/java/com/hypherionmc/craterlib/client/gui/config/CraterConfigScreen.java b/Common/src/main/java/com/hypherionmc/craterlib/client/gui/config/CraterConfigScreen.java index be45b54..3d26274 100644 --- a/Common/src/main/java/com/hypherionmc/craterlib/client/gui/config/CraterConfigScreen.java +++ b/Common/src/main/java/com/hypherionmc/craterlib/client/gui/config/CraterConfigScreen.java @@ -335,12 +335,12 @@ public class CraterConfigScreen extends Screen { } @Override - public boolean mouseScrolled(double d, double e, double f) { + public boolean mouseScrolled(double d, double e, double f, double g) { if (e >= TOP && e <= height - BOTTOM) { scrollerAmount = Mth.clamp(scrollerAmount - f * 16.0D, 0, scrollHeight()); return true; } - return super.mouseScrolled(d, e, f); + return super.mouseScrolled(d, e, f, g); } @Override diff --git a/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/PlayerAdvancementsMixin.java b/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/PlayerAdvancementsMixin.java index 05cb37f..fdeeeec 100644 --- a/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/PlayerAdvancementsMixin.java +++ b/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/PlayerAdvancementsMixin.java @@ -3,6 +3,7 @@ package com.hypherionmc.craterlib.mixin.events; import com.hypherionmc.craterlib.api.event.server.CraterAdvancementEvent; import com.hypherionmc.craterlib.core.event.CraterEventBus; import net.minecraft.advancements.Advancement; +import net.minecraft.advancements.AdvancementHolder; import net.minecraft.server.PlayerAdvancements; import net.minecraft.server.level.ServerPlayer; import org.spongepowered.asm.mixin.Mixin; @@ -17,10 +18,12 @@ public class PlayerAdvancementsMixin { @Shadow private ServerPlayer player; @Inject(method = "award", at = @At(value = "INVOKE", target = "Lnet/minecraft/advancements/AdvancementRewards;grant(Lnet/minecraft/server/level/ServerPlayer;)V", shift = At.Shift.AFTER)) - private void injectAdvancementEvent(Advancement advancement, String $$1, CallbackInfoReturnable cir) { - CraterAdvancementEvent event = new CraterAdvancementEvent(this.player, advancement); + private void injectAdvancementEvent(AdvancementHolder advancementHolder, String string, CallbackInfoReturnable cir) { + CraterAdvancementEvent event = new CraterAdvancementEvent(this.player, advancementHolder.value()); - if (advancement.getDisplay() != null && advancement.getDisplay().shouldAnnounceChat()) { + Advancement advancement = advancementHolder.value(); + + if (advancement.display().isPresent() && advancement.display().get().shouldAnnounceChat()) { CraterEventBus.INSTANCE.postEvent(event); } } diff --git a/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/PlayerListMixin.java b/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/PlayerListMixin.java index 793a2fc..851ba8b 100644 --- a/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/PlayerListMixin.java +++ b/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/PlayerListMixin.java @@ -8,6 +8,7 @@ import com.mojang.authlib.GameProfile; import net.minecraft.network.Connection; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.network.CommonListenerCookie; import net.minecraft.server.players.PlayerList; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; @@ -28,7 +29,7 @@ public class PlayerListMixin { } @Inject(method = "placeNewPlayer", at = @At("TAIL")) - private void injectPlayerLoginEvent(Connection connection, ServerPlayer serverPlayer, CallbackInfo ci) { + private void injectPlayerLoginEvent(Connection connection, ServerPlayer serverPlayer, CommonListenerCookie commonListenerCookie, CallbackInfo ci) { CraterPlayerEvent.PlayerLoggedIn loggedIn = new CraterPlayerEvent.PlayerLoggedIn(serverPlayer); CraterEventBus.INSTANCE.postEvent(loggedIn); } diff --git a/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/client/ClientLevelMixin.java b/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/client/ClientLevelMixin.java index 0e9a461..83c016d 100644 --- a/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/client/ClientLevelMixin.java +++ b/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/client/ClientLevelMixin.java @@ -4,6 +4,8 @@ import com.hypherionmc.craterlib.api.event.client.CraterSinglePlayerEvent; import com.hypherionmc.craterlib.core.event.CraterEventBus; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.player.AbstractClientPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; @@ -12,10 +14,12 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; @Mixin(ClientLevel.class) public class ClientLevelMixin { - @Inject(method = "addPlayer", at = @At("HEAD")) - private void injectSinglePlayerJoinEvent(int $$0, AbstractClientPlayer player, CallbackInfo ci) { - CraterSinglePlayerEvent.PlayerLogin playerLogin = new CraterSinglePlayerEvent.PlayerLogin(player); - CraterEventBus.INSTANCE.postEvent(playerLogin); + @Inject(method = "addEntity", at = @At("HEAD")) + private void injectSinglePlayerJoinEvent(Entity entity, CallbackInfo ci) { + if (entity instanceof Player player) { + CraterSinglePlayerEvent.PlayerLogin playerLogin = new CraterSinglePlayerEvent.PlayerLogin(player); + CraterEventBus.INSTANCE.postEvent(playerLogin); + } } } diff --git a/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/client/RealmsMainScreenMixin.java b/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/client/RealmsMainScreenMixin.java index ae814ef..9c3b3e0 100644 --- a/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/client/RealmsMainScreenMixin.java +++ b/Common/src/main/java/com/hypherionmc/craterlib/mixin/events/client/RealmsMainScreenMixin.java @@ -14,7 +14,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; public class RealmsMainScreenMixin { @Inject(at = @At("HEAD"), method = "play") - private void play(RealmsServer serverData, Screen parent, CallbackInfo ci) { + private static void play(RealmsServer serverData, Screen parent, CallbackInfo ci) { PlayerJoinRealmEvent playerJoinRealm = new PlayerJoinRealmEvent(serverData); CraterEventBus.INSTANCE.postEvent(playerJoinRealm); } diff --git a/Common/src/main/resources/pack.mcmeta b/Common/src/main/resources/pack.mcmeta index 41b63a1..263d366 100644 --- a/Common/src/main/resources/pack.mcmeta +++ b/Common/src/main/resources/pack.mcmeta @@ -1,6 +1,6 @@ { "pack": { "description": "${mod_name}", - "pack_format": 8 + "pack_format": 18 } } diff --git a/Fabric/src/main/resources/fabric.mod.json b/Fabric/src/main/resources/fabric.mod.json index e102407..4c3972b 100644 --- a/Fabric/src/main/resources/fabric.mod.json +++ b/Fabric/src/main/resources/fabric.mod.json @@ -34,7 +34,7 @@ "depends": { "fabricloader": ">=0.14.21", "fabric-api": "*", - "minecraft": ">=1.20", + "minecraft": ">=1.20.2", "java": ">=17" } } diff --git a/build.gradle b/build.gradle index ecc0452..7818c0a 100644 --- a/build.gradle +++ b/build.gradle @@ -9,7 +9,7 @@ registrationUtils { projects { Common { type 'common'; project ':Common' } Fabric { type 'fabric'; project ':Fabric' } - Forge { type 'forge'; project ':Forge' } + //Forge { type 'forge'; project ':Forge' } } } @@ -94,7 +94,7 @@ task rpcJar(type: Jar) { includeEmptyDirs = false archivesBaseName = "${mod_name}-modules" version = final_ver; - classifier = "rpc" + setArchiveClassifier("rpc") from project(":Common").sourceSets.main.output } @@ -104,7 +104,7 @@ task configJar(type: Jar) { includeEmptyDirs = false archivesBaseName = "${mod_name}-modules" version = final_ver; - classifier = "config" + setArchiveClassifier("config") from project(":Common").sourceSets.main.output include("**\\core\\config\\**\\*", "**\\**\\CraterConstants.*") @@ -115,7 +115,7 @@ task eventsJar(type: Jar) { includeEmptyDirs = false archivesBaseName = "${mod_name}-modules" version = final_ver; - classifier = "events" + setArchiveClassifier("events") from project(":Common").sourceSets.main.output include("**\\core\\event\\**\\*", "**\\**\\CraterConstants.*") diff --git a/gradle.properties b/gradle.properties index a94e14e..6e3c935 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,7 +5,7 @@ version_patch=2 group=com.hypherionmc.craterlib # Common -minecraft_version=1.20 +minecraft_version=1.20.2 common_runs_enabled=false common_client_run_name=Common Client common_server_run_name=Common Server @@ -15,8 +15,8 @@ forge_version=46.0.1 forge_ats_enabled=true # Fabric -fabric_version=0.83.0+1.20 -fabric_loader_version=0.14.21 +fabric_version=0.89.0+1.20.2 +fabric_loader_version=0.14.22 # Mod options mod_name=CraterLib diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index e750102..59bc51a 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/settings.gradle b/settings.gradle index 9664f24..3d51941 100644 --- a/settings.gradle +++ b/settings.gradle @@ -11,4 +11,4 @@ pluginManagement { } rootProject.name = 'CraterLib' -include("Common", "Fabric", "Forge") +include("Common", "Fabric"/*, "Forge"*/)