From b3d70e1fb0a7afd774048f3fd4bb34ea8ca7561f Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Thu, 30 Jul 2020 18:15:13 -0500 Subject: [PATCH] DragonEggPlaceEvent diff --git a/src/main/java/net/minecraft/server/EnderDragonBattle.java b/src/main/java/net/minecraft/server/EnderDragonBattle.java index f853f6c424da77c40ee3d5b5dc2279ba8918977c..5199cba870a6ea004ee72ce225a0b6f483aed2ed 100644 --- a/src/main/java/net/minecraft/server/EnderDragonBattle.java +++ b/src/main/java/net/minecraft/server/EnderDragonBattle.java @@ -359,7 +359,13 @@ public class EnderDragonBattle { this.generateExitPortal(true); this.n(); if (this.world.purpurConfig.enderDragonAlwaysDropsEggBlock || !this.previouslyKilled) { // Purpur - always place dragon egg - this.world.setTypeUpdate(this.world.getHighestBlockYAt(HeightMap.Type.MOTION_BLOCKING, WorldGenEndTrophy.a), Blocks.DRAGON_EGG.getBlockData()); + // Purpur start + BlockPosition pos = this.world.getHighestBlockYAt(HeightMap.Type.MOTION_BLOCKING, WorldGenEndTrophy.a); + net.pl3x.purpur.event.block.DragonEggPlaceEvent event = new net.pl3x.purpur.event.block.DragonEggPlaceEvent(MCUtil.toLocation(world, pos)); + if (event.callEvent()) { + this.world.setTypeUpdate(MCUtil.toBlockPosition(event.getLocation()), Blocks.DRAGON_EGG.getBlockData()); + } + // Purpur end } this.previouslyKilled = true;