|
7 | 7 | import com.laytonsmith.abstraction.MCHumanEntity;
|
8 | 8 | import com.laytonsmith.abstraction.MCItemStack;
|
9 | 9 | import com.laytonsmith.abstraction.MCLocation;
|
| 10 | +import com.laytonsmith.abstraction.MCNamespacedKey; |
10 | 11 | import com.laytonsmith.abstraction.MCPlayer;
|
11 | 12 | import com.laytonsmith.abstraction.MCWorld;
|
12 | 13 | import com.laytonsmith.abstraction.blocks.MCBlock;
|
|
16 | 17 | import com.laytonsmith.abstraction.bukkit.BukkitMCBookMeta;
|
17 | 18 | import com.laytonsmith.abstraction.bukkit.BukkitMCItemStack;
|
18 | 19 | import com.laytonsmith.abstraction.bukkit.BukkitMCLocation;
|
| 20 | +import com.laytonsmith.abstraction.bukkit.BukkitMCNamespacedKey; |
19 | 21 | import com.laytonsmith.abstraction.bukkit.BukkitMCWorld;
|
20 | 22 | import com.laytonsmith.abstraction.bukkit.blocks.BukkitMCBlock;
|
21 | 23 | import com.laytonsmith.abstraction.bukkit.blocks.BukkitMCMaterial;
|
|
31 | 33 | import com.laytonsmith.abstraction.enums.MCGameMode;
|
32 | 34 | import com.laytonsmith.abstraction.enums.MCResourcePackStatus;
|
33 | 35 | import com.laytonsmith.abstraction.enums.MCTeleportCause;
|
| 36 | +import com.laytonsmith.abstraction.enums.MCVersion; |
34 | 37 | import com.laytonsmith.abstraction.enums.bukkit.BukkitMCAction;
|
35 | 38 | import com.laytonsmith.abstraction.enums.bukkit.BukkitMCEnterBedResult;
|
36 | 39 | import com.laytonsmith.abstraction.enums.bukkit.BukkitMCFishingState;
|
|
40 | 43 | import com.laytonsmith.abstraction.events.MCExpChangeEvent;
|
41 | 44 | import com.laytonsmith.abstraction.events.MCFoodLevelChangeEvent;
|
42 | 45 | import com.laytonsmith.abstraction.events.MCGamemodeChangeEvent;
|
| 46 | +import com.laytonsmith.abstraction.events.MCPlayerAdvancementDoneEvent; |
43 | 47 | import com.laytonsmith.abstraction.events.MCPlayerBucketEmptyEvent;
|
44 | 48 | import com.laytonsmith.abstraction.events.MCPlayerBucketEvent;
|
45 | 49 | import com.laytonsmith.abstraction.events.MCPlayerBucketFillEvent;
|
|
67 | 71 | import com.laytonsmith.abstraction.events.MCPlayerToggleSprintEvent;
|
68 | 72 | import com.laytonsmith.abstraction.events.MCWorldChangedEvent;
|
69 | 73 | import com.laytonsmith.annotations.abstraction;
|
| 74 | +import com.laytonsmith.core.Static; |
70 | 75 | import org.bukkit.Bukkit;
|
71 | 76 | import org.bukkit.Location;
|
72 | 77 | import org.bukkit.World;
|
| 78 | +import org.bukkit.advancement.AdvancementDisplay; |
73 | 79 | import org.bukkit.block.BlockFace;
|
74 | 80 | import org.bukkit.damage.DamageSource;
|
75 | 81 | import org.bukkit.damage.DamageType;
|
|
78 | 84 | import org.bukkit.event.entity.FoodLevelChangeEvent;
|
79 | 85 | import org.bukkit.event.entity.PlayerDeathEvent;
|
80 | 86 | import org.bukkit.event.player.AsyncPlayerChatEvent;
|
| 87 | +import org.bukkit.event.player.PlayerAdvancementDoneEvent; |
81 | 88 | import org.bukkit.event.player.PlayerBedEnterEvent;
|
82 | 89 | import org.bukkit.event.player.PlayerBedLeaveEvent;
|
83 | 90 | import org.bukkit.event.player.PlayerBucketEmptyEvent;
|
@@ -1147,4 +1154,31 @@ public BukkitMCPlayerBucketEmptyEvent(PlayerBucketEmptyEvent event) {
|
1147 | 1154 | this.pbee = event;
|
1148 | 1155 | }
|
1149 | 1156 | }
|
| 1157 | + |
| 1158 | + @abstraction(type = Implementation.Type.BUKKIT) |
| 1159 | + public static class BukkitMCPlayerAdvancementDoneEvent extends BukkitMCPlayerEvent implements MCPlayerAdvancementDoneEvent { |
| 1160 | + |
| 1161 | + PlayerAdvancementDoneEvent e; |
| 1162 | + |
| 1163 | + public BukkitMCPlayerAdvancementDoneEvent(PlayerAdvancementDoneEvent event) { |
| 1164 | + super(event); |
| 1165 | + this.e = event; |
| 1166 | + } |
| 1167 | + |
| 1168 | + @Override |
| 1169 | + public MCNamespacedKey getAdvancementKey() { |
| 1170 | + return new BukkitMCNamespacedKey(e.getAdvancement().getKey()); |
| 1171 | + } |
| 1172 | + |
| 1173 | + @Override |
| 1174 | + public String getTitle() { |
| 1175 | + if(Static.getServer().getMinecraftVersion().gte(MCVersion.MC1_18_X)) { |
| 1176 | + AdvancementDisplay display = e.getAdvancement().getDisplay(); |
| 1177 | + if(display != null) { |
| 1178 | + return display.getTitle(); |
| 1179 | + } |
| 1180 | + } |
| 1181 | + return null; |
| 1182 | + } |
| 1183 | + } |
1150 | 1184 | }
|
0 commit comments