fix messages

This commit is contained in:
xGinko 2024-03-20 22:10:23 +01:00
parent 6272383dd4
commit 533031863f
2 changed files with 10 additions and 7 deletions

View File

@ -62,11 +62,11 @@ public class LanguageCache {
"<green>Successfully unoptimized %villagertype% villager by removing %blocktype%."); "<green>Successfully unoptimized %villagertype% villager by removing %blocktype%.");
// Workstation // Workstation
this.workstation_optimize_success = getListTranslation("messages.workstation.optimize-success", this.workstation_optimize_success = getListTranslation("messages.workstation.optimize-success",
"<green>%villagertype% villager successfully optimized using workstation %workstation%."); "<green>%villagertype% villager successfully optimized using workstation %blocktype%.");
this.workstation_on_optimize_cooldown = getListTranslation("messages.workstation.optimize-on-cooldown", this.workstation_on_optimize_cooldown = getListTranslation("messages.workstation.optimize-on-cooldown",
"<gray>You need to wait %time% until you can optimize this villager again."); "<gray>You need to wait %time% until you can optimize this villager again.");
this.workstation_unoptimize_success = getListTranslation("messages.workstation.unoptimize-success", this.workstation_unoptimize_success = getListTranslation("messages.workstation.unoptimize-success",
"<green>Successfully unoptimized %villagertype% villager by removing workstation block %workstation%."); "<green>Successfully unoptimized %villagertype% villager by removing workstation block %blocktype%.");
// Command // Command
this.command_optimize_success = getListTranslation("messages.command.optimize-success", this.command_optimize_success = getListTranslation("messages.command.optimize-success",
"<green>Successfully optimized %amount% villager(s) in a radius of %radius% blocks."); "<green>Successfully optimized %amount% villager(s) in a radius of %radius% blocks.");

View File

@ -28,6 +28,7 @@ import org.bukkit.event.block.BlockPlaceEvent;
import java.time.Duration; import java.time.Duration;
import java.util.Iterator; import java.util.Iterator;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
public class OptimizeByWorkstation implements VillagerOptimizerModule, Listener { public class OptimizeByWorkstation implements VillagerOptimizerModule, Listener {
@ -91,10 +92,11 @@ public class OptimizeByWorkstation implements VillagerOptimizerModule, Listener
if (!player.hasPermission(Permissions.Optimize.WORKSTATION.get())) return; if (!player.hasPermission(Permissions.Optimize.WORKSTATION.get())) return;
final Location workstationLoc = placed.getLocation(); final Location workstationLoc = placed.getLocation();
final AtomicBoolean done = new AtomicBoolean(false);
final AtomicInteger taskAliveTicks = new AtomicInteger(check_duration_ticks); final AtomicInteger taskAliveTicks = new AtomicInteger(check_duration_ticks);
scheduler.runAtLocationTimer(workstationLoc, lingeringRepeatingCheck -> { scheduler.runAtLocationTimer(workstationLoc, lingeringRepeatingCheck -> {
if (taskAliveTicks.getAndAdd(-10) <= 0) { if (done.get() || taskAliveTicks.getAndAdd(-10) <= 0) {
lingeringRepeatingCheck.cancel(); lingeringRepeatingCheck.cancel();
return; return;
} }
@ -121,6 +123,7 @@ public class OptimizeByWorkstation implements VillagerOptimizerModule, Listener
VillagerOptimizer.getLang(player.locale()).nametag_on_optimize_cooldown VillagerOptimizer.getLang(player.locale()).nametag_on_optimize_cooldown
.forEach(line -> KyoriUtil.sendMessage(player, line.replaceText(timeLeft))); .forEach(line -> KyoriUtil.sendMessage(player, line.replaceText(timeLeft)));
} }
done.set(true);
return; return;
} }
@ -142,7 +145,7 @@ public class OptimizeByWorkstation implements VillagerOptimizerModule, Listener
.replacement(wrapped.villager().getProfession().toString().toLowerCase()) .replacement(wrapped.villager().getProfession().toString().toLowerCase())
.build(); .build();
final TextReplacementConfig placedWorkstation = TextReplacementConfig.builder() final TextReplacementConfig placedWorkstation = TextReplacementConfig.builder()
.matchLiteral("%workstation%") .matchLiteral("%blocktype%")
.replacement(placed.getType().toString().toLowerCase()) .replacement(placed.getType().toString().toLowerCase())
.build(); .build();
VillagerOptimizer.getLang(player.locale()).workstation_optimize_success VillagerOptimizer.getLang(player.locale()).workstation_optimize_success
@ -155,8 +158,8 @@ public class OptimizeByWorkstation implements VillagerOptimizerModule, Listener
GenericUtil.formatLocation(wrapped.villager().getLocation())).color(GenericUtil.COLOR)); GenericUtil.formatLocation(wrapped.villager().getLocation())).color(GenericUtil.COLOR));
} }
lingeringRepeatingCheck.cancel(); done.set(true);
break; return;
} }
}, 1L, 10L); }, 1L, 10L);
} }
@ -207,7 +210,7 @@ public class OptimizeByWorkstation implements VillagerOptimizerModule, Listener
.replacement(closestOptimized.villager().getProfession().toString().toLowerCase()) .replacement(closestOptimized.villager().getProfession().toString().toLowerCase())
.build(); .build();
final TextReplacementConfig brokenWorkstation = TextReplacementConfig.builder() final TextReplacementConfig brokenWorkstation = TextReplacementConfig.builder()
.matchLiteral("%workstation%") .matchLiteral("%blocktype%")
.replacement(broken.getType().toString().toLowerCase()) .replacement(broken.getType().toString().toLowerCase())
.build(); .build();
VillagerOptimizer.getLang(player.locale()).workstation_unoptimize_success VillagerOptimizer.getLang(player.locale()).workstation_unoptimize_success