Mirror von
https://github.com/St3venAU/ArmorStandTools.git
synchronisiert 2024-12-28 20:40:12 +01:00
v2.1.3
Dieser Commit ist enthalten in:
Ursprung
86322971f7
Commit
f13d121919
@ -26,13 +26,14 @@ public class Main extends JavaPlugin {
|
||||
public final HashMap<UUID, ItemStack[]> savedInventories = new HashMap<UUID, ItemStack[]>();
|
||||
private final EulerAngle zero = new EulerAngle(0D, 0D, 0D);
|
||||
static String NMS_VERSION;
|
||||
static boolean oneNine;
|
||||
static boolean oneNine, oneNineFour;
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
NMS_VERSION = getServer().getClass().getPackage().getName().replace(".", ",").split(",")[3];
|
||||
oneNine = NMS_VERSION.startsWith("v1_9");
|
||||
getServer().getPluginManager().registerEvents(new MainListener(this), this);
|
||||
oneNineFour = NMS_VERSION.startsWith("v1_9_R2");
|
||||
getServer().getPluginManager().registerEvents(new MainListener(this), this);
|
||||
CommandExecutor ce = new Commands(this);
|
||||
getCommand("astools").setExecutor(ce);
|
||||
Config.reload(this);
|
||||
@ -183,7 +184,12 @@ public class Main extends JavaPlugin {
|
||||
clone.setChestplate(as.getChestplate());
|
||||
clone.setLeggings(as.getLeggings());
|
||||
clone.setBoots(as.getBoots());
|
||||
clone.setItemInHand(as.getItemInHand());
|
||||
if(oneNine) {
|
||||
clone.getEquipment().setItemInMainHand(as.getEquipment().getItemInMainHand());
|
||||
clone.getEquipment().setItemInOffHand(as.getEquipment().getItemInOffHand());
|
||||
} else {
|
||||
clone.setItemInHand(as.getItemInHand());
|
||||
}
|
||||
clone.setHeadPose(as.getHeadPose());
|
||||
clone.setBodyPose(as.getBodyPose());
|
||||
clone.setLeftArmPose(as.getLeftArmPose());
|
||||
|
@ -332,10 +332,15 @@ public class MainListener implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onEntityDamageByEntity(EntityDamageByEntityEvent event) {
|
||||
if(event.getEntity() instanceof ArmorStand && event.getDamager() instanceof Player && ArmorStandTool.isHoldingTool((Player) event.getDamager())) {
|
||||
event.setCancelled(true);
|
||||
if (noCooldown(event.getDamager())) {
|
||||
Utils.cycleInventory((Player) event.getDamager());
|
||||
if(event.getEntity() instanceof ArmorStand) {
|
||||
if(NBT.isInvulnerable((ArmorStand) event.getEntity())) {
|
||||
event.setCancelled(true);
|
||||
}
|
||||
if(event.getDamager() instanceof Player && ArmorStandTool.isHoldingTool((Player) event.getDamager())) {
|
||||
event.setCancelled(true);
|
||||
if(noCooldown(event.getDamager())) {
|
||||
Utils.cycleInventory((Player) event.getDamager());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,7 @@ class NBT {
|
||||
if(Main.oneNine) {
|
||||
Field f;
|
||||
try {
|
||||
f = nmsEntity.getClass().getDeclaredField("bz");
|
||||
f = nmsEntity.getClass().getDeclaredField(Main.oneNineFour ? "bA" : "bz");
|
||||
} catch (NoSuchFieldException e) {
|
||||
e.printStackTrace();
|
||||
return 0;
|
||||
@ -49,7 +49,7 @@ class NBT {
|
||||
if(Main.oneNine) {
|
||||
Field f;
|
||||
try {
|
||||
f = nmsEntity.getClass().getDeclaredField("bz");
|
||||
f = nmsEntity.getClass().getDeclaredField(Main.oneNineFour ? "bA" : "bz");
|
||||
} catch (NoSuchFieldException e) {
|
||||
e.printStackTrace();
|
||||
return;
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
# Main Config
|
||||
#
|
||||
# File generated by: v2.1.2
|
||||
# File generated by: v2.1.3
|
||||
# (If this is not the version you are running, consider deleting this
|
||||
# config to allow it to be re-created. There may be new config options)
|
||||
#
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
# Language Config
|
||||
#
|
||||
# File generated by: v2.1.2
|
||||
# File generated by: v2.1.3
|
||||
# (If this is not the version you are running, consider deleting this
|
||||
# config to allow it to be re-created. There may be new config options)
|
||||
#
|
||||
|
@ -1,6 +1,6 @@
|
||||
main: com.gmail.St3venAU.plugins.ArmorStandTools.Main
|
||||
name: ArmorStandTools
|
||||
version: 2.1.2
|
||||
version: 2.1.3
|
||||
author: St3venAU
|
||||
description: Armor stand manipulation tools
|
||||
softdepend: [WorldGuard, PlotSquared]
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren