SHOW:
|
|
- or go back to the newest paste.
| 1 | import javax.swing.*; | |
| 2 | import java.awt.*; | |
| 3 | import java.util.*; | |
| 4 | ||
| 5 | import org.rsbot.event.listeners.PaintListener; | |
| 6 | import org.rsbot.script.*; | |
| 7 | ||
| 8 | ||
| 9 | @ScriptManifest(authors = {"Paint"}, category = "Combat", name = "Paint", version = 0.1, description = "<html><body><b>paint</b></body></html>")
| |
| 10 | public class paint extends Script implements PaintListener {
| |
| 11 | ||
| 12 | int trainStat; | |
| 13 | int style = 0; | |
| 14 | int startStatLvl; | |
| 15 | int startXp; | |
| 16 | int startExp; | |
| 17 | ||
| 18 | String status = "Starting up"; | |
| 19 | ||
| 20 | long startTime = System.currentTimeMillis(); | |
| 21 | ||
| 22 | public boolean onStart(Map<String, String> args){
| |
| 23 | trainStat = Integer.parseInt(JOptionPane.showInputDialog("Enter the stat to show in paint. Enter 0 for attack,1 for defence, 2 for strength, 3 for hitpoints, 4 for ranged, 6 for magic", 4));
| |
| 24 | ||
| 25 | startStatLvl = skills.getCurrentSkillLevel(trainStat); | |
| 26 | startXp = skills.getCurrentSkillExp(trainStat); | |
| 27 | startExp = skills.getCurrentSkillExp(trainStat); | |
| 28 | return true; | |
| 29 | } | |
| 30 | ||
| 31 | public void onFinish(){
| |
| 32 | } | |
| 33 | ||
| 34 | public void onRepaint(Graphics g){
| |
| 35 | if (isLoggedIn()) {
| |
| 36 | long millis = System.currentTimeMillis() - startTime; | |
| 37 | long hours = millis / (1000 * 60 * 60); | |
| 38 | millis -= hours * (1000 * 60 * 60); | |
| 39 | long minutes = millis / (1000 * 60); | |
| 40 | millis -= minutes * (1000 * 60); | |
| 41 | long seconds = millis / 1000; | |
| 42 | int LevelChange = skills.getCurrentSkillLevel(trainStat) | |
| 43 | - startStatLvl; | |
| 44 | int XPChange = skills.getCurrentSkillExp(trainStat) - startXp; | |
| 45 | float xpPerSec = 0; | |
| 46 | if ((minutes > 0 || hours > 0 || seconds > 0) && XPChange > 0) {
| |
| 47 | xpPerSec = ((float) XPChange) | |
| 48 | / (float) (seconds + (minutes * 60) + (hours * 60 * 60)); | |
| 49 | } | |
| 50 | float xpPerMin = xpPerSec * 60; | |
| 51 | float xpPerHour = xpPerMin * 60; | |
| 52 | float timeTillLvl = 9999; | |
| 53 | float secsTillLvl = (int) timeTillLvl; | |
| 54 | float minsTillLvl = (int) timeTillLvl; | |
| 55 | float hoursTillLvl = (int) timeTillLvl; | |
| 56 | if (xpPerSec > 0) {
| |
| 57 | secsTillLvl = skills.getXPToNextLevel(trainStat) / xpPerSec; | |
| 58 | } | |
| 59 | if (xpPerMin > 0) {
| |
| 60 | minsTillLvl = skills.getXPToNextLevel(trainStat) / xpPerMin; | |
| 61 | } | |
| 62 | if (xpPerHour > 0) {
| |
| 63 | hoursTillLvl = skills.getXPToNextLevel(trainStat) / xpPerHour; | |
| 64 | } | |
| 65 | secsTillLvl -= (int) minsTillLvl * 60; | |
| 66 | minsTillLvl -= (int) hoursTillLvl * 60; | |
| 67 | ||
| 68 | if (minsTillLvl < 0) {
| |
| 69 | minsTillLvl = 0; | |
| 70 | } | |
| 71 | //g.setColor(BG); | |
| 72 | //g.fill3DRect(330, 20, 184, 75, true); | |
| 73 | g.setColor(new Color(200,255,255,255)); | |
| 74 | g.drawString("paint", 334, 38);
| |
| 75 | g.drawString("Status: " + status + " Runtime: " + hours + ":" + minutes + ":" + seconds, 334, 48);
| |
| 76 | g.drawString("Levels gained: " + LevelChange, 334, 58);
| |
| 77 | g.drawString(skills.statsArray[trainStat] + " Experience gained: " + (skills.getCurrentSkillExp(trainStat) - startXp), 334, 68); | |
| 78 | g.drawString(skills.statsArray[trainStat] + " Exp/Hr: " + (int) xpPerHour, 334, 78); | |
| 79 | } | |
| 80 | } | |
| 81 | ||
| 82 | ||
| 83 | public int loop() {
| |
| 84 | return startExp; | |
| 85 | } | |
| 86 | } |