Skip to content
This repository was archived by the owner on Feb 2, 2026. It is now read-only.
This repository was archived by the owner on Feb 2, 2026. It is now read-only.

在量子存储中syncBlock在withdrawItem之前导致的刷物bug #136

Description

@balugaq

检查项目

  • 你使用的是从构建站下载的版本
  • 你已经检验过下载的文件的校验和,确认已完整下载文件
  • 你没有对下载的文件内容进行任何更改
  • 你已经寻找过已知问题列表,且没有找到相同的问题

问题描述

图为代码,上下执行顺序颠倒了,正确的应为:先执行 withdraw,再执行 syncBlock
https://github.com/SlimefunGuguProject/Networks/blob/master/src/main/java/io/github/sefiraat/networks/slimefun/network/NetworkQuantumStorage.java#L394
Image

复现步骤

Image 放置如图机器 ↓ Image

打开存储,将输出槽使用任意物品堵住,设置要刷取的物品,然后存入1个物品,如下
Image

打开网格,取出1个物品,再查看一次存储状态,如下。前后均为stored-amount:1,可证明刷物成功,此时重启服务器,存储中的物品恢复,同时自己背包有1个物品。

Image

刷取的数量为 单次操作取出物品前的已存储数量 - 单次操作取出物品后的已存储物品数量,在此案例中为 1 - 0 = 1 个刷取的物品

预期行为

修复代码执行顺序

服务器日志

No response

错误报告

No response

服务端软件

Paper

Minecraft 版本

1.20.1

Slimefun版本

2025.05-release

插件版本

Build 105

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions