mirror of
https://github.com/songoda/UltimateStacker.git
synced 2025-03-01 09:41:03 +01:00
Breeding will now properly timeout.
This commit is contained in:
parent
ee92b59184
commit
8b27dc8a80
@ -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);
|
||||
}
|
||||
}
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user