import * as fs from 'fs';
// Функция для формирования SQL-запроса
const generateSQLQuery = (position: { x: number; y: number; z: number }, rotation: { x: number; y: number; z: number }): string => {
return `INSERT INTO lootBox (position, rotation, itemsData, radius, name, type, text, object, duration)
VALUES ('${JSON.stringify(position)}', '${JSON.stringify(rotation)}', '[]', 2, '', 'container', 'Some Text', 'prop_cs_dumpster_01a', 5);`;
};
// Чтение содержимого файла
const fileContent = fs.readFileSync('items.txt', 'utf-8');
// Разделение файла на строки
const lines = fileContent.split('\n');
// Обработка каждой строки
const insertQueries = lines.map(line => {
// Разделение строки на значения
const values = line.split(', ');
// Извлечение нужных значений
const x = parseFloat(values[1]).toFixed(2);
const y = parseFloat(values[2]).toFixed(2);
const z = parseFloat(values[3]).toFixed(2);
const rotationX = parseFloat(values[4]).toFixed(2);
const rotationY = parseFloat(values[5]).toFixed(2);
const rotationZ = (-parseFloat(values[6])).toFixed(2);
// Использование функции для формирования SQL-запроса
const position = { x: parseFloat(x), y: parseFloat(y), z: parseFloat(z) };
const rotation = { x: parseFloat(rotationX), y: parseFloat(rotationY), z: parseFloat(rotationZ) };
return generateSQLQuery(position, rotation);
});
// Сохранение результата в новый файл
fs.writeFileSync('items.sql', insertQueries.join('\n'));