Breeding will now properly timeout.

This commit is contained in:
Brianna O'Keefe 2019-01-15 00:56:34 -05:00
parent ee92b59184
commit 8b27dc8a80
2 changed files with 14 additions and 0 deletions

View File

@ -1,9 +1,11 @@
package com.songoda.ultimatestacker.events;
import com.songoda.ultimatestacker.UltimateStacker;
import org.bukkit.Bukkit;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityBreedEvent;
import org.bukkit.metadata.FixedMetadataValue;
public class BreedListeners implements Listener {
@ -16,7 +18,15 @@ public class BreedListeners implements Listener {
@EventHandler
public void onBread(EntityBreedEvent event) {
Bukkit.getScheduler().scheduleSyncDelayedTask(instance, () -> {
if (event.getFather() != null)
event.getFather().removeMetadata("breedCooldown", instance);
if (event.getMother() != null)
event.getMother().removeMetadata("breedCooldown", instance);
}, 5 * 20 * 60);
event.getFather().setMetadata("breedCooldown", new FixedMetadataValue(instance, true));
event.getFather().removeMetadata("inLove", instance);
event.getMother().setMetadata("breedCooldown", new FixedMetadataValue(instance, true));
event.getMother().removeMetadata("inLove", instance);
}
}

View File

@ -48,6 +48,10 @@ public class Methods {
entityList.removeIf(entity -> ((Villager) entity).getProfession() != villager.getProfession());
}
if (initalEntity.hasMetadata("breedCooldown")) {
entityList.removeIf(entity -> !entity.hasMetadata("breedCooldown"));
}
return entityList;
}