diff --git a/core/src/io/anuke/mindustry/graphics/BlockRenderer.java b/core/src/io/anuke/mindustry/graphics/BlockRenderer.java index 5540e72dde..f3f7bcb603 100644 --- a/core/src/io/anuke/mindustry/graphics/BlockRenderer.java +++ b/core/src/io/anuke/mindustry/graphics/BlockRenderer.java @@ -246,6 +246,10 @@ public class BlockRenderer{ } void cacheChunk(int cx, int cy, boolean floor){ + if(cbatch == null){ + createBatch(); + } + cbatch.begin(); Graphics.useBatch(cbatch); @@ -268,6 +272,10 @@ public class BlockRenderer{ public void clearTiles(){ cache = null; + createBatch(); + } + + private void createBatch(){ if(cbatch != null) cbatch.dispose(); cbatch = new CacheBatch(Vars.world.width() * Vars.world.height() * 4); diff --git a/core/src/io/anuke/mindustry/mapeditor/DrawOperation.java b/core/src/io/anuke/mindustry/mapeditor/DrawOperation.java index 5522030b95..aa66e65858 100755 --- a/core/src/io/anuke/mindustry/mapeditor/DrawOperation.java +++ b/core/src/io/anuke/mindustry/mapeditor/DrawOperation.java @@ -17,11 +17,11 @@ public class DrawOperation implements Disposable{ } public void undo() { - pixmap.drawPixmap(from, 0, 0); + if(from != null) pixmap.drawPixmap(from, 0, 0); } public void redo() { - pixmap.drawPixmap(to, 0, 0); + if(to != null) pixmap.drawPixmap(to, 0, 0); } @Override