mirror of
https://github.com/Creators-of-Create/Create.git
synced 2024-12-27 23:47:38 +01:00
T00lb0x
- fixed NPE when hitting toolbox hotkey on the same tick as it was placed - fixes #2914
This commit is contained in:
parent
283a682d1c
commit
428507038d
3 changed files with 9 additions and 4 deletions
|
@ -1,6 +1,7 @@
|
||||||
package com.simibubi.create.content.curiosities.toolbox;
|
package com.simibubi.create.content.curiosities.toolbox;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.WeakHashMap;
|
import java.util.WeakHashMap;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
@ -111,6 +112,7 @@ public class ToolboxHandler {
|
||||||
.sorted((p1, p2) -> Double.compare(distance(location, p1), distance(location, p2)))
|
.sorted((p1, p2) -> Double.compare(distance(location, p1), distance(location, p2)))
|
||||||
.limit(maxAmount)
|
.limit(maxAmount)
|
||||||
.map(toolboxes.get(world)::get)
|
.map(toolboxes.get(world)::get)
|
||||||
|
.filter(ToolboxTileEntity::isFullyInitialized)
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,7 @@ import static com.simibubi.create.foundation.gui.AllGuiTextures.TOOLBELT_SELECTE
|
||||||
import static com.simibubi.create.foundation.gui.AllGuiTextures.TOOLBELT_SELECTED_ON;
|
import static com.simibubi.create.foundation.gui.AllGuiTextures.TOOLBELT_SELECTED_ON;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
|
@ -111,10 +112,7 @@ public class ToolboxHandlerClient {
|
||||||
Level level = player.level;
|
Level level = player.level;
|
||||||
|
|
||||||
List<ToolboxTileEntity> toolboxes = ToolboxHandler.getNearest(player.level, player, 8);
|
List<ToolboxTileEntity> toolboxes = ToolboxHandler.getNearest(player.level, player, 8);
|
||||||
|
toolboxes.sort(Comparator.comparing(ToolboxTileEntity::getUniqueId));
|
||||||
if (!toolboxes.isEmpty())
|
|
||||||
Collections.sort(toolboxes, (te1, te2) -> te1.getUniqueId()
|
|
||||||
.compareTo(te2.getUniqueId()));
|
|
||||||
|
|
||||||
CompoundTag compound = player.getPersistentData()
|
CompoundTag compound = player.getPersistentData()
|
||||||
.getCompound("CreateToolboxData");
|
.getCompound("CreateToolboxData");
|
||||||
|
|
|
@ -380,6 +380,11 @@ public class ToolboxTileEntity extends SmartTileEntity implements MenuProvider,
|
||||||
return uniqueId;
|
return uniqueId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isFullyInitialized() {
|
||||||
|
// returns true when uniqueId has been initialized
|
||||||
|
return uniqueId != null;
|
||||||
|
}
|
||||||
|
|
||||||
public void setCustomName(Component customName) {
|
public void setCustomName(Component customName) {
|
||||||
this.customName = customName;
|
this.customName = customName;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue