BG-Software-LLC / SuperiorSkyblock2

Optimized, feature packed Skyblock core.
https://bg-software.com/superiorskyblock/
GNU General Public License v3.0
159 stars 134 forks source link

Using Nether or End portals outside island worlds throws exception #1887

Closed EditChris closed 9 months ago

EditChris commented 9 months ago

Minecraft's Version

Paper 1.20.1 Build 196

Plugin's Version

Build 96

Describe the bug

When you go into a Nether or End portal that are from a different world from the ones where the islands are generated, the console throws this:

[18:26:28 ERROR]: Could not pass event PlayerPortalEvent to SuperiorSkyblock2 v2023.2-b96 java.lang.NullPointerException: island parameter cannot be null. at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:907) ~[guava-31.1-jre.jar:?] at com.bgsoftware.superiorskyblock.island.GridManagerImpl.getIslandsWorld(GridManagerImpl.java:553) ~[SuperiorSkyblock2-2023.2-b96.jar:?] at com.bgsoftware.superiorskyblock.service.portals.PortalsManagerServiceImpl.simulateEntityPortalFromIsland(PortalsManagerServiceImpl.java:163) ~[SuperiorSkyblock2-2023.2-b96.jar:?] at com.bgsoftware.superiorskyblock.service.portals.PortalsManagerServiceImpl.simulateEntityPortal(PortalsManagerServiceImpl.java:139) ~[SuperiorSkyblock2-2023.2-b96.jar:?] at com.bgsoftware.superiorskyblock.service.portals.PortalsManagerServiceImpl.lambda$handlePlayerPortal$0(PortalsManagerServiceImpl.java:80) ~[SuperiorSkyblock2-2023.2-b96.jar:?] at com.bgsoftware.superiorskyblock.service.portals.PortalsManagerServiceImpl.handlePlayerPortalInternal(PortalsManagerServiceImpl.java:111) ~[SuperiorSkyblock2-2023.2-b96.jar:?] at com.bgsoftware.superiorskyblock.service.portals.PortalsManagerServiceImpl.handlePlayerPortal(PortalsManagerServiceImpl.java:79) ~[SuperiorSkyblock2-2023.2-b96.jar:?] at com.bgsoftware.superiorskyblock.listener.PortalsListener.onPlayerPortal(PortalsListener.java:52) ~[SuperiorSkyblock2-2023.2-b96.jar:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor295.execute(Unknown Source) ~[?:?] at org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:77) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:81) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:git-Paper-196] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[paper-1.20.1.jar:git-Paper-196] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[paper-1.20.1.jar:git-Paper-196] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:615) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] at net.minecraft.server.level.ServerPlayer.callPortalEvent(ServerPlayer.java:1289) ~[?:?] at net.minecraft.world.entity.Entity.findDimensionEntryPoint(Entity.java:3673) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.level.ServerPlayer.findDimensionEntryPoint(ServerPlayer.java:1153) ~[?:?] at net.minecraft.server.level.ServerPlayer.changeDimension(ServerPlayer.java:1206) ~[?:?] at net.minecraft.world.entity.Entity.tickEndPortal(Entity.java:558) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.world.entity.Entity.handleNetherPortal(Entity.java:3066) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.world.entity.Entity.baseTick(Entity.java:828) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.world.entity.LivingEntity.baseTick(LivingEntity.java:407) ~[?:?] at net.minecraft.world.entity.Entity.tick(Entity.java:801) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.world.entity.LivingEntity.tick(LivingEntity.java:2965) ~[?:?] at net.minecraft.world.entity.player.Player.tick(Player.java:276) ~[?:?] at net.minecraft.server.level.ServerPlayer.doTick(ServerPlayer.java:759) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.tick(ServerGamePacketListenerImpl.java:361) ~[?:?] at net.minecraft.network.Connection.tick(Connection.java:602) ~[?:?] at net.minecraft.server.network.ServerConnectionListener.tick(ServerConnectionListener.java:234) ~[?:?] at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1586) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:446) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1393) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1170) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.20.1.jar:git-Paper-196] at java.lang.Thread.run(Thread.java:833) ~[?:?]

To Reproduce

Go into a Nether or End portal in a non-island world.

Additional Information

No response

OmerBenGera commented 9 months ago

Fixed in latest dev build