Code:
public boolean addItem(int item, int amount) {
synchronized(c) {
if (amount < 1) {
amount = 1;
}
if(item <= 0) {
return false;
}
if ((((freeSlots() >= 1) || playerHasItem(item, 1)) && Item.itemStackable[item]) || ((freeSlots() > 0) && !Item.itemStackable[item])) {
for (int i = 0; i < c.playerItems.length; i++) {
if ((c.playerItems[i] == (item + 1)) && Item.itemStackable[item]
&& (c.playerItems[i] > 0)) {
c.playerItems[i] = (item + 1);
if (((c.playerItemsN[i] + amount) < Config.MAXITEM_AMOUNT)
&& ((c.playerItemsN[i] + amount) > -1)) {
c.playerItemsN[i] += amount;
} else {
c.playerItemsN[i] = Config.MAXITEM_AMOUNT;
}
if(c.getOutStream() != null && c != null ) {
c.getOutStream().createFrameVarSizeWord(34);
c.getOutStream().writeWord(3214);
c.getOutStream().writeByte(i);
c.getOutStream().writeWord(c.playerItems[i]);
if (c.playerItemsN[i] > 254) {
c.getOutStream().writeByte(255);
c.getOutStream().writeDWord(c.playerItemsN[i]);
} else {
c.getOutStream().writeByte(c.playerItemsN[i]);
}
c.getOutStream().endFrameVarSizeWord();
c.flushOutStream();
}
i = 30;
return true;
}
}
for (int i = 0; i < c.playerItems.length; i++) {
if (c.playerItems[i] <= 0) {
c.playerItems[i] = item + 1;
if ((amount < Config.MAXITEM_AMOUNT) && (amount > -1)) {
c.playerItemsN[i] = 1;
if (amount > 1) {
c.getItems().addItem(item, amount - 1);
return true;
}
} else {
c.playerItemsN[i] = Config.MAXITEM_AMOUNT;
}
/*if(c.getOutStream() != null && c != null ) {
c.getOutStream().createFrameVarSizeWord(34);
c.getOutStream().writeWord(3214);
c.getOutStream().writeByte(i);
c.getOutStream().writeWord(c.playerItems[i]);
if (c.playerItemsN[i] > 254) {
c.getOutStream().writeByte(255);
c.getOutStream().writeDWord(c.playerItemsN[i]);
} else {
c.getOutStream().writeByte(c.playerItemsN[i]);
}
c.getOutStream().endFrameVarSizeWord();
c.flushOutStream();
}*/
resetItems(3214);
i = 30;
return true;
}
}
return false;
} else {
resetItems(3214);
c.sendMessage("Not enough space in your inventory.");
//Server.itemHandler.createGroundItem(c, item, c.getX(), c.getY(), -1, c.getId());
return false;
}
}
}