From fad7f6c0197e5c39debf8345d0c36f220fdaaffc Mon Sep 17 00:00:00 2001 From: Mads Boddum Date: Wed, 30 Nov 2016 23:57:45 +0100 Subject: [PATCH] Group level recalculating now uses streams --- src/resources/objects/group/GroupObject.java | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/src/resources/objects/group/GroupObject.java b/src/resources/objects/group/GroupObject.java index 973ce1f00..039a6c3e4 100644 --- a/src/resources/objects/group/GroupObject.java +++ b/src/resources/objects/group/GroupObject.java @@ -113,17 +113,10 @@ public class GroupObject extends SWGObject { // Extends INTO or TANO? groupMembers.sendDeltaMessage(this); // We need to recalculate the group level if someone leaves! - AtomicInteger newLevel = new AtomicInteger(1); - - groupMembers.forEach(groupMember -> { - short memberLevel = groupMember.getCreatureObject().getLevel(); - - if (memberLevel > newLevel.get()) { - newLevel.set(memberLevel); - } - }); - - setLevel((short) newLevel.get()); + groupMembers.stream() + .map(groupMember -> groupMember.getCreatureObject().getLevel()) + .max((level1, level2) -> Short.compare(level1, level2)) + .ifPresent(newLevel -> setLevel(newLevel)); } }