From 695a592254cce5226e01f2d126e624ad115118a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Przemys=C5=82aw=20Pluta?= Date: Tue, 2 Mar 2021 21:59:12 +0100 Subject: [PATCH] Fix invalid objects overlapping in ObjectLayer --- .../base/game/map/layer/object/ObjectLayer.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/game/src/main/java/com/bartlomiejpluta/base/game/map/layer/object/ObjectLayer.java b/game/src/main/java/com/bartlomiejpluta/base/game/map/layer/object/ObjectLayer.java index 176e2a88..760b1eb1 100644 --- a/game/src/main/java/com/bartlomiejpluta/base/game/map/layer/object/ObjectLayer.java +++ b/game/src/main/java/com/bartlomiejpluta/base/game/map/layer/object/ObjectLayer.java @@ -56,11 +56,17 @@ public class ObjectLayer implements Layer { @Override public void render(Window window, Camera camera, ShaderManager shaderManager) { + objects.sort(this::compareObjects); + for (var object : objects) { object.render(window, camera, shaderManager); } } + private int compareObjects(MovableSprite a, MovableSprite b) { + return Float.compare(a.getPosition().y, b.getPosition().y); + } + @Override public void update(float dt) { for (var object : objects) {