Fix extracting +X to Class Skills with param value

This commit is contained in:
2023-10-25 18:08:48 +02:00
parent b5b7149c79
commit 91a62f03ac
4 changed files with 109 additions and 44 deletions

View File

@@ -65,11 +65,16 @@ class Stat:
print(" " * indent, str(self))
def __str__(self):
subst_text = self.text
param = self.parameter
if isinstance(self.text, list):
subst_text = next(filter(lambda v: v["param"] == param, self.text))["text"]
param = None
else:
subst_text = self.text
for val in self.values:
subst_text = subst_text.replace("#", str(val), 1)
if self.parameter:
subst_text = re.sub(r"\[[^\]]*\]", str(self.parameter), subst_text, 1)
if param:
subst_text = re.sub(r"\[[^\]]*\]", str(param), subst_text, 1)
return subst_text