Creators
Details
Licensed MIT
Published last year
Updated 4 months ago
All versions
1.3.1
Release
ShopTools 1.3.18 months ago 35
Compatibility
Minecraft: Java Edition
1.20.x
Platforms
Paper
Purpur
Changes
更新日志
v1.3.1 (2026-03-08)
🔧 技术改进
- 周期同步联动库存扫描:
DataSyncManager每次定期同步完成后自动触发一次库存重新扫描,确保商店信息和库存状态始终保持同步,避免服务器长时间运行后库存数据过期 - reload 联动库存扫描:执行
/st reload后,在完成配置重载和数据同步的同时触发库存重新扫描,保证重载后立即显示最新售罄状态 triggerStockScan()公开接口:在ShopTools主类中新增此方法,停止旧扫描队列后以 5 tick 短延迟启动新扫描,避免初始同步与周期扫描互相干扰- 初始扫描与周期扫描解耦:启动时的首次扫描由
loadDataAsync回调触发(initialSync不再重复触发),周期与手动同步走独立的triggerStockScan()路径,逻辑清晰互不影响 - 扫描延迟优化:启动时等待 40 tick 待世界加载稳定;周期/reload 触发的重新扫描使用 5 tick 短延迟,避免不必要的等待
🐛 问题修复
- 修复周期同步不更新库存:此前
DataSyncManager定期同步仅刷新商店元数据(物品、价格、店主),库存状态不随之更新,导致长时间运行后售罄状态显示过期 - 修复 reload 不更新库存:
/st reload执行后库存数据未重新读取,本次修复后 reload 会同步触发完整库存扫描
🎮 用户体验
- reload 提示优化:
/st reload完成后额外显示"库存信息正在后台重新扫描"提示,告知管理员扫描进行中,稍后即可看到最新售罄状态
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:7SrEX5Ff:OY89LEpj"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:7SrEX5Ff:OY89LEpj"
}

