Aelysium-Group / rusty-connector

A player and server connection manager for Velocity based Minecraft Networks!
GNU General Public License v3.0
77 stars 17 forks source link

Error when running /party leave as leader. #30

Closed TheDeafCreeper closed 1 year ago

TheDeafCreeper commented 1 year ago

You do still leave the party (you probably shouldn't), but an error does also occur.

[23:54:11 INFO]: Exception occurred while running command for TheDeafCreeper
java.util.concurrent.CompletionException: java.lang.RuntimeException: Unable to invoke command party leave for [connected player] TheDeafCreeper (/96.41.244.222:58703)
        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315) ~[?:?]
        at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320) ~[?:?]
        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1770) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
        at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: java.lang.RuntimeException: Unable to invoke command party leave for [connected player] TheDeafCreeper (/96.41.244.222:58703)
        at com.velocitypowered.proxy.command.VelocityCommandManager.executeImmediately0(VelocityCommandManager.java:239) ~[proxy.jar:3.2.0-SNAPSHOT (git-bda1430d-b259)]
        at com.velocitypowered.proxy.command.VelocityCommandManager.lambda$executeImmediatelyAsync$1(VelocityCommandManager.java:264) ~[proxy.jar:3.2.0-SNAPSHOT (git-bda1430d-b259)]
        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        ... 3 more
Caused by: java.lang.IllegalStateException: This party is empty and is no-longer useable!
        at group.aelysium.rustyconnector.plugin.velocity.lib.parties.Party.leader(Party.java:37) ~[?:?]
        at group.aelysium.rustyconnector.plugin.velocity.lib.parties.Party.leave(Party.java:87) ~[?:?]
        at group.aelysium.rustyconnector.plugin.velocity.lib.parties.commands.CommandParty.lambda$create$10(CommandParty.java:239) ~[?:?]
        at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:262) ~[proxy.jar:3.2.0-SNAPSHOT (git-bda1430d-b259)]
        at com.velocitypowered.proxy.command.VelocityCommandManager.executeImmediately0(VelocityCommandManager.java:226) ~[proxy.jar:3.2.0-SNAPSHOT (git-bda1430d-b259)]
        at com.velocitypowered.proxy.command.VelocityCommandManager.lambda$executeImmediatelyAsync$1(VelocityCommandManager.java:264) ~[proxy.jar:3.2.0-SNAPSHOT (git-bda1430d-b259)]
        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        ... 3 more
nathan-i-martin commented 1 year ago

This is interesting. The ability to leave your own party as leader is intended. When that happens a random member will be promoted to leader.

But seeing as you were the leader, AND the last player to leave, that must've been what caused this. I'll mess around and see what I can do to adjust this

nathan-i-martin commented 1 year ago

Possibly related: https://github.com/Aelysium-Group/rusty-connector/issues/31#issuecomment-1674178161