Prep for tips
This commit is contained in:
parent
3f285e023b
commit
13cfc9b62e
@ -54,7 +54,7 @@ paths.forEach((_path) => {
|
|||||||
} else if (_nodeID.length > 0) {
|
} else if (_nodeID.length > 0) {
|
||||||
nodeID = _nodeID[0][1];
|
nodeID = _nodeID[0][1];
|
||||||
} else if (close.length > 0 && templateName && nodeID) {
|
} else if (close.length > 0 && templateName && nodeID) {
|
||||||
objects.push({ templateName, nodeID });
|
objects.push({ file, templateName, nodeID });
|
||||||
templateName = undefined;
|
templateName = undefined;
|
||||||
nodeID = undefined;
|
nodeID = undefined;
|
||||||
}
|
}
|
||||||
@ -63,8 +63,8 @@ paths.forEach((_path) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const fd = fs.openSync("tooltips.csv", "w");
|
const fd = fs.openSync("tooltips.csv", "w");
|
||||||
fs.writeSync(fd, "Template Name, Node ID, Tooltip\n");
|
fs.writeSync(fd, "File,Template Name,Node ID,Tooltip\n");
|
||||||
objects.forEach((obj) => {
|
objects.forEach((obj) => {
|
||||||
fs.writeSync(fd, `${obj.templateName}, ${obj.nodeID}, \n`);
|
fs.writeSync(fd, `${obj.file},${obj.templateName},${obj.nodeID},\n`);
|
||||||
});
|
});
|
||||||
fs.closeSync(fd);
|
fs.closeSync(fd);
|
||||||
|
|||||||
59
scripts/insertTooltips.mjs
Normal file
59
scripts/insertTooltips.mjs
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
import fs from "node:fs";
|
||||||
|
import path from "node:path";
|
||||||
|
|
||||||
|
const paths = [
|
||||||
|
"..\\PackageSources\\ModelBehaviorDefs\\TFDi_Design\\MD11\\Cabin",
|
||||||
|
"..\\PackageSources\\ModelBehaviorDefs\\TFDi_Design\\MD11\\FlightDeck",
|
||||||
|
];
|
||||||
|
|
||||||
|
let tips = fs.readFileSync("tooltips.csv", { encoding: "utf-8" }).split("\n");
|
||||||
|
tips = tips.reduce((prev, tip, index) => {
|
||||||
|
if (index == 0) return {};
|
||||||
|
const [file, templateName, nodeID, tooltip] = tip.split(",");
|
||||||
|
if (!prev[file]) prev[file] = {};
|
||||||
|
if (!prev[file][templateName]) prev[file][templateName] = {};
|
||||||
|
prev[file][templateName][nodeID] = tooltip;
|
||||||
|
|
||||||
|
return prev;
|
||||||
|
}, {});
|
||||||
|
|
||||||
|
paths.forEach((_path) => {
|
||||||
|
const files = fs.readdirSync(_path);
|
||||||
|
files.forEach((file) => {
|
||||||
|
const _file = fs.readFileSync(path.join(_path, file), {
|
||||||
|
encoding: "utf-8",
|
||||||
|
});
|
||||||
|
const lines = _file.split("\n");
|
||||||
|
|
||||||
|
let templateName;
|
||||||
|
lines.forEach((line, index) => {
|
||||||
|
const _line = line.trim();
|
||||||
|
const open = [..._line.matchAll(/^<UseTemplate Name="(.*)">$/gi)];
|
||||||
|
const nodeID = [..._line.matchAll(/^<NODE_ID>(.*)<\/NODE_ID>$/gi)];
|
||||||
|
|
||||||
|
if (open.length > 0) {
|
||||||
|
templateName = open[0][1];
|
||||||
|
} else if (nodeID.length > 0) {
|
||||||
|
const _nodeID = nodeID[0][1];
|
||||||
|
const _file = tips[file];
|
||||||
|
const _templateName = _file?.[templateName];
|
||||||
|
const tip = _templateName?.[_nodeID];
|
||||||
|
if (tip) {
|
||||||
|
const _tip = line
|
||||||
|
.replaceAll("NODE_ID", "TOOLTIPID")
|
||||||
|
.replaceAll(_nodeID, tip);
|
||||||
|
lines.splice(index, 0, `${_tip}\n`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
/*
|
||||||
|
const fd = fs.openSync("tooltips.csv", "w");
|
||||||
|
fs.writeSync(fd, "Template Name,Node ID,Tooltip\n");
|
||||||
|
objects.forEach((obj) => {
|
||||||
|
fs.writeSync(fd, `${obj.templateName},${obj.nodeID},\n`);
|
||||||
|
});
|
||||||
|
fs.closeSync(fd);
|
||||||
|
*/
|
||||||
1746
scripts/tooltips.csv
1746
scripts/tooltips.csv
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user