From 3674586cfce618ce06e9cdf4047c467593ddc7f9 Mon Sep 17 00:00:00 2001 From: Hare Date: Wed, 11 Mar 2026 22:06:46 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=E3=82=A8=E3=83=B3=E3=83=86=E3=82=A3?= =?UTF-8?q?=E3=83=86=E3=82=A3=E6=93=8D=E4=BD=9C=E3=82=92=E3=83=AA=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=83=A7=E3=83=B3unsafe=E3=81=A7=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E3=81=97=E3=81=A6=E3=81=84=E3=81=9F=E5=95=8F=E9=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../npc-mannequin/service/MannequinTickTask.kt | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/main/kotlin/net/hareworks/npc-mannequin/service/MannequinTickTask.kt b/src/main/kotlin/net/hareworks/npc-mannequin/service/MannequinTickTask.kt index 9425e3e..3fc1038 100644 --- a/src/main/kotlin/net/hareworks/npc-mannequin/service/MannequinTickTask.kt +++ b/src/main/kotlin/net/hareworks/npc-mannequin/service/MannequinTickTask.kt @@ -5,12 +5,20 @@ import org.bukkit.GameMode class MannequinTickTask(private val registry: MannequinRegistry) { fun tick() { registry.all().forEach { record -> + val location = record.location?.toLocation(registry.plugin.server) ?: return@forEach + registry.plugin.server.regionScheduler.run(registry.plugin, location) { _ -> + tickRecord(record) + } + } + } + + private fun tickRecord(record: MannequinRecord) { val settings = record.settings - val entity = registry.locate(record.id) ?: return@forEach - if (!entity.isValid) return@forEach + val entity = registry.locate(record.id) ?: return + if (!entity.isValid) return val location = entity.location - val world = location.world ?: return@forEach + val world = location.world ?: return var targetDirection: org.bukkit.util.Vector? = null @@ -121,6 +129,5 @@ class MannequinTickTask(private val registry: MannequinRegistry) { } } } - } } }