提供一个bat文件 1. 创建符号链接,指向路径追踪文件夹 js脚本逻辑: 1. 设置文件完全由js脚本生成(可以提交一个生成版本进库作为参考) 2. 提供3种运行模式 a 扫描文件夹更新可用配置 b 采集选中的材料 c 清除运行记录(重置刷新时间) 可行性探索: 1. 当配置选项新增可选物品时:获取该项目的值会得到undefined(等同于未配置) 2. 当已选中物品从配置选项中删除时:获取该项目的值会得到undefined,但会保存在脚本组的配置里。如果再加回这个选项,会获得之前设置的值。不存在于当前settings.json文件的字段不会自动从脚本组配置中删除 3. 设置属性里不支持特殊字符 多账户支持:单账户时记录保存到`默认账号`文件夹,多账户时根据UID创建对应的记录文件夹 索引文件列属性: 只记录采集物名称以及对应CD,不记录完整路径。这样的话只要新的路径追踪是符合文件夹结构的,也能自动支持。 工作时,基于文件夹路径,从前到后全词匹配路径的每个部分,直到找到对应的项目 a 扫描模式 1. 提示可以运行bat脚本或者手动创建符号链接 2. 遍历追踪文件夹内的所有子文件夹 3. 基于子文件夹的相对路径,查找索引文件,对于那些在索引中的条目:更新settings.json,创建 options 可选列表,并记录所有选项 4. settings.json中还需要提供的配置项: - 运行模式 - 队伍名称(如果不同的采集物需要使用不同队伍,那要求用户重复添加多个JS运行项) - 终止运行时间 - 要采集的物品列表 - 我肝的账号不止一个 5. 如果用户添加的文件夹太多,设置项也会很多。可以建议用户适当删除一些 b 采集模式: 1. 根据用户选中的采集物,枚举对应文件夹下的路径追踪文件。逐个处理完所有选项 2. 根据子文件夹的相对路径,查找索引文件,得知其刷新模式 3. 对于每个追踪文件,循环执行: a. 查询运行记录,获知刷新时间。如果查询不到,视为未运行过 b. 如果当前时间大于刷新时间,则执行采集 c. 执行采集后,计算下次刷新时间并更新运行记录 c 清除模式 1. 根据用户选中的采集物,获取其对应的运行记录 2. 重置运行记录中的刷新时间为绫华生日