Redid tick system.

This commit is contained in:
Brianna 2019-10-17 12:55:02 -04:00
parent f1cc08c175
commit 638749316d
2 changed files with 9 additions and 11 deletions

View File

@ -37,15 +37,18 @@ public abstract class Module {
public abstract int runEveryXTicks(); public abstract int runEveryXTicks();
private int currentTick = 0; private Map<Farm, Integer> currentTicks = new HashMap<>();
public void run(Farm farm, Collection<LivingEntity> entitiesAroundFarm) { public void run(Farm farm, Collection<LivingEntity> entitiesAroundFarm) {
if (!currentTicks.containsKey(farm))
currentTicks.put(farm, 1);
int currentTick = currentTicks.get(farm);
if (currentTick >= runEveryXTicks()) { if (currentTick >= runEveryXTicks()) {
runFinal(farm, entitiesAroundFarm); runFinal(farm, entitiesAroundFarm);
currentTick = 0; currentTicks.remove(farm);
return; return;
} }
currentTick++; currentTicks.put(farm, currentTick + 1);
} }
public abstract void runFinal(Farm farm, Collection<LivingEntity> entitiesAroundFarm); public abstract void runFinal(Farm farm, Collection<LivingEntity> entitiesAroundFarm);

View File

@ -1,22 +1,17 @@
package com.songoda.epicfarming.tasks; package com.songoda.epicfarming.tasks;
import com.songoda.core.compatibility.CompatibleMaterial;
import com.songoda.epicfarming.EpicFarming; import com.songoda.epicfarming.EpicFarming;
import com.songoda.epicfarming.boost.BoostData;
import com.songoda.epicfarming.farming.Farm; import com.songoda.epicfarming.farming.Farm;
import com.songoda.epicfarming.settings.Settings; import com.songoda.epicfarming.settings.Settings;
import com.songoda.epicfarming.utils.CropType; import org.bukkit.Bukkit;
import com.songoda.epicfarming.utils.Methods;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.entity.ArmorStand; import org.bukkit.entity.ArmorStand;
import org.bukkit.entity.LivingEntity; import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitRunnable;
import java.util.*; import java.util.ArrayList;
import java.util.Collection;
import java.util.stream.Collectors; import java.util.stream.Collectors;
public class FarmTask extends BukkitRunnable { public class FarmTask extends BukkitRunnable {