diff --git a/data/armor.sql b/data/armor.sql new file mode 100644 index 0000000..cfb3a94 --- /dev/null +++ b/data/armor.sql @@ -0,0 +1,73 @@ + + +INSERT INTO armorgroup ( + grp_id, + sources_id, + sources_pages, + short_name, + descr +) +VALUES + -- TODO fill in the TODO parts with the description text from pg 275 + (1, 1, '275', 'Chain', 'TODO'), + (2, 1, '275', 'Composite', 'TODO'), + (3, 1, '275', 'Leather', 'TODO'), + (4, 1, '275', 'Plate', 'TODO'); + +INSERT INTO armorcategory (armor_category_id, short_name) +VALUES + (1,'Unarmored'), + (2,'Light Armor'), + (3,'Medium Armor'), + (4,'Heavy Armor'); + + +INSERT INTO armor ( + armor_id, + sources_id, + sources_pages, + armor_category_id, + item_level, + short_name, + price_text, + price_gp, + ac_bonus, + dex_cap, + check_penalty, + speed_penalty, + strength, + bulk_id, + grp_id, + descr +) +VALUES + -- unarmored + (1, 1, '275', 1, 0, 'No armor', '-', 0.0, 0, NULL, NULL, NULL, NULL, 1, NULL, 'TODO'), + (2, 1, '275', 1, 0, 'Explorer''s clothing', '1 sp', 0.1, 0, 5, NULL, NULL, NULL, 2, NULL, 'TODO'), + -- light armor + (3, 1, '275', 2, 0, 'Padded armor', '2 sp', 0.2, 1, 3, NULL, NULL, 10, 2, NULL, 'TODO'), + (4, 1, '275', 2, 0, 'Leather', '2 gp', 2.0, 1, 4, -1, NULL, 10, 3, NULL, 'TODO'), + (5, 1, '275', 2, 0, 'Studded leather', '3 gp', 3.0, 2, 3, -1, NULL, 12, 3, NULL, 'TODO'), + (6, 1, '275', 2, 0, 'Chain shirt', '5 gp', 5.0, 2, 3, -1, NULL, 12, 3, NULL, 'TODO'), + -- medium armor + (7, 1, '275', 3, 0, 'Hide', '2 gp', 2.0, 3, 2, -2, -5, 14, 4, 3, 'TODO'), + (8, 1, '275', 3, 0, 'Scale mail', '4 gp', 4.0, 3, 2, -2, -5, 14, 4, 2, 'TODO'), + (9, 1, '275', 3, 0, 'Chain mail', '6 gp', 6.0, 4, 1, -2, -5, 16, 4, 1, 'TODO'), + (10, 1, '275', 3, 0, 'Breastplate', '8 gp', 8.0, 4, 1, -2, -5, 16, 4, 4, 'TODO'), + -- heavy armor + (11, 1, '275', 4, 1, 'Splint mail', '13 gp', 13.0, 5, 1, -3, -10, 16, 5, 2, 'TODO'), + (12, 1, '275', 4, 1, 'Half plate', '18 gp', 18.0, 5, 1, -3, -10, 16, 5, 4, 'TODO'), + (13, 1, '275', 4, 2, 'Full plate', '30 gp', 30.0, 6, 0, -3, -10, 18, 6, 4, 'TODO'); + + + +-- TODO INSERT into armor_traits table +INSERT INTO armor_traits (armor_id, traits_id) +VALUES + (2, 88), -- explorer's clothing and comfort + (3, 88), -- padded and comfort + (6, 89), -- chain shirt flexible + (6, 90), -- chain shirt noisy + (9, 89), -- chain mail flexible + (9, 90), -- chain mail noisy + (13, 87); -- full plate bulwark diff --git a/data/bulk.sql b/data/bulk.sql new file mode 100644 index 0000000..f2e03a7 --- /dev/null +++ b/data/bulk.sql @@ -0,0 +1,19 @@ + +-- TODO update sizes table with a FK to bulk to get the data from the table on +-- pg 272 CRB +INSERT INTO bulk ( + bulk_id, + sources_id, + sources_pages, + short_name, + long_name, + numerical) +VALUES + (1, 1, '271-72', '-', 'Negligible', 0.0), + (2, 1, '271-72', 'L', 'Light', 0.1), + (3, 1, '271-72', '1', 'One', 1.0), + (4, 1, '271-72', '2', 'Two', 2.0), + (5, 1, '271-72', '3', 'Three', 3.0), + (6, 1, '271-72', '4', 'Four', 4.0), + (7, 1, '271-72', '5', 'Five', 5.0); + diff --git a/gendb.bat b/gendb.bat index 7ea1315..26c9395 100644 --- a/gendb.bat +++ b/gendb.bat @@ -11,6 +11,7 @@ sqlite3 pf2.db < schema/traits.sql sqlite3 pf2.db < schema/feats.sql sqlite3 pf2.db < schema/senses.sql sqlite3 pf2.db < schema/ancestries.sql +sqlite3 pf2.db < schema/armor.sql :: Loading data sqlite3 pf2.db < data/sources.sql @@ -23,6 +24,7 @@ sqlite3 pf2.db < data/traits.sql sqlite3 pf2.db < data/feats.sql sqlite3 pf2.db < data/ancestries.sql sqlite3 pf2.db < data/heritages.sql +sqlite3 pf2.db < data/armor.sql :: Wait for keypress pause diff --git a/gendb.sh b/gendb.sh index 91ec5ae..0744d49 100755 --- a/gendb.sh +++ b/gendb.sh @@ -6,6 +6,7 @@ sqlite3 pf2.db < schema/sources.sql sqlite3 pf2.db < schema/backgrounds.sql # echo 'schema/abilityscores.sql' sqlite3 pf2.db < schema/abilityscores.sql +sqlite3 pf2.db < schema/bulk.sql # echo 'schema/sizes.sql' sqlite3 pf2.db < schema/sizes.sql # echo 'schema/langs.sql' @@ -18,6 +19,7 @@ sqlite3 pf2.db < schema/feats.sql sqlite3 pf2.db < schema/senses.sql # echo 'schema/ancestries.sql' sqlite3 pf2.db < schema/ancestries.sql +sqlite3 pf2.db < schema/armor.sql echo 'loading data' # echo 'data/sources.sql' sqlite3 pf2.db < data/sources.sql @@ -25,6 +27,7 @@ sqlite3 pf2.db < data/sources.sql sqlite3 pf2.db < data/backgrounds.sql # echo 'data/abilityscores.sql' sqlite3 pf2.db < data/abilityscores.sql +sqlite3 pf2.db < data/bulk.sql # echo 'data/senses.sql' sqlite3 pf2.db < data/senses.sql # echo 'data/sizes.sql' @@ -37,6 +40,7 @@ sqlite3 pf2.db < data/traits.sql sqlite3 pf2.db < data/feats.sql # echo 'data/ancestries.sql' sqlite3 pf2.db < data/ancestries.sql +sqlite3 pf2.db < data/armor.sql # echo 'data/heritages.sql' sqlite3 pf2.db < data/heritages.sql diff --git a/schema/armor.sql b/schema/armor.sql new file mode 100644 index 0000000..6185163 --- /dev/null +++ b/schema/armor.sql @@ -0,0 +1,46 @@ + +CREATE TABLE armorgroup ( + grp_id INTEGER PRIMARY KEY, + sources_id INTEGER NOT NULL, + sources_pages TEXT NOT NULL, + short_name TEXT NOT NULL UNIQUE, + descr TEXT NOT NULL, + FOREIGN KEY (sources_id) REFERENCES sources(sources_id) +); + +CREATE TABLE armorcategory ( + armor_category_id INTEGER PRIMARY KEY, + short_name TEXT NOT NULL UNIQUE +); + +CREATE TABLE armor ( + armor_id INTEGER PRIMARY KEY, + sources_id INTEGER NOT NULL, + sources_pages TEXT, + armor_category_id INTEGER NOT NULL, + short_name TEXT NOT NULL, + item_level INTEGER, + price_text TEXT NOT NULL, + price_gp FLOAT NOT NULL, + ac_bonus INTEGER NOT NULL, + dex_cap INTEGER, + check_penalty INTEGER, + speed_penalty INTEGER, + strength INTEGER, + bulk_id INTEGER NOT NULL, + grp_id INTEGER, + descr TEXT NOT NULL, + FOREIGN KEY (bulk_id) REFERENCES bulk(bulk_id), + FOREIGN KEY (grp_id) REFERENCES armorgroup(grp_id), + FOREIGN KEY (sources_id) REFERENCES sources(sources_id) +); + +CREATE TABLE armor_traits ( + id INTEGER PRIMARY KEY, + armor_id INTEGER NOT NULL, + traits_id INTEGER NOT NULL, + FOREIGN KEY (armor_id) REFERENCES armor(armor_id), + FOREIGN KEY (traits_id) REFERENCES traits(traits_id) +); + + diff --git a/schema/bulk.sql b/schema/bulk.sql new file mode 100644 index 0000000..b301978 --- /dev/null +++ b/schema/bulk.sql @@ -0,0 +1,10 @@ +CREATE TABLE bulk ( + bulk_id INTEGER PRIMARY KEY, + sources_id INTEGER NOT NULL, + sources_pages TEXT NOT NULL, + short_name TEXT NOT NULL, + long_name TEXT NOT NULL, + numerical FLOAT NOT NULL, + FOREIGN KEY (sources_id) REFERENCES sources(sources_id) +); +