Skip to content

Commit b0f5fe4

Browse files
committed
refactor: Fix nullability problems
1 parent 805a61f commit b0f5fe4

11 files changed

Lines changed: 33 additions & 38 deletions

File tree

common/src/main/java/net/blay09/mods/netherportalfix/ReturnPortal.java

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,5 @@
44

55
import java.util.UUID;
66

7-
public class ReturnPortal {
8-
private final UUID uid;
9-
private final BlockPos pos;
10-
11-
public ReturnPortal(UUID uid, BlockPos pos) {
12-
this.uid = uid;
13-
this.pos = pos;
14-
}
15-
16-
public UUID getUid() {
17-
return uid;
18-
}
19-
20-
public BlockPos getPos() {
21-
return pos;
22-
}
7+
public record ReturnPortal(UUID uid, BlockPos pos) {
238
}

common/src/main/java/net/blay09/mods/netherportalfix/ReturnPortalManager.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public class ReturnPortalManager {
2929
private static final String FROM_POS = "FromPos";
3030
private static final String TO_POS = "ToPos";
3131

32-
public static BlockPos findPortalAt(Player player, ResourceKey<Level> dim, BlockPos pos) {
32+
public static @Nullable BlockPos findPortalAt(Player player, ResourceKey<Level> dim, BlockPos pos) {
3333
MinecraftServer server = player.level().getServer();
3434
if (server != null) {
3535
ServerLevel fromWorld = server.getLevel(dim);
@@ -94,7 +94,7 @@ public static void removeReturnPortal(ServerPlayer player, ReturnPortal portal)
9494
for (int i = 0; i < portalList.size(); i++) {
9595
CompoundTag entry = (CompoundTag) portalList.get(i);
9696

97-
if (entry.read(RETURN_PORTAL_UID, UUIDUtil.CODEC).map(it -> it.equals(portal.getUid())).orElse(false)) {
97+
if (entry.read(RETURN_PORTAL_UID, UUIDUtil.CODEC).map(it -> it.equals(portal.uid())).orElse(false)) {
9898
portalList.remove(i);
9999
break;
100100
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
package net.blay09.mods.netherportalfix.mixin;
22

33
import net.minecraft.core.BlockPos;
4-
import net.minecraft.world.entity.Entity;
54
import net.minecraft.world.entity.LivingEntity;
5+
import org.jspecify.annotations.Nullable;
66
import org.spongepowered.asm.mixin.Mixin;
77
import org.spongepowered.asm.mixin.gen.Accessor;
88

99
@Mixin(LivingEntity.class)
1010
public interface LivingEntityAccessor {
1111

1212
@Accessor
13-
BlockPos getLastPos();
13+
@Nullable BlockPos getLastPos();
1414
}

common/src/main/java/net/blay09/mods/netherportalfix/mixin/NetherPortalBlockMixin.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
@Mixin(NetherPortalBlock.class)
2020
public class NetherPortalBlockMixin {
2121

22+
@SuppressWarnings("OptionalUsedAsFieldOrParameterType")
2223
@ModifyExpressionValue(method = "getExitPortal(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/border/WorldBorder;)Lnet/minecraft/world/level/portal/TeleportTransition;", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/portal/PortalForcer;findClosestPortalPosition(Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/border/WorldBorder;)Ljava/util/Optional;"))
2324
public Optional<BlockPos> getExitPortal(Optional<BlockPos> original, ServerLevel level, Entity entity) {
2425
final var fromPos = entity.blockPosition();
@@ -31,15 +32,15 @@ public Optional<BlockPos> getExitPortal(Optional<BlockPos> original, ServerLevel
3132
return original;
3233
}
3334

34-
if (!level.getBlockState(returnPortal.getPos()).is(Blocks.NETHER_PORTAL)) {
35+
if (!level.getBlockState(returnPortal.pos()).is(Blocks.NETHER_PORTAL)) {
3536
if (entity instanceof ServerPlayer) {
3637
NetherPortalFix.logger.info("Return portal is no longer valid");
3738
}
3839
return original;
3940
}
4041

4142
NetherPortalFix.logger.debug("Return portal found, redirecting! :)");
42-
return Optional.of(returnPortal.getPos());
43+
return Optional.of(returnPortal.pos());
4344
}
4445

4546
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
@NullMarked
2+
package net.blay09.mods.netherportalfix.fabric.mixin;
3+
4+
import org.jspecify.annotations.NullMarked;

fabric/src/main/resources/fabric.mod.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"schemaVersion": 1,
3-
"id": "${mod_id}",
3+
"id": "netherportalfix",
44
"version": "${version}",
55

66
"name": "${mod_name}",
@@ -15,7 +15,7 @@
1515
},
1616

1717
"license": "${license}",
18-
"icon": "${mod_id}.png",
18+
"icon": "netherportalfix.png",
1919

2020
"environment": "*",
2121
"entrypoints": {

forge/src/main/resources/META-INF/mods.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,27 @@ loaderVersion="*"
33
license="${license}"
44
issueTrackerURL="${issues}"
55
[[mods]]
6-
modId="${mod_id}"
6+
modId="netherportalfix"
77
version="${version}"
88
displayName="${mod_name}"
99
displayURL="${homepage}"
10-
logoFile="${mod_id}.png"
10+
logoFile="netherportalfix.png"
1111
credits="BlayTheNinth"
1212
authors="BlayTheNinth"
1313
description='''${description}'''
14-
[[dependencies.${mod_id}]]
14+
[[dependencies.netherportalfix]]
1515
modId="forge"
1616
mandatory=true
1717
versionRange="[${forge_version},)"
1818
ordering="NONE"
1919
side="BOTH"
20-
[[dependencies.${mod_id}]]
20+
[[dependencies.netherportalfix]]
2121
modId="minecraft"
2222
mandatory=true
2323
versionRange="[${minecraft_version},)"
2424
ordering="NONE"
2525
side="BOTH"
26-
[[dependencies.${mod_id}]]
26+
[[dependencies.netherportalfix]]
2727
modId="balm"
2828
mandatory=true
2929
versionRange="[${balm_version},)"

neoforge/src/main/java/net/blay09/mods/netherportalfix/NeoForgeNetherPortalFix.java renamed to neoforge/src/main/java/net/blay09/mods/netherportalfix/neoforge/NeoForgeNetherPortalFix.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
package net.blay09.mods.netherportalfix;
1+
package net.blay09.mods.netherportalfix.neoforge;
22

33
import net.blay09.mods.balm.Balm;
44
import net.blay09.mods.balm.neoforge.platform.runtime.NeoForgeLoadContext;
5+
import net.blay09.mods.netherportalfix.NetherPortalFix;
56
import net.neoforged.bus.api.IEventBus;
67
import net.neoforged.fml.ModContainer;
78
import net.neoforged.fml.common.Mod;
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
@NullMarked
2+
package net.blay09.mods.netherportalfix.neoforge.mixin;
3+
4+
import org.jspecify.annotations.NullMarked;

neoforge/src/main/java/net/blay09/mods/netherportalfix/package-info.java renamed to neoforge/src/main/java/net/blay09/mods/netherportalfix/neoforge/package-info.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
@NullMarked
2-
package net.blay09.mods.netherportalfix;
2+
package net.blay09.mods.netherportalfix.neoforge;
33

44
import org.jspecify.annotations.NullMarked;

0 commit comments

Comments
 (0)