Add poison damage over time tactics

This commit is contained in:
2026-06-18 09:37:12 +09:00
parent 07861391c7
commit 1fa7e2afac
10 changed files with 201 additions and 70 deletions

View File

@@ -100,7 +100,7 @@ $validBonusStats = @("hp", "mp", "atk", "def", "int", "agi")
$validSkillKinds = @("damage", "heal", "support")
$validSkillTargets = @("enemy", "ally", "self", "any")
$validSkillStats = @("atk", "def", "int", "agi")
$validSkillEffectTypes = @("stat_bonus")
$validSkillEffectTypes = @("stat_bonus", "damage_over_time")
$validDialogueSides = @("left", "right")
$validPortraitPathPattern = '^res://.+\.(png|jpg|jpeg|webp)$'
$knownFlagIds = New-Object System.Collections.Generic.HashSet[string]
@@ -773,6 +773,17 @@ function Check-Skill-Definitions() {
if ([int](Get-Prop $effect "duration_turns" 1) -le 0) {
Fail "Skill $skillId stat_bonus effect must have positive duration_turns."
}
} elseif ($effectType -eq "damage_over_time") {
$status = [string](Get-Prop $effect "status" "")
if ([string]::IsNullOrWhiteSpace($status) -or -not ($status -match '^[a-z0-9_]+$')) {
Fail "Skill $skillId damage_over_time effect must have a stable status."
}
if ([int](Get-Prop $effect "amount" 0) -le 0) {
Fail "Skill $skillId damage_over_time effect must have positive amount."
}
if ([int](Get-Prop $effect "duration_turns" 1) -le 0) {
Fail "Skill $skillId damage_over_time effect must have positive duration_turns."
}
}
}
}