Jump to content

Trying to get the stock of an item in the store but getting java.lang.NullPointerException


Recommended Posts

Posted

I'm trying to check if the item's stock is max or higher but it never runs since it always gives the error java.lang.NullPointerException at org.osbot.rs07.api.Store.iIIIIiIIIii(gh:162).

String[] BuyItems = {"Name of item", "Name of item", "Name of item"};
int[] Stock = {1, 5, 4};
NPC Shopkeeper = npcs.closest("Shop npc");
Shopkeeper.interact("Trade");
for (int i = 0; i < BuyItems.length; i++) {
	if (getStore().getAmount(BuyItems[i]) <= Stock[i]) {
		do something
	}
}

I saw some people getting the same problem at the forums but no methods of fixing it except checking if getStore().getAmount(BuyItems[i]) is not null. This didn't work either nor should it work since there is always an amount of that item.

Posted

Might not be related to your problem but make sure to always null check before using am interact option.
 

NPC Shopkeeper = npcs.closest("Shop npc");
Shopkeeper.interact("Trade");

Should be: 

NPC Shopkeeper = npcs.closest("Shop npc");
if(shopkeeper != null){
	Shopkeeper.interact("Trade");
	...
}


For the rest, on what line are you getting an NPE?

Posted

I would recommend checking that this isn't returning a null value.

getStore().getAmount(BuyItems[i])

Put it in a variable and do a null check on the variable. Your problem may come from the name of the item. It's recommended to use an array of item IDs (you can search the item id here: https://www.osrsbox.com/tools/item-search/)

Also, the API is extremely fast. Make sure you're checking that the store is open before running that code. You should only run that loop if getStore.isOpen() returns true.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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