got requirements.yamls and YAML->SQL working
parent
92d02ca1db
commit
df2bdacc56
|
@ -72,10 +72,38 @@ def main():
|
|||
do_actions(data, conn)
|
||||
|
||||
# move on to spells
|
||||
# TODO do spells once data is proofread
|
||||
with open('spells.yaml') as yl:
|
||||
data = yaml.full_load(yl)
|
||||
do_spells(data, conn)
|
||||
|
||||
# move on to requirements
|
||||
with open('requirements.yaml') as yl:
|
||||
data = yaml.full_load(yl)
|
||||
do_requirements(data, conn)
|
||||
|
||||
def do_requirements(data, conn):
|
||||
table = """
|
||||
CREATE TABLE requirement (
|
||||
requirement_id INTEGER PRIMARY KEY,
|
||||
descr TEXT NOT NULL UNIQUE
|
||||
);
|
||||
"""
|
||||
|
||||
c = conn.cursor()
|
||||
c.execute(table)
|
||||
|
||||
inp_data = []
|
||||
for i in data['requirement']:
|
||||
inp_data.append((i, ))
|
||||
|
||||
stmt = "INSERT INTO requirement (descr) VALUES (?)"
|
||||
try:
|
||||
conn.executemany(stmt, inp_data)
|
||||
except Exception as e:
|
||||
print("Error creating requirement: {}".format(e))
|
||||
else:
|
||||
conn.commit()
|
||||
|
||||
def do_spells(data, conn):
|
||||
# load the helper info
|
||||
|
@ -83,6 +111,7 @@ def do_spells(data, conn):
|
|||
do_spellcomponent(data, conn)
|
||||
do_spelltradition(data, conn)
|
||||
do_spellschool(data, conn)
|
||||
# TODO once spells data complete, write a do_spellsthemselves(data, conn) function
|
||||
|
||||
|
||||
def do_spelltype(data, conn):
|
||||
|
@ -202,10 +231,8 @@ VALUES (?,?,
|
|||
"""
|
||||
# print('executing on name:{}'.format(i['name']))
|
||||
try:
|
||||
conn.execute(
|
||||
stmt,
|
||||
(i['name'], i['descr'], srcentrydata[0][0],
|
||||
srcentrydata[0][1], srcentrydata[0][2]))
|
||||
conn.execute(stmt, (i['name'], i['descr'], srcentrydata[0][0],
|
||||
srcentrydata[0][1], srcentrydata[0][2]))
|
||||
except Exception as e:
|
||||
print("Error creating spellschool: {}".format(e))
|
||||
else:
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
requirement:
|
||||
- You are holding an infused alchemical bomb you crafted, with a level at least 3 lower than your advanced alchemy level.
|
||||
- "You haven't used this ability since you last Raged."
|
||||
- You are Medium or smaller.
|
||||
- You have a foe grabbed.
|
||||
- Your last action was a successful Strike.
|
||||
- Your last action was a successful Strike, and either you have a hand free or your Strike used a grapple weapon.
|
||||
- You are unarmored or wearing light armor.
|
||||
- "You're under the effect of Come and Get Me."
|
||||
- "You haven't acted yet on your turn."
|
||||
- You are wielding a shield.
|
||||
# Fiendsbane Oath may be errated to a requirement. Marking it incase to find easier.
|
||||
- Fiendsbane Oath'
|
||||
# Shining Oath may be errated to a requirement. Marking it incase to find easier.
|
||||
- Shining Oath
|
||||
- exalt and Vengeful Oath
|
||||
- Dragonslayer Oath
|
||||
- You have a banishment spell prepared.
|
||||
- You have at least 1 available Focus Point.
|
||||
- You are wielding two melee weapons, each in a different hand.
|
||||
- You are wielding a ranged weapon.
|
||||
- You have one hand free, and your target is within reach of that hand.
|
||||
- You are wielding a two-handed melee weapon.
|
||||
- You are wielding only a single one-handed melee weapon and have your other hand or hands free.
|
||||
- You are wielding a melee weapon.
|
||||
- You are wielding a ranged weapon with reload 0.
|
||||
- You are wielding a one-handed melee weapon and have a free hand.
|
||||
- You are flanked by at least two enemies.
|
||||
- You are wielding two melee weapons, one in each hand.
|
||||
- You are wielding a single one-handed melee weapon and have your other hand or hands free.
|
||||
- You are wielding a melee weapon that deals piercing damage.
|
||||
- A frightened creature is in your melee reach.
|
||||
- You are benefiting from Dueling Parry.
|
||||
- You are wielding a two-handed melee weapon and your target is within your reach.
|
||||
- You have a shield raised.
|
||||
- You are wielding a melee weapon in two hands.
|
||||
- You are adjacent to an enemy.
|
||||
- You meet the requirements to use an action with the press trait.
|
||||
- You are wielding two weapons, each in a different hand.
|
||||
- You are wielding a ranged weapon with the volley trait and reload 0.
|
||||
- You are unarmored.
|
||||
- You are unarmored and touching the ground.
|
||||
- "You're aware of the attack, are not flat-footed against it, and have a hand free."
|
||||
- You are in Crrane Stance.
|
||||
- You are in Dragon Stance.
|
||||
- You are in Mountain Stance.
|
||||
- You are in Tiger Stance.
|
||||
- You have a creature grabbed or restrained.
|
||||
- You are in Wolf Stance.
|
||||
- You are in Ironblood Stance.
|
||||
- You are in Tangled Forest Stance.
|
||||
- You are in Wild Winds Stance.
|
||||
- This is the first action of your turn.
|
||||
- You are not armored or fatigued.
|
||||
- You are benefiting from Twin Parry.
|
||||
- You are wielding a loaded ranged weapon with reload 1 or more, and you have not reloaded your weapon since your last turn.
|
||||
- You are not encumbered.
|
||||
- You are wielding a piercing or slashing weapon and have a free hand.
|
||||
- You have a free hand.
|
||||
- Your last action was a melee Strike that dealt sneak attack damage to a flat-footed target.
|
||||
- You are currently affected by a mental effect that you gained by failing, but not critically failing, a saving throw.
|
||||
- You are adjacent to a floor or vertical wall.
|
||||
- When you make your daily preparations, you must specify a trigger for this reaction using the same restrictions as the triggers for the Ready action. You also choose a single spell from the arcane, divine, occult, or primal list of 4th level or lower. The spell can’t have a cost, nor can its casting time be more than 10 minutes. The spell must be able to target a single creature, and you must be a valid target for it.
|
||||
- You have Perfect Distraction ready to use.
|
||||
- You have an unexpended spell slot you could use to cast the triggered spell.
|
||||
- Your most recent action was to cast a non-cantrip spell.
|
||||
- The last action you used was Drain Bonded Item.
|
Loading…
Reference in New Issue