mirror of
https://github.com/TotalFreedomMC/TF-ProjectKorra.git
synced 2024-12-22 16:05:01 +00:00
Fix deprecated calls (#1072)
Update some deprecated calls ## Fixes * Fixes the server loading the legacy `Material` API when a player used `TremorSense` ## Changes * Added boundaries to `Levelled` block data in `GeneralMethods::getWaterData` and `GeneralMethods::getLavaData` to avoid future bugs
This commit is contained in:
parent
f42f8bf2c3
commit
10ac727eda
17 changed files with 60 additions and 86 deletions
|
@ -317,7 +317,7 @@ public class GeneralMethods {
|
||||||
final boolean c = xyzsolid[1] && xyzsolid[2];
|
final boolean c = xyzsolid[1] && xyzsolid[2];
|
||||||
return (a || b || c || (a && b));
|
return (a || b || c || (a && b));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int compareArmor(Material first, Material second) {
|
public static int compareArmor(Material first, Material second) {
|
||||||
return getArmorTier(first) - getArmorTier(second);
|
return getArmorTier(first) - getArmorTier(second);
|
||||||
}
|
}
|
||||||
|
@ -700,7 +700,7 @@ public class GeneralMethods {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int getArmorTier(Material mat) {
|
public static int getArmorTier(Material mat) {
|
||||||
switch (mat) {
|
switch (mat) {
|
||||||
case NETHERITE_HELMET:
|
case NETHERITE_HELMET:
|
||||||
|
@ -739,7 +739,7 @@ public class GeneralMethods {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int getArmorIndex(Material mat) {
|
public static int getArmorIndex(Material mat) {
|
||||||
switch (mat) {
|
switch (mat) {
|
||||||
case NETHERITE_HELMET:
|
case NETHERITE_HELMET:
|
||||||
|
@ -1225,19 +1225,11 @@ public class GeneralMethods {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static BlockData getLavaData(final int level) {
|
public static BlockData getLavaData(final int level) {
|
||||||
final BlockData data = Material.LAVA.createBlockData();
|
return Material.LAVA.createBlockData(d -> ((Levelled) d).setLevel((level < 0 || level > ((Levelled) d).getMaximumLevel()) ? 0 : level));
|
||||||
if (data instanceof Levelled) {
|
|
||||||
((Levelled) data).setLevel(level);
|
|
||||||
}
|
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static BlockData getWaterData(final int level) {
|
public static BlockData getWaterData(final int level) {
|
||||||
final BlockData data = Material.WATER.createBlockData();
|
return Material.WATER.createBlockData(d -> ((Levelled) d).setLevel((level < 0 || level > ((Levelled) d).getMaximumLevel()) ? 0 : level));
|
||||||
if (data instanceof Levelled) {
|
|
||||||
((Levelled) data).setLevel(level);
|
|
||||||
}
|
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Entity getTargetedEntity(final Player player, final double range, final List<Entity> avoid) {
|
public static Entity getTargetedEntity(final Player player, final double range, final List<Entity> avoid) {
|
||||||
|
@ -1419,7 +1411,7 @@ public class GeneralMethods {
|
||||||
public static boolean hasSpirits() {
|
public static boolean hasSpirits() {
|
||||||
return Bukkit.getServer().getPluginManager().getPlugin("ProjectKorraSpirits") != null;
|
return Bukkit.getServer().getPluginManager().getPlugin("ProjectKorraSpirits") != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isArmor(Material mat) {
|
public static boolean isArmor(Material mat) {
|
||||||
switch (mat) {
|
switch (mat) {
|
||||||
case NETHERITE_HELMET:
|
case NETHERITE_HELMET:
|
||||||
|
@ -1749,14 +1741,14 @@ public class GeneralMethods {
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isSameArmor(Material a, Material b) {
|
public static boolean isSameArmor(Material a, Material b) {
|
||||||
int ai = getArmorIndex(a), bi = getArmorIndex(b);
|
int ai = getArmorIndex(a), bi = getArmorIndex(b);
|
||||||
|
|
||||||
if (ai == -1 || bi == -1) {
|
if (ai == -1 || bi == -1) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return ai == bi;
|
return ai == bi;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2136,7 +2128,7 @@ public class GeneralMethods {
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (final IOException e) {
|
} catch (final IOException e) {
|
||||||
|
|
|
@ -1,8 +1,5 @@
|
||||||
package com.projectkorra.projectkorra.earthbending;
|
package com.projectkorra.projectkorra.earthbending;
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
|
||||||
|
|
||||||
import org.bukkit.Effect;
|
import org.bukkit.Effect;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
|
@ -20,9 +17,6 @@ import com.projectkorra.projectkorra.attribute.Attribute;
|
||||||
|
|
||||||
public class Tremorsense extends EarthAbility {
|
public class Tremorsense extends EarthAbility {
|
||||||
|
|
||||||
@Deprecated
|
|
||||||
private static final Map<Block, Player> BLOCKS = new ConcurrentHashMap<Block, Player>();
|
|
||||||
|
|
||||||
private byte lightThreshold;
|
private byte lightThreshold;
|
||||||
@Attribute("Depth")
|
@Attribute("Depth")
|
||||||
private int maxDepth;
|
private int maxDepth;
|
||||||
|
@ -108,11 +102,11 @@ public class Tremorsense extends EarthAbility {
|
||||||
|
|
||||||
if (isBendable && this.block == null) {
|
if (isBendable && this.block == null) {
|
||||||
this.block = standBlock;
|
this.block = standBlock;
|
||||||
this.player.sendBlockChange(this.block.getLocation(), Material.GLOWSTONE, (byte) 1);
|
this.player.sendBlockChange(this.block.getLocation(), Material.GLOWSTONE.createBlockData());
|
||||||
} else if (isBendable && !this.block.equals(standBlock)) {
|
} else if (isBendable && !this.block.equals(standBlock)) {
|
||||||
this.revertGlowBlock();
|
this.revertGlowBlock();
|
||||||
this.block = standBlock;
|
this.block = standBlock;
|
||||||
this.player.sendBlockChange(this.block.getLocation(), Material.GLOWSTONE, (byte) 1);
|
this.player.sendBlockChange(this.block.getLocation(), Material.GLOWSTONE.createBlockData());
|
||||||
} else if (this.block == null) {
|
} else if (this.block == null) {
|
||||||
return;
|
return;
|
||||||
} else if (!this.player.getWorld().equals(this.block.getWorld())) {
|
} else if (!this.player.getWorld().equals(this.block.getWorld())) {
|
||||||
|
@ -133,7 +127,7 @@ public class Tremorsense extends EarthAbility {
|
||||||
|
|
||||||
public void revertGlowBlock() {
|
public void revertGlowBlock() {
|
||||||
if (this.block != null) {
|
if (this.block != null) {
|
||||||
this.player.sendBlockChange(this.block.getLocation(), this.block.getType(), this.block.getData());
|
this.player.sendBlockChange(this.block.getLocation(), this.block.getBlockData());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -172,12 +166,6 @@ public class Tremorsense extends EarthAbility {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Deprecated
|
|
||||||
/** No longer used; will be removed in the next version. */
|
|
||||||
public static Map<Block, Player> getBlocks() {
|
|
||||||
return BLOCKS;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName() {
|
public String getName() {
|
||||||
return "Tremorsense";
|
return "Tremorsense";
|
||||||
|
|
|
@ -415,7 +415,7 @@ public class LavaFlow extends LavaAbility {
|
||||||
block.setType(Material.LAVA);
|
block.setType(Material.LAVA);
|
||||||
block.setBlockData(GeneralMethods.getLavaData(0));
|
block.setBlockData(GeneralMethods.getLavaData(0));
|
||||||
} else {
|
} else {
|
||||||
tblock = new TempBlock(block, Material.LAVA, GeneralMethods.getLavaData(0));
|
tblock = new TempBlock(block, Material.LAVA);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tblock != null) {
|
if (tblock != null) {
|
||||||
|
|
|
@ -215,7 +215,7 @@ public class LavaSurge extends LavaAbility {
|
||||||
playEarthbendingSound(b.getLocation());
|
playEarthbendingSound(b.getLocation());
|
||||||
|
|
||||||
for (int i = 0; i < 2; i++) {
|
for (int i = 0; i < 2; i++) {
|
||||||
final TempBlock tb = new TempBlock(b, Material.LAVA, GeneralMethods.getLavaData(0));
|
final TempBlock tb = new TempBlock(b, Material.LAVA);
|
||||||
this.fractureTempBlocks.add(tb);
|
this.fractureTempBlocks.add(tb);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -233,7 +233,7 @@ public class LavaSurgeWall extends LavaAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addWallBlock(final Block block) {
|
private void addWallBlock(final Block block) {
|
||||||
new TempBlock(block, Material.LAVA, GeneralMethods.getLavaData(0));
|
new TempBlock(block, Material.LAVA);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void breakBlock() {
|
private void breakBlock() {
|
||||||
|
@ -273,7 +273,7 @@ public class LavaSurgeWall extends LavaAbility {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!TempBlock.isTempBlock(block)) {
|
if (!TempBlock.isTempBlock(block)) {
|
||||||
new TempBlock(block, Material.LAVA, GeneralMethods.getLavaData(0));
|
new TempBlock(block, Material.LAVA);
|
||||||
AFFECTED_BLOCKS.put(block, block);
|
AFFECTED_BLOCKS.put(block, block);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -253,7 +253,7 @@ public class LavaSurgeWave extends LavaAbility {
|
||||||
if (GeneralMethods.isRegionProtectedFromBuild(this, block.getLocation())) {
|
if (GeneralMethods.isRegionProtectedFromBuild(this, block.getLocation())) {
|
||||||
return;
|
return;
|
||||||
} else if (!TempBlock.isTempBlock(block)) {
|
} else if (!TempBlock.isTempBlock(block)) {
|
||||||
new TempBlock(block, Material.LAVA, GeneralMethods.getLavaData(0));
|
new TempBlock(block, Material.LAVA);
|
||||||
this.waveBlocks.put(block, block);
|
this.waveBlocks.put(block, block);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -140,7 +140,7 @@ public class TorrentWave extends WaterAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isTransparent(this.player, block)) {
|
if (isTransparent(this.player, block)) {
|
||||||
final TempBlock tempBlock = new TempBlock(block, Material.WATER, GeneralMethods.getWaterData(0));
|
final TempBlock tempBlock = new TempBlock(block, Material.WATER);
|
||||||
this.blocks.add(tempBlock);
|
this.blocks.add(tempBlock);
|
||||||
torrentBlocks.add(block);
|
torrentBlocks.add(block);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -311,9 +311,9 @@ public class WaterManipulation extends WaterAbility {
|
||||||
}
|
}
|
||||||
if (this.trail != null) {
|
if (this.trail != null) {
|
||||||
this.trail2 = this.trail;
|
this.trail2 = this.trail;
|
||||||
this.trail2.setType(Material.WATER, GeneralMethods.getWaterData(6));
|
this.trail2.setType(GeneralMethods.getWaterData(6));
|
||||||
}
|
}
|
||||||
this.trail = new TempBlock(this.sourceBlock, Material.WATER, GeneralMethods.getWaterData(7));
|
this.trail = new TempBlock(this.sourceBlock, GeneralMethods.getWaterData(7));
|
||||||
this.sourceBlock = block;
|
this.sourceBlock = block;
|
||||||
|
|
||||||
if (this.location.distanceSquared(this.targetDestination) <= 1 || this.location.distanceSquared(this.firstDestination) > this.range * this.range) {
|
if (this.location.distanceSquared(this.targetDestination) <= 1 || this.location.distanceSquared(this.firstDestination) > this.range * this.range) {
|
||||||
|
@ -366,7 +366,7 @@ public class WaterManipulation extends WaterAbility {
|
||||||
if (PhaseChange.getFrozenBlocksAsBlock().contains(block)) {
|
if (PhaseChange.getFrozenBlocksAsBlock().contains(block)) {
|
||||||
PhaseChange.getFrozenBlocksAsBlock().remove(block);
|
PhaseChange.getFrozenBlocksAsBlock().remove(block);
|
||||||
}
|
}
|
||||||
new TempBlock(block, Material.WATER, GeneralMethods.getWaterData(0));
|
new TempBlock(block, Material.WATER);
|
||||||
} else {
|
} else {
|
||||||
if (isWater(block) && !AFFECTED_BLOCKS.containsKey(block)) {
|
if (isWater(block) && !AFFECTED_BLOCKS.containsKey(block)) {
|
||||||
ParticleEffect.WATER_BUBBLE.display(block.getLocation().clone().add(.5, .5, .5), 5, Math.random(), Math.random(), Math.random(), 0);
|
ParticleEffect.WATER_BUBBLE.display(block.getLocation().clone().add(.5, .5, .5), 5, Math.random(), Math.random(), Math.random(), 0);
|
||||||
|
@ -500,7 +500,7 @@ public class WaterManipulation extends WaterAbility {
|
||||||
|
|
||||||
if (isTransparent(player, block) && isTransparent(player, eyeLoc.getBlock())) {
|
if (isTransparent(player, block) && isTransparent(player, eyeLoc.getBlock())) {
|
||||||
if (getTargetLocation(player, range).distanceSquared(block.getLocation()) > 1) {
|
if (getTargetLocation(player, range).distanceSquared(block.getLocation()) > 1) {
|
||||||
final TempBlock tb = new TempBlock(block, Material.WATER, GeneralMethods.getWaterData(0));
|
final TempBlock tb = new TempBlock(block, Material.WATER);
|
||||||
|
|
||||||
final WaterManipulation waterManip = new WaterManipulation(player, block);
|
final WaterManipulation waterManip = new WaterManipulation(player, block);
|
||||||
waterManip.moveWater();
|
waterManip.moveWater();
|
||||||
|
|
|
@ -111,7 +111,7 @@ public class WaterSpout extends WaterAbility {
|
||||||
|
|
||||||
final Block block = loc.getBlock();
|
final Block block = loc.getBlock();
|
||||||
if ((!TempBlock.isTempBlock(block)) && (ElementalAbility.isAir(block.getType()) || !GeneralMethods.isSolid(block))) {
|
if ((!TempBlock.isTempBlock(block)) && (ElementalAbility.isAir(block.getType()) || !GeneralMethods.isSolid(block))) {
|
||||||
this.blocks.add(new TempBlock(block, Material.WATER, GeneralMethods.getWaterData(7)));
|
this.blocks.add(new TempBlock(block, GeneralMethods.getWaterData(7)));
|
||||||
AFFECTED_BLOCKS.put(block, block);
|
AFFECTED_BLOCKS.put(block, block);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -157,7 +157,7 @@ public class WaterSpout extends WaterAbility {
|
||||||
block = location.clone().add(0, i, 0).getBlock();
|
block = location.clone().add(0, i, 0).getBlock();
|
||||||
|
|
||||||
if (!TempBlock.isTempBlock(block)) {
|
if (!TempBlock.isTempBlock(block)) {
|
||||||
this.blocks.add(new TempBlock(block, Material.WATER, GeneralMethods.getWaterData(0)));
|
this.blocks.add(new TempBlock(block, Material.WATER));
|
||||||
AFFECTED_BLOCKS.put(block, block);
|
AFFECTED_BLOCKS.put(block, block);
|
||||||
}
|
}
|
||||||
this.rotateParticles(block);
|
this.rotateParticles(block);
|
||||||
|
@ -286,7 +286,7 @@ public class WaterSpout extends WaterAbility {
|
||||||
|
|
||||||
if (!TempBlock.isTempBlock(blocki)) {
|
if (!TempBlock.isTempBlock(blocki)) {
|
||||||
this.revertBaseBlock();
|
this.revertBaseBlock();
|
||||||
this.baseBlock = new TempBlock(blocki, Material.WATER, GeneralMethods.getWaterData(0));
|
this.baseBlock = new TempBlock(blocki, Material.WATER);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.base = blocki;
|
this.base = blocki;
|
||||||
|
|
|
@ -11,7 +11,6 @@ import org.bukkit.Location;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.block.BlockFace;
|
import org.bukkit.block.BlockFace;
|
||||||
import org.bukkit.block.data.BlockData;
|
|
||||||
import org.bukkit.entity.Entity;
|
import org.bukkit.entity.Entity;
|
||||||
import org.bukkit.entity.LivingEntity;
|
import org.bukkit.entity.LivingEntity;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
@ -305,7 +304,7 @@ public class WaterSpoutWave extends WaterAbility {
|
||||||
for (final Block block : GeneralMethods.getBlocksAroundPoint(this.player.getLocation().add(0, -1, 0), this.waveRadius)) {
|
for (final Block block : GeneralMethods.getBlocksAroundPoint(this.player.getLocation().add(0, -1, 0), this.waveRadius)) {
|
||||||
if (ElementalAbility.isAir(block.getType()) && !GeneralMethods.isRegionProtectedFromBuild(this, block.getLocation())) {
|
if (ElementalAbility.isAir(block.getType()) && !GeneralMethods.isRegionProtectedFromBuild(this, block.getLocation())) {
|
||||||
if (this.iceWave) {
|
if (this.iceWave) {
|
||||||
this.createBlockDelay(block, Material.ICE, Material.ICE.createBlockData(), 2L);
|
this.createBlockDelay(block, Material.ICE, 2L);
|
||||||
} else {
|
} else {
|
||||||
this.createBlock(block, Material.WATER);
|
this.createBlock(block, Material.WATER);
|
||||||
}
|
}
|
||||||
|
@ -369,11 +368,11 @@ public class WaterSpoutWave extends WaterAbility {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void createBlockDelay(final Block block, final Material mat, final BlockData data, final long delay) {
|
public void createBlockDelay(final Block block, final Material mat, final long delay) {
|
||||||
final BukkitRunnable br = new BukkitRunnable() {
|
final BukkitRunnable br = new BukkitRunnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
WaterSpoutWave.this.createBlock(block, mat, data);
|
WaterSpoutWave.this.createBlock(block, mat);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
br.runTaskLater(ProjectKorra.plugin, delay);
|
br.runTaskLater(ProjectKorra.plugin, delay);
|
||||||
|
@ -381,11 +380,7 @@ public class WaterSpoutWave extends WaterAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void createBlock(final Block block, final Material mat) {
|
public void createBlock(final Block block, final Material mat) {
|
||||||
this.createBlock(block, mat, mat.createBlockData());
|
this.affectedBlocks.put(block, new TempBlock(block, mat));
|
||||||
}
|
|
||||||
|
|
||||||
public void createBlock(final Block block, final Material mat, final BlockData data) {
|
|
||||||
this.affectedBlocks.put(block, new TempBlock(block, mat, data));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void revertBlocks() {
|
public void revertBlocks() {
|
||||||
|
|
|
@ -196,7 +196,7 @@ public class IceBullet extends IceAbility implements ComboAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void createBlock(final Block block, final Material mat, final BlockData data) {
|
public void createBlock(final Block block, final Material mat, final BlockData data) {
|
||||||
this.affectedBlocks.put(block, new TempBlock(block, mat, data));
|
this.affectedBlocks.put(block, new TempBlock(block, data));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void drawWaterCircle(final Location loc, final double theta, final double increment, final double radius) {
|
public void drawWaterCircle(final Location loc, final double theta, final double increment, final double radius) {
|
||||||
|
|
|
@ -182,7 +182,7 @@ public class HealingWaters extends HealingAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void giveHP(final Player player) {
|
private void giveHP(final Player player) {
|
||||||
if (!player.isDead() && player.getHealth() < player.getMaxHealth()) {
|
if (!player.isDead() && player.getHealth() < player.getAttribute(org.bukkit.attribute.Attribute.GENERIC_MAX_HEALTH).getValue()) {
|
||||||
this.applyHealing(player);
|
this.applyHealing(player);
|
||||||
} else {
|
} else {
|
||||||
this.healing = false;
|
this.healing = false;
|
||||||
|
@ -199,7 +199,7 @@ public class HealingWaters extends HealingAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void giveHP(final LivingEntity livingEntity) {
|
private void giveHP(final LivingEntity livingEntity) {
|
||||||
if (!livingEntity.isDead() && livingEntity.getHealth() < livingEntity.getMaxHealth()) {
|
if (!livingEntity.isDead() && livingEntity.getHealth() < livingEntity.getAttribute(org.bukkit.attribute.Attribute.GENERIC_MAX_HEALTH).getValue()) {
|
||||||
this.applyHealing(livingEntity);
|
this.applyHealing(livingEntity);
|
||||||
} else {
|
} else {
|
||||||
this.healing = false;
|
this.healing = false;
|
||||||
|
@ -222,7 +222,7 @@ public class HealingWaters extends HealingAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void applyHealing(final LivingEntity livingEntity) {
|
private void applyHealing(final LivingEntity livingEntity) {
|
||||||
if (livingEntity.getHealth() < livingEntity.getMaxHealth()) {
|
if (livingEntity.getHealth() < livingEntity.getAttribute(org.bukkit.attribute.Attribute.GENERIC_MAX_HEALTH).getValue()) {
|
||||||
livingEntity.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 30, this.potionPotency));
|
livingEntity.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 30, this.potionPotency));
|
||||||
AirAbility.breakBreathbendingHold(livingEntity);
|
AirAbility.breakBreathbendingHold(livingEntity);
|
||||||
this.healing = true;
|
this.healing = true;
|
||||||
|
|
|
@ -379,11 +379,10 @@ public class PhaseChange extends IceAbility {
|
||||||
final Snow snow = (Snow) b.getBlockData();
|
final Snow snow = (Snow) b.getBlockData();
|
||||||
if (snow.getLayers() == snow.getMinimumLayers()) {
|
if (snow.getLayers() == snow.getMinimumLayers()) {
|
||||||
tb.revertBlock();
|
tb.revertBlock();
|
||||||
new TempBlock(b, Material.AIR).setRevertTime(120 * 1000L);
|
new TempBlock(b, Material.AIR.createBlockData(), 120 * 1000L);
|
||||||
} else {
|
} else {
|
||||||
tb.revertBlock();
|
tb.revertBlock();
|
||||||
snow.setLayers(snow.getLayers() - 1);
|
new TempBlock(b, Material.SNOW.createBlockData(d -> ((Snow) d).setLayers(snow.getLayers() - 1)), 120 * 1000L);
|
||||||
new TempBlock(b, Material.SNOW, snow).setRevertTime(120 * 1000L);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -398,17 +397,17 @@ public class PhaseChange extends IceAbility {
|
||||||
b.setType(Material.WATER);
|
b.setType(Material.WATER);
|
||||||
b.setBlockData(GeneralMethods.getWaterData(0));
|
b.setBlockData(GeneralMethods.getWaterData(0));
|
||||||
} else {
|
} else {
|
||||||
new TempBlock(b, Material.WATER, GeneralMethods.getWaterData(0));
|
new TempBlock(b, Material.WATER);
|
||||||
}
|
}
|
||||||
this.melted_blocks.add(b);
|
this.melted_blocks.add(b);
|
||||||
} else if (b.getType() == Material.SNOW_BLOCK || b.getType() == Material.SNOW) {
|
} else if (b.getType() == Material.SNOW_BLOCK || b.getType() == Material.SNOW) {
|
||||||
if (b.getBlockData() instanceof Snow) {
|
if (b.getBlockData() instanceof Snow) {
|
||||||
final Snow snow = (Snow) b.getBlockData();
|
final Snow snow = (Snow) b.getBlockData();
|
||||||
if (snow.getLayers() == snow.getMinimumLayers()) {
|
if (snow.getLayers() == snow.getMinimumLayers()) {
|
||||||
new TempBlock(b, Material.AIR).setRevertTime(120 * 1000L);
|
new TempBlock(b, Material.AIR.createBlockData(), 120 * 1000L);
|
||||||
} else {
|
} else {
|
||||||
snow.setLayers(snow.getLayers() - 1);
|
snow.setLayers(snow.getLayers() - 1);
|
||||||
new TempBlock(b, Material.SNOW, snow).setRevertTime(120 * 1000L);
|
new TempBlock(b, Material.SNOW.createBlockData(d -> ((Snow) d).setLayers(snow.getLayers() - 1)), 120 * 1000L);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -233,7 +233,7 @@ public class WaterArms extends WaterAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(this.getRightHandPos().getBlock().getLocation().equals(r1.getBlock().getLocation()))) {
|
if (!(this.getRightHandPos().getBlock().getLocation().equals(r1.getBlock().getLocation()))) {
|
||||||
this.addBlock(r1.getBlock(), Material.WATER, GeneralMethods.getWaterData(3), 100);
|
this.addBlock(r1.getBlock(), GeneralMethods.getWaterData(3), 100);
|
||||||
newBlocks.add(r1.getBlock());
|
newBlocks.add(r1.getBlock());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -244,7 +244,7 @@ public class WaterArms extends WaterAbility {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.addBlock(r2.getBlock(), Material.WATER, GeneralMethods.getWaterData(0), 100);
|
this.addBlock(r2.getBlock(), Material.WATER.createBlockData(), 100);
|
||||||
newBlocks.add(r2.getBlock());
|
newBlocks.add(r2.getBlock());
|
||||||
|
|
||||||
for (int j = 1; j <= this.initLength; j++) {
|
for (int j = 1; j <= this.initLength; j++) {
|
||||||
|
@ -257,9 +257,9 @@ public class WaterArms extends WaterAbility {
|
||||||
|
|
||||||
newBlocks.add(r3.getBlock());
|
newBlocks.add(r3.getBlock());
|
||||||
if (j >= 1 && this.selectedSlot == this.freezeSlot && this.bPlayer.canIcebend()) {
|
if (j >= 1 && this.selectedSlot == this.freezeSlot && this.bPlayer.canIcebend()) {
|
||||||
this.addBlock(r3.getBlock(), Material.ICE, Material.ICE.createBlockData(), 100);
|
this.addBlock(r3.getBlock(), Material.ICE.createBlockData(), 100);
|
||||||
} else {
|
} else {
|
||||||
this.addBlock(r3.getBlock(), Material.WATER, GeneralMethods.getWaterData(0), 100);
|
this.addBlock(r3.getBlock(), Material.WATER.createBlockData(), 100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -288,7 +288,7 @@ public class WaterArms extends WaterAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(this.getLeftHandPos().getBlock().getLocation().equals(l1.getBlock().getLocation()))) {
|
if (!(this.getLeftHandPos().getBlock().getLocation().equals(l1.getBlock().getLocation()))) {
|
||||||
this.addBlock(l1.getBlock(), Material.WATER, GeneralMethods.getWaterData(3), 100);
|
this.addBlock(l1.getBlock(), GeneralMethods.getWaterData(3), 100);
|
||||||
newBlocks.add(l1.getBlock());
|
newBlocks.add(l1.getBlock());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -299,7 +299,7 @@ public class WaterArms extends WaterAbility {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.addBlock(l2.getBlock(), Material.WATER, GeneralMethods.getWaterData(0), 100);
|
this.addBlock(l2.getBlock(), Material.WATER.createBlockData(), 100);
|
||||||
newBlocks.add(l2.getBlock());
|
newBlocks.add(l2.getBlock());
|
||||||
|
|
||||||
for (int j = 1; j <= this.initLength; j++) {
|
for (int j = 1; j <= this.initLength; j++) {
|
||||||
|
@ -312,9 +312,9 @@ public class WaterArms extends WaterAbility {
|
||||||
|
|
||||||
newBlocks.add(l3.getBlock());
|
newBlocks.add(l3.getBlock());
|
||||||
if (j >= 1 && this.selectedSlot == this.freezeSlot && this.bPlayer.canIcebend()) {
|
if (j >= 1 && this.selectedSlot == this.freezeSlot && this.bPlayer.canIcebend()) {
|
||||||
this.addBlock(l3.getBlock(), Material.ICE, Material.ICE.createBlockData(), 100);
|
this.addBlock(l3.getBlock(), Material.ICE.createBlockData(), 100);
|
||||||
} else {
|
} else {
|
||||||
this.addBlock(l3.getBlock(), Material.WATER, GeneralMethods.getWaterData(0), 100);
|
this.addBlock(l3.getBlock(), Material.WATER.createBlockData(), 100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -324,18 +324,18 @@ public class WaterArms extends WaterAbility {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addBlock(final Block b, final Material m, final BlockData data, final long revertTime) {
|
public void addBlock(final Block b, final BlockData data, final long revertTime) {
|
||||||
if (TempBlock.isTempBlock(b)) {
|
if (TempBlock.isTempBlock(b)) {
|
||||||
final TempBlock tb = TempBlock.get(b);
|
final TempBlock tb = TempBlock.get(b);
|
||||||
|
|
||||||
if (this.right.contains(b) || this.left.contains(b)) {
|
if (this.right.contains(b) || this.left.contains(b)) {
|
||||||
tb.setType(m, data);
|
tb.setType(data);
|
||||||
tb.setRevertTime(revertTime);
|
tb.setRevertTime(revertTime);
|
||||||
} else {
|
} else {
|
||||||
this.external.add(tb);
|
this.external.add(tb);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
new TempBlock(b, m, data).setRevertTime(revertTime);
|
new TempBlock(b, data, revertTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -262,7 +262,7 @@ public class WaterArmsWhip extends WaterAbility {
|
||||||
|
|
||||||
final int j = (int) Math.ceil(8 / (Math.pow(i, 1 / 3)));
|
final int j = (int) Math.ceil(8 / (Math.pow(i, 1 / 3)));
|
||||||
this.waterArms.addToArm(l2.getBlock(), this.arm);
|
this.waterArms.addToArm(l2.getBlock(), this.arm);
|
||||||
this.waterArms.addBlock(l2.getBlock(), Material.WATER, GeneralMethods.getWaterData(j), 40);
|
this.waterArms.addBlock(l2.getBlock(), GeneralMethods.getWaterData(j), 40);
|
||||||
|
|
||||||
if (i == this.activeLength) {
|
if (i == this.activeLength) {
|
||||||
this.end = l2.clone();
|
this.end = l2.clone();
|
||||||
|
@ -282,7 +282,7 @@ public class WaterArmsWhip extends WaterAbility {
|
||||||
}
|
}
|
||||||
|
|
||||||
this.waterArms.addToArm(this.end.getBlock(), this.arm);
|
this.waterArms.addToArm(this.end.getBlock(), this.arm);
|
||||||
this.waterArms.addBlock(this.end.getBlock(), Material.WATER, GeneralMethods.getWaterData(5), 40);
|
this.waterArms.addBlock(this.end.getBlock(), GeneralMethods.getWaterData(5), 40);
|
||||||
this.performAction(this.end);
|
this.performAction(this.end);
|
||||||
} else {
|
} else {
|
||||||
this.performAction(l2);
|
this.performAction(l2);
|
||||||
|
|
|
@ -44,7 +44,7 @@ public class WaterReturn extends WaterAbility {
|
||||||
|
|
||||||
if (this.bPlayer.canBendIgnoreBindsCooldowns(this)) {
|
if (this.bPlayer.canBendIgnoreBindsCooldowns(this)) {
|
||||||
if (isTransparent(player, block) && ((TempBlock.isTempBlock(block) && block.isLiquid()) || !block.isLiquid()) && this.hasEmptyWaterBottle()) {
|
if (isTransparent(player, block) && ((TempBlock.isTempBlock(block) && block.isLiquid()) || !block.isLiquid()) && this.hasEmptyWaterBottle()) {
|
||||||
this.block = new TempBlock(block, Material.WATER, GeneralMethods.getWaterData(0));
|
this.block = new TempBlock(block, Material.WATER);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.start();
|
this.start();
|
||||||
|
@ -84,7 +84,7 @@ public class WaterReturn extends WaterAbility {
|
||||||
final Block newblock = this.location.getBlock();
|
final Block newblock = this.location.getBlock();
|
||||||
if (isTransparent(this.player, newblock) && !newblock.isLiquid()) {
|
if (isTransparent(this.player, newblock) && !newblock.isLiquid()) {
|
||||||
this.block.revertBlock();
|
this.block.revertBlock();
|
||||||
this.block = new TempBlock(newblock, Material.WATER, GeneralMethods.getWaterData(0));
|
this.block = new TempBlock(newblock, Material.WATER);
|
||||||
} else if (isTransparent(this.player, newblock)) {
|
} else if (isTransparent(this.player, newblock)) {
|
||||||
if (isWater(newblock)) {
|
if (isWater(newblock)) {
|
||||||
ParticleEffect.WATER_BUBBLE.display(newblock.getLocation().clone().add(.5, .5, .5), 5, Math.random(), Math.random(), Math.random(), 0);
|
ParticleEffect.WATER_BUBBLE.display(newblock.getLocation().clone().add(.5, .5, .5), 5, Math.random(), Math.random(), Math.random(), 0);
|
||||||
|
|
|
@ -43,7 +43,7 @@ public class WaterSourceGrabber {
|
||||||
this.player = player;
|
this.player = player;
|
||||||
this.animimationSpeed = animationSpeed;
|
this.animimationSpeed = animationSpeed;
|
||||||
this.material = Material.WATER;
|
this.material = Material.WATER;
|
||||||
this.data = GeneralMethods.getWaterData(0);
|
this.data = Material.WATER.createBlockData();
|
||||||
this.currentLoc = origin.clone();
|
this.currentLoc = origin.clone();
|
||||||
this.state = AnimationState.RISING;
|
this.state = AnimationState.RISING;
|
||||||
this.affectedBlocks = new ConcurrentHashMap<>();
|
this.affectedBlocks = new ConcurrentHashMap<>();
|
||||||
|
@ -63,7 +63,7 @@ public class WaterSourceGrabber {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.createBlock(block, this.material, this.data);
|
this.createBlock(block, this.data);
|
||||||
if (Math.abs(locDiff) < 1) {
|
if (Math.abs(locDiff) < 1) {
|
||||||
this.state = AnimationState.TOWARD;
|
this.state = AnimationState.TOWARD;
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ public class WaterSourceGrabber {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.createBlock(block, this.material, this.data);
|
this.createBlock(block, this.data);
|
||||||
if (this.currentLoc.distanceSquared(eyeLoc) < 1.2) {
|
if (this.currentLoc.distanceSquared(eyeLoc) < 1.2) {
|
||||||
this.state = AnimationState.FINISHED;
|
this.state = AnimationState.FINISHED;
|
||||||
this.revertBlocks();
|
this.revertBlocks();
|
||||||
|
@ -106,11 +106,11 @@ public class WaterSourceGrabber {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void createBlock(final Block block, final Material mat) {
|
public void createBlock(final Block block, final Material mat) {
|
||||||
this.createBlock(block, mat, mat.createBlockData());
|
this.createBlock(block, mat.createBlockData());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void createBlock(final Block block, final Material mat, final BlockData data) {
|
public void createBlock(final Block block, final BlockData data) {
|
||||||
this.affectedBlocks.put(block, new TempBlock(block, mat, data));
|
this.affectedBlocks.put(block, new TempBlock(block, data));
|
||||||
}
|
}
|
||||||
|
|
||||||
public Player getPlayer() {
|
public Player getPlayer() {
|
||||||
|
|
Loading…
Reference in a new issue