I've written a method to sort a players bank by the item id of each item. It works, that's not my problem. I'm just curious if there is a cleaner way of doing this?
Code:
public boolean sortBankByID() {
Item[] bankItems = new Item[bank.getItems().length];
Item[] items = new Item[32767];
for (int i = 0; i < bankItems.length; i++) {
if (bank.get(i) != null) {
bankItems[i] = bank.get(i);
}
}
for (int i = 0; i < bankItems.length; i++) {
if (bankItems[i] != null) {
int slot = bankItems[i].getId();
items[slot] = new Item(bankItems[i].getId(), bankItems[i].getAmount());
bank.removeAll(bankItems[i]);
}
}
int j = 0;
for (int i = 0; i < items.length; i++) {
if (items[i] != null) {
bank.set(j, items[i]);
j++;
}
}
refresh();
return true;
}