72 lines
1.4 KiB
Python
72 lines
1.4 KiB
Python
from enum import Enum, auto
|
|
|
|
class DamageType(Enum):
|
|
# Physical
|
|
Slashing = auto()
|
|
Piercing = auto()
|
|
Bludgeoning = auto()
|
|
# Magical
|
|
Cold = auto()
|
|
Fire = auto()
|
|
Lightning = auto()
|
|
Thunder = auto()
|
|
Poison = auto()
|
|
Acid = auto()
|
|
Necrotic = auto()
|
|
Radiant = auto()
|
|
Force = auto()
|
|
Psychic = auto()
|
|
|
|
|
|
class DamageMod(Enum):
|
|
Strength = auto()
|
|
Dexterity = auto()
|
|
Constitution = auto()
|
|
Intelligence = auto()
|
|
Wisdom = auto()
|
|
Charisma = auto()
|
|
|
|
|
|
class ItemType(Enum):
|
|
Armor = auto()
|
|
Weapon = auto()
|
|
Money = auto()
|
|
Item = auto()
|
|
|
|
|
|
class Slots(Enum):
|
|
MainHand = auto()
|
|
OffHand = auto()
|
|
TwoHanded = auto()
|
|
Helm = auto()
|
|
Armor = auto()
|
|
Wrists = auto()
|
|
Feet = auto()
|
|
Neck = auto()
|
|
Cloak = auto()
|
|
LeftRing = auto()
|
|
RightRing = auto()
|
|
Other = auto()
|
|
Attunement = auto()
|
|
|
|
|
|
class SpellSchool(Enum):
|
|
Abjuration = auto()
|
|
Conjuration = auto()
|
|
Divination = auto()
|
|
Enchantment = auto()
|
|
Evocation = auto()
|
|
Illusion = auto()
|
|
Necromancy = auto()
|
|
Transmutation = auto()
|
|
|
|
|
|
class SaveType(Enum):
|
|
"""Which stat a target rolls to resist a spell's effect."""
|
|
Strength = auto()
|
|
Dexterity = auto()
|
|
Constitution = auto()
|
|
Intelligence = auto()
|
|
Wisdom = auto()
|
|
Charisma = auto()
|
|
NONE = auto() # No saving throw (e.g. Magic Missile) |