Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package scripts;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Polygon;
- import java.util.Collections;
- import java.util.Comparator;
- import java.util.HashMap;
- import java.util.LinkedList;
- import java.util.List;
- import org.tribot.api.types.generic.Filter;
- import org.tribot.api2007.NPCs;
- import org.tribot.api2007.Player;
- import org.tribot.api2007.types.RSNPC;
- import org.tribot.script.Script;
- import org.tribot.script.interfaces.Painting;
- public class Test extends Script implements Painting {
- private HashMap<RSNPC, Double> map = new HashMap<RSNPC, Double>();
- private List<RSNPC> list = null;
- private RSNPC[] array = null;
- @Override
- public void run() {
- while (true) {
- sleep(500, 800);
- this.sortNpcs("Guard");
- }
- }
- private RSNPC[] targets(String name) {
- return NPCs.find(new Filter<RSNPC>() {
- @Override
- public boolean accept(RSNPC a) {
- if (a == null)
- return false;
- if (a.getDefinition() == null)
- return false;
- return a.getDefinition().getName().equals(name);
- }
- });
- }
- private void sortNpcs(String name) {
- RSNPC[] guards = this.targets(name);
- if (guards.length > 0) {
- for (RSNPC n : guards) {
- map.put(n, Player.getPosition().distanceToDouble(n));
- }
- }
- if (map.size() > 0) {
- list = new LinkedList<RSNPC>(map.keySet());
- }
- if (list != null) {
- Collections.sort(list, new Comparator<RSNPC>() {
- @Override
- public int compare(RSNPC a, RSNPC b) {
- if (a == null || b == null)
- return 0;
- return (int) (map.get(a) - map.get(b));
- }
- });
- }
- if (list.size() > 0) {
- array = new RSNPC[list.size()];
- for (int i = 0; i < list.size(); i++) {
- array[i] = list.get(i);
- }
- }
- }
- @Override
- public void onPaint(Graphics g) {
- Polygon[] p = null;
- if (array.length > 0) {
- RSNPC target = array[0];
- if (target != null) {
- if (target.getModel() != null) {
- p = target.getModel().getTriangles();
- }
- }
- if (p.length > 0) {
- for (Polygon l : p) {
- g.setColor(Color.white);
- g.drawPolygon(l);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement