You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.1 KiB
49 lines
1.1 KiB
package mightypork.rogue.world.tile.render;
|
|
|
|
|
|
import mightypork.gamecore.core.App;
|
|
import mightypork.gamecore.resources.textures.TxQuad;
|
|
import mightypork.rogue.world.level.render.TileRenderContext;
|
|
import mightypork.rogue.world.tile.TileRenderer;
|
|
import mightypork.rogue.world.tile.impl.TileBaseChest;
|
|
|
|
|
|
public class ChestRenderer extends TileRenderer {
|
|
|
|
private final TxQuad txqFloor;
|
|
private final TxQuad txqChest;
|
|
|
|
private final TileBaseChest chestTile;
|
|
private final TxQuad txqChestOpen;
|
|
|
|
|
|
public ChestRenderer(TileBaseChest tile, TxQuad txq, TxQuad chest, TxQuad chestOpen) {
|
|
super(tile);
|
|
|
|
this.chestTile = tile;
|
|
|
|
this.txqFloor = txq;
|
|
this.txqChest = chest;
|
|
this.txqChestOpen = chestOpen;
|
|
}
|
|
|
|
|
|
@Override
|
|
public void renderTile(TileRenderContext context)
|
|
{
|
|
App.gfx().quad(context.getRect(), txqFloor);
|
|
}
|
|
|
|
|
|
@Override
|
|
public void renderExtra(TileRenderContext context)
|
|
{
|
|
if (!chestTile.opened) {
|
|
App.gfx().quad(context.getRect(), txqChest);
|
|
} else {
|
|
if (!chestTile.removed) {
|
|
App.gfx().quad(context.getRect(), txqChestOpen);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|