more work on vendors

This commit is contained in:
Light2
2014-05-26 20:41:51 +02:00
parent 38441e069e
commit b21b40ab98
5 changed files with 137 additions and 30 deletions
+27 -2
View File
@@ -542,7 +542,7 @@ public class BazaarService implements INetworkDispatch {
// Auctions
case 2:
if(item.getStatus() == AuctionItem.FORSALE) {
if(item.getStatus() == AuctionItem.FORSALE && item.isOnBazaar()) {
if((category & 255) != 0 && item.getItemType() == category) {
if(displayedItems >= offset)
response.addItem(item);
@@ -584,8 +584,29 @@ public class BazaarService implements INetworkDispatch {
if(item.getStatus() == AuctionItem.OFFERED && player.getObjectID() == item.getOfferToId())
response.addItem(item);
break;
// Vendor search TODO later
// Vendor search
case 7:
if(item.getStatus() == AuctionItem.FORSALE && !item.isOnBazaar()) {
if(vendor.getObjectID() != item.getVendorId() && (core.objectService.getObject(item.getVendorId()) == null || (Boolean) core.objectService.getObject(item.getVendorId()).getAttachment("vendorSearchEnabled")))
break;
if((category & 255) != 0 && item.getItemType() == category) {
if(displayedItems >= offset)
response.addItem(item);
displayedItems++;
} else if((item.getItemType() & category) != 0) {
if(displayedItems >= offset)
response.addItem(item);
displayedItems++;
} else if(item.getItemType() < 256 && category == 8192) {
if(displayedItems >= offset)
response.addItem(item);
displayedItems++;
} else if(category == 0) {
if(displayedItems >= offset)
response.addItem(item);
displayedItems++;
}
}
break;
// Stock
case 8:
@@ -787,4 +808,8 @@ public class BazaarService implements INetworkDispatch {
}
public int getNumberOfItemsForSale(long vendorId) {
return (int) auctionItems.parallelStream().filter(i -> i.getVendorId() == vendorId).count();
}
}