Skip to content

Commit a579f76

Browse files
committed
Remove 1.14 and 1.15 support; use XSeries ActionBar; fix smashdown activating LMS; hide numerous deprecation warnings
1 parent b6ae2fb commit a579f76

97 files changed

Lines changed: 171 additions & 4377 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/gradle.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,6 @@ jobs:
2020
run: java -jar BuildTools.jar --rev 1.8.8
2121
- name: Build MC 1.12.2
2222
run: java -jar BuildTools.jar --rev 1.12.2
23-
- name: Build MC 1.14.4
24-
run: java -jar BuildTools.jar --rev 1.14.4
25-
- name: Build MC 1.15.2
26-
run: java -jar BuildTools.jar --rev 1.15.2
2723
- name: Build MC 1.16.5
2824
run: java -jar BuildTools.jar --rev 1.16.5
2925
- name: Set up JDK 16

COMPILING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This project depends on NMS, which shouldn't be redistributed. This means you'll have to build some of the dependencies yourself. (TODO: a script/tool for this would be handy)
44

55
How to compile:
6-
1. Use BuildTools normally and create a (remapped when supported) jar for every NMS version UC depends on. At the time of writing, the versions are: 1.8.8, 1.12.2, 1.14.4, 1.15.2, 1.16.5, 1.17.1\*, and 1.18.2\*.
6+
1. Use BuildTools normally and create a (remapped when supported) jar for every NMS version UC depends on. At the time of writing, the versions are: 1.8.8, 1.12.2, 1.16.5, 1.17.1\*, and 1.18.2\*.
77
2. Open a shell in the UC folder, and run `./gradlew clean obfuscate`. Using tasks `build` or `jar` will not produce a jar that works with 1.17 and up because of the new mappings. `clean` is sometimes required for some reason.
88
3. The built UC jar is at `build/libs/UltraCosmetics-<version>-<buildtype>.jar`. Do NOT use the other jar that says `obfuscated-donotuse`, it won't work.
99

build.gradle

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ allprojects {
44
apply plugin: 'idea'
55

66
group = 'be.isach'
7-
version = '2.6.2-DEV-b3'
7+
version = '2.6.2-DEV-b4'
88

99
compileJava.options.encoding = 'UTF-8'
1010

@@ -64,10 +64,6 @@ subprojects { subproj ->
6464
mavenLocal()
6565
mavenCentral()
6666

67-
maven {
68-
url 'https://repo.isach.be'
69-
}
70-
7167
// Lib's Disguises
7268
maven {
7369
url 'https://repo.md-5.net/content/groups/public/'

core/build.gradle

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,13 @@ dependencies {
2525
}
2626
// 'api' so it's passed down to NMS modules
2727
api 'com.github.cryptomorin:XSeries:8.7.1'
28+
implementation 'org.bstats:bstats-bukkit:3.0.0'
2829
}
2930
shadowJar {
31+
def path = 'be.isach.ultracosmetics.shaded'
3032
// XParticle is big and not required so don't shade it
3133
exclude 'com/cryptomorin/xseries/particles/*'
32-
relocate ('com.zaxxer.hikari', 'be.isach.ultracosmetics.shaded.hikari')
33-
relocate ('com.cryptomorin.xseries', 'be.isach.ultracosmetics.shaded.xseries')
34+
relocate ('com.zaxxer.hikari', path + '.hikari')
35+
relocate ('com.cryptomorin.xseries', path + '.xseries')
36+
relocate ('org.bstats', path + '.metrics')
3437
}

core/src/main/java/be/isach/ultracosmetics/UltraCosmetics.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,13 @@
2525
import be.isach.ultracosmetics.util.ArmorStandManager;
2626
import be.isach.ultracosmetics.util.EntitySpawningManager;
2727
import be.isach.ultracosmetics.util.PermissionPrinter;
28-
import be.isach.ultracosmetics.util.Metrics;
2928
import be.isach.ultracosmetics.util.ReflectionUtils;
29+
import be.isach.ultracosmetics.util.ServerVersion;
3030
import be.isach.ultracosmetics.util.UpdateManager;
3131
import be.isach.ultracosmetics.version.AFlagManager;
3232
import be.isach.ultracosmetics.version.VersionManager;
3333

34+
import org.bstats.bukkit.Metrics;
3435
import org.bukkit.Bukkit;
3536
import org.bukkit.configuration.ConfigurationSection;
3637
import org.bukkit.configuration.InvalidConfigurationException;
@@ -139,7 +140,7 @@ public void onLoad() {
139140
if (worldGuardIntegration && getServer().getPluginManager().getPlugin("WorldGuard") != null) {
140141
// does reflect-y things but isn't in VersionManager because of the load timing
141142
// and because it should only happen if WorldGuard is present
142-
String wgVersionPackage = VersionManager.IS_VERSION_1_13 ? "v1_14_R1" : "v1_12_R1";
143+
String wgVersionPackage = (VersionManager.IS_VERSION_1_13 ? ServerVersion.v1_16_R3 : ServerVersion.v1_12_R1).name();
143144
try {
144145
flagManager = (AFlagManager) ReflectionUtils.instantiateObject(Class.forName(VersionManager.PACKAGE + "." + wgVersionPackage + ".worldguard.FlagManager"));
145146
} catch (InstantiationException | IllegalAccessException | IllegalArgumentException

core/src/main/java/be/isach/ultracosmetics/UltraCosmeticsData.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,9 @@
55
import be.isach.ultracosmetics.log.SmartLogger.LogLevel;
66
import be.isach.ultracosmetics.util.ServerVersion;
77
import be.isach.ultracosmetics.version.VersionManager;
8+
89
import org.bukkit.Bukkit;
9-
import org.bukkit.UnsafeValues;
10+
1011
import java.lang.reflect.Method;
1112
import java.util.StringJoiner;
1213
import java.util.UUID;
@@ -175,7 +176,7 @@ boolean checkServerVersion() {
175176
boolean checkMappingsVersion(ServerVersion version) {
176177
String currentMappingsVersion = null;
177178
@SuppressWarnings("deprecation")
178-
UnsafeValues magicNumbers = Bukkit.getUnsafe();
179+
Object magicNumbers = Bukkit.getUnsafe();
179180
Class<?> magicNumbersClass = magicNumbers.getClass();
180181
try {
181182
Method mappingsVersionMethod = magicNumbersClass.getDeclaredMethod("getMappingsVersion");

core/src/main/java/be/isach/ultracosmetics/cosmetics/gadgets/Gadget.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
import org.bukkit.scheduler.BukkitRunnable;
3535

3636
import com.cryptomorin.xseries.XSound;
37+
import com.cryptomorin.xseries.messages.ActionBar;
3738

3839
import java.text.DecimalFormat;
3940
import java.text.DecimalFormatSymbols;
@@ -138,6 +139,7 @@ public void run() {
138139
onUpdate();
139140
try {
140141
if (UltraCosmeticsData.get().displaysCooldownInBar()) {
142+
@SuppressWarnings("deprecation")
141143
ItemStack hand = getPlayer().getItemInHand();
142144
// TODO: this is ugly
143145
if (hand != null && itemStack != null && hand.hasItemMeta() && hand.getType() == getItemStack().getType()
@@ -161,7 +163,7 @@ public void run() {
161163
String message = MessageManager.getMessage("Gadgets.Gadget-Ready-ActionBar");
162164
message = message.replace("%gadgetname%",
163165
TextUtil.filterPlaceHolder(getType().getName()));
164-
UltraCosmeticsData.get().getVersionManager().getAncientUtil().sendActionBarMessage(getPlayer(), message);
166+
ActionBar.sendActionBar(getPlayer(), message);
165167
XSound.BLOCK_NOTE_BLOCK_HAT.play(getPlayer(), 1.4f, 1.5f);
166168
}
167169
}
@@ -211,8 +213,7 @@ private void sendCooldownBar() {
211213
final DecimalFormat decimalFormat = new DecimalFormat("0.0", otherSymbols);
212214
String timeLeft = decimalFormat.format(currentCooldown) + "s";
213215

214-
UltraCosmeticsData.get().getVersionManager().getAncientUtil().sendActionBarMessage(getPlayer(),
215-
getType().getName() + ChatColor.WHITE + " " + stringBuilder.toString() + ChatColor.WHITE + " " + timeLeft);
216+
ActionBar.sendActionBar(getPlayer(), getType().getName() + ChatColor.WHITE + " " + stringBuilder.toString() + ChatColor.WHITE + " " + timeLeft);
216217

217218
}
218219

@@ -297,6 +298,7 @@ public void onPlayerInteract(final PlayerInteractEvent event) {
297298
if (player != getPlayer()) return;
298299
if (event.getAction() == Action.PHYSICAL)
299300
return;
301+
@SuppressWarnings("deprecation")
300302
ItemStack itemStack = player.getItemInHand();
301303
if (itemStack.getType() != getType().getMaterial().parseMaterial())
302304
return;

core/src/main/java/be/isach/ultracosmetics/cosmetics/gadgets/GadgetAntiGravity.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ public GadgetAntiGravity(UltraPlayer owner, UltraCosmetics ultraCosmetics) {
3636
super(owner, GadgetType.valueOf("antigravity"), ultraCosmetics);
3737
}
3838

39+
@SuppressWarnings("deprecation")
3940
@Override
4041
void onRightClick() {
4142
as = getPlayer().getWorld().spawn(getPlayer().getLocation(), ArmorStand.class);

core/src/main/java/be/isach/ultracosmetics/cosmetics/gadgets/GadgetBatBlaster.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ public boolean hitPlayer(Location location, Player player) {
6161
return false;
6262
}
6363

64+
@SuppressWarnings("deprecation")
6465
@Override
6566
public void onUpdate() {
6667
if (bats != null && bats.isEmpty()) {

core/src/main/java/be/isach/ultracosmetics/cosmetics/gadgets/GadgetDiscoBall.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import org.bukkit.entity.Entity;
2020
import org.bukkit.entity.EntityType;
2121
import org.bukkit.event.player.PlayerInteractEvent;
22+
import org.bukkit.inventory.ItemStack;
2223
import org.bukkit.metadata.FixedMetadataValue;
2324
import org.bukkit.util.Vector;
2425

@@ -54,7 +55,7 @@ void onRightClick() {
5455
armorStand.setVisible(false);
5556
armorStand.setGravity(false);
5657
armorStand.setSmall(false);
57-
armorStand.setHelmet(ItemFactory.rename(XMaterial.LIGHT_BLUE_STAINED_GLASS.parseItem(), " "));
58+
setHelmet(armorStand, ItemFactory.rename(XMaterial.LIGHT_BLUE_STAINED_GLASS.parseItem(), " "));
5859
running = true;
5960
DISCO_BALLS.add(this);
6061
Bukkit.getScheduler().runTaskLater(getUltraCosmetics(), this::clean, 400);
@@ -89,7 +90,7 @@ public void onUpdate() {
8990

9091
if (UltraCosmeticsData.get().getServerVersion() == ServerVersion.v1_8_R3) {
9192
// TODO: why only on 1.8.8? does it work on other versions?
92-
armorStand.setHelmet(ItemFactory.getRandomStainedGlass());
93+
setHelmet(armorStand, ItemFactory.getRandomStainedGlass());
9394
}
9495

9596
Particles.SPELL.display(armorStand.getEyeLocation(), 1, 1f);
@@ -175,4 +176,9 @@ public void drawParticleLine(Location a, Location b, boolean dust, int particles
175176
}
176177
}
177178
}
179+
180+
@SuppressWarnings("deprecation")
181+
private void setHelmet(ArmorStand stand, ItemStack itemStack) {
182+
stand.setHelmet(itemStack);
183+
}
178184
}

0 commit comments

Comments
 (0)