mirror of
https://github.com/songoda/UltimateKits.git
synced 2024-12-01 14:43:38 +01:00
Merge branch 'development'
This commit is contained in:
commit
4201c14684
4
pom.xml
4
pom.xml
@ -2,7 +2,7 @@
|
|||||||
<groupId>com.songoda</groupId>
|
<groupId>com.songoda</groupId>
|
||||||
<artifactId>UltimateKits</artifactId>
|
<artifactId>UltimateKits</artifactId>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<version>2.6.5</version>
|
<version>2.6.6</version>
|
||||||
<build>
|
<build>
|
||||||
<defaultGoal>clean install</defaultGoal>
|
<defaultGoal>clean install</defaultGoal>
|
||||||
<finalName>UltimateKits-${project.version}</finalName>
|
<finalName>UltimateKits-${project.version}</finalName>
|
||||||
@ -128,7 +128,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.zrips</groupId>
|
<groupId>com.zrips</groupId>
|
||||||
<artifactId>CMI</artifactId>
|
<artifactId>CMI</artifactId>
|
||||||
<version>8.0.8.1</version>
|
<version>8.6.26.9</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.zaxxer</groupId>
|
<groupId>com.zaxxer</groupId>
|
||||||
|
@ -38,6 +38,7 @@ public class Convert {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static void convertKits(Hook hook) {
|
private static void convertKits(Hook hook) {
|
||||||
|
try {
|
||||||
Set<String> kits = hook.getKits();
|
Set<String> kits = hook.getKits();
|
||||||
for (String kit : kits) {
|
for (String kit : kits) {
|
||||||
Kit kitObj = UltimateKits.getInstance().getKitManager().addKit(new Kit(kit));
|
Kit kitObj = UltimateKits.getInstance().getKitManager().addKit(new Kit(kit));
|
||||||
@ -49,6 +50,9 @@ public class Convert {
|
|||||||
kitObj.setDelay(hook.getDelay(kit));
|
kitObj.setDelay(hook.getDelay(kit));
|
||||||
}
|
}
|
||||||
UltimateKits.getInstance().saveKits(true);
|
UltimateKits.getInstance().saveKits(true);
|
||||||
|
} catch (NoSuchMethodError | NoClassDefFoundError e) {
|
||||||
|
System.out.println("UltimateKits conversion failed.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean isInJsonFormat() {
|
private static boolean isInJsonFormat() {
|
||||||
|
@ -29,7 +29,7 @@ public class DisplayItemHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void start() {
|
public void start() {
|
||||||
Bukkit.getServer().getScheduler().runTaskTimerAsynchronously(instance, this::displayItems, 30L, 30L);
|
Bukkit.getServer().getScheduler().runTaskTimer(instance, this::displayItems, 30L, 30L);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void displayItems() {
|
private void displayItems() {
|
||||||
@ -48,6 +48,10 @@ public class DisplayItemHandler {
|
|||||||
if (list == null) return;
|
if (list == null) return;
|
||||||
|
|
||||||
if (list.isEmpty()) return;
|
if (list.isEmpty()) return;
|
||||||
|
|
||||||
|
if (!location.getWorld().isChunkLoaded((int) location.getX() >> 4, (int) location.getZ() >> 4))
|
||||||
|
return;
|
||||||
|
|
||||||
for (Entity e : location.getChunk().getEntities()) {
|
for (Entity e : location.getChunk().getEntities()) {
|
||||||
if (e.getType() != EntityType.DROPPED_ITEM
|
if (e.getType() != EntityType.DROPPED_ITEM
|
||||||
|| e.getLocation().getX() != location.getX()
|
|| e.getLocation().getX() != location.getX()
|
||||||
|
@ -308,7 +308,7 @@ public class Kit {
|
|||||||
if (innerContents.size() != itemGiveAmount || kitAnimation != KitAnimation.NONE)
|
if (innerContents.size() != itemGiveAmount || kitAnimation != KitAnimation.NONE)
|
||||||
Collections.shuffle(innerContents);
|
Collections.shuffle(innerContents);
|
||||||
|
|
||||||
for (KitItem item : innerContents) {
|
for (KitItem item : new ArrayList<>(innerContents)) {
|
||||||
if (itemGiveAmount == 0) break;
|
if (itemGiveAmount == 0) break;
|
||||||
double ch = item.getChance() == 0 ? 100 : item.getChance();
|
double ch = item.getChance() == 0 ? 100 : item.getChance();
|
||||||
double rand = Math.random() * 100;
|
double rand = Math.random() * 100;
|
||||||
@ -326,6 +326,8 @@ public class Kit {
|
|||||||
|| item.getContent() instanceof KitContentCommand)
|
|| item.getContent() instanceof KitContentCommand)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
innerContents.remove(item);
|
||||||
|
|
||||||
if (Settings.AUTO_EQUIP_ARMOR.getBoolean() && ArmorType.equip(player, parseStack)) continue;
|
if (Settings.AUTO_EQUIP_ARMOR.getBoolean() && ArmorType.equip(player, parseStack)) continue;
|
||||||
|
|
||||||
Map<Integer, ItemStack> overfilled = player.getInventory().addItem(parseStack);
|
Map<Integer, ItemStack> overfilled = player.getInventory().addItem(parseStack);
|
||||||
|
@ -98,11 +98,13 @@ public class InteractListeners implements Listener {
|
|||||||
@EventHandler
|
@EventHandler
|
||||||
public void onCrateClick(PlayerInteractEvent event) {
|
public void onCrateClick(PlayerInteractEvent event) {
|
||||||
// Would be better to use NBT to make the item persist over aesthetic changes.
|
// Would be better to use NBT to make the item persist over aesthetic changes.
|
||||||
|
// Yes you really should have used NBT. In fact we have an API for this in SongodaCore...
|
||||||
|
|
||||||
// Filter physical actions (pressure plates, buttons)
|
// Filter physical actions (pressure plates, buttons)
|
||||||
if (event.getAction() == Action.PHYSICAL
|
if (event.getAction() == Action.PHYSICAL
|
||||||
|| event.getItem() == null
|
|| event.getItem() == null
|
||||||
|| event.getItem().getType() == CompatibleMaterial.AIR.getMaterial())
|
|| event.getItem().getType() == CompatibleMaterial.AIR.getMaterial()
|
||||||
|
|| CompatibleMaterial.getMaterial(event.getItem()) != CompatibleMaterial.CHEST)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ItemStack item = event.getItem();
|
ItemStack item = event.getItem();
|
||||||
|
Loading…
Reference in New Issue
Block a user