mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-22 21:26:46 +01:00
Fix for Blast Mining not always activating bonuses.
This commit is contained in:
parent
36d6221b3b
commit
36a706b7b6
@ -12,6 +12,8 @@ Version 2.0.00-dev
|
||||
+ Added ability to summon Ocelots with Call of the Wild
|
||||
= Fixed ClassCastException from Taming preventDamage checks
|
||||
= Fixed issue with Blast Mining not seeing TNT for detonation due to snow
|
||||
! Changed Call of the Wild to activate on left-click rather than right-click
|
||||
! Changed Blast Mining to track based on Entity ID vs. Location
|
||||
|
||||
Version 1.3.02
|
||||
+ Added in game guides for Mining, Excavation, and Acrobatics. Simply type /skillname ? to access them
|
||||
|
@ -19,7 +19,6 @@ package com.gmail.nossr50.config;
|
||||
import java.util.*;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
@ -37,7 +36,7 @@ public class Misc
|
||||
public HashSet<Block> blockWatchList = new HashSet<Block>();
|
||||
public HashMap<Entity, Integer> arrowTracker = new HashMap<Entity, Integer>();
|
||||
public ArrayList<LivingEntity> bleedTracker = new ArrayList<LivingEntity>();
|
||||
public HashMap<Location, Player> tntTracker = new HashMap<Location, Player>();
|
||||
public HashMap<Integer, Player> tntTracker = new HashMap<Integer, Player>();
|
||||
mcMMO plugin = null;
|
||||
|
||||
//BLEED QUE STUFF
|
||||
|
@ -70,9 +70,6 @@ public class mcBlockListener implements Listener
|
||||
int id = block.getTypeId();
|
||||
Material mat = block.getType();
|
||||
|
||||
//TNT placement checks - needed for Blast Mining
|
||||
if(mat.equals(Material.TNT) && mcPermissions.getInstance().blastMining(player))
|
||||
plugin.misc.tntTracker.put(block.getLocation(), player);
|
||||
//Check if the blocks placed should be monitored so they do not give out XP in the future
|
||||
if(m.shouldBeWatched(mat))
|
||||
{
|
||||
@ -154,10 +151,6 @@ public class mcBlockListener implements Listener
|
||||
/*
|
||||
* MINING
|
||||
*/
|
||||
//TNT removal checks - needed for Blast Mining
|
||||
if(id == 46 && plugin.misc.tntTracker.containsKey(block.getLocation()))
|
||||
plugin.misc.tntTracker.remove(block.getLocation());
|
||||
|
||||
if(mcPermissions.getInstance().mining(player))
|
||||
{
|
||||
if(LoadProperties.miningrequirespickaxe && m.isMiningPick(inhand))
|
||||
|
@ -16,7 +16,6 @@
|
||||
*/
|
||||
package com.gmail.nossr50.listeners;
|
||||
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.EntityType;
|
||||
@ -55,7 +54,6 @@ import com.gmail.nossr50.skills.BlastMining;
|
||||
import com.gmail.nossr50.skills.Skills;
|
||||
import com.gmail.nossr50.skills.Taming;
|
||||
|
||||
|
||||
public class mcEntityListener implements Listener
|
||||
{
|
||||
private final mcMMO plugin;
|
||||
@ -162,21 +160,13 @@ public class mcEntityListener implements Listener
|
||||
@EventHandler (priority = EventPriority.LOW)
|
||||
public void onExplosionPrime(ExplosionPrimeEvent event)
|
||||
{
|
||||
if(event.getEntity() instanceof TNTPrimed)
|
||||
Entity entity = event.getEntity();
|
||||
if(entity instanceof TNTPrimed)
|
||||
{
|
||||
Location location = event.getEntity().getLocation();
|
||||
System.out.println("UNNORMALIZED LOCATION");
|
||||
System.out.println(location);
|
||||
//Ugly code to make it recognize the location
|
||||
location.setX(location.getBlockX()+1);
|
||||
location.setY(location.getBlockY());
|
||||
location.setZ(location.getBlockZ()+1);
|
||||
System.out.println("NORMALIZED LOCATION");
|
||||
System.out.println(location);
|
||||
|
||||
if(plugin.misc.tntTracker.containsKey(location))
|
||||
int id = entity.getEntityId();
|
||||
if(plugin.misc.tntTracker.containsKey(id))
|
||||
{
|
||||
Player player = plugin.misc.tntTracker.get(location);
|
||||
Player player = plugin.misc.tntTracker.get(id);
|
||||
BlastMining.biggerBombs(player, event);
|
||||
}
|
||||
}
|
||||
@ -185,20 +175,15 @@ public class mcEntityListener implements Listener
|
||||
@EventHandler (priority = EventPriority.LOW)
|
||||
public void onEnitityExplode(EntityExplodeEvent event)
|
||||
{
|
||||
Entity entity = event.getEntity();
|
||||
if(event.getEntity() instanceof TNTPrimed)
|
||||
{
|
||||
Location location = event.getEntity().getLocation();
|
||||
|
||||
//Ugly code to make it recognize the location
|
||||
location.setX(location.getBlockX()+1);
|
||||
location.setY(location.getBlockY());
|
||||
location.setZ(location.getBlockZ()+1);
|
||||
|
||||
if(plugin.misc.tntTracker.containsKey(location))
|
||||
int id = entity.getEntityId();
|
||||
if(plugin.misc.tntTracker.containsKey(id))
|
||||
{
|
||||
Player player = plugin.misc.tntTracker.get(location);
|
||||
Player player = plugin.misc.tntTracker.get(id);
|
||||
BlastMining.dropProcessing(player, event, plugin);
|
||||
plugin.misc.tntTracker.remove(location);
|
||||
plugin.misc.tntTracker.remove(id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -259,7 +259,7 @@ public class mcPlayerListener implements Listener
|
||||
if(action == Action.RIGHT_CLICK_BLOCK && m.abilityBlockCheck(block))
|
||||
Item.itemchecks(player, plugin);
|
||||
|
||||
if(player.isSneaking() && mcPermissions.getInstance().taming(player) && (action == Action.RIGHT_CLICK_AIR || action == Action.RIGHT_CLICK_BLOCK))
|
||||
if(player.isSneaking() && mcPermissions.getInstance().taming(player) && (action == Action.LEFT_CLICK_AIR || action == Action.LEFT_CLICK_BLOCK))
|
||||
{
|
||||
if(is.getType().equals(Material.RAW_FISH))
|
||||
Taming.animalSummon(EntityType.OCELOT, player);
|
||||
@ -295,6 +295,7 @@ public class mcPlayerListener implements Listener
|
||||
player.sendMessage(ChatColor.GRAY+"**BOOM**");
|
||||
|
||||
TNTPrimed tnt = player.getWorld().spawn(b.getLocation(), TNTPrimed.class);
|
||||
plugin.misc.tntTracker.put(tnt.getEntityId(), player);
|
||||
b.setType(Material.AIR);
|
||||
tnt.setFuseTicks(0);
|
||||
PP.setSkillDATS(ability, System.currentTimeMillis()); //Save DATS for Blast Mining
|
||||
|
@ -195,9 +195,7 @@ public class Taming
|
||||
world.spawnCreature(player.getLocation(), type);
|
||||
|
||||
int amount = item.getAmount();
|
||||
System.out.println(amount);
|
||||
amount = amount - summonAmount;
|
||||
System.out.println(amount);
|
||||
player.setItemInHand(new ItemStack(summonItem, amount));
|
||||
player.sendMessage(mcLocale.getString("m.TamingSummon"));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user