diff --git a/prisma/migrations/20241123140835_lol/migration.sql b/prisma/migrations/20241123140835_lol/migration.sql deleted file mode 100644 index 584f083..0000000 --- a/prisma/migrations/20241123140835_lol/migration.sql +++ /dev/null @@ -1,2 +0,0 @@ --- AlterTable -ALTER TABLE `CharacterHair` ADD COLUMN `gender` ENUM('MALE', 'FEMALE') NOT NULL DEFAULT 'MALE'; diff --git a/prisma/migrations/20241123141319_lol2/migration.sql b/prisma/migrations/20241123141319_lol2/migration.sql deleted file mode 100644 index 8b026a2..0000000 --- a/prisma/migrations/20241123141319_lol2/migration.sql +++ /dev/null @@ -1,2 +0,0 @@ --- AlterTable -ALTER TABLE `CharacterHair` ADD COLUMN `isEnabledForCharCreation` BOOLEAN NOT NULL DEFAULT false; diff --git a/prisma/migrations/20241123222118_lol3/migration.sql b/prisma/migrations/20241123222118_lol3/migration.sql deleted file mode 100644 index 39efbe8..0000000 --- a/prisma/migrations/20241123222118_lol3/migration.sql +++ /dev/null @@ -1,15 +0,0 @@ -/* - Warnings: - - - You are about to drop the column `hairId` on the `Character` table. All the data in the column will be lost. - -*/ --- DropForeignKey -ALTER TABLE `Character` DROP FOREIGN KEY `Character_hairId_fkey`; - --- AlterTable -ALTER TABLE `Character` DROP COLUMN `hairId`, - ADD COLUMN `characterHairId` INTEGER NULL; - --- AddForeignKey -ALTER TABLE `Character` ADD CONSTRAINT `Character_characterHairId_fkey` FOREIGN KEY (`characterHairId`) REFERENCES `CharacterHair`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/migrations/20241121015734_init/migration.sql b/prisma/migrations/20241217160101_init/migration.sql similarity index 87% rename from prisma/migrations/20241121015734_init/migration.sql rename to prisma/migrations/20241217160101_init/migration.sql index 9f03ab9..3c97e10 100644 --- a/prisma/migrations/20241121015734_init/migration.sql +++ b/prisma/migrations/20241217160101_init/migration.sql @@ -52,7 +52,9 @@ CREATE TABLE `Item` ( `id` VARCHAR(191) NOT NULL, `name` VARCHAR(191) NOT NULL, `description` VARCHAR(191) NULL, + `itemType` ENUM('WEAPON', 'HELMET', 'CHEST', 'LEGS', 'BOOTS', 'GLOVES', 'RING', 'NECKLACE') NOT NULL, `stackable` BOOLEAN NOT NULL DEFAULT false, + `rarity` ENUM('COMMON', 'UNCOMMON', 'RARE', 'EPIC', 'LEGENDARY') NOT NULL DEFAULT 'COMMON', `createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), `updatedAt` DATETIME(3) NOT NULL, @@ -101,6 +103,8 @@ CREATE TABLE `CharacterType` ( CREATE TABLE `CharacterHair` ( `id` INTEGER NOT NULL AUTO_INCREMENT, `name` VARCHAR(191) NOT NULL, + `gender` ENUM('MALE', 'FEMALE') NOT NULL DEFAULT 'MALE', + `isEnabledForCharCreation` BOOLEAN NOT NULL DEFAULT false, `spriteId` VARCHAR(191) NULL, PRIMARY KEY (`id`) @@ -112,18 +116,22 @@ CREATE TABLE `Character` ( `userId` INTEGER NOT NULL, `name` VARCHAR(191) NOT NULL, `online` BOOLEAN NOT NULL DEFAULT false, + `role` VARCHAR(191) NOT NULL DEFAULT 'player', + `zoneId` INTEGER NOT NULL DEFAULT 1, + `positionX` INTEGER NOT NULL DEFAULT 0, + `positionY` INTEGER NOT NULL DEFAULT 0, + `rotation` INTEGER NOT NULL DEFAULT 0, + `characterTypeId` INTEGER NULL, + `characterHairId` INTEGER NULL, + `alignment` INTEGER NOT NULL DEFAULT 50, `hitpoints` INTEGER NOT NULL DEFAULT 100, `mana` INTEGER NOT NULL DEFAULT 100, `level` INTEGER NOT NULL DEFAULT 1, `experience` INTEGER NOT NULL DEFAULT 0, - `alignment` INTEGER NOT NULL DEFAULT 50, - `role` VARCHAR(191) NOT NULL DEFAULT 'player', - `positionX` INTEGER NOT NULL DEFAULT 0, - `positionY` INTEGER NOT NULL DEFAULT 0, - `rotation` INTEGER NOT NULL DEFAULT 0, - `zoneId` INTEGER NOT NULL DEFAULT 1, - `characterTypeId` INTEGER NULL, - `hairId` INTEGER NULL, + `strength` INTEGER NOT NULL DEFAULT 10, + `dexterity` INTEGER NOT NULL DEFAULT 10, + `intelligence` INTEGER NOT NULL DEFAULT 10, + `wisdom` INTEGER NOT NULL DEFAULT 10, UNIQUE INDEX `Character_name_key`(`name`), PRIMARY KEY (`id`) @@ -139,6 +147,17 @@ CREATE TABLE `CharacterItem` ( PRIMARY KEY (`id`) ) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; +-- CreateTable +CREATE TABLE `EquippedCharacterItem` ( + `id` INTEGER NOT NULL AUTO_INCREMENT, + `characterId` INTEGER NOT NULL, + `itemId` VARCHAR(191) NOT NULL, + `quantity` INTEGER NOT NULL, + `slot` ENUM('HEAD', 'BODY', 'ARMS', 'LEGS', 'NECK', 'RING') NOT NULL, + + PRIMARY KEY (`id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + -- CreateTable CREATE TABLE `Tile` ( `id` VARCHAR(191) NOT NULL, @@ -256,7 +275,7 @@ ALTER TABLE `Character` ADD CONSTRAINT `Character_zoneId_fkey` FOREIGN KEY (`zon ALTER TABLE `Character` ADD CONSTRAINT `Character_characterTypeId_fkey` FOREIGN KEY (`characterTypeId`) REFERENCES `CharacterType`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; -- AddForeignKey -ALTER TABLE `Character` ADD CONSTRAINT `Character_hairId_fkey` FOREIGN KEY (`hairId`) REFERENCES `CharacterHair`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; +ALTER TABLE `Character` ADD CONSTRAINT `Character_characterHairId_fkey` FOREIGN KEY (`characterHairId`) REFERENCES `CharacterHair`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; -- AddForeignKey ALTER TABLE `CharacterItem` ADD CONSTRAINT `CharacterItem_characterId_fkey` FOREIGN KEY (`characterId`) REFERENCES `Character`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; @@ -264,6 +283,12 @@ ALTER TABLE `CharacterItem` ADD CONSTRAINT `CharacterItem_characterId_fkey` FORE -- AddForeignKey ALTER TABLE `CharacterItem` ADD CONSTRAINT `CharacterItem_itemId_fkey` FOREIGN KEY (`itemId`) REFERENCES `Item`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; +-- AddForeignKey +ALTER TABLE `EquippedCharacterItem` ADD CONSTRAINT `EquippedCharacterItem_characterId_fkey` FOREIGN KEY (`characterId`) REFERENCES `Character`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `EquippedCharacterItem` ADD CONSTRAINT `EquippedCharacterItem_itemId_fkey` FOREIGN KEY (`itemId`) REFERENCES `Item`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; + -- AddForeignKey ALTER TABLE `ZoneEffect` ADD CONSTRAINT `ZoneEffect_zoneId_fkey` FOREIGN KEY (`zoneId`) REFERENCES `Zone`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;