79 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /*
 | |
| 
 | |
| This script is run with OSBot. Created by Red Bracket.
 | |
| 
 | |
| namesandarmor.txt has the following format:
 | |
| name:cblevel:helmet:cape:neck:weapon:chest:shield:unknown:legs:unknown:gloves:boots:
 | |
| 
 | |
| */
 | |
| 
 | |
| 
 | |
| import org.osbot.rs07.api.def.ItemDefinition;
 | |
| import org.osbot.rs07.api.model.Player;
 | |
| import org.osbot.rs07.script.Script;
 | |
| import org.osbot.rs07.script.ScriptManifest;
 | |
| 
 | |
| import java.io.*;
 | |
| import java.util.ArrayList;
 | |
| 
 | |
| @ScriptManifest(name = "Fetch data10", author = "b4", version = 2, logo = "", info = "info")
 | |
| public class Reader extends Script {
 | |
| 
 | |
|     private ArrayList<String> names = new ArrayList<>(20);
 | |
| 
 | |
|     @Override
 | |
|     public int onLoop() {
 | |
|         Player p = getPlayers().closest(o -> !names.contains(o.getName()));
 | |
|         if (p != null)
 | |
|         {
 | |
|             names.add(p.getName());
 | |
|             String equipment = getOthersEquipment(p);
 | |
|             //Format:
 | |
|             //name:cblevel:helmet:cape:neck:weapon:chest:shield:unknown:legs:unknown:gloves:boots:
 | |
|             log2(p.getName()
 | |
|                     + ":" + p.getCombatLevel()
 | |
|                     + ":" + equipment);
 | |
|         }
 | |
|         return 50;
 | |
|     }
 | |
| 
 | |
|     private void log2(String msg)
 | |
|     {
 | |
|         try {
 | |
|             log(msg);
 | |
|             FileReader fr = new FileReader(getDirectoryData() + "Data.txt");
 | |
|             BufferedReader br = new BufferedReader(fr);
 | |
|             for (String line; (line = br.readLine()) != null; ) {
 | |
|                 if (line.split(":")[0].equals(msg.split(":")[0]))
 | |
|                 {
 | |
|                     log("Not adding that one, since we already have it");
 | |
|                     return;
 | |
|                 }
 | |
|             }
 | |
| 
 | |
| 
 | |
|             FileWriter fw = new FileWriter(getDirectoryData() + "Data.txt", true);
 | |
|             BufferedWriter bw = new BufferedWriter(fw);
 | |
|             PrintWriter out = new PrintWriter(bw);
 | |
|             out.println(msg);
 | |
|             out.close();
 | |
|         } catch (Exception e) {
 | |
|             log(e);
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     private String getOthersEquipment(Player p) {
 | |
|         String equipmentList = "";
 | |
|         if(p != null) {
 | |
|             int[] equipment = p.getDefinition().getAppearance();
 | |
|             for (int value : equipment) {
 | |
|                 if (value - 512 > 0)
 | |
|                     equipmentList += ItemDefinition.forId(value - 512).getId() + ":";
 | |
|                 else
 | |
|                     equipmentList += 0 + ":";
 | |
|             }
 | |
|         }
 | |
|         return equipmentList;
 | |
|     }
 | |
| }
 | 
