raid plugin: fix layout command room order

This commit is contained in:
Adam
2019-11-14 10:19:27 -05:00
parent 11e83ac02b
commit 11e1753240
2 changed files with 22 additions and 6 deletions

View File

@@ -136,10 +136,13 @@ public class Raid
return builder.toString(); return builder.toString();
} }
public String toRoomString() /**
* Get the raid rooms in the order they are in the raid
* @return
*/
List<RaidRoom> getOrderedRooms()
{ {
final StringBuilder sb = new StringBuilder(); List<RaidRoom> orderedRooms = new ArrayList<>();
for (Room r : getLayout().getRooms()) for (Room r : getLayout().getRooms())
{ {
final int position = r.getPosition(); final int position = r.getPosition();
@@ -150,6 +153,18 @@ public class Raid
continue; continue;
} }
orderedRooms.add(room);
}
return orderedRooms;
}
String toRoomString()
{
final StringBuilder sb = new StringBuilder();
for (RaidRoom room : getOrderedRooms())
{
switch (room.getType()) switch (room.getType())
{ {
case PUZZLE: case PUZZLE:

View File

@@ -32,6 +32,7 @@ import java.text.DecimalFormat;
import java.time.Instant; import java.time.Instant;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List;
import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledExecutorService;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
@@ -53,7 +54,6 @@ import net.runelite.api.Tile;
import net.runelite.api.VarPlayer; import net.runelite.api.VarPlayer;
import net.runelite.api.Varbits; import net.runelite.api.Varbits;
import net.runelite.api.events.ChatMessage; import net.runelite.api.events.ChatMessage;
import net.runelite.client.events.ConfigChanged;
import net.runelite.api.events.VarbitChanged; import net.runelite.api.events.VarbitChanged;
import net.runelite.client.callback.ClientThread; import net.runelite.client.callback.ClientThread;
import net.runelite.client.chat.ChatColorType; import net.runelite.client.chat.ChatColorType;
@@ -64,6 +64,7 @@ import net.runelite.client.chat.QueuedMessage;
import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.Subscribe; import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.events.ChatInput; import net.runelite.client.events.ChatInput;
import net.runelite.client.events.ConfigChanged;
import net.runelite.client.events.OverlayMenuClicked; import net.runelite.client.events.OverlayMenuClicked;
import net.runelite.client.game.SpriteManager; import net.runelite.client.game.SpriteManager;
import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.Plugin;
@@ -665,9 +666,9 @@ public class RaidsPlugin extends Plugin
} }
final String playerName = client.getLocalPlayer().getName(); final String playerName = client.getLocalPlayer().getName();
RaidRoom[] rooms = raid.getRooms(); List<RaidRoom> orderedRooms = raid.getOrderedRooms();
LayoutRoom[] layoutRooms = Arrays.stream(rooms) LayoutRoom[] layoutRooms = orderedRooms.stream()
.map(room -> LayoutRoom.valueOf(room.name())) .map(room -> LayoutRoom.valueOf(room.name()))
.toArray(LayoutRoom[]::new); .toArray(LayoutRoom[]::new);