mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-02 08:39:49 +01:00
Patching a bug where mcMMO drops too few items, and yet another concurrent modification exception.
This commit is contained in:
parent
5b18abbea0
commit
d444e088c4
@ -5,6 +5,7 @@ import java.util.Random;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.entity.Item;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.entity.EntityDamageEvent;
|
||||
@ -253,7 +254,12 @@ public class Misc {
|
||||
return;
|
||||
}
|
||||
|
||||
location.getWorld().dropItemNaturally(location, itemStack).setItemStack(itemStack);
|
||||
Item newItem = location.getWorld().dropItemNaturally(location, itemStack);
|
||||
|
||||
ItemStack cloned = itemStack.clone();
|
||||
cloned.setAmount(newItem.getItemStack().getAmount());
|
||||
|
||||
newItem.setItemStack(cloned);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -254,14 +254,16 @@ public class HashChunkManager implements ChunkManager {
|
||||
if(store.containsKey(world.getName() + "," + cx + "," + cz)) {
|
||||
ChunkStore out = store.get(world.getName() + "," + cx + "," + cz);
|
||||
|
||||
for(Entity entity : spawnedMobs) {
|
||||
List<Entity> tempSpawnedMobs = new ArrayList<Entity>(spawnedMobs);
|
||||
for(Entity entity : tempSpawnedMobs) {
|
||||
if(!isEntityInChunk(entity, cx, cz, world))
|
||||
continue;
|
||||
|
||||
out.addSpawnedMob(entity.getUniqueId());
|
||||
}
|
||||
|
||||
for(Entity entity : spawnedPets) {
|
||||
List<Entity> tempSpawnedPets = new ArrayList<Entity>(spawnedPets);
|
||||
for(Entity entity : tempSpawnedPets) {
|
||||
if(!isEntityInChunk(entity, cx, cz, world))
|
||||
continue;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user