mirror of
https://github.com/ProjectSWGCore/Holocore.git
synced 2026-01-15 23:05:45 -05:00
Merge pull request #241 from madsboddum/74
If the group leader leaves, the group is notified of who becomes the leader #74
This commit is contained in:
@@ -100,9 +100,6 @@ public class GroupObject extends SWGObject {
|
||||
}
|
||||
|
||||
public void removeMember(CreatureObject creature) {
|
||||
if (leader.equals(creature) && size() >= 2) {
|
||||
setLeader(groupMembers.get(1));
|
||||
}
|
||||
removeGroupMembers(creature);
|
||||
calculateLevel();
|
||||
}
|
||||
|
||||
@@ -417,6 +417,16 @@ public class GroupService extends Service {
|
||||
sendSystemMessage(creature.getOwner(), "removed");
|
||||
group.removeMember(creature);
|
||||
updateChatRoom(creature.getOwner(), group, UpdateType.LEAVE);
|
||||
|
||||
// If the leader has left, promote another group member to leader and notify the group of this
|
||||
if (creature.getObjectId() == group.getLeaderId()) {
|
||||
CreatureObject newLeader = group.getGroupMemberObjects().iterator().next(); // Pick a new leader
|
||||
|
||||
group.setLeader(newLeader);
|
||||
|
||||
sendGroupSystemMessage(group, "new_leader", "TU", newLeader.getObjectName());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void updateChatRoom(Player player, GroupObject group, UpdateType updateType) {
|
||||
|
||||
Reference in New Issue
Block a user