diff --git a/api/src/main/java/com/alttd/chat/objects/Party.java b/api/src/main/java/com/alttd/chat/objects/Party.java index 7c58b74..a6f1c33 100755 --- a/api/src/main/java/com/alttd/chat/objects/Party.java +++ b/api/src/main/java/com/alttd/chat/objects/Party.java @@ -47,7 +47,9 @@ public class Party { .filter(partyUser -> partyUser.getUuid().equals(uuid)) .findFirst(); if (first.isEmpty()) return; - partyUsers.remove(first.get()); + PartyUser partyUser = first.get(); + partyUsers.remove(partyUser); + chatUser.setPartyId(-1); Queries.removePartyUser(uuid); } diff --git a/velocity/src/main/java/com/alttd/velocitychat/commands/partysubcommands/Remove.java b/velocity/src/main/java/com/alttd/velocitychat/commands/partysubcommands/Remove.java index b245aa2..287f186 100644 --- a/velocity/src/main/java/com/alttd/velocitychat/commands/partysubcommands/Remove.java +++ b/velocity/src/main/java/com/alttd/velocitychat/commands/partysubcommands/Remove.java @@ -64,13 +64,14 @@ public class Remove implements SubCommand { return; } } - party.removeUser(ChatUserManager.getChatUser(partyUser.getUuid())); - if (partyUser.getUuid().equals(party.getOwnerUuid())) { source.sendMessage(Utility.parseMiniMessage(Config.CANT_REMOVE_PARTY_OWNER)); return; } + party.removeUser(ChatUserManager.getChatUser(partyUser.getUuid())); + + if (onlinePlayer != null && onlinePlayer.isActive()) { onlinePlayer.sendMessage(Utility.parseMiniMessage(Config.REMOVED_FROM_PARTY, Placeholder.unparsed("party", party.getPartyName())