migrations/Version20220514092054.php line 1

  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use Doctrine\DBAL\Schema\Schema;
  5. use Doctrine\Migrations\AbstractMigration;
  6. /**
  7.  * Auto-generated Migration: Please modify to your needs!
  8.  */
  9. final class Version20220514092054 extends AbstractMigration
  10. {
  11.     public function getDescription(): string
  12.     {
  13.         return '';
  14.     }
  15.     public function up(Schema $schema): void
  16.     {
  17.         // this up() migration is auto-generated, please modify it to your needs
  18.         $this->addSql('CREATE TABLE item (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, playable_entity_equipped_id INTEGER DEFAULT NULL, unplayable_entity_equipped_id INTEGER DEFAULT NULL, artifact_entity_equipped_id INTEGER DEFAULT NULL, inside_of_id INTEGER DEFAULT NULL, name VARCHAR(255) NOT NULL, type VARCHAR(255) NOT NULL, weight INTEGER NOT NULL, weight_max INTEGER NOT NULL, size VARCHAR(10) NOT NULL, equipped BOOLEAN NOT NULL, container BOOLEAN NOT NULL, value INTEGER DEFAULT NULL)');
  19.         $this->addSql('CREATE INDEX IDX_1F1B251ED171181E ON item (playable_entity_equipped_id)');
  20.         $this->addSql('CREATE INDEX IDX_1F1B251E817C99A1 ON item (unplayable_entity_equipped_id)');
  21.         $this->addSql('CREATE INDEX IDX_1F1B251EDE13AB7A ON item (artifact_entity_equipped_id)');
  22.         $this->addSql('CREATE INDEX IDX_1F1B251ECDEA07EC ON item (inside_of_id)');
  23.         $this->addSql('DROP INDEX IDX_4966C724DA6A219');
  24.         $this->addSql('CREATE TEMPORARY TABLE __temp__artifact_entity AS SELECT id, place_id, name, hp_max, hp, description FROM artifact_entity');
  25.         $this->addSql('DROP TABLE artifact_entity');
  26.         $this->addSql('CREATE TABLE artifact_entity (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, place_id INTEGER DEFAULT NULL, name VARCHAR(255) NOT NULL, hp_max INTEGER NOT NULL, hp INTEGER NOT NULL, description CLOB DEFAULT NULL --(DC2Type:array)
  27.         , CONSTRAINT FK_4966C724DA6A219 FOREIGN KEY (place_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  28.         $this->addSql('INSERT INTO artifact_entity (id, place_id, name, hp_max, hp, description) SELECT id, place_id, name, hp_max, hp, description FROM __temp__artifact_entity');
  29.         $this->addSql('DROP TABLE __temp__artifact_entity');
  30.         $this->addSql('CREATE INDEX IDX_4966C724DA6A219 ON artifact_entity (place_id)');
  31.         $this->addSql('DROP INDEX IDX_582BD22ADA6A219');
  32.         $this->addSql('DROP INDEX IDX_582BD22A796FAEA1');
  33.         $this->addSql('CREATE TEMPORARY TABLE __temp__artifact_entity_place AS SELECT artifact_entity_id, place_id FROM artifact_entity_place');
  34.         $this->addSql('DROP TABLE artifact_entity_place');
  35.         $this->addSql('CREATE TABLE artifact_entity_place (artifact_entity_id INTEGER NOT NULL, place_id INTEGER NOT NULL, PRIMARY KEY(artifact_entity_id, place_id), CONSTRAINT FK_582BD22A796FAEA1 FOREIGN KEY (artifact_entity_id) REFERENCES artifact_entity (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_582BD22ADA6A219 FOREIGN KEY (place_id) REFERENCES place (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE)');
  36.         $this->addSql('INSERT INTO artifact_entity_place (artifact_entity_id, place_id) SELECT artifact_entity_id, place_id FROM __temp__artifact_entity_place');
  37.         $this->addSql('DROP TABLE __temp__artifact_entity_place');
  38.         $this->addSql('CREATE INDEX IDX_582BD22ADA6A219 ON artifact_entity_place (place_id)');
  39.         $this->addSql('CREATE INDEX IDX_582BD22A796FAEA1 ON artifact_entity_place (artifact_entity_id)');
  40.         $this->addSql('DROP INDEX IDX_8F3F68C553166228');
  41.         $this->addSql('DROP INDEX IDX_8F3F68C57E3C61F9');
  42.         $this->addSql('DROP INDEX IDX_8F3F68C53E10C8E9');
  43.         $this->addSql('DROP INDEX IDX_8F3F68C5A30FFC4C');
  44.         $this->addSql('DROP INDEX IDX_8F3F68C54CCA4D7D');
  45.         $this->addSql('DROP INDEX IDX_8F3F68C569F6B503');
  46.         $this->addSql('DROP INDEX IDX_8F3F68C59A280F8B');
  47.         $this->addSql('DROP INDEX IDX_8F3F68C56C1B4306');
  48.         $this->addSql('DROP INDEX IDX_8F3F68C5B7556913');
  49.         $this->addSql('CREATE TEMPORARY TABLE __temp__log AS SELECT id, owner_id, origin_place_id, origin_playable_entity_id, unplayable_entity_origin_id, destination_playable_entity_id, destination_unplayable_entity_id, destination_place_id, origin_path_id, destination_path_id, datetime, type, value FROM log');
  50.         $this->addSql('DROP TABLE log');
  51.         $this->addSql('CREATE TABLE log (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, owner_id INTEGER NOT NULL, origin_place_id INTEGER NOT NULL, origin_playable_entity_id INTEGER DEFAULT NULL, unplayable_entity_origin_id INTEGER DEFAULT NULL, destination_playable_entity_id INTEGER DEFAULT NULL, destination_unplayable_entity_id INTEGER DEFAULT NULL, destination_place_id INTEGER DEFAULT NULL, origin_path_id INTEGER DEFAULT NULL, destination_path_id INTEGER DEFAULT NULL, datetime DATETIME NOT NULL --(DC2Type:datetime_immutable)
  52.         , type VARCHAR(255) NOT NULL, value INTEGER DEFAULT NULL, CONSTRAINT FK_8F3F68C57E3C61F9 FOREIGN KEY (owner_id) REFERENCES playable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_8F3F68C53E10C8E9 FOREIGN KEY (origin_place_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_8F3F68C5A30FFC4C FOREIGN KEY (origin_playable_entity_id) REFERENCES playable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_8F3F68C54CCA4D7D FOREIGN KEY (unplayable_entity_origin_id) REFERENCES unplayable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_8F3F68C569F6B503 FOREIGN KEY (destination_playable_entity_id) REFERENCES playable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_8F3F68C59A280F8B FOREIGN KEY (destination_unplayable_entity_id) REFERENCES unplayable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_8F3F68C553166228 FOREIGN KEY (destination_place_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_8F3F68C56C1B4306 FOREIGN KEY (origin_path_id) REFERENCES path (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_8F3F68C5B7556913 FOREIGN KEY (destination_path_id) REFERENCES path (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  53.         $this->addSql('INSERT INTO log (id, owner_id, origin_place_id, origin_playable_entity_id, unplayable_entity_origin_id, destination_playable_entity_id, destination_unplayable_entity_id, destination_place_id, origin_path_id, destination_path_id, datetime, type, value) SELECT id, owner_id, origin_place_id, origin_playable_entity_id, unplayable_entity_origin_id, destination_playable_entity_id, destination_unplayable_entity_id, destination_place_id, origin_path_id, destination_path_id, datetime, type, value FROM __temp__log');
  54.         $this->addSql('DROP TABLE __temp__log');
  55.         $this->addSql('CREATE INDEX IDX_8F3F68C553166228 ON log (destination_place_id)');
  56.         $this->addSql('CREATE INDEX IDX_8F3F68C57E3C61F9 ON log (owner_id)');
  57.         $this->addSql('CREATE INDEX IDX_8F3F68C53E10C8E9 ON log (origin_place_id)');
  58.         $this->addSql('CREATE INDEX IDX_8F3F68C5A30FFC4C ON log (origin_playable_entity_id)');
  59.         $this->addSql('CREATE INDEX IDX_8F3F68C54CCA4D7D ON log (unplayable_entity_origin_id)');
  60.         $this->addSql('CREATE INDEX IDX_8F3F68C569F6B503 ON log (destination_playable_entity_id)');
  61.         $this->addSql('CREATE INDEX IDX_8F3F68C59A280F8B ON log (destination_unplayable_entity_id)');
  62.         $this->addSql('CREATE INDEX IDX_8F3F68C56C1B4306 ON log (origin_path_id)');
  63.         $this->addSql('CREATE INDEX IDX_8F3F68C5B7556913 ON log (destination_path_id)');
  64.         $this->addSql('DROP INDEX IDX_B6BD307F2239FAB1');
  65.         $this->addSql('DROP INDEX IDX_B6BD307FD1741030');
  66.         $this->addSql('CREATE TEMPORARY TABLE __temp__message AS SELECT id, place_origin_id, playable_entity_origin_id, date_time, content FROM message');
  67.         $this->addSql('DROP TABLE message');
  68.         $this->addSql('CREATE TABLE message (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, place_origin_id INTEGER DEFAULT NULL, playable_entity_origin_id INTEGER DEFAULT NULL, date_time DATETIME NOT NULL --(DC2Type:datetime_immutable)
  69.         , content CLOB NOT NULL, CONSTRAINT FK_B6BD307F2239FAB1 FOREIGN KEY (place_origin_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_B6BD307FD1741030 FOREIGN KEY (playable_entity_origin_id) REFERENCES playable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  70.         $this->addSql('INSERT INTO message (id, place_origin_id, playable_entity_origin_id, date_time, content) SELECT id, place_origin_id, playable_entity_origin_id, date_time, content FROM __temp__message');
  71.         $this->addSql('DROP TABLE __temp__message');
  72.         $this->addSql('CREATE INDEX IDX_B6BD307F2239FAB1 ON message (place_origin_id)');
  73.         $this->addSql('CREATE INDEX IDX_B6BD307FD1741030 ON message (playable_entity_origin_id)');
  74.         $this->addSql('DROP INDEX IDX_B548B0F56A273CC');
  75.         $this->addSql('DROP INDEX IDX_B548B0F816C6140');
  76.         $this->addSql('CREATE TEMPORARY TABLE __temp__path AS SELECT id, origin_id, destination_id, name, position, cost, type FROM path');
  77.         $this->addSql('DROP TABLE path');
  78.         $this->addSql('CREATE TABLE path (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, origin_id INTEGER NOT NULL, destination_id INTEGER NOT NULL, name VARCHAR(255) NOT NULL, position SMALLINT NOT NULL, cost INTEGER DEFAULT NULL, type VARCHAR(255) DEFAULT NULL, CONSTRAINT FK_B548B0F56A273CC FOREIGN KEY (origin_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_B548B0F816C6140 FOREIGN KEY (destination_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  79.         $this->addSql('INSERT INTO path (id, origin_id, destination_id, name, position, cost, type) SELECT id, origin_id, destination_id, name, position, cost, type FROM __temp__path');
  80.         $this->addSql('DROP TABLE __temp__path');
  81.         $this->addSql('CREATE INDEX IDX_B548B0F56A273CC ON path (origin_id)');
  82.         $this->addSql('CREATE INDEX IDX_B548B0F816C6140 ON path (destination_id)');
  83.         $this->addSql('DROP INDEX IDX_63110882DA6A219');
  84.         $this->addSql('CREATE TEMPORARY TABLE __temp__place_description AS SELECT id, place_id, text, language, datetime FROM place_description');
  85.         $this->addSql('DROP TABLE place_description');
  86.         $this->addSql('CREATE TABLE place_description (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, place_id INTEGER NOT NULL, text CLOB NOT NULL, language VARCHAR(10) NOT NULL, datetime DATETIME NOT NULL --(DC2Type:datetime_immutable)
  87.         , CONSTRAINT FK_63110882DA6A219 FOREIGN KEY (place_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  88.         $this->addSql('INSERT INTO place_description (id, place_id, text, language, datetime) SELECT id, place_id, text, language, datetime FROM __temp__place_description');
  89.         $this->addSql('DROP TABLE __temp__place_description');
  90.         $this->addSql('CREATE INDEX IDX_63110882DA6A219 ON place_description (place_id)');
  91.         $this->addSql('DROP INDEX IDX_114242BE99E6F5DF');
  92.         $this->addSql('DROP INDEX IDX_114242BEDA6A219');
  93.         $this->addSql('CREATE TEMPORARY TABLE __temp__playable_entity AS SELECT id, player_id, place_id, name, gender, trombinoscope, size, hp, ap, max_hp, max_ap, armor_class, agility, charisma, intelligence, perception, strength, skills, abilities, known_magicskills, known_attackskills, known_craftskills, race FROM playable_entity');
  94.         $this->addSql('DROP TABLE playable_entity');
  95.         $this->addSql('CREATE TABLE playable_entity (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, player_id INTEGER DEFAULT NULL, place_id INTEGER DEFAULT NULL, name VARCHAR(255) NOT NULL, gender SMALLINT NOT NULL, trombinoscope CLOB DEFAULT NULL --(DC2Type:array)
  96.         , size SMALLINT NOT NULL, hp INTEGER NOT NULL, ap INTEGER NOT NULL, max_hp INTEGER NOT NULL, max_ap INTEGER NOT NULL, armor_class INTEGER NOT NULL, agility INTEGER NOT NULL, charisma INTEGER NOT NULL, intelligence INTEGER NOT NULL, perception INTEGER NOT NULL, strength INTEGER NOT NULL, skills CLOB DEFAULT NULL --(DC2Type:array)
  97.         , abilities CLOB DEFAULT NULL --(DC2Type:array)
  98.         , known_magicskills CLOB DEFAULT NULL --(DC2Type:array)
  99.         , known_attackskills CLOB DEFAULT NULL --(DC2Type:array)
  100.         , known_craftskills CLOB DEFAULT NULL --(DC2Type:array)
  101.         , race VARCHAR(255) NOT NULL, CONSTRAINT FK_114242BE99E6F5DF FOREIGN KEY (player_id) REFERENCES user (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_114242BEDA6A219 FOREIGN KEY (place_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  102.         $this->addSql('INSERT INTO playable_entity (id, player_id, place_id, name, gender, trombinoscope, size, hp, ap, max_hp, max_ap, armor_class, agility, charisma, intelligence, perception, strength, skills, abilities, known_magicskills, known_attackskills, known_craftskills, race) SELECT id, player_id, place_id, name, gender, trombinoscope, size, hp, ap, max_hp, max_ap, armor_class, agility, charisma, intelligence, perception, strength, skills, abilities, known_magicskills, known_attackskills, known_craftskills, race FROM __temp__playable_entity');
  103.         $this->addSql('DROP TABLE __temp__playable_entity');
  104.         $this->addSql('CREATE INDEX IDX_114242BE99E6F5DF ON playable_entity (player_id)');
  105.         $this->addSql('CREATE INDEX IDX_114242BEDA6A219 ON playable_entity (place_id)');
  106.         $this->addSql('DROP INDEX IDX_15659A3F31C1B00');
  107.         $this->addSql('CREATE TEMPORARY TABLE __temp__playable_entity_description AS SELECT id, playable_entity_id, text, language, datetime FROM playable_entity_description');
  108.         $this->addSql('DROP TABLE playable_entity_description');
  109.         $this->addSql('CREATE TABLE playable_entity_description (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, playable_entity_id INTEGER DEFAULT NULL, text CLOB NOT NULL, language VARCHAR(10) NOT NULL, datetime DATETIME NOT NULL --(DC2Type:datetime_immutable)
  110.         , CONSTRAINT FK_15659A3F31C1B00 FOREIGN KEY (playable_entity_id) REFERENCES playable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  111.         $this->addSql('INSERT INTO playable_entity_description (id, playable_entity_id, text, language, datetime) SELECT id, playable_entity_id, text, language, datetime FROM __temp__playable_entity_description');
  112.         $this->addSql('DROP TABLE __temp__playable_entity_description');
  113.         $this->addSql('CREATE INDEX IDX_15659A3F31C1B00 ON playable_entity_description (playable_entity_id)');
  114.         $this->addSql('DROP INDEX IDX_446A51C4537A1329');
  115.         $this->addSql('DROP INDEX IDX_446A51C4E92F8F78');
  116.         $this->addSql('CREATE TEMPORARY TABLE __temp__postman AS SELECT id, message_id, recipient_id, read FROM postman');
  117.         $this->addSql('DROP TABLE postman');
  118.         $this->addSql('CREATE TABLE postman (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, message_id INTEGER NOT NULL, recipient_id INTEGER NOT NULL, read BOOLEAN NOT NULL, CONSTRAINT FK_446A51C4537A1329 FOREIGN KEY (message_id) REFERENCES message (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_446A51C4E92F8F78 FOREIGN KEY (recipient_id) REFERENCES playable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  119.         $this->addSql('INSERT INTO postman (id, message_id, recipient_id, read) SELECT id, message_id, recipient_id, read FROM __temp__postman');
  120.         $this->addSql('DROP TABLE __temp__postman');
  121.         $this->addSql('CREATE INDEX IDX_446A51C4537A1329 ON postman (message_id)');
  122.         $this->addSql('CREATE INDEX IDX_446A51C4E92F8F78 ON postman (recipient_id)');
  123.         $this->addSql('DROP INDEX IDX_86A7E937DA6A219');
  124.         $this->addSql('CREATE TEMPORARY TABLE __temp__unplayable_entity AS SELECT id, place_id, name, hp, hp_max, ap, ap_max, armor_class, description FROM unplayable_entity');
  125.         $this->addSql('DROP TABLE unplayable_entity');
  126.         $this->addSql('CREATE TABLE unplayable_entity (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, place_id INTEGER DEFAULT NULL, name VARCHAR(255) NOT NULL, hp INTEGER NOT NULL, hp_max INTEGER NOT NULL, ap INTEGER NOT NULL, ap_max INTEGER NOT NULL, armor_class INTEGER NOT NULL, description CLOB DEFAULT NULL --(DC2Type:array)
  127.         , CONSTRAINT FK_86A7E937DA6A219 FOREIGN KEY (place_id) REFERENCES place (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  128.         $this->addSql('INSERT INTO unplayable_entity (id, place_id, name, hp, hp_max, ap, ap_max, armor_class, description) SELECT id, place_id, name, hp, hp_max, ap, ap_max, armor_class, description FROM __temp__unplayable_entity');
  129.         $this->addSql('DROP TABLE __temp__unplayable_entity');
  130.         $this->addSql('CREATE INDEX IDX_86A7E937DA6A219 ON unplayable_entity (place_id)');
  131.         $this->addSql('DROP INDEX UNIQ_8D93D649E7927C74');
  132.         $this->addSql('DROP INDEX UNIQ_8D93D6491136BE75');
  133.         $this->addSql('CREATE TEMPORARY TABLE __temp__user AS SELECT id, character_id, email, roles, password, nickname FROM user');
  134.         $this->addSql('DROP TABLE user');
  135.         $this->addSql('CREATE TABLE user (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, character_id INTEGER DEFAULT NULL, email VARCHAR(180) NOT NULL, roles CLOB NOT NULL --(DC2Type:json)
  136.         , password VARCHAR(255) NOT NULL, nickname VARCHAR(255) NOT NULL, CONSTRAINT FK_8D93D6491136BE75 FOREIGN KEY (character_id) REFERENCES playable_entity (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
  137.         $this->addSql('INSERT INTO user (id, character_id, email, roles, password, nickname) SELECT id, character_id, email, roles, password, nickname FROM __temp__user');
  138.         $this->addSql('DROP TABLE __temp__user');
  139.         $this->addSql('CREATE UNIQUE INDEX UNIQ_8D93D649E7927C74 ON user (email)');
  140.         $this->addSql('CREATE UNIQUE INDEX UNIQ_8D93D6491136BE75 ON user (character_id)');
  141.     }
  142.     public function down(Schema $schema): void
  143.     {
  144.         // this down() migration is auto-generated, please modify it to your needs
  145.         $this->addSql('DROP TABLE item');
  146.         $this->addSql('DROP INDEX IDX_4966C724DA6A219');
  147.         $this->addSql('CREATE TEMPORARY TABLE __temp__artifact_entity AS SELECT id, place_id, name, hp_max, hp, description FROM artifact_entity');
  148.         $this->addSql('DROP TABLE artifact_entity');
  149.         $this->addSql('CREATE TABLE artifact_entity (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, place_id INTEGER DEFAULT NULL, name VARCHAR(255) NOT NULL, hp_max INTEGER NOT NULL, hp INTEGER NOT NULL, description CLOB DEFAULT NULL --(DC2Type:array)
  150.         )');
  151.         $this->addSql('INSERT INTO artifact_entity (id, place_id, name, hp_max, hp, description) SELECT id, place_id, name, hp_max, hp, description FROM __temp__artifact_entity');
  152.         $this->addSql('DROP TABLE __temp__artifact_entity');
  153.         $this->addSql('CREATE INDEX IDX_4966C724DA6A219 ON artifact_entity (place_id)');
  154.         $this->addSql('DROP INDEX IDX_582BD22A796FAEA1');
  155.         $this->addSql('DROP INDEX IDX_582BD22ADA6A219');
  156.         $this->addSql('CREATE TEMPORARY TABLE __temp__artifact_entity_place AS SELECT artifact_entity_id, place_id FROM artifact_entity_place');
  157.         $this->addSql('DROP TABLE artifact_entity_place');
  158.         $this->addSql('CREATE TABLE artifact_entity_place (artifact_entity_id INTEGER NOT NULL, place_id INTEGER NOT NULL, PRIMARY KEY(artifact_entity_id, place_id))');
  159.         $this->addSql('INSERT INTO artifact_entity_place (artifact_entity_id, place_id) SELECT artifact_entity_id, place_id FROM __temp__artifact_entity_place');
  160.         $this->addSql('DROP TABLE __temp__artifact_entity_place');
  161.         $this->addSql('CREATE INDEX IDX_582BD22A796FAEA1 ON artifact_entity_place (artifact_entity_id)');
  162.         $this->addSql('CREATE INDEX IDX_582BD22ADA6A219 ON artifact_entity_place (place_id)');
  163.         $this->addSql('DROP INDEX IDX_8F3F68C57E3C61F9');
  164.         $this->addSql('DROP INDEX IDX_8F3F68C53E10C8E9');
  165.         $this->addSql('DROP INDEX IDX_8F3F68C5A30FFC4C');
  166.         $this->addSql('DROP INDEX IDX_8F3F68C54CCA4D7D');
  167.         $this->addSql('DROP INDEX IDX_8F3F68C569F6B503');
  168.         $this->addSql('DROP INDEX IDX_8F3F68C59A280F8B');
  169.         $this->addSql('DROP INDEX IDX_8F3F68C553166228');
  170.         $this->addSql('DROP INDEX IDX_8F3F68C56C1B4306');
  171.         $this->addSql('DROP INDEX IDX_8F3F68C5B7556913');
  172.         $this->addSql('CREATE TEMPORARY TABLE __temp__log AS SELECT id, owner_id, origin_place_id, origin_playable_entity_id, unplayable_entity_origin_id, destination_playable_entity_id, destination_unplayable_entity_id, destination_place_id, origin_path_id, destination_path_id, datetime, type, value FROM log');
  173.         $this->addSql('DROP TABLE log');
  174.         $this->addSql('CREATE TABLE log (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, owner_id INTEGER NOT NULL, origin_place_id INTEGER NOT NULL, origin_playable_entity_id INTEGER DEFAULT NULL, unplayable_entity_origin_id INTEGER DEFAULT NULL, destination_playable_entity_id INTEGER DEFAULT NULL, destination_unplayable_entity_id INTEGER DEFAULT NULL, destination_place_id INTEGER DEFAULT NULL, origin_path_id INTEGER DEFAULT NULL, destination_path_id INTEGER DEFAULT NULL, datetime DATETIME NOT NULL --(DC2Type:datetime_immutable)
  175.         , type VARCHAR(255) NOT NULL, value INTEGER DEFAULT NULL)');
  176.         $this->addSql('INSERT INTO log (id, owner_id, origin_place_id, origin_playable_entity_id, unplayable_entity_origin_id, destination_playable_entity_id, destination_unplayable_entity_id, destination_place_id, origin_path_id, destination_path_id, datetime, type, value) SELECT id, owner_id, origin_place_id, origin_playable_entity_id, unplayable_entity_origin_id, destination_playable_entity_id, destination_unplayable_entity_id, destination_place_id, origin_path_id, destination_path_id, datetime, type, value FROM __temp__log');
  177.         $this->addSql('DROP TABLE __temp__log');
  178.         $this->addSql('CREATE INDEX IDX_8F3F68C57E3C61F9 ON log (owner_id)');
  179.         $this->addSql('CREATE INDEX IDX_8F3F68C53E10C8E9 ON log (origin_place_id)');
  180.         $this->addSql('CREATE INDEX IDX_8F3F68C5A30FFC4C ON log (origin_playable_entity_id)');
  181.         $this->addSql('CREATE INDEX IDX_8F3F68C54CCA4D7D ON log (unplayable_entity_origin_id)');
  182.         $this->addSql('CREATE INDEX IDX_8F3F68C569F6B503 ON log (destination_playable_entity_id)');
  183.         $this->addSql('CREATE INDEX IDX_8F3F68C59A280F8B ON log (destination_unplayable_entity_id)');
  184.         $this->addSql('CREATE INDEX IDX_8F3F68C553166228 ON log (destination_place_id)');
  185.         $this->addSql('CREATE INDEX IDX_8F3F68C56C1B4306 ON log (origin_path_id)');
  186.         $this->addSql('CREATE INDEX IDX_8F3F68C5B7556913 ON log (destination_path_id)');
  187.         $this->addSql('DROP INDEX IDX_B6BD307F2239FAB1');
  188.         $this->addSql('DROP INDEX IDX_B6BD307FD1741030');
  189.         $this->addSql('CREATE TEMPORARY TABLE __temp__message AS SELECT id, place_origin_id, playable_entity_origin_id, date_time, content FROM message');
  190.         $this->addSql('DROP TABLE message');
  191.         $this->addSql('CREATE TABLE message (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, place_origin_id INTEGER DEFAULT NULL, playable_entity_origin_id INTEGER DEFAULT NULL, date_time DATETIME NOT NULL --(DC2Type:datetime_immutable)
  192.         , content CLOB NOT NULL)');
  193.         $this->addSql('INSERT INTO message (id, place_origin_id, playable_entity_origin_id, date_time, content) SELECT id, place_origin_id, playable_entity_origin_id, date_time, content FROM __temp__message');
  194.         $this->addSql('DROP TABLE __temp__message');
  195.         $this->addSql('CREATE INDEX IDX_B6BD307F2239FAB1 ON message (place_origin_id)');
  196.         $this->addSql('CREATE INDEX IDX_B6BD307FD1741030 ON message (playable_entity_origin_id)');
  197.         $this->addSql('DROP INDEX IDX_B548B0F56A273CC');
  198.         $this->addSql('DROP INDEX IDX_B548B0F816C6140');
  199.         $this->addSql('CREATE TEMPORARY TABLE __temp__path AS SELECT id, origin_id, destination_id, name, position, cost, type FROM path');
  200.         $this->addSql('DROP TABLE path');
  201.         $this->addSql('CREATE TABLE path (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, origin_id INTEGER NOT NULL, destination_id INTEGER NOT NULL, name VARCHAR(255) NOT NULL, position SMALLINT NOT NULL, cost INTEGER DEFAULT NULL, type VARCHAR(255) DEFAULT NULL)');
  202.         $this->addSql('INSERT INTO path (id, origin_id, destination_id, name, position, cost, type) SELECT id, origin_id, destination_id, name, position, cost, type FROM __temp__path');
  203.         $this->addSql('DROP TABLE __temp__path');
  204.         $this->addSql('CREATE INDEX IDX_B548B0F56A273CC ON path (origin_id)');
  205.         $this->addSql('CREATE INDEX IDX_B548B0F816C6140 ON path (destination_id)');
  206.         $this->addSql('DROP INDEX IDX_63110882DA6A219');
  207.         $this->addSql('CREATE TEMPORARY TABLE __temp__place_description AS SELECT id, place_id, text, language, datetime FROM place_description');
  208.         $this->addSql('DROP TABLE place_description');
  209.         $this->addSql('CREATE TABLE place_description (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, place_id INTEGER NOT NULL, text CLOB NOT NULL, language VARCHAR(10) NOT NULL, datetime DATETIME NOT NULL --(DC2Type:datetime_immutable)
  210.         )');
  211.         $this->addSql('INSERT INTO place_description (id, place_id, text, language, datetime) SELECT id, place_id, text, language, datetime FROM __temp__place_description');
  212.         $this->addSql('DROP TABLE __temp__place_description');
  213.         $this->addSql('CREATE INDEX IDX_63110882DA6A219 ON place_description (place_id)');
  214.         $this->addSql('DROP INDEX IDX_114242BE99E6F5DF');
  215.         $this->addSql('DROP INDEX IDX_114242BEDA6A219');
  216.         $this->addSql('CREATE TEMPORARY TABLE __temp__playable_entity AS SELECT id, player_id, place_id, name, gender, trombinoscope, size, hp, ap, max_hp, max_ap, armor_class, agility, charisma, intelligence, perception, strength, skills, abilities, known_magicskills, known_attackskills, known_craftskills, race FROM playable_entity');
  217.         $this->addSql('DROP TABLE playable_entity');
  218.         $this->addSql('CREATE TABLE playable_entity (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, player_id INTEGER DEFAULT NULL, place_id INTEGER DEFAULT NULL, name VARCHAR(255) NOT NULL, gender SMALLINT NOT NULL, trombinoscope CLOB DEFAULT NULL --(DC2Type:array)
  219.         , size SMALLINT NOT NULL, hp INTEGER NOT NULL, ap INTEGER NOT NULL, max_hp INTEGER NOT NULL, max_ap INTEGER NOT NULL, armor_class INTEGER NOT NULL, agility INTEGER NOT NULL, charisma INTEGER NOT NULL, intelligence INTEGER NOT NULL, perception INTEGER NOT NULL, strength INTEGER NOT NULL, skills CLOB DEFAULT NULL --(DC2Type:array)
  220.         , abilities CLOB DEFAULT NULL --(DC2Type:array)
  221.         , known_magicskills CLOB DEFAULT NULL --(DC2Type:array)
  222.         , known_attackskills CLOB DEFAULT NULL --(DC2Type:array)
  223.         , known_craftskills CLOB DEFAULT NULL --(DC2Type:array)
  224.         , race VARCHAR(255) NOT NULL)');
  225.         $this->addSql('INSERT INTO playable_entity (id, player_id, place_id, name, gender, trombinoscope, size, hp, ap, max_hp, max_ap, armor_class, agility, charisma, intelligence, perception, strength, skills, abilities, known_magicskills, known_attackskills, known_craftskills, race) SELECT id, player_id, place_id, name, gender, trombinoscope, size, hp, ap, max_hp, max_ap, armor_class, agility, charisma, intelligence, perception, strength, skills, abilities, known_magicskills, known_attackskills, known_craftskills, race FROM __temp__playable_entity');
  226.         $this->addSql('DROP TABLE __temp__playable_entity');
  227.         $this->addSql('CREATE INDEX IDX_114242BE99E6F5DF ON playable_entity (player_id)');
  228.         $this->addSql('CREATE INDEX IDX_114242BEDA6A219 ON playable_entity (place_id)');
  229.         $this->addSql('DROP INDEX IDX_15659A3F31C1B00');
  230.         $this->addSql('CREATE TEMPORARY TABLE __temp__playable_entity_description AS SELECT id, playable_entity_id, text, language, datetime FROM playable_entity_description');
  231.         $this->addSql('DROP TABLE playable_entity_description');
  232.         $this->addSql('CREATE TABLE playable_entity_description (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, playable_entity_id INTEGER DEFAULT NULL, text CLOB NOT NULL, language VARCHAR(10) NOT NULL, datetime DATETIME NOT NULL --(DC2Type:datetime_immutable)
  233.         )');
  234.         $this->addSql('INSERT INTO playable_entity_description (id, playable_entity_id, text, language, datetime) SELECT id, playable_entity_id, text, language, datetime FROM __temp__playable_entity_description');
  235.         $this->addSql('DROP TABLE __temp__playable_entity_description');
  236.         $this->addSql('CREATE INDEX IDX_15659A3F31C1B00 ON playable_entity_description (playable_entity_id)');
  237.         $this->addSql('DROP INDEX IDX_446A51C4537A1329');
  238.         $this->addSql('DROP INDEX IDX_446A51C4E92F8F78');
  239.         $this->addSql('CREATE TEMPORARY TABLE __temp__postman AS SELECT id, message_id, recipient_id, read FROM postman');
  240.         $this->addSql('DROP TABLE postman');
  241.         $this->addSql('CREATE TABLE postman (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, message_id INTEGER NOT NULL, recipient_id INTEGER NOT NULL, read BOOLEAN NOT NULL)');
  242.         $this->addSql('INSERT INTO postman (id, message_id, recipient_id, read) SELECT id, message_id, recipient_id, read FROM __temp__postman');
  243.         $this->addSql('DROP TABLE __temp__postman');
  244.         $this->addSql('CREATE INDEX IDX_446A51C4537A1329 ON postman (message_id)');
  245.         $this->addSql('CREATE INDEX IDX_446A51C4E92F8F78 ON postman (recipient_id)');
  246.         $this->addSql('DROP INDEX IDX_86A7E937DA6A219');
  247.         $this->addSql('CREATE TEMPORARY TABLE __temp__unplayable_entity AS SELECT id, place_id, name, hp, hp_max, ap, ap_max, armor_class, description FROM unplayable_entity');
  248.         $this->addSql('DROP TABLE unplayable_entity');
  249.         $this->addSql('CREATE TABLE unplayable_entity (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, place_id INTEGER DEFAULT NULL, name VARCHAR(255) NOT NULL, hp INTEGER NOT NULL, hp_max INTEGER NOT NULL, ap INTEGER NOT NULL, ap_max INTEGER NOT NULL, armor_class INTEGER NOT NULL, description CLOB DEFAULT NULL --(DC2Type:array)
  250.         )');
  251.         $this->addSql('INSERT INTO unplayable_entity (id, place_id, name, hp, hp_max, ap, ap_max, armor_class, description) SELECT id, place_id, name, hp, hp_max, ap, ap_max, armor_class, description FROM __temp__unplayable_entity');
  252.         $this->addSql('DROP TABLE __temp__unplayable_entity');
  253.         $this->addSql('CREATE INDEX IDX_86A7E937DA6A219 ON unplayable_entity (place_id)');
  254.         $this->addSql('DROP INDEX UNIQ_8D93D649E7927C74');
  255.         $this->addSql('DROP INDEX UNIQ_8D93D6491136BE75');
  256.         $this->addSql('CREATE TEMPORARY TABLE __temp__user AS SELECT id, character_id, nickname, email, roles, password FROM user');
  257.         $this->addSql('DROP TABLE user');
  258.         $this->addSql('CREATE TABLE user (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, character_id INTEGER DEFAULT NULL, nickname VARCHAR(255) NOT NULL, email VARCHAR(180) NOT NULL, roles CLOB NOT NULL --(DC2Type:json)
  259.         , password VARCHAR(255) NOT NULL)');
  260.         $this->addSql('INSERT INTO user (id, character_id, nickname, email, roles, password) SELECT id, character_id, nickname, email, roles, password FROM __temp__user');
  261.         $this->addSql('DROP TABLE __temp__user');
  262.         $this->addSql('CREATE UNIQUE INDEX UNIQ_8D93D649E7927C74 ON user (email)');
  263.         $this->addSql('CREATE UNIQUE INDEX UNIQ_8D93D6491136BE75 ON user (character_id)');
  264.     }
  265. }