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
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
plugins {
id("fabric-loom") version "1.10-SNAPSHOT"
id("fabric-loom") version "1.14-SNAPSHOT"
id("maven-publish")
}

Expand Down
13 changes: 6 additions & 7 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,16 @@ org.gradle.parallel=true

# Fabric Properties
# check these on https://modmuss50.me/fabric.html
minecraft_version=1.21.8
yarn_mappings=1.21.8+build.1
loader_version=0.16.14
minecraft_version=1.21.11
loader_version=0.18.3

# Mod Properties
mod_version=1.7.3
maven_group=net.asodev
archives_base_name=islandutils

# Dependencies
fabric_version=0.130.0+1.21.8
yacl_version=3.7.1+1.21.6-fabric
mod_menu_version=15.0.0-beta.3
noxesium_version=2.7.7
fabric_version=0.140.2+1.21.11
yacl_version=3.8.1+1.21.11-fabric
mod_menu_version=17.0.0-beta.1
noxesium_version=3.0.0
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
7 changes: 4 additions & 3 deletions src/main/java/net/asodev/islandutils/IslandUtilsClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,26 +20,28 @@
import net.fabricmc.api.Environment;
import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper;
import net.minecraft.client.KeyMapping;
import net.minecraft.resources.Identifier;
import org.lwjgl.glfw.GLFW;

@Environment(EnvType.CLIENT)
public class IslandUtilsClient implements ClientModInitializer {
public static KeyMapping openPlobbyKey;
public static KeyMapping disguiseKeyBind;
public static KeyMapping.Category keyCategory = new KeyMapping.Category(Identifier.fromNamespaceAndPath("islandutils", "keys"));

@Override
public void onInitializeClient() {
openPlobbyKey = KeyBindingHelper.registerKeyBinding(new KeyMapping(
"key.islandutils.plobbymenu",
InputConstants.Type.KEYSYM,
GLFW.GLFW_KEY_K,
"category.islandutils.keys"
keyCategory
));
disguiseKeyBind = KeyBindingHelper.registerKeyBinding(new KeyMapping(
"key.islandutils.disguise",
InputConstants.Type.KEYSYM,
GLFW.GLFW_KEY_N,
"category.islandutils.keys"
keyCategory
));
SplitManager.init();
DisguiseKeybind.registerDisguiseInput();
Expand All @@ -51,7 +53,6 @@ public void onInitializeClient() {
if (Utils.isLunarClient()) {
SplitUI.setupFallbackRenderer();
}
new NoxesiumIntegration().init();
MusicManager.init();

IslandUtilsEvents.PACK_FINAL_RESULT.register((uuid, finalResult) -> FontLoaderManager.warnAboutUnfulfilledAssets());
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/net/asodev/islandutils/IslandUtilsEvents.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package net.asodev.islandutils;

import com.noxcrew.noxesium.network.clientbound.ClientboundMccGameStatePacket;
import com.noxcrew.noxesium.core.mcc.ClientboundMccServerPacket;
import net.asodev.islandutils.state.Game;
import net.fabricmc.fabric.api.event.Event;
import net.fabricmc.fabric.api.event.EventFactory;
Expand Down Expand Up @@ -84,7 +84,7 @@ public interface GameUpdateCallback {

@FunctionalInterface
public interface GameStateChange {
void onGameUpdate(ClientboundMccGameStatePacket state);
void onGameUpdate(ClientboundMccServerPacket state);
}

@FunctionalInterface
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
import net.asodev.islandutils.options.IslandOptions;
import net.asodev.islandutils.options.categories.DiscordOptions;
import net.asodev.islandutils.state.Game;
import net.minecraft.client.resources.language.I18n;
import net.asodev.islandutils.state.MccIslandState;
import net.minecraft.client.resources.language.I18n;
import org.jetbrains.annotations.Nullable;

import java.time.Instant;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
package net.asodev.islandutils.discord;

import net.asodev.islandutils.IslandUtilsEvents;
import net.asodev.islandutils.state.Game;
import net.asodev.islandutils.state.MccIslandState;
import net.minecraft.client.resources.language.I18n;

import java.time.Instant;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
Expand Down Expand Up @@ -39,10 +36,10 @@ public static void init() {
public static void updateFishingPlace() {
if (activity == null) return;

String place = islandNames.get(MccIslandState.getSubType());
String place = islandNames.get(MccIslandState.getFishingIsland());
if (place != null) {
activity.setDetails(I18n.get("islandutils.discordPresence.details.inThePlace",place));
activity.assets().setLargeImage(MccIslandState.getSubType().toLowerCase());
activity.assets().setLargeImage(MccIslandState.getFishingIsland());
activity.assets().setLargeText(place);

activity.assets().setSmallImage("fishing");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import net.asodev.islandutils.util.FontUtils;
import net.minecraft.ChatFormatting;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.resources.Identifier;

import java.util.ArrayList;
import java.util.Collections;
Expand Down Expand Up @@ -47,7 +47,7 @@ public static void warnAboutUnfulfilledAssets() {
});
}

public static void tryFulfillAsset(ResourceLocation resourceLocation, String character) {
public static void tryFulfillAsset(Identifier resourceLocation, String character) {
Component component = Component.literal(character).setStyle(FontUtils.MCC_ICONS_STYLE);
String path = resourceLocation.getPath();

Expand Down
6 changes: 1 addition & 5 deletions src/main/java/net/asodev/islandutils/mixins/BossUIMixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,7 @@
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.*;

/**
* We're using a mixin rather than HudRenderCallback because
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/net/asodev/islandutils/mixins/ItemIDMixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
import net.minecraft.core.component.DataComponents;
import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.MutableComponent;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.resources.Identifier;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.inventory.Slot;
import net.minecraft.world.item.Item;
Expand Down Expand Up @@ -42,7 +42,7 @@ public abstract class ItemIDMixin implements DataComponentHolder {
)
private void addTooltipLines(Item.TooltipContext tooltipContext, @Nullable Player player, TooltipFlag tooltipFlag, CallbackInfoReturnable<List<Component>> cir, @Local List<Component> list) {
if (!MccIslandState.isOnline() || !IslandOptions.getMisc().isDebugMode()) return;
if (!InputConstants.isKeyDown(Minecraft.getInstance().getWindow().getWindow(), InputConstants.KEY_LCONTROL))
if (!InputConstants.isKeyDown(Minecraft.getInstance().getWindow(), InputConstants.KEY_LCONTROL))
return;

MutableComponent toAppend = Component.empty();
Expand All @@ -56,7 +56,7 @@ private void addTooltipLines(Item.TooltipContext tooltipContext, @Nullable Playe

@Unique
private void tryAddCustomItemID(MutableComponent toAppend) {
ResourceLocation customItemID = Utils.getCustomItemID((ItemStack) (Object) this);
Identifier customItemID = Utils.getCustomItemID((ItemStack) (Object) this);
if (customItemID == null) return;
toAppend.append(Component.literal(customItemID.toString()).withStyle(ChatFormatting.AQUA));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,20 @@
import net.asodev.islandutils.modules.cosmetics.CosmeticState;
import net.asodev.islandutils.modules.cosmetics.CosmeticType;
import net.asodev.islandutils.options.IslandOptions;
import net.asodev.islandutils.state.Game;
import net.asodev.islandutils.state.MccIslandState;
import net.asodev.islandutils.util.IslandSoundEvents;
import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.screens.Screen;
import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen;
import net.minecraft.client.input.KeyEvent;
import net.minecraft.client.input.MouseButtonEvent;
import net.minecraft.client.player.LocalPlayer;
import net.minecraft.client.renderer.RenderPipelines;
import net.minecraft.client.resources.sounds.SimpleSoundInstance;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.resources.Identifier;
import net.minecraft.world.entity.EquipmentSlot;
import net.minecraft.world.entity.player.Inventory;
import net.minecraft.world.inventory.AbstractContainerMenu;
Expand All @@ -42,7 +43,7 @@

@Mixin(AbstractContainerScreen.class)
public abstract class ChestScreenMixin extends Screen {
@Unique private static final ResourceLocation PREVIEW = ResourceLocation.fromNamespaceAndPath("island", "preview");
@Unique private static final Identifier PREVIEW = Identifier.fromNamespaceAndPath("island", "preview");

@Shadow protected Slot hoveredSlot;

Expand All @@ -60,7 +61,7 @@ private void onInit(AbstractContainerMenu abstractContainerMenu, Inventory inven
}

@Inject(method = "renderSlot", at = @At("TAIL"))
private void renderSlot(GuiGraphics guiGraphics, Slot slot, CallbackInfo ci) {
private void renderSlot(GuiGraphics guiGraphics, Slot slot, int i, int j, CallbackInfo ci) {
if (!CosmeticState.shouldShowCosmeticPreview()) return;
if (!slot.hasItem()) return;

Expand Down Expand Up @@ -112,20 +113,20 @@ private CosmeticType setHovered(ItemStack item) {
}

@Inject(method = "mouseDragged", at = @At("HEAD"))
private void mouseDragged(double mouseX, double mouseY, int button, double deltaX, double deltaY, CallbackInfoReturnable<Boolean> cir) {
private void mouseDragged(MouseButtonEvent mouseButtonEvent, double d, double e, CallbackInfoReturnable<Boolean> cir) {
if (!CosmeticState.shouldShowCosmeticPreview()) return;

CosmeticState.yRot = CosmeticState.yRot - Double.valueOf(deltaX).floatValue();
CosmeticState.xRot = CosmeticState.xRot - Double.valueOf(deltaY).floatValue();
CosmeticState.yRot = CosmeticState.yRot - Double.valueOf(d).floatValue();
CosmeticState.xRot = CosmeticState.xRot - Double.valueOf(e).floatValue();
}

@Inject(method = "keyPressed", at = @At("HEAD"))
private void keyPressed(int keyCode, int scanCode, int modifiers, CallbackInfoReturnable<Boolean> cir) {
triggerPreviewClicked(keyCode);
private void keyPressed(KeyEvent keyEvent, CallbackInfoReturnable<Boolean> cir) {
triggerPreviewClicked(keyEvent.key());
}
@Inject(method = "mouseReleased", at = @At("HEAD"))
private void mouseReleased(double d, double e, int keyCode, CallbackInfoReturnable<Boolean> cir) {
triggerPreviewClicked(keyCode);
private void mouseReleased(MouseButtonEvent mouseButtonEvent, CallbackInfoReturnable<Boolean> cir) {
triggerPreviewClicked(mouseButtonEvent.button());
}

@Inject(method = "slotClicked", at = @At("HEAD"))
Expand Down Expand Up @@ -161,14 +162,14 @@ private void triggerPreviewClicked(int keyCode) {
@Unique
private void setPreview(ItemStack item) {
CosmeticType type = CosmeticState.getType(item);
ResourceLocation hoverCMD = getCustomItemID(item);
Identifier hoverCMD = getCustomItemID(item);
if (type == CosmeticType.HAT) setOrNotSet(CosmeticState.hatSlot, hoverCMD);
else if (type == CosmeticType.ACCESSORY) setOrNotSet(CosmeticState.accessorySlot, hoverCMD);
else if (type == CosmeticType.MAIN_HAND) setOrNotSet(CosmeticState.mainHandSlot, hoverCMD);
}

@Unique
private void setOrNotSet(Cosmetic cosmetic, ResourceLocation itemCMD) {
private void setOrNotSet(Cosmetic cosmetic, Identifier itemCMD) {
if (cosmetic.preview != null && Objects.equals(getCustomItemID(cosmetic.preview.item), itemCMD)) {
cosmetic.preview = null;
} else {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package net.asodev.islandutils.mixins.cosmetics;

import net.asodev.islandutils.modules.cosmetics.CosmeticState;
import net.asodev.islandutils.options.IslandOptions;
import net.asodev.islandutils.state.Game;
import net.asodev.islandutils.state.MccIslandState;
import net.asodev.islandutils.util.ChatUtils;
import net.asodev.islandutils.util.FontUtils;
import net.minecraft.ChatFormatting;
import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.FontDescription;
import net.minecraft.network.chat.Style;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.Item;
Expand All @@ -26,11 +24,11 @@
@Mixin(ItemStack.class)
public class PreviewTutorialMixin {
@Unique
private static final Style style0 = Style.EMPTY.withColor(ChatFormatting.DARK_GRAY).withFont(Style.DEFAULT_FONT);
private static final Style style0 = Style.EMPTY.withColor(ChatFormatting.DARK_GRAY).withFont(FontDescription.DEFAULT);
@Unique
private static final Style style1 = Style.EMPTY.withColor(ChatUtils.parseColor("#e9d282")).withFont(Style.DEFAULT_FONT);
private static final Style style1 = Style.EMPTY.withColor(ChatUtils.parseColor("#e9d282")).withFont(FontDescription.DEFAULT);
@Unique
private static final Style style2 = Style.EMPTY.withColor(ChatUtils.parseColor("#fbe460")).withFont(Style.DEFAULT_FONT);
private static final Style style2 = Style.EMPTY.withColor(ChatUtils.parseColor("#fbe460")).withFont(FontDescription.DEFAULT);

@Unique
private static final Component previewComponent = Component.empty()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@
import net.asodev.islandutils.modules.cosmetics.CosmeticUI;
import net.asodev.islandutils.options.IslandOptions;
import net.asodev.islandutils.options.categories.CosmeticsOptions;
import net.asodev.islandutils.state.Game;
import net.asodev.islandutils.state.MccIslandState;
import net.asodev.islandutils.util.FontUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiGraphics;
Expand All @@ -32,8 +30,8 @@ public UIMixin(ChestMenu abstractContainerMenu, Inventory inventory, Component c
super(abstractContainerMenu, inventory, component);
}

@Inject(method = "renderBg", at = @At("TAIL"))
public void renderBg(GuiGraphics guiGraphics, float f, int i, int j, CallbackInfo ci) {
@Inject(method = "render", at = @At("TAIL"))
public void render(GuiGraphics guiGraphics, int i, int j, float f, CallbackInfo ci) {
if (!CosmeticState.shouldShowCosmeticPreview()) return;

CosmeticsOptions options = IslandOptions.getCosmetics();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
import net.asodev.islandutils.modules.crafting.CraftingMenuType;
import net.asodev.islandutils.modules.crafting.CraftingUI;
import net.asodev.islandutils.state.MccIslandState;
import net.asodev.islandutils.util.ChatUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screens.inventory.ContainerScreen;
import net.minecraft.network.chat.Component;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
public class RemnantHighlightMixin {

@Inject(method = "renderSlot", at = @At("HEAD"))
private void renderSlot(GuiGraphics guiGraphics, Slot slot, CallbackInfo ci) {
private void renderSlot(GuiGraphics guiGraphics, Slot slot, int i, int j, CallbackInfo ci) {
if (!MccIslandState.isOnline()) return;
if (!slot.hasItem()) return;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package net.asodev.islandutils.mixins.discord;

import net.minecraft.client.Minecraft;
import net.minecraft.client.multiplayer.ClientHandshakePacketListenerImpl;
import net.minecraft.client.multiplayer.ServerData;
import net.minecraft.network.protocol.login.ClientboundLoginFinishedPacket;
Expand All @@ -16,14 +17,19 @@

@Mixin(ClientHandshakePacketListenerImpl.class)
public class JoinMCCIMixin {
@Shadow @Final private @Nullable ServerData serverData;
@Shadow
@Final
private @Nullable ServerData serverData;

@Shadow
@Final
private Minecraft minecraft;

@Inject(method = "handleLoginFinished", at = @At("HEAD"))
private void handleGameProfile(ClientboundLoginFinishedPacket clientboundLoginFinishedPacket, CallbackInfo ci) {
if (this.serverData == null) return;
if (!this.serverData.ip.toLowerCase().contains("mccisland")) return;

onJoinMCCI(isProdMCCI(this.serverData.ip.toLowerCase()));
minecraft.execute(() -> onJoinMCCI(isProdMCCI(this.serverData.ip.toLowerCase())));
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import net.asodev.islandutils.fontloader.FontLoaderManager;
import net.minecraft.client.gui.font.providers.BitmapProvider;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.resources.Identifier;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
Expand All @@ -12,7 +12,7 @@
public class FontLoaderMixin {

@Inject(method = "<init>", at = @At("TAIL"))
private void init(ResourceLocation resourceLocation, int i, int j, int[][] chars, CallbackInfo ci) {
private void init(Identifier resourceLocation, int i, int j, int[][] chars, CallbackInfo ci) {
if (chars.length == 1) {
int[] c = chars[0];

Expand Down
Loading
Loading