mod infuse item

This commit is contained in:
Robert Kubosz
2020-05-12 00:03:31 +02:00
parent ff835fefeb
commit 6aedac5b89
2 changed files with 43 additions and 11 deletions
+1 -1
View File
@@ -6,7 +6,7 @@ from dungeonsheets.stats import findattr
class Alchemist(SubClass): class Alchemist(SubClass):
"""An Alchemist is an expert at combining reagents to pro­duce mystical """An Alchemist is an expert at combining reagents to produce mystical
effects. Alchemists use their creations to give life and to leech it away. effects. Alchemists use their creations to give life and to leech it away.
Alchemy is the oldest of ar­tificer traditions, and its versatility has Alchemy is the oldest of ar­tificer traditions, and its versatility has
long been valued during times of war and peace. long been valued during times of war and peace.
+39 -7
View File
@@ -14,7 +14,7 @@ class ToolProficiency(Feature):
class AlchemicalSavant(Feature): class AlchemicalSavant(Feature):
"""At 5th level, you develop masterful command of magical chemicals, """At 5th level, you develop masterful command of magical chemicals,
enhancing the healing and damage you cre­ate through them. Whenever you enhancing the healing and damage you create through them. Whenever you
cast a spell using your alchemist's supplies as the spellcasting focus, you cast a spell using your alchemist's supplies as the spellcasting focus, you
gain a bonus to one roll of the spell. That roll must restore hit points or gain a bonus to one roll of the spell. That roll must restore hit points or
be a damage roll that deals acid, fire, necrotic, or poison damage, and the be a damage roll that deals acid, fire, necrotic, or poison damage, and the
@@ -27,7 +27,7 @@ class AlchemicalSavant(Feature):
class RestorativeReagents(Feature): class RestorativeReagents(Feature):
"""Starting at 9th level, you can incorporate """Starting at 9th level, you can incorporate
restorative re­agents into some of your works: restorative reagents into some of your works:
- Whenever a creature drinks an experimental elixir you created, the - Whenever a creature drinks an experimental elixir you created, the
creature gains temporary hit points equal to 2d6 + your Intelligence creature gains temporary hit points equal to 2d6 + your Intelligence
modifier (minimum of 1 temporary hit point). modifier (minimum of 1 temporary hit point).
@@ -43,14 +43,14 @@ class RestorativeReagents(Feature):
class ChemicalMastery(Feature): class ChemicalMastery(Feature):
"""By 15th level, you have been exposed to so many chem­icals that they """By 15th level, you have been exposed to so many chemicals that they
pose little risk to you, and you can use them to quickly end certain pose little risk to you, and you can use them to quickly end certain
ailments: ailments:
- You gain resistance to acid damage and poison dam­age, and you are immune - You gain resistance to acid damage and poison damage, and you are immune
to the poisoned condition. to the poisoned condition.
- You can cast greater restoration and heal without ex­pending a spell - You can cast greater restoration and heal without expending a spell
slot, without preparing the spell, and without material components, slot, without preparing the spell, and without material components,
provided you use al­chemist's supplies as the spellcasting focus. Once provided you use alchemist's supplies as the spellcasting focus. Once
you cast either spell with this feature, you can't cast that spell with you cast either spell with this feature, you can't cast that spell with
it again until you finish a long rest. it again until you finish a long rest.
""" """
@@ -123,8 +123,40 @@ class InfuseItem(Feature):
infusion applies. infusion applies.
""" """
name = "Infuse Item" _name = "Infuse Item"
source = "Artificer" source = "Artificer"
_infusions = {
# level: (infusions known, infused items)
2: (4, 2),
3: (4, 2),
4: (4, 2),
5: (4, 2),
5: (4, 2),
6: (6, 3),
7: (6, 3),
8: (6, 3),
9: (6, 3),
10: (8, 4),
11: (8, 4),
12: (8, 4),
13: (8, 4),
14: (10, 5),
15: (10, 5),
16: (10, 5),
17: (10, 5),
18: (12, 6),
19: (12, 6),
20: (12, 6),
}
@property
def name(self):
known_infusions = self._infusions[self.owner.Artificer.level][0]
infused_items = self._infusions[self.owner.Artificer.level][1]
return self._name + " ({:d} Infusions Known, {:d} Infused Items".format(
known_infusions, infused_items)
class TheRightToolForTheJob(Feature): class TheRightToolForTheJob(Feature):