diff --git a/dungeonsheets/monsters.py b/dungeonsheets/monsters.py index bb87461..f6a05f2 100644 --- a/dungeonsheets/monsters.py +++ b/dungeonsheets/monsters.py @@ -38,6 +38,64 @@ class GiantEagle(Monster): name = "Giant eagle" +class Spider(Monster): + """**Spider Climb:** The spider can climb difficult surfaces, + including upside down on ceilings, without needing to make an + ability check. + + **Web Sense:** While in contact with a web, the spider knows the + exact location of any other creature in contact with the same web. + + **Web Walker:** The spider ignores Movement restrictions caused by + webbing. + + **Bite:** Melee Weapon Attack: +4 to hit, reach 5 ft., one + creature. Hit: 1 piercing damage, and the target must succeed on a + DC 9 Constitution saving throw or take 2 (1d4) poison damage. + + """ + name = "Spider" + description = "Tiny beast, unaligned" + challenge_rating = 0 + armor_class = 12 + skills = "Stealth +4" + senses = "Darkvision 30 Ft., passive Perception 12" + strength = Ability(2) + dexterity = Ability(14) + constitution = Ability(8) + intelligence = Ability(1) + wisdom = Ability(10) + charisma = Ability(2) + speed = 20 + hp_max = 1 + hit_dice = '1d4-1' + + +class Rat(Monster): + """**Keen Smell:** The rat has advantage on Wisdom (Perception) checks + that rely on smell. + + **Bite:** Melee Weapon Attack: +0 to hit, reach 5 ft., one + target. Hit: 1 piercing damage. + + """ + name = "Rat" + description = "Tiny beast, unaligned" + challenge_rating = 0 + armor_class = 10 + skills = "" + senses = "Darkvision 30 Ft., passive Perception 10" + strength = Ability(2) + dexterity = Ability(11) + constitution = Ability(9) + intelligence = Ability(2) + wisdom = Ability(10) + charisma = Ability(4) + speed = 20 + hp_max = 1 + hit_dice = '1d4-2' + + class Wolf(Monster): """**Keen Hearing and Smell.** The wolf has advantage on Wisdom (Perception) checks that rely on hearing or smell. diff --git a/dungeonsheets/spells.py b/dungeonsheets/spells.py index dac341e..4e41429 100644 --- a/dungeonsheets/spells.py +++ b/dungeonsheets/spells.py @@ -1997,6 +1997,28 @@ class Dream(Spell): classes = () +class Druidcraft(Spell): + """You create one of the following effects within range: + + - You create a harmless sensory effect that predicts what the weather will be for the next 24 hours. This effect persists for 1 round. + - You make a flower blossom, a seed pod open, or a leaf bud bloom. + - You create a harmless nature-related sensory effect. The effect must fit in a 5-foot cube. + - You light or put out a small flame. + + """ + level = 0 + name = "Druidcraft" + casting_time = "1 action" + casting_range = "30 ft" + components = ("V", "S") + materials = "" + duration = "instantaneous" + concentration = False + ritual = False + magic_school = "Transmutation" + classes = ('Druid') + + class Earthquake(Spell): """You create a seismic disturbance at a point on the ground that you can see within range. For the duration, an intense tremor rips diff --git a/setup.py b/setup.py index 34dbb3d..dec4975 100644 --- a/setup.py +++ b/setup.py @@ -24,7 +24,7 @@ setup(name='dungeonsheets', 'spellbook_template.tex'] }, install_requires=[ - 'fdfgen', 'npyscreen', 'jinja2', + 'fdfgen', 'npyscreen', 'jinja2', 'pdfrw', ], entry_points={ 'console_scripts': [