Advertisement
PayPalMeRSGP

GrandExchangeOffer.java

Mar 8th, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 6.63 KB | None | 0 0
  1. package GrandExchange_Util;
  2.  
  3. import org.osbot.rs07.api.GrandExchange;
  4. import org.osbot.rs07.script.Script;
  5.  
  6. public class GrandExchangeOffer {
  7.  
  8.     private static GrandExchangeOffer box1Offer;
  9.     private static GrandExchangeOffer box2Offer;
  10.     private static GrandExchangeOffer box3Offer;
  11.     private static GrandExchangeOffer box4Offer;
  12.     private static GrandExchangeOffer box5Offer;
  13.     private static GrandExchangeOffer box6Offer;
  14.     private static GrandExchangeOffer box7Offer;
  15.     private static GrandExchangeOffer box8Offer;
  16.  
  17.     private Script hostScriptReference;
  18.  
  19.     private boolean isBuyOffer;
  20.     private GrandExchange.Box selectedBox;
  21.     private int itemID;
  22.     private int totalAmountToTrade;
  23.     private int amountTraded = 0;
  24.  
  25.     public static GrandExchangeOffer getInstance(Script hostScriptReference, GrandExchange.Box selectedBox){
  26.         GrandExchange ge = hostScriptReference.getGrandExchange();
  27.         switch(selectedBox){
  28.             case BOX_1:
  29.                 if(box1Offer == null){
  30.                     box1Offer = new GrandExchangeOffer(hostScriptReference, GrandExchangeOffer.isBuyOffer(hostScriptReference, selectedBox), selectedBox, ge.getItemId(selectedBox), ge.getAmountToTransfer(selectedBox));
  31.                 }
  32.                 return box1Offer;
  33.             case BOX_2:
  34.                 if(box2Offer == null){
  35.                     box2Offer = new GrandExchangeOffer(hostScriptReference, GrandExchangeOffer.isBuyOffer(hostScriptReference, selectedBox), selectedBox, ge.getItemId(selectedBox), ge.getAmountToTransfer(selectedBox));
  36.                 }
  37.                 return box2Offer;
  38.             case BOX_3:
  39.                 if(box3Offer == null){
  40.                     box3Offer = new GrandExchangeOffer(hostScriptReference, GrandExchangeOffer.isBuyOffer(hostScriptReference, selectedBox), selectedBox, ge.getItemId(selectedBox), ge.getAmountToTransfer(selectedBox));
  41.                 }
  42.                 return box3Offer;
  43.             case BOX_4:
  44.                 if(box4Offer == null){
  45.                     box4Offer = new GrandExchangeOffer(hostScriptReference, GrandExchangeOffer.isBuyOffer(hostScriptReference, selectedBox), selectedBox, ge.getItemId(selectedBox), ge.getAmountToTransfer(selectedBox));
  46.                 }
  47.                 return box4Offer;
  48.             case BOX_5:
  49.                 if(box5Offer == null){
  50.                     box5Offer = new GrandExchangeOffer(hostScriptReference, GrandExchangeOffer.isBuyOffer(hostScriptReference, selectedBox), selectedBox, ge.getItemId(selectedBox), ge.getAmountToTransfer(selectedBox));
  51.                 }
  52.                 return box5Offer;
  53.             case BOX_6:
  54.                 if(box6Offer == null){
  55.                     box6Offer = new GrandExchangeOffer(hostScriptReference, GrandExchangeOffer.isBuyOffer(hostScriptReference, selectedBox), selectedBox, ge.getItemId(selectedBox), ge.getAmountToTransfer(selectedBox));
  56.                 }
  57.                 return box6Offer;
  58.             case BOX_7:
  59.                 if(box7Offer == null){
  60.                     box7Offer = new GrandExchangeOffer(hostScriptReference, GrandExchangeOffer.isBuyOffer(hostScriptReference, selectedBox), selectedBox, ge.getItemId(selectedBox), ge.getAmountToTransfer(selectedBox));
  61.                 }
  62.                 return box7Offer;
  63.             case BOX_8:
  64.                 if(box8Offer == null){
  65.                     box8Offer = new GrandExchangeOffer(hostScriptReference, GrandExchangeOffer.isBuyOffer(hostScriptReference, selectedBox), selectedBox, ge.getItemId(selectedBox), ge.getAmountToTransfer(selectedBox));
  66.                 }
  67.                 return box8Offer;
  68.         }
  69.         return null;
  70.     }
  71.  
  72.     public static void wipeInstance(GrandExchange.Box selectedBox){
  73.         switch(selectedBox){
  74.             case BOX_1:
  75.                 box1Offer = null;
  76.                 break;
  77.             case BOX_2:
  78.                 box2Offer = null;
  79.                 break;
  80.             case BOX_3:
  81.                 box3Offer = null;
  82.                 break;
  83.             case BOX_4:
  84.                 box4Offer = null;
  85.                 break;
  86.             case BOX_5:
  87.                 box5Offer = null;
  88.                 break;
  89.             case BOX_6:
  90.                 box6Offer = null;
  91.                 break;
  92.             case BOX_7:
  93.                 box7Offer = null;
  94.                 break;
  95.             case BOX_8:
  96.                 box8Offer = null;
  97.                 break;
  98.         }
  99.     }
  100.  
  101.  
  102.     GrandExchangeOffer(Script hostScriptReference, boolean isBuyOffer, GrandExchange.Box selectedBox, int itemID, int totalAmountToTrade) {
  103.         this.isBuyOffer = isBuyOffer;
  104.         this.selectedBox = selectedBox;
  105.         this.itemID = itemID;
  106.         this.totalAmountToTrade = totalAmountToTrade;
  107.         this.hostScriptReference = hostScriptReference;
  108.     }
  109.  
  110.     private static boolean isBuyOffer(Script hostScriptReference, GrandExchange.Box selectedBox){
  111.         GrandExchange ge = hostScriptReference.getGrandExchange();
  112.         GrandExchange.Status status = ge.getStatus(selectedBox);
  113.         switch (status){
  114.             case COMPLETING_BUY:
  115.             case FINISHED_BUY:
  116.             case CANCELLING_BUY:
  117.             case INITIALIZING_BUY:
  118.             case PENDING_BUY:
  119.                 return true;
  120.             default:
  121.                 return false;
  122.         }
  123.  
  124.     }
  125.  
  126.     public boolean isBuyOffer() {
  127.         return isBuyOffer;
  128.     }
  129.  
  130.     public GrandExchange.Box getSelectedBox() {
  131.         return selectedBox;
  132.     }
  133.  
  134.     public GrandExchange.Status getBoxStatus(){
  135.         return hostScriptReference.getGrandExchange().getStatus(selectedBox);
  136.     }
  137.  
  138.     public int getItemID() {
  139.         return itemID;
  140.     }
  141.  
  142.     public int getTotalAmountToTrade() {
  143.         return totalAmountToTrade;
  144.     }
  145.  
  146.     public int getAmountTraded() {
  147.         return amountTraded;
  148.     }
  149.  
  150.     public boolean isOfferFinished() {
  151.         GrandExchange ge = hostScriptReference.getGrandExchange();
  152.         return ge.getStatus(selectedBox) == GrandExchange.Status.FINISHED_SALE || ge.getStatus(selectedBox) == GrandExchange.Status.FINISHED_BUY;
  153.     }
  154.  
  155.     /**
  156.      *
  157.      * @param amountTraded the current amount traded, received from GrandExchange.getAmountTraded(GrandExchange.Box box)
  158.      * @return True if the current amount traded differed from the previous amount traded (if amountTraded variable changed), this means need to notify listeners that this offer has changed
  159.      * False otherwise
  160.      */
  161.     public boolean updateOffer(int amountTraded){
  162.         if(this.amountTraded != amountTraded){
  163.             this.amountTraded = amountTraded;
  164.             return true;
  165.         }
  166.         return false;
  167.     }
  168. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement