Jump to content

trade.isSecondInterfaceOpen,have trouble with,,help me


hansen19498
 Share

Recommended Posts

      when  trade.isSecondInterfaceOpen,   I can not read the number of other items, the use of what "api" or a good solution?

(I was deceived, the first transaction window and the second transaction window, the number of different items)

 

 

If, isSecondInterfaceOpen, what "api" can read each other "value"

 

 

 

SecondInterfaceOpen, but the other has quickly removed items, bot in the automatic trading time, but no way to detect, because the final step of the transaction, can only determine whether the other party to accept ,,,, I hope that the last step through what verification

Edited by hansen19498
Link to comment
Share on other sites

SecondInterfaceOpen, but the other has quickly removed items, bot in the automatic trading time, but no way to detect, because the final step of the transaction, can only determine whether the other party to accept ,,,, I hope that the last step through what verification

I, don't, understand, what you, are asking, me. 

Link to comment
Share on other sites

 

没有这方面的工作?

getTrade()。getTheirOffers()
getTrade()。getOurOffers()

 

 

if(trade.isFirstInterfaceOpen()) {CNUM=trade.getTheirOffers().getAmount("rune ore");log("CNUM="+CNUM)}//CNUM=10

//but   

if(trade.isSecondInterfaceOpen()) {CNUM=trade.getTheirOffers().getAmount("rune ore");log("CNUM="+CNUM)}//CNUM=0

 

 it  isnt  working

这样可行。我有它在我的剧本之一。 

不知道那是什么,他是问。 

Clearly, when the second trading window opens,

trade.getTheirOffers().getAmount  it isnot  working

Link to comment
Share on other sites

if(trade.isFirstInterfaceOpen()) {CNUM=trade.getTheirOffers().getAmount("rune ore");log("CNUM="+CNUM)}//CNUM=10

//but   

if(trade.isSecondInterfaceOpen()) {CNUM=trade.getTheirOffers().getAmount("rune ore");log("CNUM="+CNUM)}//CNUM=0

 

 it  isnt  working

Clearly, when the second trading window opens,

trade.getTheirOffers().getAmount  it isnot  working

 :???:

Link to comment
Share on other sites

what i have understood is you want to check item amount in second trade window,

I don't think that getTheirOffers() / getOurOffers() works in this case

 

It might be possible to do so using this (@TheScrub)

public List<TradeItem> getItemsSecondaryScreen(String text) throws ParseException {
        ArrayList<TradeItem> list = new ArrayList<TradeItem>();
        if (text == null || !text.contains("<br>")) {
            return list;
        }

        String items[] = text.split("<br>");
        for (String s : items) {
            String[] itemData = s.split("<col=[0-9A-Fa-f]{6}>");
            if (itemData.length == 2) {
                list.add(new TradeItem(itemData[1]));

            } else if (itemData.length == 4) {
                list.add(new TradeItem(itemData[1], parseQuantity(itemData[3])));

            } else {
                try {
                    throw new Exception("Sorry please check the item");
                } catch (Exception e) {
                    e.printStackTrace();
                }

            }
        }

        return list;
    }

    private int parseQuantity(String text) throws ParseException {
        if (text == null) {
            return -1;
        }

        if (text.contains("(") && text.contains(")")) {
            text = text.substring(text.indexOf('(') + 1, text.indexOf(')'));
            NumberFormat.getIntegerInstance(java.util.Locale.US).parse(text)
                    .intValue();
        }

        return NumberFormat.getIntegerInstance(java.util.Locale.US).parse(text)
                .intValue();
    }
public class TradeItem {
    private String name;
    private boolean stackable;
    private int amount;

    public TradeItem(String name) {
        this.name = name;
        this.stackable = false;
        this.amount = 1;
    }

    public TradeItem(String name, int amount) {
        this.name = name;
        this.amount = amount;
        this.stackable = true;
    }

    public String getName() {
        return this.name;
    }

    public int getAmount() {
        return this.amount;
    }

    public boolean isStackable() {
        return this.stackable;
    }
}

anyways, why do you have to detect it?

Edited by qverkk
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...