X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2Fobjects%2FDropController.java;h=826fd6878fc950ed5911d95b9bdc5358a84d6ddc;hb=289536374d18bb05cde615c04d9fe576d6ac26bc;hp=c71a37ed04cab439136c9850da947fb7166ad40f;hpb=f4d52e3e4a3712050532786fca0aded5ff8b5a03;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/objects/DropController.java b/core/src/ru/deadsoftware/cavedroid/game/objects/DropController.java index c71a37e..826fd68 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/objects/DropController.java +++ b/core/src/ru/deadsoftware/cavedroid/game/objects/DropController.java @@ -1,12 +1,16 @@ package ru.deadsoftware.cavedroid.game.objects; +import ru.deadsoftware.cavedroid.game.GameItemsHolder; import ru.deadsoftware.cavedroid.game.GameScope; +import ru.deadsoftware.cavedroid.game.model.item.Item; import javax.inject.Inject; +import java.io.Serializable; +import java.util.Iterator; import java.util.LinkedList; @GameScope -public class DropController { +public class DropController implements Serializable { public interface Callback { void run(Drop drop); @@ -18,8 +22,12 @@ public class DropController { public DropController() { } - public void addDrop(float x, float y, int id) { - mDrops.add(new Drop(x, y, id)); + public void initDrops(GameItemsHolder gameItemsHolder) { + mDrops.forEach((drop) -> drop.initItem(gameItemsHolder)); + } + + public void addDrop(float x, float y, Item item) { + mDrops.add(new Drop(x, y, item)); } public int getSize() { @@ -30,4 +38,8 @@ public class DropController { mDrops.forEach(callback::run); } + public Iterator getIterator() { + return mDrops.iterator(); + } + }