优化代码,添加快捷砍树内容,添加可以指令开启或关闭砍树与挖矿
This commit is contained in:
parent
1313d407ba
commit
267480f028
2
pom.xml
2
pom.xml
@ -6,7 +6,7 @@
|
||||
|
||||
<groupId>com.frontleaves</groupId>
|
||||
<artifactId>ChainMining</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<version>1.2-SNAPSHOT</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>chainMining</name>
|
||||
|
@ -1,20 +1,33 @@
|
||||
package com.frontleaves.chainmining;
|
||||
|
||||
import com.frontleaves.chainmining.commands.ChangeToUse;
|
||||
import com.frontleaves.chainmining.commands.PluginMenu;
|
||||
import com.frontleaves.chainmining.listeners.CutTreeListener;
|
||||
import com.frontleaves.chainmining.listeners.MineralsListener;
|
||||
import com.frontleaves.chainmining.listeners.PlayerJoinServerListener;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author 锋楪技术(深圳)有限公司
|
||||
*/
|
||||
public final class ChainMining extends JavaPlugin {
|
||||
|
||||
public static String prefix = "§8[§bFYCM§8]";
|
||||
|
||||
public static HashMap<String,HashMap<String, Boolean>> playerList = new HashMap<>();
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
// 载入插件指令
|
||||
getCommand("fycm").setExecutor(new PluginMenu(this));
|
||||
Objects.requireNonNull(getCommand("fycm")).setExecutor(new PluginMenu());
|
||||
Objects.requireNonNull(getCommand("fykg")).setExecutor(new ChangeToUse());
|
||||
// 载入监听器
|
||||
getServer().getPluginManager().registerEvents(new PlayerJoinServerListener(), this);
|
||||
getServer().getPluginManager().registerEvents(new MineralsListener(), this);
|
||||
getServer().getPluginManager().registerEvents(new CutTreeListener(), this);
|
||||
// Plugin startup logic
|
||||
getLogger().info("插件启动成功");
|
||||
}
|
||||
|
@ -0,0 +1,74 @@
|
||||
package com.frontleaves.chainmining.commands;
|
||||
|
||||
import com.frontleaves.chainmining.ChainMining;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author 锋楪技术(深圳)有限公司
|
||||
*/
|
||||
public class ChangeToUse implements CommandExecutor {
|
||||
@Override
|
||||
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
|
||||
if ("fykg".equalsIgnoreCase(command.getName())) {
|
||||
if (args.length != 0) {
|
||||
switch (args[0]) {
|
||||
case "cm":
|
||||
switch (args[1]) {
|
||||
case "on":
|
||||
ChainMining.playerList.get(sender.getName()).put("chainMining", true);
|
||||
sender.sendMessage(ChainMining.prefix + "§6 连锁挖矿设置为§2开启");
|
||||
break;
|
||||
case "off":
|
||||
ChainMining.playerList.get(sender.getName()).put("chainMining", false);
|
||||
sender.sendMessage(ChainMining.prefix + "§6 连锁挖矿设置为§c关闭");
|
||||
break;
|
||||
case "toggle":
|
||||
if (ChainMining.playerList.get(sender.getName()).get("chainMining")) {
|
||||
ChainMining.playerList.get(sender.getName()).put("chainMining", false);
|
||||
sender.sendMessage(ChainMining.prefix + "§6 连锁挖矿切换为§c关闭");
|
||||
} else {
|
||||
ChainMining.playerList.get(sender.getName()).put("chainMining", true);
|
||||
sender.sendMessage(ChainMining.prefix + "§6 连锁挖矿切换为§2开启");
|
||||
}
|
||||
break;
|
||||
default:
|
||||
sender.sendMessage(ChainMining.prefix + "§c 参数错误");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case "tr":
|
||||
switch (args[1]) {
|
||||
case "on":
|
||||
ChainMining.playerList.get(sender.getName()).put("tree", true);
|
||||
sender.sendMessage(ChainMining.prefix + "§6 快速砍树设置为§2开启");
|
||||
break;
|
||||
case "off":
|
||||
ChainMining.playerList.get(sender.getName()).put("tree", false);
|
||||
sender.sendMessage(ChainMining.prefix + "§6 快速砍树设置为§c关闭");
|
||||
break;
|
||||
case "toggle":
|
||||
if (ChainMining.playerList.get(sender.getName()).get("tree")) {
|
||||
ChainMining.playerList.get(sender.getName()).put("tree", false);
|
||||
sender.sendMessage(ChainMining.prefix + "§6 快速砍树切换为§c关闭");
|
||||
} else {
|
||||
ChainMining.playerList.get(sender.getName()).put("tree", true);
|
||||
sender.sendMessage(ChainMining.prefix + "§6 快速砍树切换为§2开启");
|
||||
}
|
||||
break;
|
||||
default:
|
||||
sender.sendMessage(ChainMining.prefix + "§c 参数错误");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
sender.sendMessage(ChainMining.prefix + "§c 参数不正确");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
@ -0,0 +1,105 @@
|
||||
package com.frontleaves.chainmining.commands;
|
||||
|
||||
import com.frontleaves.chainmining.ChainMining;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author 锋楪技术(深圳)有限公司
|
||||
*/
|
||||
public class PluginMenu implements CommandExecutor {
|
||||
|
||||
@Override
|
||||
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
|
||||
if ("fycm".equalsIgnoreCase(command.getName())) {
|
||||
if (args.length == 0) {
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§2连锁挖矿 §aChainMining");
|
||||
sender.sendMessage("§1作者:§3锋楪技术§8[§9筱锋xiao_lfeng§8]");
|
||||
sender.sendMessage("§6使用方法:§e/fycm help");
|
||||
sender.sendMessage("§c当前版本:§4v1.1-SNAPSHOT");
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
} else {
|
||||
if ("help".equals(args[0])) {
|
||||
if (args.length == 1) {
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§6/fycm help info §7--关于操作方法");
|
||||
sender.sendMessage("§6/fycm help operate §7--查看如何使用");
|
||||
sender.sendMessage("§6/fycm help scope §7--切换不同范围");
|
||||
sender.sendMessage("§6/fycm status §7--查看当前状态");
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
} else {
|
||||
switch (args[1]) {
|
||||
case "info":
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("本插件的使用方法大致分为如下四点:");
|
||||
sender.sendMessage("- 您可以单独使用连锁挖矿和快速砍树,两者可直接打开不会受到影响");
|
||||
sender.sendMessage("- 当您开启全局模式时候其他连锁挖矿、快速砍树和开路模式将会失效");
|
||||
sender.sendMessage("- 当您开启开路模式时候其他连锁挖矿、快速砍树和全局模式将会失效");
|
||||
sender.sendMessage("- 切换范围仅在全局模式适用,开路模式消耗盔甲耐久");
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
break;
|
||||
case "operate":
|
||||
if (args.length == 2) {
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§6/fykg cm on §7--启动连锁挖矿");
|
||||
sender.sendMessage("§6/fykg cm off §7--关闭连锁挖矿");
|
||||
sender.sendMessage("§6/fykg cm toggle §7--切换连锁挖矿");
|
||||
sender.sendMessage("§6/fykg tr on §7--启动快速砍树");
|
||||
sender.sendMessage("§6/fykg tr off §7--关闭快速砍树");
|
||||
sender.sendMessage("§6/fykg tr toggle §7--切换快速砍树");
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§31 §8/ §32");
|
||||
} else {
|
||||
if ("1".equals(args[2])) {
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§6/fykg cm on §7--启动连锁挖矿");
|
||||
sender.sendMessage("§6/fykg cm off §7--关闭连锁挖矿");
|
||||
sender.sendMessage("§6/fykg cm toggle §7--切换连锁挖矿");
|
||||
sender.sendMessage("§6/fykg tr on §7--启动快速砍树");
|
||||
sender.sendMessage("§6/fykg tr off §7--关闭快速砍树");
|
||||
sender.sendMessage("§6/fykg tr toggle §7--切换快速砍树");
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§31 §8/ §32");
|
||||
} else if ("2".equals(args[2])) {
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§6/fykg auto on §7--启动连锁挖矿");
|
||||
sender.sendMessage("§6/fykg auto off §7--关闭连锁挖矿");
|
||||
sender.sendMessage("§6/fykg auto toggle §7--切换连锁挖矿");
|
||||
sender.sendMessage("§6/fykg road on §7--启动快速砍树");
|
||||
sender.sendMessage("§6/fykg road off §7--关闭快速砍树");
|
||||
sender.sendMessage("§6/fykg road toggle §7--切换快速砍树");
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§31 §8/ §32");
|
||||
} else {
|
||||
sender.sendMessage(ChainMining.prefix + "§c 超出页面");
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "scope":
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§6/fycm all §7--切换快速砍树");
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
break;
|
||||
default:
|
||||
sender.sendMessage(ChainMining.prefix + "§c 参数错误,输入 /fycm 查看指令帮助");
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else if ("status".equals(args[0])) {
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
sender.sendMessage("§6连锁挖矿:§3" + ChainMining.playerList.get(sender.getName()).get("chainMining"));
|
||||
sender.sendMessage("§6快速砍树:§3" + ChainMining.playerList.get(sender.getName()).get("tree"));
|
||||
sender.sendMessage("§6全局操作:§3" + ChainMining.playerList.get(sender.getName()).get("auto"));
|
||||
sender.sendMessage("§6开路模式:§3" + ChainMining.playerList.get(sender.getName()).get("road"));
|
||||
sender.sendMessage("§7§l§m=]========§2§l 连锁挖矿§a§lChainMining§7§l§m ========[=");
|
||||
} else {
|
||||
sender.sendMessage(ChainMining.prefix + "§c 输入 /fycm 查看指令帮助");
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
@ -0,0 +1,864 @@
|
||||
package com.frontleaves.chainmining.listeners;
|
||||
|
||||
import com.frontleaves.chainmining.ChainMining;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.BlockFace;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.block.BlockBreakEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.Damageable;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author 锋楪技术(深圳)有限公司
|
||||
*/
|
||||
public class CutTreeListener implements Listener {
|
||||
|
||||
private int oakNumber;
|
||||
// 本次木头(需要扣除耐久)
|
||||
private Material thisBreak;
|
||||
// 本次树叶
|
||||
private Material thisLeaves;
|
||||
// 获取破坏位置
|
||||
private Location breakLocation;
|
||||
private int relativeDistanceX;
|
||||
private int relativeDistanceZ;
|
||||
// 最大破坏能力
|
||||
private int damage;
|
||||
private int maxDamage;
|
||||
|
||||
@EventHandler
|
||||
public void oakLog(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.OAK_LOG
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_OAK_LOG) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.OAK_LEAVES;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void birchLog(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.BIRCH_LOG
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_BIRCH_LOG) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.BIRCH_LEAVES;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void jungleLog(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.JUNGLE_LOG
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_JUNGLE_LOG) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.JUNGLE_LEAVES;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void acaciaLog(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.ACACIA_LOG
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_ACACIA_LOG) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.ACACIA_LEAVES;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void darkOrkLog(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.DARK_OAK_LOG
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_DARK_OAK_LOG) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.DARK_OAK_LEAVES;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void mangroveLog(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.MANGROVE_LOG
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_MANGROVE_LOG) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.MANGROVE_LEAVES;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void cherryLog(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.CHERRY_LOG
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_CHERRY_LOG) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.CHERRY_LEAVES;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void crimsonStem(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.CRIMSON_STEM
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_CRIMSON_STEM) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.CRIMSON_FUNGUS;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void warpedStem(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.WARPED_STEM
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_WARPED_STEM) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.WARPED_FUNGUS;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void spruceLog(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.SPRUCE_LOG
|
||||
|| blockBreakEvent.getBlock().getType() == Material.STRIPPED_SPRUCE_LOG) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisBreak = blockBreakEvent.getBlock().getType();
|
||||
thisLeaves = Material.BIRCH_LEAVES;
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(0, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void oakLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.OAK_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void spruceLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.SPRUCE_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void birchLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.BIRCH_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void jungleLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.JUNGLE_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void acaciaLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.ACACIA_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void mangroveLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.MANGROVE_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void azaleaLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.AZALEA_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void cherryLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.CHERRY_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void floweringAzaleaLeaves(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.FLOWERING_AZALEA_LEAVES) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void bambooBlock(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.BAMBOO_BLOCK) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void crimsonFungus(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.CRIMSON_FUNGUS) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void warpedFungus(@NotNull BlockBreakEvent blockBreakEvent) {
|
||||
// 检查玩家是否开启
|
||||
if (ChainMining.playerList.get(blockBreakEvent.getPlayer().getName()).get("tree")) {
|
||||
if (blockBreakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 检查能否掉落物品
|
||||
if (blockBreakEvent.getBlock().getType() == Material.WARPED_FUNGUS) {
|
||||
// 初始化参数
|
||||
Damageable getPlayerItem = (Damageable) blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
thisLeaves = blockBreakEvent.getBlock().getType();
|
||||
breakLocation = blockBreakEvent.getBlock().getLocation();
|
||||
oakNumber = 0;
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
maxDamage = blockBreakEvent.getPlayer().getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
damage = getPlayerItem.getDamage();
|
||||
}
|
||||
// 进行砍树
|
||||
anyWay(1, blockBreakEvent.getBlock());
|
||||
// 对物品造成破坏
|
||||
if (getPlayerItem != null && getPlayerItem.hasDamage()) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
getPlayerItem.setDamage(damage + oakNumber);
|
||||
blockBreakEvent.getPlayer().getInventory().getItemInMainHand().setItemMeta(getPlayerItem);
|
||||
} else {
|
||||
blockBreakEvent.getPlayer().getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
blockBreakEvent.getPlayer().playSound(blockBreakEvent.getPlayer().getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void cutOakAndLeaves(@NotNull Block getBlock) {
|
||||
while (getBlock.getType() == thisBreak) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
relativeDistanceX = breakLocation.getBlockX() - getBlock.getLocation().getBlockX();
|
||||
relativeDistanceZ = breakLocation.getBlockZ() - getBlock.getLocation().getBlockZ();
|
||||
if (relativeDistanceX < 0) {
|
||||
relativeDistanceX = -relativeDistanceX;
|
||||
}
|
||||
if (relativeDistanceZ < 0) {
|
||||
relativeDistanceZ = -relativeDistanceZ;
|
||||
}
|
||||
if (relativeDistanceX <= 5 && relativeDistanceZ <= 5) {
|
||||
getBlock.breakNaturally();
|
||||
oakNumber++;
|
||||
anyWay(0, getBlock);
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
while (getBlock.getType() == thisLeaves) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
relativeDistanceX = breakLocation.getBlockX() - getBlock.getLocation().getBlockX();
|
||||
relativeDistanceZ = breakLocation.getBlockZ() - getBlock.getLocation().getBlockZ();
|
||||
if (relativeDistanceX < 0) {
|
||||
relativeDistanceX = -relativeDistanceX;
|
||||
}
|
||||
if (relativeDistanceZ < 0) {
|
||||
relativeDistanceZ = -relativeDistanceZ;
|
||||
}
|
||||
if (relativeDistanceX <= 5 && relativeDistanceZ <= 5) {
|
||||
getBlock.breakNaturally();
|
||||
anyWay(0, getBlock);
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void cutLeaves(@NotNull Block getBlock) {
|
||||
while (getBlock.getType() == thisLeaves) {
|
||||
if (damage + oakNumber < maxDamage) {
|
||||
relativeDistanceX = breakLocation.getBlockX() - getBlock.getLocation().getBlockX();
|
||||
relativeDistanceZ = breakLocation.getBlockZ() - getBlock.getLocation().getBlockZ();
|
||||
if (relativeDistanceX < 0) {
|
||||
relativeDistanceX = -relativeDistanceX;
|
||||
}
|
||||
if (relativeDistanceZ < 0) {
|
||||
relativeDistanceZ = -relativeDistanceZ;
|
||||
}
|
||||
if (relativeDistanceX <= 3 && relativeDistanceZ <= 3) {
|
||||
getBlock.breakNaturally();
|
||||
oakNumber++;
|
||||
anyWay(1, getBlock);
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void anyWay(int cutType, Block getBlock) {
|
||||
for (BlockFace blockFace : BlockFace.values()) {
|
||||
if (cutType == 0 && blockFace == BlockFace.DOWN) {
|
||||
continue;
|
||||
}
|
||||
Block sideBlock = getBlock.getRelative(blockFace);
|
||||
if (sideBlock.getType() != Material.AIR) {
|
||||
if (cutType == 0) {
|
||||
cutOakAndLeaves(sideBlock);
|
||||
} else {
|
||||
cutLeaves(sideBlock);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
package com.frontleaves.chainmining.listeners;
|
||||
|
||||
import com.frontleaves.chainmining.ChainMining;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.Sound;
|
||||
@ -26,52 +27,55 @@ public class MineralsListener implements Listener {
|
||||
private static int damage;
|
||||
private static int maxDurability;
|
||||
|
||||
|
||||
@EventHandler
|
||||
public void coalBlock(BlockBreakEvent breakEvent) {
|
||||
// 检测这个方块能否掉落
|
||||
if (breakEvent.getPlayer().isSneaking()) {
|
||||
if (breakEvent.isDropItems()) {
|
||||
Block getBlock = breakEvent.getBlock();
|
||||
if (getBlock.getType() == Material.COAL_ORE || getBlock.getType() == Material.DEEPSLATE_COAL_ORE
|
||||
|| getBlock.getType() == Material.LAPIS_ORE || getBlock.getType() == Material.DEEPSLATE_LAPIS_ORE
|
||||
|| getBlock.getType() == Material.COPPER_ORE || getBlock.getType() == Material.DEEPSLATE_COPPER_ORE
|
||||
|| getBlock.getType() == Material.IRON_ORE || getBlock.getType() == Material.DEEPSLATE_IRON_ORE
|
||||
|| getBlock.getType() == Material.GOLD_ORE || getBlock.getType() == Material.DEEPSLATE_GOLD_ORE
|
||||
|| getBlock.getType() == Material.DIAMOND_ORE || getBlock.getType() == Material.DEEPSLATE_DIAMOND_ORE
|
||||
|| getBlock.getType() == Material.REDSTONE_ORE || getBlock.getType() == Material.DEEPSLATE_REDSTONE_ORE
|
||||
|| getBlock.getType() == Material.EMERALD_ORE || getBlock.getType() == Material.DEEPSLATE_EMERALD_ORE
|
||||
|| getBlock.getType() == Material.NETHER_GOLD_ORE
|
||||
|| getBlock.getType() == Material.NETHER_QUARTZ_ORE
|
||||
|| getBlock.getType() == Material.ANCIENT_DEBRIS) {
|
||||
if (breakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 预备事务
|
||||
Player getPlayer = breakEvent.getPlayer(); // 获取破坏方块的玩家
|
||||
Damageable getPlayerDamageable = (Damageable) breakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
maxDurability = getPlayer.getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
if (getPlayerDamageable != null && getPlayerDamageable.hasDamage()) {
|
||||
// 最大耐久检查
|
||||
damage = getPlayerDamageable.getDamage();
|
||||
}
|
||||
blockNumber = 0;
|
||||
expToGive = 0;
|
||||
if (maxDurability - damage > 0) {
|
||||
// 执行操作
|
||||
callbackCorruption(breakEvent.getBlock());
|
||||
// 执行完毕处理完成事务
|
||||
public void minerals(BlockBreakEvent breakEvent) {
|
||||
if (ChainMining.playerList.get(breakEvent.getPlayer().getName()).get("chainMining")) {
|
||||
if (breakEvent.getPlayer().isSneaking()) {
|
||||
// 检测这个方块能否掉落
|
||||
if (breakEvent.isDropItems()) {
|
||||
Block getBlock = breakEvent.getBlock();
|
||||
if (getBlock.getType() == Material.COAL_ORE || getBlock.getType() == Material.DEEPSLATE_COAL_ORE
|
||||
|| getBlock.getType() == Material.LAPIS_ORE || getBlock.getType() == Material.DEEPSLATE_LAPIS_ORE
|
||||
|| getBlock.getType() == Material.COPPER_ORE || getBlock.getType() == Material.DEEPSLATE_COPPER_ORE
|
||||
|| getBlock.getType() == Material.IRON_ORE || getBlock.getType() == Material.DEEPSLATE_IRON_ORE
|
||||
|| getBlock.getType() == Material.GOLD_ORE || getBlock.getType() == Material.DEEPSLATE_GOLD_ORE
|
||||
|| getBlock.getType() == Material.DIAMOND_ORE || getBlock.getType() == Material.DEEPSLATE_DIAMOND_ORE
|
||||
|| getBlock.getType() == Material.REDSTONE_ORE || getBlock.getType() == Material.DEEPSLATE_REDSTONE_ORE
|
||||
|| getBlock.getType() == Material.EMERALD_ORE || getBlock.getType() == Material.DEEPSLATE_EMERALD_ORE
|
||||
|| getBlock.getType() == Material.NETHER_GOLD_ORE
|
||||
|| getBlock.getType() == Material.NETHER_QUARTZ_ORE
|
||||
|| getBlock.getType() == Material.ANCIENT_DEBRIS) {
|
||||
if (breakEvent.getPlayer().getGameMode() == GameMode.SURVIVAL) {
|
||||
// 预备事务
|
||||
Player getPlayer = breakEvent.getPlayer(); // 获取破坏方块的玩家
|
||||
Damageable getPlayerDamageable = (Damageable) breakEvent.getPlayer().getInventory().getItemInMainHand().getItemMeta();
|
||||
maxDurability = getPlayer.getInventory().getItemInMainHand().getType().getMaxDurability();
|
||||
if (getPlayerDamageable != null && getPlayerDamageable.hasDamage()) {
|
||||
// 最大耐久检查
|
||||
if (maxDurability - damage - blockNumber <= 0) {
|
||||
if (blockNumber == 0) {
|
||||
breakEvent.setCancelled(true);
|
||||
}
|
||||
getPlayer.getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
getPlayer.playSound(getPlayer.getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
} else {
|
||||
getPlayerDamageable.setDamage(damage + blockNumber);
|
||||
getPlayer.getInventory().getItemInMainHand().setItemMeta(getPlayerDamageable);
|
||||
}
|
||||
damage = getPlayerDamageable.getDamage();
|
||||
}
|
||||
blockNumber = 0;
|
||||
expToGive = 0;
|
||||
if (maxDurability - damage > 0) {
|
||||
// 执行操作
|
||||
callbackCorruption(breakEvent.getBlock());
|
||||
// 执行完毕处理完成事务
|
||||
if (getPlayerDamageable != null && getPlayerDamageable.hasDamage()) {
|
||||
// 最大耐久检查
|
||||
if (maxDurability - damage - blockNumber <= 0) {
|
||||
if (blockNumber == 0) {
|
||||
breakEvent.setCancelled(true);
|
||||
}
|
||||
getPlayer.getInventory().setItemInMainHand(new ItemStack(Material.AIR));
|
||||
getPlayer.playSound(getPlayer.getLocation(), Sound.ENTITY_ITEM_BREAK, 1.0f, 1.0f);
|
||||
} else {
|
||||
getPlayerDamageable.setDamage(damage + blockNumber);
|
||||
getPlayer.getInventory().getItemInMainHand().setItemMeta(getPlayerDamageable);
|
||||
}
|
||||
}
|
||||
getPlayer.giveExp(expToGive);
|
||||
}
|
||||
getPlayer.giveExp(expToGive);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,30 @@
|
||||
package com.frontleaves.chainmining.listeners;
|
||||
|
||||
import com.frontleaves.chainmining.ChainMining;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.PlayerJoinEvent;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
/**
|
||||
* @author 锋楪技术(深圳)有限公司
|
||||
*/
|
||||
public class PlayerJoinServerListener implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void playerJoinEvent(PlayerJoinEvent getPlayer) {
|
||||
HashMap<String, Boolean> playerData = new HashMap<>();
|
||||
playerData.put("chainMining", true);
|
||||
playerData.put("tree", true);
|
||||
playerData.put("auto", false);
|
||||
playerData.put("road", false);
|
||||
ChainMining.playerList.put(getPlayer.getPlayer().getName(), playerData);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void playerLeaveEvent(PlayerQuitEvent getPlayer) {
|
||||
ChainMining.playerList.remove(getPlayer.getPlayer().getName());
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user