Skip to content

Commit

Permalink
Update to NeoForge 1.20.5
Browse files Browse the repository at this point in the history
  • Loading branch information
MattCzyr committed May 11, 2024
1 parent f0c4d56 commit c58577a
Show file tree
Hide file tree
Showing 20 changed files with 173 additions and 140 deletions.
8 changes: 4 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ plugins {
id 'eclipse'
id 'idea'
id 'maven-publish'
id 'net.neoforged.gradle.userdev' version '7.0.97'
id 'net.neoforged.gradle.userdev' version '7.0.109'
}

version = mod_version
Expand All @@ -17,8 +17,8 @@ base {
archivesName = mod_id
}

// Mojang ships Java 17 to end users in 1.18+, so your mod should target Java 17.
java.toolchain.languageVersion = JavaLanguageVersion.of(17)
// Mojang ships Java 21 to end users starting in 1.20.5, so mods should target Java 21.
java.toolchain.languageVersion = JavaLanguageVersion.of(21)

//minecraft.accessTransformers.file rootProject.file('src/main/resources/META-INF/accesstransformer.cfg')
//minecraft.accessTransformers.entry public net.minecraft.client.Minecraft textureManager # textureManager
Expand Down Expand Up @@ -132,7 +132,7 @@ tasks.withType(ProcessResources).configureEach {
]
inputs.properties replaceProperties

filesMatching(['META-INF/mods.toml']) {
filesMatching(['META-INF/neoforge.mods.toml']) {
expand replaceProperties
}
}
Expand Down
14 changes: 7 additions & 7 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,20 @@ org.gradle.debug=false

#read more on this at https://github.com/neoforged/NeoGradle/blob/NG_7.0/README.md#apply-parchment-mappings
# you can also find the latest versions at: https://parchmentmc.org/docs/getting-started
neogradle.subsystems.parchment.minecraftVersion=1.20.3
neogradle.subsystems.parchment.mappingsVersion=2023.12.31
neogradle.subsystems.parchment.minecraftVersion=1.20.4
neogradle.subsystems.parchment.mappingsVersion=2024.04.14
# Environment Properties
# You can find the latest versions here: https://projects.neoforged.net/neoforged/neoforge
# The Minecraft version must agree with the Neo version to get a valid artifact
minecraft_version=1.20.4
minecraft_version=1.20.5
# The Minecraft version range can use any release version of Minecraft as bounds.
# Snapshots, pre-releases, and release candidates are not guaranteed to sort properly
# as they do not follow standard versioning conventions.
minecraft_version_range=[1.20.4,1.21)
minecraft_version_range=[1.20.5,1.21)
# The Neo version must agree with the Minecraft version to get a valid artifact
neo_version=20.4.147-beta
neo_version=20.5.17-beta
# The Neo version range can use any version of Neo as bounds
neo_version_range=[20.4,)
neo_version_range=[20.5,)
# The loader version range can only use the major version of FML as bounds
loader_version_range=[2,)

Expand All @@ -32,7 +32,7 @@ mod_name=Nature's Compass
# The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default.
mod_license=CC BY-NC-SA 4.0
# The mod version. See https://semver.org/
mod_version=1.20.4-3.0.0-neoforge
mod_version=1.20.5-3.0.1-neoforge
# The group ID for the mod. It is only important when publishing as an artifact to a Maven repository.
# This should match the base package used for the mod sources.
# See https://maven.apache.org/guides/mini/guide-naming-conventions.html
Expand Down
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.6-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
25 changes: 18 additions & 7 deletions src/main/java/com/chaosthedude/naturescompass/NaturesCompass.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,10 @@
import com.chaosthedude.naturescompass.network.TeleportPacket;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.ListMultimap;
import com.mojang.serialization.Codec;

import net.minecraft.core.component.DataComponentType;
import net.minecraft.network.codec.ByteBufCodecs;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.CreativeModeTabs;
import net.minecraft.world.item.ItemStack;
Expand All @@ -26,8 +29,8 @@
import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
import net.neoforged.neoforge.common.NeoForge;
import net.neoforged.neoforge.event.BuildCreativeModeTabContentsEvent;
import net.neoforged.neoforge.network.event.RegisterPayloadHandlerEvent;
import net.neoforged.neoforge.network.registration.IPayloadRegistrar;
import net.neoforged.neoforge.network.event.RegisterPayloadHandlersEvent;
import net.neoforged.neoforge.network.registration.PayloadRegistrar;
import net.neoforged.neoforge.server.permission.events.PermissionGatherEvent;
import net.neoforged.neoforge.server.permission.nodes.PermissionNode;
import net.neoforged.neoforge.server.permission.nodes.PermissionTypes;
Expand All @@ -43,6 +46,14 @@ public class NaturesCompass {

public static NaturesCompassItem naturesCompass;

public static final DataComponentType<String> BIOME_ID = DataComponentType.<String>builder().persistent(Codec.STRING).networkSynchronized(ByteBufCodecs.STRING_UTF8).build();
public static final DataComponentType<Integer> COMPASS_STATE = DataComponentType.<Integer>builder().persistent(Codec.INT).networkSynchronized(ByteBufCodecs.VAR_INT).build();
public static final DataComponentType<Integer> FOUND_X = DataComponentType.<Integer>builder().persistent(Codec.INT).networkSynchronized(ByteBufCodecs.VAR_INT).build();
public static final DataComponentType<Integer> FOUND_Z = DataComponentType.<Integer>builder().persistent(Codec.INT).networkSynchronized(ByteBufCodecs.VAR_INT).build();
public static final DataComponentType<Integer> SEARCH_RADIUS = DataComponentType.<Integer>builder().persistent(Codec.INT).networkSynchronized(ByteBufCodecs.VAR_INT).build();
public static final DataComponentType<Integer> SAMPLES = DataComponentType.<Integer>builder().persistent(Codec.INT).networkSynchronized(ByteBufCodecs.VAR_INT).build();
public static final DataComponentType<Boolean> DISPLAY_COORDS = DataComponentType.<Boolean>builder().persistent(Codec.BOOL).networkSynchronized(ByteBufCodecs.BOOL).build();

public static boolean canTeleport;
public static List<ResourceLocation> allowedBiomes;
public static ListMultimap<ResourceLocation, ResourceLocation> dimensionKeysForAllowedBiomeKeys;
Expand Down Expand Up @@ -73,11 +84,11 @@ private void buildCreativeTabContents(BuildCreativeModeTabContentsEvent event) {
}
}

private void registerPayloads(RegisterPayloadHandlerEvent event) {
final IPayloadRegistrar registrar = event.registrar(MODID);
registrar.play(SearchPacket.ID, SearchPacket::read, handler -> handler.server(SearchPacket::handle));
registrar.play(TeleportPacket.ID, TeleportPacket::read, handler -> handler.server(TeleportPacket::handle));
registrar.play(SyncPacket.ID, SyncPacket::read, handler -> handler.client(SyncPacket::handle));
private void registerPayloads(RegisterPayloadHandlersEvent event) {
final PayloadRegistrar registrar = event.registrar(MODID);
registrar.playToServer(SearchPacket.TYPE, SearchPacket.CODEC, SearchPacket::handle);
registrar.playToServer(TeleportPacket.TYPE, TeleportPacket.CODEC, TeleportPacket::handle);
registrar.playToClient(SyncPacket.TYPE, SyncPacket.CODEC, SyncPacket::handle);
}

@SubscribeEvent
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@
import net.neoforged.api.distmarker.Dist;
import net.neoforged.api.distmarker.OnlyIn;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.Mod;
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
import net.neoforged.neoforge.client.event.RegisterGuiOverlaysEvent;
import net.neoforged.neoforge.client.gui.overlay.VanillaGuiOverlay;
import net.neoforged.neoforge.client.event.RegisterGuiLayersEvent;
import net.neoforged.neoforge.client.gui.VanillaGuiLayers;

@Mod.EventBusSubscriber(modid = NaturesCompass.MODID, bus = Mod.EventBusSubscriber.Bus.MOD, value = Dist.CLIENT)
@EventBusSubscriber(modid = NaturesCompass.MODID, bus = EventBusSubscriber.Bus.MOD, value = Dist.CLIENT)
public class NaturesCompassClient {

@SubscribeEvent
Expand Down Expand Up @@ -103,8 +103,8 @@ private double getAngle(ClientLevel world, Entity entity, ItemStack stack) {
}

@SubscribeEvent
public static void registerOverlay(RegisterGuiOverlaysEvent event) {
event.registerAbove(VanillaGuiOverlay.BOSS_EVENT_PROGRESS.id(), new ResourceLocation(NaturesCompass.MODID, "natures_compass"), new NaturesCompassOverlay());
public static void registerOverlay(RegisterGuiLayersEvent event) {
event.registerAbove(VanillaGuiLayers.BOSS_OVERLAY, new ResourceLocation(NaturesCompass.MODID, "natures_compass"), new NaturesCompassOverlay());
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -9,22 +9,21 @@

import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.LayeredDraw;
import net.minecraft.client.gui.screens.ChatScreen;
import net.minecraft.client.resources.language.I18n;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.api.distmarker.OnlyIn;
import net.neoforged.neoforge.client.gui.overlay.ExtendedGui;
import net.neoforged.neoforge.client.gui.overlay.IGuiOverlay;

@OnlyIn(Dist.CLIENT)
public class NaturesCompassOverlay implements IGuiOverlay {
public class NaturesCompassOverlay implements LayeredDraw.Layer {

public static final Minecraft mc = Minecraft.getInstance();

@Override
public void render(ExtendedGui gui, GuiGraphics guiGraphics, float partialTick, int screenWidth, int screenHeight) {
public void render(GuiGraphics guiGraphics, float partialTick) {
if (mc.player != null && mc.level != null && !mc.options.hideGui && !mc.getDebugOverlay().showDebugScreen() && (mc.screen == null || (ConfigHandler.CLIENT.displayWithChatOpen.get() && mc.screen instanceof ChatScreen))) {
final Player player = mc.player;
final ItemStack stack = ItemUtils.getHeldNatureCompass(player);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@ public void init() {

@Override
public void render(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTicks) {
super.render(guiGraphics, mouseX, mouseY, partialTicks);

guiGraphics.drawString(font, Component.literal(BiomeUtils.getBiomeNameForDisplay(parentScreen.level, biome)), (width / 2) - (font.width(BiomeUtils.getBiomeNameForDisplay(parentScreen.level, biome)) / 2), 20, 0xffffff);

guiGraphics.drawString(font, Component.translatable("string.naturescompass.source"), width / 2 - 100, 40, 0xffffff);
Expand All @@ -87,8 +89,6 @@ public void render(GuiGraphics guiGraphics, int mouseX, int mouseY, float partia

//guiGraphics.drawString(font, Component.translatable("string.naturescompass.highHumidity"), width / 2 + 40, 100, 0xffffff);
//guiGraphics.drawString(font, Component.literal(highHumidity), width / 2 + 40, 110, 0x808080);

super.render(guiGraphics, mouseX, mouseY, partialTicks);
}

private void setupWidgets() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,9 @@ protected boolean isSelectedItem(int slotIndex) {

@Override
public void renderWidget(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTicks) {
renderList(guiGraphics, mouseX, mouseY, partialTicks);
}

@Override
protected void renderList(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTicks) {
guiGraphics.fill(getRowLeft() - 4, getY(), getRowLeft() + getRowWidth() + 4, getY() + getHeight() + 4, 255 / 2 << 24);

enableScissor(guiGraphics);
for (int i = 0; i < getItemCount(); ++i) {
int top = getRowTop(i);
int bottom = getRowBottom(i);
Expand All @@ -55,6 +53,7 @@ protected void renderList(GuiGraphics guiGraphics, int mouseX, int mouseY, float
entry.render(guiGraphics, i, top, getRowLeft(), getRowWidth(), itemHeight - 4, mouseX, mouseY, isMouseOver((double) mouseX, (double) mouseY) && Objects.equals(getEntryAtPosition((double) mouseX, (double) mouseY), entry), partialTicks);
}
}
guiGraphics.disableScissor();

if (getMaxScroll() > 0) {
int left = getScrollbarPosition();
Expand All @@ -70,7 +69,13 @@ protected void renderList(GuiGraphics guiGraphics, int mouseX, int mouseY, float
guiGraphics.fill(left, top, right, top + height, (int) (1.9F * 255.0F) / 2 << 24);
}
}

@Override
protected void enableScissor(GuiGraphics guiGraphics) {
guiGraphics.enableScissor(getX(), getY(), getRight(), getBottom());
}

@Override
protected int getRowBottom(int itemIndex) {
return getRowTop(itemIndex) + itemHeight;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
import net.minecraft.client.gui.screens.Screen;
import net.minecraft.client.resources.language.I18n;
import net.minecraft.network.chat.Component;
import net.minecraft.network.protocol.common.ServerboundCustomPayloadPacket;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
Expand Down Expand Up @@ -86,8 +85,8 @@ public void tick() {

@Override
public void render(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTicks) {
guiGraphics.drawCenteredString(font, I18n.get("string.naturescompass.selectBiome"), 65, 15, 0xffffff);
super.render(guiGraphics, mouseX, mouseY, partialTicks);
guiGraphics.drawCenteredString(font, I18n.get("string.naturescompass.selectBiome"), 65, 15, 0xffffff);
}

@Override
Expand Down Expand Up @@ -117,13 +116,13 @@ public void selectBiome(BiomeSearchEntry entry) {

public void searchForBiome(Biome biome) {
if (BiomeUtils.getKeyForBiome(level, biome).isPresent()) {
PacketDistributor.SERVER.noArg().send(new SearchPacket(BiomeUtils.getKeyForBiome(level, biome).get(), player.blockPosition()));
PacketDistributor.sendToServer(new SearchPacket(BiomeUtils.getKeyForBiome(level, biome).get(), player.blockPosition()));
}
minecraft.setScreen(null);
}

public void teleport() {
PacketDistributor.SERVER.noArg().send(new TeleportPacket());
PacketDistributor.sendToServer(new TeleportPacket());
minecraft.setScreen(null);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,7 @@ public TransparentTextField(Font font, int x, int y, int width, int height, Comp
public void renderWidget(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTicks) {
if (isVisible()) {
if (pseudoEnableBackgroundDrawing) {
final int color = (int) (255.0F * 0.55f);
guiGraphics.fill(getX(), getY(), getX() + width, getY() + height, color / 2 << 24);
guiGraphics.fill(getX(), getY(), getX() + width, getY() + height, 255 / 2 << 24);
}
boolean showLabel = !isFocused() && getValue().isEmpty();
int i = showLabel ? labelColor : (pseudoIsEnabled ? pseudoEnabledColor : pseudoDisabledColor);
Expand Down
Loading

0 comments on commit c58577a

Please sign in to comment.