Refine Gear augments and builder levels
This commit is contained in:
+13
-3
@@ -357,7 +357,6 @@ CREATE TABLE IF NOT EXISTS gear (
|
||||
name TEXT NOT NULL,
|
||||
slot TEXT NOT NULL CHECK(slot IN ('Holster', 'Gloves', 'Backpack', 'Knee Pads', 'Body Armor', 'Mask')),
|
||||
tier INTEGER NOT NULL CHECK(tier BETWEEN 0 AND 2),
|
||||
level INTEGER NOT NULL CHECK(level BETWEEN 1 AND 50),
|
||||
base_health_min REAL NOT NULL CHECK(base_health_min >= 0),
|
||||
base_health_max REAL NOT NULL CHECK(base_health_max >= base_health_min),
|
||||
base_armor_min REAL,
|
||||
@@ -386,9 +385,9 @@ CREATE TABLE IF NOT EXISTS gear_tactical_augments (
|
||||
id TEXT PRIMARY KEY,
|
||||
gear_slot TEXT NOT NULL CHECK(gear_slot IN ('Holster', 'Gloves', 'Backpack', 'Knee Pads', 'Body Armor', 'Mask')),
|
||||
augment_slot INTEGER NOT NULL CHECK(augment_slot BETWEEN 1 AND 4),
|
||||
stat_attribute_id TEXT NOT NULL REFERENCES stat_attributes(id),
|
||||
effect_type TEXT NOT NULL CHECK(effect_type IN ('Custom', 'Base Percentage')),
|
||||
stat_attribute_id TEXT REFERENCES stat_attributes(id),
|
||||
value REAL NOT NULL,
|
||||
unlock_cost INTEGER NOT NULL CHECK(unlock_cost >= 0),
|
||||
created_at TEXT NOT NULL,
|
||||
updated_at TEXT NOT NULL,
|
||||
UNIQUE(gear_slot, augment_slot),
|
||||
@@ -396,8 +395,19 @@ CREATE TABLE IF NOT EXISTS gear_tactical_augments (
|
||||
(gear_slot IN ('Backpack', 'Body Armor') AND augment_slot BETWEEN 1 AND 4)
|
||||
OR
|
||||
(gear_slot NOT IN ('Backpack', 'Body Armor') AND augment_slot BETWEEN 1 AND 3)
|
||||
),
|
||||
CHECK(
|
||||
(augment_slot = 1 AND effect_type = 'Custom' AND stat_attribute_id IS NOT NULL)
|
||||
OR
|
||||
(augment_slot > 1 AND effect_type = 'Base Percentage' AND stat_attribute_id IS NULL AND value > 0)
|
||||
)
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS gear_tactical_augment_costs (
|
||||
augment_id TEXT NOT NULL REFERENCES gear_tactical_augments(id) ON DELETE CASCADE,
|
||||
gear_tier INTEGER NOT NULL CHECK(gear_tier BETWEEN 0 AND 2),
|
||||
unlock_cost INTEGER NOT NULL CHECK(unlock_cost >= 0),
|
||||
PRIMARY KEY(augment_id, gear_tier)
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS weapons (
|
||||
id TEXT PRIMARY KEY,
|
||||
name TEXT NOT NULL,
|
||||
|
||||
Reference in New Issue
Block a user