package inf101.v18.rogue101.items; import inf101.v18.rogue101.game.IGame; import inf101.v18.rogue101.objects.IItem; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Chest implements IContainer, IStatic { private List container; private int MAX_SIZE = 10; public Chest() { this.container = new ArrayList<>(); } public Chest(int lvl) { this.container = new ArrayList<>(); fill(lvl); } public Chest(List items) { this.container = items; } /** * Randomly fills chest with random items based on dungeon level. * * @param lvl The current dungeon level */ private void fill (int lvl) { //TODO: Implement } @Override public IItem get(int i) { return null; } @Override public List getContent() { return Collections.unmodifiableList(container); } @Override public boolean isFull() { return container.size() >= MAX_SIZE; } @Override public int getCurrentHealth() { return 0; } @Override public int getMaxHealth() { return 0; } @Override public String getName() { return "Chest"; } @Override public int getSize() { return 10000; } public String getPrintSymbol() { return "\u001b[94m" + "\uD83D\uDDC3" + "\u001b[0m"; } @Override public String getSymbol() { return "C"; } @Override public int handleDamage(IGame game, IItem source, int amount) { return 0; } @Override public boolean addItem(IItem item) { if (container.size() < MAX_SIZE) { container.add(item); return true; } else { return false; } } }