Use getItemInMainHand()

Add 1.9 blocks to be detected for experience rewards.
Add experience rewards for the Chorus plant.
Add experience rewards for the Shulker mob.
This commit is contained in:
Dor
2016-03-11 16:20:23 +02:00
parent 2d3d11ec2d
commit a557fc7d3c
26 changed files with 145 additions and 67 deletions

View File

@ -132,6 +132,8 @@ public final class BlockUtils {
switch (blockState.getType()) {
case BROWN_MUSHROOM:
case CACTUS:
case CHORUS_PLANT:
case CHORUS_FLOWER:
case DOUBLE_PLANT:
case MELON_BLOCK:
case LONG_GRASS:
@ -170,6 +172,7 @@ public final class BlockUtils {
*/
public static Boolean affectedBySuperBreaker(BlockState blockState) {
switch (blockState.getType()) {
case END_BRICKS:
case ENDER_STONE:
case GLOWSTONE:
case HARD_CLAY:
@ -177,11 +180,16 @@ public final class BlockUtils {
case NETHERRACK:
case OBSIDIAN:
case PACKED_ICE:
case PURPUR_BLOCK:
case PURPUR_PILLAR:
case PURPUR_SLAB:
case PURPUR_STAIRS:
case SANDSTONE:
case STAINED_CLAY:
case STONE:
case PRISMARINE:
case RED_SANDSTONE:
return true;
default:

View File

@ -39,7 +39,7 @@ public final class ChimaeraWing {
return;
}
ItemStack inHand = player.getItemInHand();
ItemStack inHand = player.getInventory().getItemInMainHand();
if (!ItemUtils.isChimaeraWing(inHand)) {
return;
@ -91,7 +91,7 @@ public final class ChimaeraWing {
if (Config.getInstance().getChimaeraPreventUseUnderground()) {
if (location.getY() < player.getWorld().getHighestBlockYAt(location)) {
player.setItemInHand(new ItemStack(getChimaeraWing(amount - Config.getInstance().getChimaeraUseCost())));
player.getInventory().setItemInMainHand(new ItemStack(getChimaeraWing(amount - Config.getInstance().getChimaeraUseCost())));
player.sendMessage(LocaleLoader.getString("Item.ChimaeraWing.Fail"));
player.updateInventory();
player.setVelocity(new Vector(0, 0.5D, 0));
@ -130,7 +130,7 @@ public final class ChimaeraWing {
}
}
player.setItemInHand(new ItemStack(getChimaeraWing(player.getItemInHand().getAmount() - Config.getInstance().getChimaeraUseCost())));
player.getInventory().setItemInMainHand(new ItemStack(getChimaeraWing(player.getInventory().getItemInMainHand().getAmount() - Config.getInstance().getChimaeraUseCost())));
player.updateInventory();
mcMMOPlayer.actualizeChimeraWingLastUse();
mcMMOPlayer.setTeleportCommenceLocation(null);

View File

@ -97,7 +97,7 @@ public class EventUtils {
callFakeArmSwingEvent(player);
}
FakeBlockDamageEvent damageEvent = new FakeBlockDamageEvent(player, block, player.getItemInHand(), true);
FakeBlockDamageEvent damageEvent = new FakeBlockDamageEvent(player, block, player.getInventory().getItemInMainHand(), true);
pluginManager.callEvent(damageEvent);
FakeBlockBreakEvent breakEvent = new FakeBlockBreakEvent(block, player);

View File

@ -589,6 +589,8 @@ public final class ItemUtils {
case WHEAT:
case SEEDS:
case CARROT_ITEM:
case CHORUS_FRUIT:
case CHORUS_FLOWER:
case POTATO_ITEM:
case NETHER_WARTS:
case BROWN_MUSHROOM:

View File

@ -214,7 +214,7 @@ public final class CombatUtils {
return;
}
ItemStack heldItem = player.getItemInHand();
ItemStack heldItem = player.getInventory().getItemInMainHand();
if (target instanceof Tameable) {
if (heldItem.getType() == Material.BONE) {
@ -308,7 +308,7 @@ public final class CombatUtils {
event.setDamage(acrobaticsManager.dodgeCheck(event.getDamage()));
}
if (ItemUtils.isSword(player.getItemInHand())) {
if (ItemUtils.isSword(player.getInventory().getItemInMainHand())) {
if (!SkillType.SWORDS.shouldProcess(target)) {
return;
}
@ -386,7 +386,7 @@ public final class CombatUtils {
* @param type The type of skill being used
*/
public static void applyAbilityAoE(Player attacker, LivingEntity target, double damage, Map<DamageModifier, Double> modifiers, SkillType type) {
int numberOfTargets = getTier(attacker.getItemInHand()); // The higher the weapon tier, the more targets you hit
int numberOfTargets = getTier(attacker.getInventory().getItemInMainHand()); // The higher the weapon tier, the more targets you hit
double damageAmount = Math.max(damage, 1);
for (Entity entity : target.getNearbyEntities(2.5, 2.5, 2.5)) {
@ -475,18 +475,20 @@ public final class CombatUtils {
case CREEPER:
case ENDER_DRAGON:
case ENDERMAN:
case ENDERMITE:
case GHAST:
case GIANT:
case MAGMA_CUBE:
case PIG_ZOMBIE:
case SHULKER:
case SILVERFISH:
case SLIME:
case SPIDER:
case WITCH:
case WITHER:
case ZOMBIE:
case ENDERMITE:
baseXP = ExperienceConfig.getInstance().getCombatXP(type);
break;
case SKELETON:

View File

@ -97,7 +97,7 @@ public class SkillUtils {
public static void handleAbilitySpeedIncrease(Player player) {
if (HiddenConfig.getInstance().useEnchantmentBuffs()) {
ItemStack heldItem = player.getItemInHand();
ItemStack heldItem = player.getInventory().getItemInMainHand();
if (heldItem == null || heldItem.getType() == Material.AIR) {
return;