package org.pcbot.net.wrappers; import org.pcbot.net.methods.Worlds; import org.rsbot.script.methods.Lobby; import org.rsbot.script.methods.MethodContext; import org.rsbot.script.methods.MethodProvider; import org.rsbot.script.wrappers.RSComponent; public class RSWorld extends MethodProvider { private final RSComponent component; public RSWorld(final MethodContext ctx, final RSComponent component) { super(ctx); this.component = component; } public int getServer() { return methods.worlds.openTab() ? Integer.parseInt(methods.interfaces.getComponent(Lobby.WORLD_SELECT_INTERFACE, Lobby.WORLD_SELECT_INTERFACE_WORLD_NAME).getComponents()[component.getComponentIndex()].getText()) : -1; } public long getPing() { return methods.worlds.averagePing(getServer()); } public boolean isMembers() { if (methods.worlds.openTab()) { try { final RSComponent star = methods.interfaces.getComponent(Lobby.WORLD_SELECT_INTERFACE, Worlds.INTERFACE_WORLD_SELECT_STARS).getComponents()[component.getComponentIndex()]; if (star.getBackgroundColor() == Worlds.INTERFACE_MEMBERS_TEXTURE) { return true; } } catch (ArrayIndexOutOfBoundsException ignored) { } } return false; } }