"StorageActor" als Interface für die Lagerung

Nachricht

Es sollte ein Interface geben, dass Spieler, Firmen und ggf. sogar Gruppen dazu befähigt Items zu lagern. Durch diese Abstraktion können nicht nur Spieler Items lagern, sondern es können auch beispielsweise über die Firma Items in einem gemeinsamen Inventar gelagert werden. Innerhalb der Implementationen stehen so die verschiedenen Strategien zur Itembeschaffung, Itemlagerung und co. bereit.


Das Interface könnte beispielsweise so aussehen:

Java: StorageActor.java
  1. public interface StorageActor {
  2. ItemStack[] getStorage();
  3. ItemStack[] debitItems(ItemStack... items);
  4. ItemStack[] depositItems(ItemStack... items);
  5. default boolean hasEnoughItems(ItemStack... items) {
  6. return InventoryHandler.contains(getStorage(), items);
  7. }
  8.     StorageActor[] getDelegateActors();
  9. }

Kommentare 0