const { DataTypes } = require('sequelize');
const sequelize = require('../db');
const { faker  } = require('@faker-js/faker');

const Item = sequelize.define('item', {
  id: {
    type: DataTypes.INTEGER,
    autoIncrement: true,
    primaryKey: true,
  },
  text_id: {
    type: DataTypes.STRING,
    allowNull: false,
    defaultValue: faker.string.uuid()
  },
  name: {
    type: DataTypes.STRING,
    allowNull: false,
  },
  description: {
    type: DataTypes.TEXT,
    allowNull: false,
  },
  effectData: { 
    type: DataTypes.JSON, 
    allowNull: true 
  },
  price: {
    type: DataTypes.INTEGER,
    allowNull: false,
  },
  rarity: {
    type: DataTypes.INTEGER,
    allowNull: false,
  },
  type: {
    type: DataTypes.STRING, // Тип предмета (например, "инструмент", "ресурс")
    allowNull: false,
  },
  duration: { 
    type: DataTypes.INTEGER, 
    allowNull: true 
  }, // Длительность эффекта в секундах
  canBeEquipped: { 
    type: DataTypes.BOOLEAN, 
    defaultValue: false 
  },
});

module.exports = Item;
