X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2FGamePhysics.java;h=a2354f0c8f9ea68edd6d9b6242c1bda9f18a245f;hb=ca4dfc9c8252d4222f778db27e7505909420da39;hp=9edffe4a9f3c41e128b1cfb30ee5e2561a6db5f1;hpb=1c004c0ce7e183e773b5b486295c25e39732e899;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/GamePhysics.java b/core/src/ru/deadsoftware/cavedroid/game/GamePhysics.java index 9edffe4..a2354f0 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/GamePhysics.java +++ b/core/src/ru/deadsoftware/cavedroid/game/GamePhysics.java @@ -7,7 +7,7 @@ import com.badlogic.gdx.math.Vector2; import ru.deadsoftware.cavedroid.MainConfig; 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.mobs.player.Player; import ru.deadsoftware.cavedroid.game.model.block.Block; import ru.deadsoftware.cavedroid.game.objects.Drop; import ru.deadsoftware.cavedroid.game.objects.DropController; @@ -113,6 +113,10 @@ public class GamePhysics { private Rectangle getShiftedMagnetingPlayerRect(Drop drop) { final Player player = mMobsController.getPlayer(); + if (!player.inventory.canPickItem(drop.getItem())) { + return null; + } + if (drop.canMagnetTo(player)) { return getShiftedPlayerRect(0); } @@ -134,7 +138,7 @@ public class GamePhysics { final Player player = mMobsController.getPlayer(); if (Intersector.overlaps(shiftedPlayerTarget, drop)) { - player.pickUpDrop(drop); + player.inventory.pickDrop(drop); } } @@ -335,6 +339,7 @@ public class GamePhysics { } playerPhy(player, delta); + player.ai(mGameWorld, mGameItemsHolder, delta); if (player.isDead()) { player.respawn(mGameWorld, mGameItemsHolder); }