/** * Script to copy required assets from ink.js project to AI Interactive Fiction */ const fs = require('fs'); const path = require('path'); // Define asset directories const sourceDir = 'e:/Georg/vhosts/ink.js'; const targetDir = 'e:/Georg/vhosts/ai.interactive.fiction/public'; // Assets to copy const assets = [ { src: 'book-3057904.png', dest: 'images/book-3057904.png' }, { src: 'brown-wooden-flooring.jpg', dest: 'images/brown-wooden-flooring.jpg' }, { src: 'EBGaramond12-Regular.otf', dest: 'fonts/EBGaramond12-Regular.otf' }, { src: 'EBGaramond12-Italic.otf', dest: 'fonts/EBGaramond12-Italic.otf' } ]; // Create necessary directories const directories = ['images', 'fonts', 'js', 'css'].map(dir => path.join(targetDir, dir)); directories.forEach(dir => { if (!fs.existsSync(dir)) { console.log(`Creating directory: ${dir}`); fs.mkdirSync(dir, { recursive: true }); } }); // Copy each asset assets.forEach(asset => { const source = path.join(sourceDir, asset.src); const destination = path.join(targetDir, asset.dest); try { if (fs.existsSync(source)) { fs.copyFileSync(source, destination); console.log(`Successfully copied ${source} to ${destination}`); } else { console.error(`Source file does not exist: ${source}`); } } catch (error) { console.error(`Error copying ${source}:`, error.message); } }); console.log('Asset copying completed.');