fix optimization logic
This commit is contained in:
parent
533d0507b2
commit
e660acd55e
@ -1,22 +1,11 @@
|
|||||||
package me.xginko.villageroptimizer.enums;
|
package me.xginko.villageroptimizer.enums;
|
||||||
|
|
||||||
public class Permissions {
|
public class Permissions {
|
||||||
public enum Misc {
|
|
||||||
IGNORED("villageroptimizer.ignore");
|
|
||||||
private final String key;
|
|
||||||
Misc(String key) {
|
|
||||||
this.key = key;
|
|
||||||
}
|
|
||||||
public String get() {
|
|
||||||
return key;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public enum Commands {
|
public enum Commands {
|
||||||
VERSION("villageroptimizer.cmd.version"),
|
VERSION("villageroptimizer.cmd.version"),
|
||||||
RELOAD("villageroptimizer.cmd.reload"),
|
RELOAD("villageroptimizer.cmd.reload"),
|
||||||
OPTIMIZE_RADIUS("villageroptimizer.cmd.optimize"),
|
OPTIMIZE_RADIUS("villageroptimizer.cmd.optimize"),
|
||||||
UNOPTIMIZE_RADIUS("villageroptimizer.cmd.unoptimize");
|
UNOPTIMIZE_RADIUS("villageroptimizer.cmd.unoptimize");
|
||||||
|
|
||||||
private final String key;
|
private final String key;
|
||||||
Commands(String key) {
|
Commands(String key) {
|
||||||
this.key = key;
|
this.key = key;
|
||||||
@ -29,7 +18,6 @@ public class Permissions {
|
|||||||
NAMETAG("villageroptimizer.optimize.nametag"),
|
NAMETAG("villageroptimizer.optimize.nametag"),
|
||||||
BLOCK("villageroptimizer.optimize.block"),
|
BLOCK("villageroptimizer.optimize.block"),
|
||||||
WORKSTATION("villageroptimizer.optimize.workstation");
|
WORKSTATION("villageroptimizer.optimize.workstation");
|
||||||
|
|
||||||
private final String key;
|
private final String key;
|
||||||
Optimize(String key) {
|
Optimize(String key) {
|
||||||
this.key = key;
|
this.key = key;
|
||||||
@ -45,7 +33,6 @@ public class Permissions {
|
|||||||
BLOCK_COOLDOWN("villageroptimizer.bypass.blockcooldown"),
|
BLOCK_COOLDOWN("villageroptimizer.bypass.blockcooldown"),
|
||||||
WORKSTATION_COOLDOWN("villageroptimizer.bypass.workstationcooldown"),
|
WORKSTATION_COOLDOWN("villageroptimizer.bypass.workstationcooldown"),
|
||||||
COMMAND_COOLDOWN("villageroptimizer.bypass.commandcooldown");
|
COMMAND_COOLDOWN("villageroptimizer.bypass.commandcooldown");
|
||||||
|
|
||||||
private final String key;
|
private final String key;
|
||||||
Bypass(String key) {
|
Bypass(String key) {
|
||||||
this.key = key;
|
this.key = key;
|
||||||
|
@ -90,7 +90,7 @@ public class WorkstationOptimization implements VillagerOptimizerModule, Listene
|
|||||||
|
|
||||||
final Location workstationLoc = placed.getLocation();
|
final Location workstationLoc = placed.getLocation();
|
||||||
WrappedVillager closestOptimizableVillager = null;
|
WrappedVillager closestOptimizableVillager = null;
|
||||||
double closestDistance = Double.MAX_VALUE;
|
double closestDistance = search_radius;
|
||||||
|
|
||||||
for (Entity entity : workstationLoc.getNearbyEntities(search_radius, search_radius, search_radius)) {
|
for (Entity entity : workstationLoc.getNearbyEntities(search_radius, search_radius, search_radius)) {
|
||||||
if (!entity.getType().equals(EntityType.VILLAGER)) continue;
|
if (!entity.getType().equals(EntityType.VILLAGER)) continue;
|
||||||
@ -99,8 +99,11 @@ public class WorkstationOptimization implements VillagerOptimizerModule, Listene
|
|||||||
if (profession.equals(Villager.Profession.NONE) || profession.equals(Villager.Profession.NITWIT)) continue;
|
if (profession.equals(Villager.Profession.NONE) || profession.equals(Villager.Profession.NITWIT)) continue;
|
||||||
|
|
||||||
WrappedVillager wVillager = villagerManager.getOrAdd(villager);
|
WrappedVillager wVillager = villagerManager.getOrAdd(villager);
|
||||||
if (!wVillager.isOptimized() && entity.getLocation().distance(workstationLoc) < closestDistance) {
|
final double distance = entity.getLocation().distance(workstationLoc);
|
||||||
|
|
||||||
|
if (!wVillager.isOptimized() && distance < closestDistance) {
|
||||||
closestOptimizableVillager = wVillager;
|
closestOptimizableVillager = wVillager;
|
||||||
|
closestDistance = distance;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user