X-Git-Url: https://deadsoftware.ru/gitweb?p=cavedroid.git;a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2FGamePhysics.java;h=d6b5a9aa5da8e907c07430e1670cce350a61a757;hp=6695d6e76864606e4fe06a6aaaa80e8dcf3e97b1;hb=5b3244dceab39900a44eeb4d6108715c56735626;hpb=f4d52e3e4a3712050532786fca0aded5ff8b5a03 diff --git a/core/src/ru/deadsoftware/cavedroid/game/GamePhysics.java b/core/src/ru/deadsoftware/cavedroid/game/GamePhysics.java index 6695d6e..d6b5a9a 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/GamePhysics.java +++ b/core/src/ru/deadsoftware/cavedroid/game/GamePhysics.java @@ -9,6 +9,7 @@ import ru.deadsoftware.cavedroid.game.mobs.Mob; import ru.deadsoftware.cavedroid.game.mobs.MobsController; import ru.deadsoftware.cavedroid.game.mobs.Player; import ru.deadsoftware.cavedroid.game.objects.Drop; +import ru.deadsoftware.cavedroid.game.objects.DropController; import javax.inject.Inject; import java.util.Iterator; @@ -24,14 +25,17 @@ class GamePhysics { private final GameWorld mGameWorld; private final MainConfig mMainConfig; private final MobsController mMobsController; + private final DropController mDropController; @Inject public GamePhysics(GameWorld gameWorld, MainConfig mainConfig, - MobsController mobsController) { + MobsController mobsController, + DropController dropController) { mGameWorld = gameWorld; mMainConfig = mainConfig; mMobsController = mobsController; + mDropController = dropController; } /** @@ -253,16 +257,18 @@ class GamePhysics { } void update() { -// for (Iterator it = GP.drops.iterator(); it.hasNext(); ) { -// Drop drop = it.next(); -// dropPhy(drop); -// if (Intersector.overlaps(drop, GP.player)) { -// drop.pickUpDrop(GP.player); -// } -// if (drop.isPickedUp()) { -// it.remove(); -// } -// } + Player player = mMobsController.getPlayer(); + + for (Iterator it = mDropController.getIterator(); it.hasNext(); ) { + Drop drop = it.next(); + dropPhy(drop); + if (Intersector.overlaps(drop, player)) { + drop.pickUpDrop(player); + } + if (drop.isPickedUp()) { + it.remove(); + } + } for (Iterator it = mMobsController.getIterator(); it.hasNext(); ) { Mob mob = it.next(); @@ -273,7 +279,6 @@ class GamePhysics { } } - Player player = mMobsController.getPlayer(); playerPhy(player); if (player.isDead()) { player.respawn(mGameWorld);