Skip to content

Commit

Permalink
+ico
Browse files Browse the repository at this point in the history
  • Loading branch information
huiyadanli committed Oct 23, 2024
1 parent 3fbb656 commit 1206df5
Show file tree
Hide file tree
Showing 87 changed files with 251 additions and 4 deletions.
30 changes: 30 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

node_modules
.DS_Store
dist
dist-ssr
coverage
*.local

/cypress/videos/
/cypress/screenshots/

# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

*.tsbuildinfo
15 changes: 11 additions & 4 deletions build/build.js
Original file line number Diff line number Diff line change
Expand Up @@ -108,12 +108,19 @@ function generateDirectoryTree(dir, currentDepth = 0, parentFolders = []) {
info.tags = jsInfo.tags;
}
} else {
info.children = fs.readdirSync(dir).map(child => {
const childPath = path.join(dir, child);
return generateDirectoryTree(childPath, currentDepth + 1, [...parentFolders, info.name]);
});
info.children = fs.readdirSync(dir)
.filter(child => !['desktop.ini', 'icon.ico'].includes(child)) // 过滤掉 desktop.ini 和 icon.ico
.map(child => {
const childPath = path.join(dir, child);
return generateDirectoryTree(childPath, currentDepth + 1, [...parentFolders, info.name]);
});
}
} else {
// 如果是 desktop.ini 或 icon.ico 文件,直接返回 null
if (['desktop.ini', 'icon.ico'].includes(info.name)) {
return null;
}

const hash = calculateSHA1(dir);
info.hash = hash;
info.version = hash.substring(0, 7);
Expand Down
34 changes: 34 additions & 0 deletions build/icon/1.filter.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
const fs = require('fs');
const path = require('path');

// 读取JSON文件
const jsonPath = 'E:\\HuiTask\\更好的原神\\2.资料\\图标处理\\Material.json';
const jsonData = JSON.parse(fs.readFileSync(jsonPath, 'utf8'));

// 设置源文件夹和目标文件夹
const sourceDir = 'E:\\HuiTask\\更好的原神\\2.资料\\图标处理\\ItemIcon-tiny';
const targetDir = 'E:\\HuiTask\\更好的原神\\2.资料\\图标处理\\newPng';

// 确保目标文件夹存在
if (!fs.existsSync(targetDir)) {
fs.mkdirSync(targetDir, { recursive: true });
}

// 读取源文件夹中的所有文件
fs.readdirSync(sourceDir).forEach(file => {
const fileName = path.parse(file).name; // 获取文件名(不含扩展名)

// 在JSON数据中查找匹配项
const matchedItem = jsonData.find(item => item.Icon === fileName);

if (matchedItem) {
const sourcePath = path.join(sourceDir, file);
const targetPath = path.join(targetDir, `${matchedItem.Name}.png`);

// 复制并重命名文件
fs.copyFileSync(sourcePath, targetPath);
console.log(`已复制并重命名: ${file} -> ${matchedItem.Name}.png`);
}
});

console.log('处理完成');
43 changes: 43 additions & 0 deletions build/icon/2.match.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
const fs = require('fs');
const path = require('path');

// 定义路径
const pathingDir = 'D:\\HuiPrograming\\Projects\\CSharp\\MiHoYo\\bettergi-scripts-list\\repo\\pathing';
const pngDir = 'E:\\HuiTask\\更好的原神\\2.资料\\图标处理\\newPng';
const outputDir = 'E:\\HuiTask\\更好的原神\\2.资料\\图标处理\\matchedPng';

// 确保输出目录存在
if (!fs.existsSync(outputDir)) {
fs.mkdirSync(outputDir);
}

// 读取 pathing 目录下的所有文件夹名称
fs.readdir(pathingDir, { withFileTypes: true }, (err, entries) => {
if (err) {
console.error('读取 pathing 目录时出错:', err);
return;
}

// 过滤出目录
const directories = entries.filter(entry => entry.isDirectory()).map(dir => dir.name);

// 遍历目录名称
directories.forEach(dirName => {
const pngPath = path.join(pngDir, `${dirName}.png`);
const outputPath = path.join(outputDir, `${dirName}.png`);

// 检查对应的 PNG 文件是否存在
if (fs.existsSync(pngPath)) {
// 复制文件
fs.copyFile(pngPath, outputPath, err => {
if (err) {
console.error(`复制 ${dirName}.png 时出错:`, err);
} else {
console.log(`成功复制 ${dirName}.png 到 matchedPng 文件夹`);
}
});
} else {
console.log(`未找到对应的 PNG 文件: ${dirName}.png`);
}
});
});
57 changes: 57 additions & 0 deletions build/icon/3.icon.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
const fs = require('fs');
const path = require('path');
const { exec } = require('child_process');

// 定义路径
const sourcePath = 'D:\\HuiPrograming\\Projects\\CSharp\\MiHoYo\\bettergi-scripts-list\\repo\\pathing';
const iconSourcePath = 'E:\\HuiTask\\更好的原神\\2.资料\\图标处理\\matchedIco';
const desktopIniPath = 'E:\\HuiTask\\更好的原神\\2.资料\\图标处理\\desktop.ini';

// 读取源目录
fs.readdir(sourcePath, { withFileTypes: true }, (err, entries) => {
if (err) {
console.error('读取源目录时出错:', err);
return;
}

// 遍历每个目录
entries.filter(entry => entry.isDirectory()).forEach(dir => {
const dirPath = path.join(sourcePath, dir.name);
const iconSourceFile = path.join(iconSourcePath, `${dir.name}.ico`);
const iconDestFile = path.join(dirPath, 'icon.ico');
const desktopIniDestFile = path.join(dirPath, 'desktop.ini');

// 检查图标源文件是否存在
if (!fs.existsSync(iconSourceFile)) {
console.log(`警告:${dir.name} 的图标文件不存在,跳过所有操作`);
return; // 跳过当前目录的所有后续操作
}

// 复制图标文件
fs.copyFile(iconSourceFile, iconDestFile, (err) => {
if (err) {
console.error(`复制图标文件到 ${dir.name} 时出错:`, err);
return; // 如果复制图标失败,跳过后续操作
}
console.log(`成功复制图标文件到 ${dir.name}`);

// 复制desktop.ini文件
fs.copyFile(desktopIniPath, desktopIniDestFile, (err) => {
if (err) {
console.error(`复制desktop.ini到 ${dir.name} 时出错:`, err);
return; // 如果复制desktop.ini失败,跳过后续操作
}
console.log(`成功复制desktop.ini到 ${dir.name}`);

// 执行cmd命令
exec(`attrib +R "${dirPath}"`, (err, stdout, stderr) => {
if (err) {
console.error(`执行attrib命令时出错 ${dir.name}:`, err);
return;
}
console.log(`成功为 ${dir.name} 设置只读属性`);
});
});
});
});
});
2 changes: 2 additions & 0 deletions repo/pathing/嘟嘟莲/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/嘟嘟莲/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/圣遗物/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/圣遗物/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/小灯草/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/小灯草/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/幽光星星/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/幽光星星/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/幽灯蕈/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/幽灯蕈/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/悼灵花/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/悼灵花/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/慕风蘑菇/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/慕风蘑菇/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/日落果/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/日落果/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/星螺/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/星螺/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/月莲/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/月莲/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/柔灯铃/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/柔灯铃/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/沉玉仙茗/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/沉玉仙茗/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/浪沫羽鳃/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/浪沫羽鳃/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/海灵芝/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/海灵芝/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/湖光铃兰/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/湖光铃兰/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/灼灼彩菊/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/灼灼彩菊/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/珊瑚真珠/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/珊瑚真珠/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/琉璃百合/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/琉璃百合/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/琉璃袋/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/琉璃袋/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/甜甜花/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/甜甜花/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/石珀/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/石珀/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/竹笋/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/竹笋/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/绝云椒椒/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/绝云椒椒/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/肉龙掌/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/肉龙掌/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/胡萝卜/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/胡萝卜/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/苦种/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/苦种/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/茉洁草/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/茉洁草/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/落落莓/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/落落莓/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/虹彩蔷薇/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/虹彩蔷薇/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/血斛/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/血斛/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/金鱼草/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/金鱼草/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/钩钩果/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/钩钩果/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/霓裳花/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/霓裳花/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/青蜜莓/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/青蜜莓/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/须弥蔷薇/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/须弥蔷薇/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/风车菊/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/风车菊/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/鸟蛋/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/鸟蛋/icon.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions repo/pathing/鸣草/desktop.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=icon.ico
Binary file added repo/pathing/鸣草/icon.ico
Binary file not shown.

0 comments on commit 1206df5

Please sign in to comment.