Advertisement
Guest User

Untitled

a guest
Sep 17th, 2015
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.07 KB | None | 0 0
  1. package scripts.moneymaking.tabber;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Font;
  5. import java.awt.Graphics;
  6. import java.text.DecimalFormat;
  7.  
  8. import org.tribot.api.General;
  9. import org.tribot.api.Timing;
  10. import org.tribot.api.input.Mouse;
  11. import org.tribot.api2007.Inventory;
  12. import org.tribot.api2007.Login;
  13. import org.tribot.api2007.Player;
  14. import org.tribot.api2007.Skills;
  15. import org.tribot.api2007.Skills.SKILLS;
  16. import org.tribot.script.EnumScript;
  17. import org.tribot.script.ScriptManifest;
  18. import org.tribot.script.interfaces.Painting;
  19.  
  20. import scripts.methods.Methods;
  21.  
  22. @ScriptManifest(authors = { "iant06" }, category = "Money Making", name = "iTabber")
  23.  
  24. public class Main extends EnumScript<State> implements Painting {
  25.  
  26. private State state;
  27. private Data data = null;
  28. private House house = null;
  29. private DemonButler butler = null;
  30. private TabType tabType = null;
  31. private GUI gui = null;
  32. private ButlerType butlerType = null;
  33.  
  34. private int profit = -1;
  35.  
  36. private int loss = -1;
  37.  
  38. private int duelRingPrice = -1;
  39.  
  40. private int tabPrice = -1;
  41.  
  42. private int softClayPrice = Methods.getPrice(Constants.SOFT_CLAY_ID);
  43.  
  44. private int startXP = -1;
  45.  
  46. private int startLevel = -1;
  47.  
  48. private int airRunePrice = Methods.getPrice(Constants.AIR_RUNE_ID);
  49.  
  50. private int waterRunePrice = Methods.getPrice(Constants.WATER_RUNE_ID);
  51.  
  52. private int earthRunePrice = Methods.getPrice(Constants.EARTH_RUNE_ID);
  53.  
  54. private int fireRunePrice = Methods.getPrice(Constants.FIRE_RUNE_ID);
  55.  
  56. private int lawRunePrice = Methods.getPrice(Constants.LAW_RUNE_ID);
  57.  
  58. public int calculateProfit() {
  59. int tabsMade = (int) ((int) (Skills.getXP(Skills.SKILLS.MAGIC) - getStartXP()) / getHouse().getTabXP());
  60. int profit = tabsMade * getTabPrice();
  61.  
  62. int loss = 0;
  63. int law = getLawRunePrice();
  64. int fire = getFireRunePrice();
  65. int earth = getEarthRunePrice();
  66. int water = getWaterRunePrice();
  67. int softClay = getSoftClayPrice();
  68. switch(getTabType()) {
  69. case VARROCK:
  70. loss = law + fire + softClay;
  71. break;
  72. case LUMBRIDGE:
  73. loss = law + earth + softClay;
  74. break;
  75. case FALADOR:
  76. loss = law + water + softClay;
  77. break;
  78. case HOUSE:
  79. loss = law + earth + softClay;
  80. break;
  81. case CAMELOT:
  82. loss = law + softClay;
  83. break;
  84. case ARDOUGNE:
  85. loss = (law * 2) + (water * 2) + softClay;
  86. break;
  87. case WATCHTOWER:
  88. loss = (law * 2) + (earth * 2) + softClay;
  89. break;
  90. }
  91. int servantCost = getButlerType().equals(ButlerType.BUTLER) ? 5000 : 10000;
  92. loss = (loss * tabsMade) + (servantPayment * servantCost);
  93. return profit - loss;
  94. }
  95.  
  96. private boolean endScript = false;
  97.  
  98. @Override
  99. public void onPaint(Graphics g) {
  100. int tabsMade = (int) ((int) (Skills.getXP(Skills.SKILLS.MAGIC) - getStartXP()) / getHouse().getTabXP());
  101. int tabsHr = (int) (tabsMade / ((getRunningTime()) / 3600000D));
  102. int profitHr = (int) (calculateProfit() / ((getRunningTime()) / 3600000D));
  103. int xpMade = (int) (Skills.getXP(Skills.SKILLS.MAGIC) - getStartXP());
  104. int xpHr = (int) (xpMade / ((getRunningTime()) / 3600000D));
  105. int magicLevel = Skills.getLevelByXP(Skills.getXP(SKILLS.MAGIC));
  106. g.setColor(Color.BLACK);
  107. g.setFont(new Font("default", Font.BOLD, 12));
  108. g.drawString("Tabs Made: " + tabsMade + " (" + tabsHr + ")", 325, 355);
  109. g.drawString("Profit: " + setInMoneyFormat(calculateProfit()) + " (" + setInMoneyFormat(profitHr) + ")", 325, 370);
  110. g.drawString("XP Gain: " + setInMoneyFormat(xpMade) + " (" + setInMoneyFormat(xpHr) + ")", 325, 385);
  111. g.drawString("Level: " + magicLevel + " (" + (magicLevel - getStartLevel()) + ")", 325, 400);
  112. g.drawString("Making: " + Methods.correctCapitalization(getTabType().toString()), 325, 415);
  113. g.drawString("State: " + Methods.correctCapitalization(getState().toString()), 325, 430);
  114. g.drawString("Running for: " + Timing.msToString(getRunningTime()), 325, 445);
  115. }
  116.  
  117. public int servantPayment = 0;
  118.  
  119. private DecimalFormat decimalFormat = new DecimalFormat("#.##");
  120.  
  121. public String setInMoneyFormat(double amount) {
  122. final int ONE_K = 1000;
  123. final int ONE_M = 1000000;
  124. if(amount >= ONE_M) {
  125. return decimalFormat.format(((double) amount / ONE_M)) + "M";
  126. }
  127. if(amount >= ONE_K) {
  128. return decimalFormat.format(((double) amount / ONE_K)) + "K";
  129. }
  130. return "" + decimalFormat.format(amount);
  131. }
  132.  
  133. @Override
  134. public State getInitialState() {
  135. if(gui == null) {
  136. setGui(new GUI(this));
  137. }
  138. while(getGui().isVisible()) {
  139. sleep(50, 150);
  140. }
  141. if(data == null) {
  142. setData(new Data(this));
  143. }
  144. if(house == null) {
  145. setHouse(new House(this));
  146. }
  147. if(butler == null) {
  148. setButler(new DemonButler(this));
  149. }
  150. if(getStartXP() == -1) {
  151. setStartXP(Skills.getXP(Skills.SKILLS.MAGIC));
  152. }
  153. Mouse.setSpeed(125 + General.random(0, 10));
  154. if(getHouse().isOutside()) {
  155. getHouse().enterHouse();
  156. }
  157. setState(State.MAKING_TABS);
  158. return State.MAKING_TABS;
  159.  
  160. }
  161.  
  162. @Override
  163. public State handleState(State state) {
  164. if(isEndScript()) {
  165. Login.logout();
  166. Thread.currentThread().interrupt();
  167. return null;
  168. }
  169. if(!isOnBreak() && !isPaused()) {
  170. state = getState() != null ? getState() : getInitialState();
  171. if(getHouse().isOutside()) {
  172. getHouse().enterHouse();
  173. }
  174. switch(state) {
  175. case TELEPORTING_TO_HOUSE:
  176. getHouse().teleport();
  177. return State.TELEPORTING_TO_HOUSE;
  178. case MAKING_TABS:
  179. if(!getHouse().isFinished()) {
  180. getHouse().performHouseTask();
  181. return State.MAKING_TABS;
  182. }
  183. setState(State.INTERACTING_WITH_BUTLER);
  184. return State.INTERACTING_WITH_BUTLER;
  185.  
  186. case INTERACTING_WITH_BUTLER:
  187. if(Inventory.getCount(Constants.SOFT_CLAY_ID + 1) <= 0) {
  188. getButler().camelotTeleport();
  189. return State.INTERACTING_WITH_BUTLER;
  190. }
  191. if(Inventory.getCount(Constants.SOFT_CLAY_ID) > 1) {
  192. setState(State.MAKING_TABS);
  193. return State.MAKING_TABS;
  194. }
  195. if(getButler().getButler() != null) {
  196. getButler().payServant(getButler().getButler());
  197. if(Player.getPosition().distanceTo(getButler().getButler()) > 3 || !getButler().getButler().isOnScreen()) {
  198. getButler().summon();
  199. } else {
  200. getButler().giveClay();
  201. }
  202. } else {
  203. getButler().summon();
  204. }
  205. setState(State.INTERACTING_WITH_BUTLER);
  206. return State.INTERACTING_WITH_BUTLER;
  207. }
  208. }
  209. return null;
  210. }
  211.  
  212. public void setData(Data data) {
  213. this.data = data;
  214. }
  215.  
  216. public Data getData() {
  217. return data;
  218. }
  219.  
  220. public void setHouse(House house) {
  221. this.house = house;
  222. }
  223.  
  224. public House getHouse() {
  225. return house;
  226. }
  227.  
  228. public void setState(State state) {
  229. this.state = state;
  230. }
  231.  
  232. public State getState() {
  233. return state;
  234. }
  235.  
  236. public void setDuelRingPrice(int duelRingPrice) {
  237. this.duelRingPrice = duelRingPrice;
  238. }
  239.  
  240. public int getDuelRingPrice() {
  241. return duelRingPrice;
  242. }
  243.  
  244. public void setTabPrice(int houseTabPrice) {
  245. this.tabPrice = houseTabPrice;
  246. }
  247.  
  248. public int getTabPrice() {
  249. return tabPrice;
  250. }
  251.  
  252. public void setSoftClayPrice(int softClayPrice) {
  253. this.softClayPrice = softClayPrice;
  254. }
  255.  
  256. public int getSoftClayPrice() {
  257. return softClayPrice;
  258. }
  259.  
  260. public void setEndScript(boolean endScript) {
  261. this.endScript = endScript;
  262. }
  263.  
  264. public boolean isEndScript() {
  265. return endScript;
  266. }
  267.  
  268. public DemonButler getButler() {
  269. return butler;
  270. }
  271.  
  272. public void setButler(DemonButler butler) {
  273. this.butler = butler;
  274. }
  275.  
  276. public void setTabType(TabType tabType) {
  277. this.tabType = tabType;
  278. }
  279.  
  280. public TabType getTabType() {
  281. return tabType;
  282. }
  283.  
  284. public GUI getGui() {
  285. return gui;
  286. }
  287.  
  288. public void setGui(GUI gui) {
  289. this.gui = gui;
  290. }
  291.  
  292. public void setStartXP(int startXP) {
  293. this.startXP = startXP;
  294. }
  295.  
  296. public int getStartXP() {
  297. return startXP;
  298. }
  299.  
  300. public int getStartLevel() {
  301. return startLevel;
  302. }
  303.  
  304. public void setStartLevel(int startLevel) {
  305. this.startLevel = startLevel;
  306. }
  307.  
  308. public int getProfit() {
  309. return profit;
  310. }
  311.  
  312. public void setProfit(int profit) {
  313. this.profit = profit;
  314. }
  315.  
  316. public int getLoss() {
  317. return loss;
  318. }
  319.  
  320. public void setLoss(int loss) {
  321. this.loss = loss;
  322. }
  323.  
  324. public int getAirRunePrice() {
  325. return airRunePrice;
  326. }
  327.  
  328. public void setAirRunePrice(int airRunePrice) {
  329. this.airRunePrice = airRunePrice;
  330. }
  331.  
  332. public int getEarthRunePrice() {
  333. return earthRunePrice;
  334. }
  335.  
  336. public void setEarthRunePrice(int earthRunePrice) {
  337. this.earthRunePrice = earthRunePrice;
  338. }
  339.  
  340. public int getWaterRunePrice() {
  341. return waterRunePrice;
  342. }
  343.  
  344. public void setWaterRunePrice(int waterRunePrice) {
  345. this.waterRunePrice = waterRunePrice;
  346. }
  347.  
  348. public int getFireRunePrice() {
  349. return fireRunePrice;
  350. }
  351.  
  352. public void setFireRunePrice(int fireRunePrice) {
  353. this.fireRunePrice = fireRunePrice;
  354. }
  355.  
  356. public int getLawRunePrice() {
  357. return lawRunePrice;
  358. }
  359.  
  360. public void setLawRunePrice(int lawRunePrice) {
  361. this.lawRunePrice = lawRunePrice;
  362. }
  363.  
  364. public ButlerType getButlerType() {
  365. return butlerType;
  366. }
  367.  
  368. public void setButlerType(ButlerType butlerType) {
  369. this.butlerType = butlerType;
  370. }
  371.  
  372. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement