minecraft2D/Camera.pde
zinchenko291 6297508e1f Добавил тени, масштаб, иконку
Ура, теперь всё работает. Баг с тенью был исправлен. Добавил возможность масштабировать.
2021-05-13 22:43:13 +05:00

58 lines
1.2 KiB
Plaintext

class Camera {
private float x;
private float y;
private Render render;
private int w, h;
Camera(int x, int y, World world) {
this.x = x;
this.y = y;
this.render = new Render(world);
}
public void setX(float x) {
if (x < 0) {
return;
}
this.x = x;
}
public void setY(float y) {
if (y < 0) {
return;
}
this.y = y;
}
public float getX() { return x; }
public float getY() { return y; }
public void showArea() {
w = width / settings.chunkSize + 10;
h = height / settings.chunkSize + 10;
w /= scale;
h /= scale;
push();
scale(scale);
translate(-x * settings.chunkSize, -y * settings.chunkSize);
for (int i = 0; i < w; i++) {
for (int j = 0; j < h; j++) {
render.renderChunk(i + (int)x, j + (int)y);
}
}
for (int i = 0; i < w; i++) {
for (int j = 0; j < h; j++) {
render.renderShadow(i + (int)x, j + (int)y);
}
}
pop();
}
public void showChunk(int x, int y) {
render.renderChunk(x, y);
render.renderShadow(x, y);
}
}