From 07ceae1ae72511ececf469231511c23d7be7a550 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 72b12d869e..408ef423e9 100644
--- a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
+++ b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
@@ -121,6 +121,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) {
@@ -138,7 +141,7 @@ public abstract class MobSpawnerAbstract {
                             entityinsentient.doSpawnEffect();
                         }
 
-                        flag = true;
+                        /*flag = true;*/ // Paper - moved up above cancellable event
                     }
                 }
 
-- 
2.19.0