diff --git a/src/main/java/ru/dbotthepony/mc/otm/capability/AndroidCapability.java b/src/main/java/ru/dbotthepony/mc/otm/capability/AndroidCapability.java index f28da4d89..b058d9a11 100644 --- a/src/main/java/ru/dbotthepony/mc/otm/capability/AndroidCapability.java +++ b/src/main/java/ru/dbotthepony/mc/otm/capability/AndroidCapability.java @@ -144,6 +144,9 @@ public class AndroidCapability implements ICapabilityProvider, IAndroidCapabilit } protected void tickInner() { + if (ent.getAirSupply() < ent.getMaxAirSupply()) + ent.setAirSupply(ent.getMaxAirSupply()); + if (!battery.isEmpty()) { BigDecimal demand = energy_stored_max.subtract(energy_stored, MatteryCapability.ROUND_RULES); diff --git a/src/main/java/ru/dbotthepony/mc/otm/capability/AndroidCapabilityPlayer.java b/src/main/java/ru/dbotthepony/mc/otm/capability/AndroidCapabilityPlayer.java index 5ed5ceb1b..6721875a3 100644 --- a/src/main/java/ru/dbotthepony/mc/otm/capability/AndroidCapabilityPlayer.java +++ b/src/main/java/ru/dbotthepony/mc/otm/capability/AndroidCapabilityPlayer.java @@ -152,6 +152,10 @@ public class AndroidCapabilityPlayer extends AndroidCapability { cap.last_jump_ticks = 20; } + if (ply.isSwimming()) { + ply.setSwimming(false); + } + if (cap.last_jump_ticks <= 0) { event.getMovementInput().jumping = false; event.getMovementInput().up = false; @@ -185,8 +189,9 @@ public class AndroidCapabilityPlayer extends AndroidCapability { // TODO: Maybe passive drain? // extractEnergyInner(BigDecimal.valueOf(new Random().nextDouble()), false); - if (ply.getAirSupply() < ply.getMaxAirSupply()) - ply.setAirSupply(ply.getMaxAirSupply()); + if (ply.isSwimming()) { + ply.setSwimming(false); + } FoodData stats = ply.getFoodData();