Sync with L2jServer HighFive Apr 21st 2015.
This commit is contained in:
@ -239,10 +239,6 @@ public abstract class ItemContainer
|
||||
|
||||
// Updates database
|
||||
float adenaRate = Config.RATE_DROP_AMOUNT_MULTIPLIER.getOrDefault(Inventory.ADENA_ID, 1f);
|
||||
if (actor.hasPremiumStatus() && Config.PREMIUM_RATE_DROP_AMOUNT_BY_ID.containsKey(Inventory.ADENA_ID))
|
||||
{
|
||||
adenaRate *= Config.PREMIUM_RATE_DROP_AMOUNT_BY_ID.get(Inventory.ADENA_ID);
|
||||
}
|
||||
if ((item.getId() == Inventory.ADENA_ID) && (count < (10000 * adenaRate)))
|
||||
{
|
||||
// Small adena changes won't be saved to database all the time
|
||||
@ -295,10 +291,6 @@ public abstract class ItemContainer
|
||||
// Updates database
|
||||
// If Adena drop rate is not present it will be x1.
|
||||
float adenaRate = Config.RATE_DROP_AMOUNT_MULTIPLIER.getOrDefault(Inventory.ADENA_ID, 1f);
|
||||
if (actor.hasPremiumStatus() && Config.PREMIUM_RATE_DROP_AMOUNT_BY_ID.containsKey(Inventory.ADENA_ID))
|
||||
{
|
||||
adenaRate *= Config.PREMIUM_RATE_DROP_AMOUNT_BY_ID.get(Inventory.ADENA_ID);
|
||||
}
|
||||
if ((itemId == Inventory.ADENA_ID) && (count < (10000 * adenaRate)))
|
||||
{
|
||||
// Small adena changes won't be saved to database all the time
|
||||
|
@ -25,6 +25,7 @@ import java.util.logging.Level;
|
||||
|
||||
import com.l2jserver.L2DatabaseFactory;
|
||||
import com.l2jserver.gameserver.enums.ItemLocation;
|
||||
import com.l2jserver.gameserver.idfactory.IdFactory;
|
||||
import com.l2jserver.gameserver.model.L2World;
|
||||
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
|
||||
import com.l2jserver.gameserver.model.items.instance.L2ItemInstance;
|
||||
@ -108,19 +109,10 @@ public class Mail extends ItemContainer
|
||||
item.setItemLocation(getBaseLocation(), _messageId);
|
||||
}
|
||||
|
||||
/*
|
||||
* Allow saving of the items without owner
|
||||
*/
|
||||
@Override
|
||||
public void updateDatabase()
|
||||
{
|
||||
for (L2ItemInstance item : _items)
|
||||
{
|
||||
if (item != null)
|
||||
{
|
||||
item.updateDatabase(true);
|
||||
}
|
||||
}
|
||||
_items.forEach(i -> i.updateDatabase(true));
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -168,4 +160,17 @@ public class Mail extends ItemContainer
|
||||
{
|
||||
return _ownerId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteMe()
|
||||
{
|
||||
_items.forEach(i ->
|
||||
{
|
||||
i.updateDatabase(true);
|
||||
i.deleteMe();
|
||||
L2World.getInstance().removeObject(i);
|
||||
IdFactory.getInstance().releaseId(i.getObjectId());
|
||||
});
|
||||
_items.clear();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user