jillo-bot/migrations/20231114153325_items.js

35 lines
1.0 KiB
JavaScript

/**
* @param { import("knex").Knex } knex
* @returns { Promise<void> }
*/
exports.up = function(knex) {
return knex.schema
.createTable('customItems', table => {
table.increments('id');
table.string('guild').notNullable();
table.string('name').notNullable();
table.text('description');
table.string('emoji').notNullable();
table.enum('type', ['plain', 'weapon', 'consumable']).notNullable();
table.integer('maxStack').notNullable(); // or damage for weapons
table.string('behavior');
table.boolean('untradable').defaultTo(false);
table.float('behaviorValue');
})
.createTable('itemInventories', table => {
table.string('user').notNullable();
table.integer('item').notNullable();
table.integer('quantity').defaultTo(1);
});
};
/**
* @param { import("knex").Knex } knex
* @returns { Promise<void> }
*/
exports.down = function(knex) {
return knex.schema
.dropTable('customItems')
.dropTable('itemInventories');
};