twodcraft/src/main/java/cz/jzitnik/game/sprites/TwoBlockSprite.java
jzitnik-dev b4bf76ef37
perf(sprites): Optimized loading of resources
Added lazy loading of resources. The resource was previously loaded on
each render, but now it is loaded the first time it is used and stays in
memory.
2025-03-25 12:05:38 +01:00

29 lines
707 B
Java

package cz.jzitnik.game.sprites;
import cz.jzitnik.tui.Sprite;
import java.util.HashMap;
public class TwoBlockSprite extends Sprite<TwoBlockSprite.TwoBlockSpriteState> {
public enum TwoBlockSpriteState {
TOP, BOTTOM
}
public TwoBlockSprite(String top, String bottom) {
loadResources(new HashMap<>() {
{
put(TwoBlockSpriteState.TOP, top);
put(TwoBlockSpriteState.BOTTOM, bottom);
}
}, TwoBlockSpriteState.class);
}
public String getSprite() {
return getResource(TwoBlockSpriteState.TOP);
}
public String getSprite(TwoBlockSpriteState state) {
return getResource(state);
}
}