item manager: allow getting images with quantity
This commit is contained in:
@@ -84,14 +84,14 @@ public class ItemManager
|
|||||||
});
|
});
|
||||||
|
|
||||||
itemImages = CacheBuilder.newBuilder()
|
itemImages = CacheBuilder.newBuilder()
|
||||||
.maximumSize(200)
|
.maximumSize(128L)
|
||||||
.expireAfterAccess(1, TimeUnit.HOURS)
|
.expireAfterAccess(1, TimeUnit.HOURS)
|
||||||
.build(new CacheLoader<Integer, BufferedImage>()
|
.build(new CacheLoader<Integer, BufferedImage>()
|
||||||
{
|
{
|
||||||
@Override
|
@Override
|
||||||
public BufferedImage load(Integer itemId) throws Exception
|
public BufferedImage load(Integer itemId) throws Exception
|
||||||
{
|
{
|
||||||
return loadImage(itemId);
|
return loadImage(itemId & 0xffff, itemId >>> 16);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -203,23 +203,35 @@ public class ItemManager
|
|||||||
* @param itemId
|
* @param itemId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
private BufferedImage loadImage(int itemId)
|
private BufferedImage loadImage(int itemId, int quantity)
|
||||||
{
|
{
|
||||||
SpritePixels sprite = client.createItemSprite(itemId, 1, 1, SpritePixels.DEFAULT_SHADOW_COLOR, 0, false);
|
SpritePixels sprite = client.createItemSprite(itemId, quantity, 1, SpritePixels.DEFAULT_SHADOW_COLOR, 0, false);
|
||||||
return sprite.toBufferedImage();
|
return sprite.toBufferedImage();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get item sprite image as BufferedImage
|
* Get item sprite image
|
||||||
*
|
*
|
||||||
* @param itemId
|
* @param itemId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public BufferedImage getImage(int itemId)
|
public BufferedImage getImage(int itemId)
|
||||||
|
{
|
||||||
|
return getImage(itemId, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get item sprite image as BufferedImage
|
||||||
|
*
|
||||||
|
* @param itemId
|
||||||
|
* @param quantity
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public BufferedImage getImage(int itemId, int quantity)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
return itemImages.get(itemId);
|
return itemImages.get(itemId | (quantity << 16));
|
||||||
}
|
}
|
||||||
catch (ExecutionException ex)
|
catch (ExecutionException ex)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user