From 423407325d5dec02700e773b1c832f56c92cfe46 Mon Sep 17 00:00:00 2001 From: gahusb Date: Wed, 10 Jun 2026 01:15:12 +0900 Subject: [PATCH] =?UTF-8?q?feat(combat):=20EnemyTurn=20=EC=83=9D=EC=A1=B4?= =?UTF-8?q?=20=EB=AA=AC=EC=8A=A4=ED=84=B0=20=EA=B0=81=EC=9E=90=20=ED=96=89?= =?UTF-8?q?=EB=8F=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/deck/gen-slaydeck.mjs | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/tools/deck/gen-slaydeck.mjs b/tools/deck/gen-slaydeck.mjs index b0a5bcd..8aeb738 100644 --- a/tools/deck/gen-slaydeck.mjs +++ b/tools/deck/gen-slaydeck.mjs @@ -1401,19 +1401,24 @@ self.PlayerHp = self.PlayerHp - dmg if self.PlayerHp < 0 then self.PlayerHp = 0 end`, [{ Type: 'number', DefaultValue: null, SyncDirection: 0, Attributes: [], Name: 'amount' }]), - method('EnemyTurn', `self.EnemyBlock = 0 -local intent = self.EnemyIntents[self.EnemyIntentIndex] -if intent ~= nil then - if intent.kind == "Attack" then - self:DealDamageToPlayer(intent.value) - elseif intent.kind == "Defend" then - self.EnemyBlock = self.EnemyBlock + intent.value + method('EnemyTurn', `for i = 1, #self.Monsters do + local m = self.Monsters[i] + if m.alive == true then + m.block = 0 + local intent = m.intents[m.intentIdx] + if intent ~= nil then + if intent.kind == "Attack" then + self:DealDamageToPlayer(intent.value) + elseif intent.kind == "Defend" then + m.block = m.block + intent.value + end + end + m.intentIdx = m.intentIdx + 1 + if m.intentIdx > #m.intents then + m.intentIdx = 1 + end end end -self.EnemyIntentIndex = self.EnemyIntentIndex + 1 -if self.EnemyIntentIndex > #self.EnemyIntents then - self.EnemyIntentIndex = 1 -end self:RenderCombat()`), method('CheckCombatEnd', `if self.EnemyHp <= 0 then self.CombatOver = true