Use player indices to iterate local players

This commit is contained in:
Adam
2017-10-17 11:59:58 -04:00
parent 10a494a2b7
commit 6792f2570a
6 changed files with 30 additions and 25 deletions

View File

@@ -32,9 +32,7 @@ import net.runelite.api.widgets.WidgetInfo;
public interface Client
{
Player getPlayer(int idx);
Player[] getCachedPlayers();
List<Player> getPlayers();
List<NPC> getNpcs();

View File

@@ -27,17 +27,13 @@ package net.runelite.api.queries;
import net.runelite.api.Client;
import net.runelite.api.Player;
import java.util.Arrays;
import java.util.Objects;
public class PlayerQuery extends ActorQuery<Player, PlayerQuery>
{
@Override
public Player[] result(Client client)
{
return Arrays.stream(client.getCachedPlayers())
.filter(Objects::nonNull)
.filter(predicate)
.toArray(Player[]::new);
return client.getPlayers().stream()
.filter(predicate)
.toArray(Player[]::new);
}
}