From 903a06d2335e3a420e438ede881c63662105ff25 Mon Sep 17 00:00:00 2001 From: gahusb Date: Wed, 10 Jun 2026 21:47:25 +0900 Subject: [PATCH] =?UTF-8?q?feat(node-groups):=20RegisterMonster(group)=20+?= =?UTF-8?q?=20BuildMonsters=20=EB=85=B8=EB=93=9C=20=ED=83=80=EC=9E=85=20?= =?UTF-8?q?=ED=95=84=ED=84=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- tools/deck/gen-slaydeck.mjs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/tools/deck/gen-slaydeck.mjs b/tools/deck/gen-slaydeck.mjs index 77e92d6..8ee0fea 100644 --- a/tools/deck/gen-slaydeck.mjs +++ b/tools/deck/gen-slaydeck.mjs @@ -1707,16 +1707,28 @@ self:RenderCombat()`), method('RegisterMonster', `if self.Registered == nil then self.Registered = {} end -table.insert(self.Registered, { entity = monster, enemyId = enemyId })`, [ +local g = group +if g == nil or g == "" then g = "combat" end +table.insert(self.Registered, { entity = monster, enemyId = enemyId, group = g })`, [ { Type: 'any', DefaultValue: null, SyncDirection: 0, Attributes: [], Name: 'monster' }, { Type: 'string', DefaultValue: null, SyncDirection: 0, Attributes: [], Name: 'enemyId' }, + { Type: 'string', DefaultValue: null, SyncDirection: 0, Attributes: [], Name: 'group' }, ]), method('BuildMonsters', `self.Monsters = {} +local g = "combat" +local node = self.MapNodes[self.CurrentNodeId] +if node ~= nil and node.type ~= nil then g = node.type end +self.ActiveSlotPos = self.SlotPos[g] local reg = self.Registered or {} +for i = 1, #reg do + if reg[i].entity ~= nil and isvalid(reg[i].entity) then + reg[i].entity:SetVisible(false) + end +end local list = {} for i = 1, #reg do local r = reg[i] - if r.entity ~= nil and isvalid(r.entity) then + if r.entity ~= nil and isvalid(r.entity) and r.group == g then local x = 0 if r.entity.TransformComponent ~= nil then x = r.entity.TransformComponent.WorldPosition.x