Skip to content

Commit fc1c56c

Browse files
committed
Fixing triggered lights sometimes not updating
1 parent afba03a commit fc1c56c

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

Dungeoneer/src/com/interrupt/dungeoneer/gfx/GlRenderer.java

+11-10
Original file line numberDiff line numberDiff line change
@@ -2512,16 +2512,17 @@ public FrameBuffer CreateFrameBuffer(FrameBuffer previousBuffer, int width, int
25122512
}
25132513
}
25142514

2515-
public void refreshChunksNear(float x, float y, float range) {
2516-
if(chunks != null) {
2517-
for (int i = 0; i < chunks.size; i++) {
2518-
WorldChunk c = chunks.get(i);
2519-
2520-
float distanceX = Math.abs(x - c.position.x);
2521-
float distanceY = Math.abs(y - c.position.z);
2522-
2523-
if(distanceX <= range && distanceY <= range) {
2524-
c.refresh();
2515+
public void refreshChunksNear(float xPos, float yPos, float range) {
2516+
int startX = ((int)xPos - (int)range) / 17;
2517+
int startY = ((int)yPos - (int)range) / 17;
2518+
int endX = ((int)xPos + (int)range) / 17;
2519+
int endY = ((int)yPos + (int)range) / 17;
2520+
2521+
for(int x = startX; x <= endX; x++) {
2522+
for(int y = startY; y <= endY; y++) {
2523+
WorldChunk chunk = GetWorldChunkAt(x * 17, y * 17);
2524+
if(chunk != null) {
2525+
chunk.refresh();
25252526
}
25262527
}
25272528
}

0 commit comments

Comments
 (0)