50 lines
2.5 KiB
JavaScript
50 lines
2.5 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.onAfterBuildPublic = exports.onAfterCompressSettingsPublic = exports.onBeforeCompressSettingsPublic = exports.onBeforeBuildPublic = void 0;
|
|
const fs_1 = require("fs");
|
|
const path_1 = require("path");
|
|
const fixFiles_1 = require("./fixFiles");
|
|
const public_1 = require("./public");
|
|
let oldDiffFile;
|
|
/**构建开始之前调用 */
|
|
const onBeforeBuildPublic = async function (options, result) {
|
|
console.log('更新json、后端共享脚本');
|
|
const state = await Editor.Message.request('update_res', 'updates', 'json', 'shared');
|
|
console.log('更新结果:', state);
|
|
console.log('检测图片是否设置纹理压缩格式');
|
|
await (0, public_1.setTextureCompress)();
|
|
if (options.diffScript && (0, fs_1.existsSync)((0, path_1.join)(Editor.Project.path, 'assets/diff/' + options.diffScript))) {
|
|
oldDiffFile = (0, fs_1.readFileSync)((0, path_1.join)(Editor.Project.path, 'assets/diff/diff.ts'));
|
|
(0, fs_1.writeFileSync)((0, path_1.join)(Editor.Project.path, 'assets/diff/diff.ts'), (0, fs_1.readFileSync)((0, path_1.join)(Editor.Project.path, 'assets/diff/' + options.diffScript)));
|
|
}
|
|
};
|
|
exports.onBeforeBuildPublic = onBeforeBuildPublic;
|
|
/**开始压缩相关的 JSON 文件前调用 */
|
|
const onBeforeCompressSettingsPublic = async function (options, result) {
|
|
};
|
|
exports.onBeforeCompressSettingsPublic = onBeforeCompressSettingsPublic;
|
|
/**压缩完设置文件后调用 */
|
|
const onAfterCompressSettingsPublic = async function (options, result) {
|
|
};
|
|
exports.onAfterCompressSettingsPublic = onAfterCompressSettingsPublic;
|
|
/**构建完成之后调用 */
|
|
const onAfterBuildPublic = async function (options, result) {
|
|
if (options.macro) {
|
|
let path = (0, path_1.join)(result.dest, 'src');
|
|
(0, fs_1.readdirSync)(path).forEach(file => {
|
|
let splits = file.split('.');
|
|
if (splits[0] == 'settings' && splits[splits.length - 1] == 'json') {
|
|
let json = JSON.parse((0, fs_1.readFileSync)((0, path_1.join)(path, file), 'utf-8'));
|
|
Object.assign(json.engine.macros, options.macro);
|
|
(0, fs_1.writeFileSync)((0, path_1.join)(path, file), JSON.stringify(json, null, 2));
|
|
}
|
|
});
|
|
}
|
|
console.log('检测是否有构建后的文件添加替换');
|
|
await (0, fixFiles_1.fixFiles)(options, result);
|
|
if (oldDiffFile) {
|
|
(0, fs_1.writeFileSync)((0, path_1.join)(Editor.Project.path, 'assets/diff/diff.ts'), oldDiffFile);
|
|
}
|
|
};
|
|
exports.onAfterBuildPublic = onAfterBuildPublic;
|