From c8a3ac3b122efcb12b6b67fe3aa8d3fa39da9e24 Mon Sep 17 00:00:00 2001
From: BillyGalbreath <Blake.Galbreath@GMail.com>
Date: Mon, 31 Jul 2017 01:45:19 -0500
Subject: [PATCH] Reset spawner timer when spawner event is cancelled


diff --git a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
index 7d140a6f5a..93fad14d3f 100644
--- a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
+++ b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
@@ -139,6 +139,9 @@ public abstract class MobSpawnerAbstract {
                         {
                             entity.fromMobSpawner = true;
                         }
+
+                        flag = true; // Paper
+
                         if (org.bukkit.craftbukkit.event.CraftEventFactory.callSpawnerSpawnEvent(entity, blockposition).isCancelled()) {
                             Entity vehicle = entity.getVehicle();
                             if (vehicle != null) {
@@ -156,7 +159,7 @@ public abstract class MobSpawnerAbstract {
                             ((EntityInsentient) entity).doSpawnEffect();
                         }
 
-                        flag = true;
+                        /*flag = true;*/ // Paper - moved up above cancellable event
                     }
                 }
 
-- 
2.21.0

