master-customAdvancements #4
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "master-customAdvancements"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
bot
@ -0,0 +30,4 @@
if(!(event.getView().getPlayer() instanceof Player player)) return;
if(result.getType() == Material.RED_SHULKER_BOX) {
// getAppliance().grantAdvancement(Advancements.fleischerchest, player.getUniqueId());
?
@ -16,0 +34,4 @@
Advancement advancement = Objects.requireNonNull(Bukkit.getAdvancement(namespacedKey));
player.getAdvancementProgress(advancement).awardCriteria("criteria");
} catch (Exception e) {
Main.logger().info("Custom Advancements Datapack not found!");
die Fehlermeldung kann irreführend sein. Es sollte zumindest im Fehler ersichtlich sein welches advancement fehlt.
mein Vorschlag hier wäre du throwst nach dem custom fehler einfach nochmal die exception
throw e
und packst in die Objects.requireNonNull das angefragte rein. Dann ist alles immer ersichtlich.@ -16,0 +46,4 @@
grantedAdvancements.forEach(pendingAdvancement -> grantAdvancement(pendingAdvancement.advancement(), player.getUniqueId()));
}
public void addPendingAdvancement(UUID receiver, String advancement) {
sollte private sein, wenn grantAdvancement entscheidet ob es pending ist oder nicht
@ -0,0 +34,4 @@
getAppliance().addPendingAdvancement(player.getUniqueId(), Advancements.fleischerchest);
} else if(
result.getItemMeta().itemName().equals(Component.text("98fdf0ae-c3ab-4ef7-ae25-efd518d600de"))
&& result.getItemMeta().getEnchantmentGlintOverride()
der check nach enchantmentGlintOverride raus, itemName reicht aus
(ggf kommt das glint raus, da zurzeit ein bugs mit overrideGlint auf köpfen besteht)
@ -0,0 +32,4 @@
if(result.getType() == Material.RED_SHULKER_BOX) {
// getAppliance().grantAdvancement(Advancements.fleischerchest, player.getUniqueId());
getAppliance().addPendingAdvancement(player.getUniqueId(), Advancements.fleischerchest);
} else if(
das else if konstrukt ist nicht schön...
ich tendiere sogar für jeweils einen eigenen handler pro advancement...
vielleicht einfach zwei einzelstehnede ifs mit quasi early return?
sieht gut aus :)