2 CREATE TYPE "InventoryType" AS ENUM ('HELM', 'R_SHOULDER', 'L_SHOULDER', 'TORSO', 'R_ARM', 'L_ARM', 'LEGS', 'L_FOOT', 'R_FOOT');
5 CREATE TYPE "Rarity" AS ENUM ('COMMON', 'UNCOMMON', 'RARE');
11 "type" "InventoryType"[],
12 "durability" INTEGER NOT NULL DEFAULT 0,
13 "minLevelDrop" INTEGER NOT NULL DEFAULT 1,
14 "availableRarity" "Rarity"[],
15 "statModifiers" JSONB NOT NULL,
17 CONSTRAINT "Item_pkey" PRIMARY KEY ("id")
21 CREATE TABLE "Inventory" (
23 "playerId" UUID NOT NULL,
24 "itemId" UUID NOT NULL,
25 "maxDurability" INTEGER NOT NULL DEFAULT 1,
26 "currentDurability" INTEGER NOT NULL DEFAULT 1,
27 "type" "InventoryType"[],
28 "statModifiers" JSONB NOT NULL,
29 "stackable" BOOLEAN NOT NULL DEFAULT false,
31 CONSTRAINT "Inventory_pkey" PRIMARY KEY ("id")
35 CREATE UNIQUE INDEX "Item_name_key" ON "Item"("name");
38 ALTER TABLE "Inventory" ADD CONSTRAINT "Inventory_playerId_fkey" FOREIGN KEY ("playerId") REFERENCES "Player"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
41 ALTER TABLE "Inventory" ADD CONSTRAINT "Inventory_itemId_fkey" FOREIGN KEY ("itemId") REFERENCES "Item"("id") ON DELETE RESTRICT ON UPDATE CASCADE;