95 lines
1.8 KiB
Java
Raw Normal View History

2018-03-14 00:00:52 +01:00
package inf101.v18.rogue101.items;
import inf101.v18.rogue101.game.IGame;
import inf101.v18.rogue101.objects.IItem;
2018-03-14 14:00:48 +01:00
import java.util.ArrayList;
import java.util.Collections;
2018-03-14 00:00:52 +01:00
import java.util.List;
public class Chest implements IContainer, IStatic {
private List<IItem> 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<IItem> items) {
this.container = items;
}
2018-03-14 14:00:48 +01:00
/**
* Randomly fills chest with random items based on dungeon level.
*
* @param lvl The current dungeon level
*/
private void fill (int lvl) {
//TODO: Implement
}
2018-03-14 00:00:52 +01:00
@Override
public IItem get(int i) {
return null;
}
@Override
public List<IItem> getContent() {
return Collections.unmodifiableList(container);
2018-03-14 00:00:52 +01:00
}
@Override
public boolean isFull() {
return container.size() >= MAX_SIZE;
2018-03-14 00:00:52 +01:00
}
@Override
public int getCurrentHealth() {
return 0;
}
@Override
public int getMaxHealth() {
return 0;
}
@Override
public String getName() {
2018-03-14 14:00:48 +01:00
return "Chest";
2018-03-14 00:00:52 +01:00
}
@Override
public int getSize() {
2018-03-14 14:00:48 +01:00
return 10000;
2018-03-14 00:00:52 +01:00
}
public String getPrintSymbol() {
return "\u001b[94m" + "\uD83D\uDDC3" + "\u001b[0m";
2018-03-14 00:00:52 +01:00
}
@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;
}
}
2018-03-14 00:00:52 +01:00
}