merge-requests/45/head
M3tin 2020-04-29 23:54:44 +03:00
commit 5fa2bef25b
4 changed files with 75 additions and 25 deletions

View File

@ -6,4 +6,4 @@
6. Mirko Rainer
7. Joey Burney
8. Brad Laney
9. Gitlab name: @M3tin1 (TODO: Get name.)
9. Metin Ünüvar

View File

@ -150,6 +150,7 @@ def main():
data = yaml.full_load(yl)
do_ancestries(data, conn)
# Must be called after feats are loaded
with open('ancestriesheritages.yaml') as yl:
data = yaml.full_load(yl)
do_heritages(data, conn)
@ -459,7 +460,7 @@ def get_actioncost_id_by_name(ac, conn):
def do_heritages(data, conn):
table = """
CREATE TABLE heritages (
CREATE TABLE heritage (
heritage_id INTEGER PRIMARY KEY,
name TEXT NOT NULL UNIQUE,
descr TEXT NOT NULL,
@ -471,6 +472,19 @@ def do_heritages(data, conn):
c = conn.cursor()
c.execute(table)
table = """
CREATE TABLE heritage_feat (
id INTEGER PRIMARY KEY,
heritage_id INTEGER NOT NULL,
feat_id INTEGER NOT NULL,
FOREIGN KEY (heritage_id) REFERENCES heritage(heritage_id),
FOREIGN KEY (feat_id) REFERENCES feat(feat_id)
);
"""
c = conn.cursor()
c.execute(table)
for i in data['ancestries']:
#GET ID OF ANCESTRY
stmt = "SELECT ancestry_id FROM ancestries WHERE name=?;"
@ -479,14 +493,32 @@ def do_heritages(data, conn):
#FOR EACH HERITAGE, INSERT INTO TABLE USING ANCESTRY ID
for j in i['heritages']:
# print("doing this heritage: {}".format(j['name']))
stmt = "INSERT INTO heritages (name, descr, ancestry_id) VALUES (?,?,?);"
c.execute(stmt, (j['name'], j['descr'], rowid[0]))
conn.commit()
stmt = "INSERT INTO heritage (name, descr, ancestry_id) VALUES (?,?,?);"
try:
c.execute(stmt, (j['name'], j['descr'], rowid[0]))
except sqlite3.Error as e:
print("Error inserting a heritage: {}".format(e))
except:
print("Error inserting a heritage other than sqlite3 error")
else:
conn.commit()
if j['feat'] != None:
print("We have a feat that is not equal to none: {}".format(j['feat']))
print("TODO THIS NEEDS TO GET DONE AFTER FEATS ARE IN SQL")
# i.e. TODO select feat_id where name = j['feat] then insert into a heritages_feats table
# print("We have a feat that is not equal to none: {}".format(j['feat']))
stmt = """INSERT INTO heritage_feat
(heritage_id, feat_id)
VALUES (
(SELECT heritage_id FROM heritage WHERE name=?),
(SELECT feat_id FROM feat WHERE name=?)
);"""
try:
c.execute(stmt, (j['name'],j['feat']))
except sqlite3.Error as e:
print("Error linking a heritage to its feat: {}".format(e))
except:
print("Error linking a heritage something other than sqlite3 error")
else:
conn.commit()
def do_ancestries(data, conn):

View File

@ -336,8 +336,8 @@ spell:
descr: "You draw upon your muse to soothe your allies. Choose one of the following\
\ three effects:\n The spell attempts to counteract fear effects on the targets.\
\ \n The spell attempts to counteract effects imposing paralysis on the targets.\
\ \n The spell restores 7d8 Hit Points to the targets. \n\n**Heightened (+1)** \
\ When used to heal, soothing ballad restores 1d8 more Hit Points."
\ \n The spell restores 7d8 Hit Points to the targets. \n\n**Heightened (+1)**\
\ When used to heal, soothing ballad restores 1d8 more Hit Points."
duration: null
has_been_manually_proofread: true
level: 7

View File

@ -1,89 +1,107 @@
weapongroups:
- descr: TODO descr from pg 283-84
- descr: Choose one creature adjacent to the initial target and within reach. If its
AC is lower than your attack roll result for the critical hit, you deal damage
to that creature equal to the result of the weapon damage die you rolled (including
extra dice for its potency rune, if any). This amount isn't doubled, and no bonuses
or other additional dice apply to this damage.
name: Axe
source:
- abbr: CRB
page_start: 283
page_stop: 283
- descr: TODO descr from pg 283-84
- descr: Increase the radius of the bomb's splash damage (if any) to 10 feet.
name: Bomb
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: If the target of the critical hit is adjacent to a surface, it gets stuck
to that surface by the missile. The target is immobilized and must spend an Interact
action to attempt a DC 10 Athletics check to pull the missile free; it can't move
from its space until it succeeds. The creature doesnt become stuck if it is incorporeal,
is liquid (like a water elemental or some oozes), or could otherwise escape without
effort.
name: Bow
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The target must succeed at a Fortitude save against your class DC or be slowed
1 until the end of your next turn.
name: Brawling
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: You knock the target away from you up to 10 feet (you choose the distance).
This is forced movement.
name: Club
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The target takes 1d6 persistent bleed damage. You gain an item bonus to this
bleed damage equal to the weapon's item bonus to attack rolls.
name: Dart
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The target is knocked prone.
name: Flail
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The target is knocked prone.
name: Hammer
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The target takes 1d6 persistent bleed damage. You gain an item bonus to this
bleed damage equal to the weapon's item bonus to attack rolls.
name: Knife
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The weapon viciously pierces the target, who takes 2 additional damage per
weapon damage die.
name: Pick
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The target is moved 5 feet in a direction of your choice. This is forced
movement.
name: Polearm
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: You knock the target back from you 5 feet. This is forced movement.
name: Shield
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The target must succeed at a Fortitude save against your class DC or be stunned
1.
name: Sling
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The weapon pierces the target, weakening its attacks. The target is clumsy
1 until the start of your next turn.
name: Spear
source:
- abbr: CRB
page_start: 284
page_stop: 284
- descr: TODO descr from pg 283-84
- descr: The target is made off-balance by your attack, becoming flat-footed until
the start of your next turn.
name: Sword
source:
- abbr: CRB