diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/reflection/minecraft/CoreReflections.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/reflection/minecraft/CoreReflections.java
index 4877f0aa3..c5b48563d 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/reflection/minecraft/CoreReflections.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/reflection/minecraft/CoreReflections.java
@@ -3755,11 +3755,14 @@ public final class CoreReflections {
methodHandle$ServerConfigurationPacketListenerImpl$finishCurrentTask =
ReflectionUtils.unreflectMethod(method$ServerConfigurationPacketListenerImpl$finishCurrentTask)
.asType(MethodType.methodType(void.class, Object.class, Object.class));
+ } else {
+ methodHandle$ServerConfigurationPacketListenerImpl$finishCurrentTask = null;
+ }
+ if (VersionHelper.isOrAbove1_20_5()) {
methodHandle$ServerCommonPacketListenerImpl$closedSetter =
ReflectionUtils.unreflectSetter(field$ServerCommonPacketListenerImpl$closed)
.asType(MethodType.methodType(void.class, Object.class, boolean.class));
} else {
- methodHandle$ServerConfigurationPacketListenerImpl$finishCurrentTask = null;
methodHandle$ServerCommonPacketListenerImpl$closedSetter = null;
}
} catch (ReflectiveOperationException e) {
diff --git a/common-files/src/main/resources/translations/zh_cn.yml b/common-files/src/main/resources/translations/zh_cn.yml
index 77a18b454..3512ddf1b 100644
--- a/common-files/src/main/resources/translations/zh_cn.yml
+++ b/common-files/src/main/resources/translations/zh_cn.yml
@@ -59,21 +59,21 @@ command.resource.enable.failure.unknown: "未知资源 "
command.resource.disable.success: "已禁用 . 执行 /ce reload all 以应用更改"
command.resource.disable.failure.unknown: "未知资源 "
command.resource.list: "启用的资源(): 禁用的资源(): "
-command.upload.failure.not_supported: "当前托管模式 '' 不支持上传资源包."
-command.upload.on_progress: "已开始上传进程. 检查控制台以获取详细信息."
+command.upload.failure.not_supported: "当前托管模式 '' 不支持上传资源包"
+command.upload.on_progress: "已开始上传进程. 检查控制台以获取详细信息"
command.send_resource_pack.success.single: "发送资源包给 "
command.send_resource_pack.success.multiple: "发送资源包给 个玩家"
warning.config.pack.duplicated_files: "发现重复文件 请通过 config.yml 的 'resource-pack.duplicated-files-handler' 部分解决"
-warning.config.yaml.duplicated_key: "在文件 发现问题 - 在第行发现重复的键 '', 这可能会导致一些意料之外的问题."
-warning.config.yaml.inconsistent_value_type: "在文件 发现问题 - 在第行发现重复且值类型不同的键 '', 这可能会导致一些意料之外的问题."
+warning.config.yaml.duplicated_key: "在文件 发现问题 - 在第行发现重复的键 '', 这可能会导致一些意料之外的问题"
+warning.config.yaml.inconsistent_value_type: "在文件 发现问题 - 在第行发现重复且值类型不同的键 '', 这可能会导致一些意料之外的问题"
warning.config.type.int: "在文件 发现问题 - 无法加载 '': 无法将 '' 转换为整数类型 (选项 '')"
-warning.config.type.float: "在文件 发现问题 - 无法加载 '': 无法将 '' 转换为浮点数类型 (选项 '')"
warning.config.type.boolean: "在文件 发现问题 - 无法加载 '': 无法将 '' 转换为布尔类型 (选项 '')"
+warning.config.type.float: "在文件 发现问题 - 无法加载 '': 无法将 '' 转换为浮点数类型 (选项 '')"
warning.config.type.double: "在文件 发现问题 - 无法加载 '': 无法将 '' 转换为双精度类型 (选项 '')"
warning.config.type.quaternionf: "在文件 发现问题 - 无法加载 '': 无法将 '' 转换为四元数类型 (选项 '')"
warning.config.type.vector3f: "在文件 发现问题 - 无法加载 '': 无法将 '' 转换为三维向量类型 (选项 '')"
warning.config.type.map: "在文件 发现问题 - 无法加载 '': 无法将 '' 转换为映射类型 (选项 '')"
-warning.config.type.snbt.invalid_syntax: "在文件 发现问题 - 无法加载 '': 无效的 SNBT 语法 ''."
+warning.config.type.snbt.invalid_syntax: "在文件 发现问题 - 无法加载 '': 无效的 SNBT 语法 ''"
warning.config.number.missing_type: "在文件 发现问题 - 配置项 '' 缺少数字类型所需的 'type' 参数"
warning.config.number.invalid_type: "在文件 发现问题 - 配置项 '' 使用了无效的数字类型 ''"
warning.config.number.missing_argument: "在文件 发现问题 - 配置项 '' 缺少数字参数"
@@ -103,11 +103,11 @@ warning.config.condition.string_contains.missing_value2: "在文件 在文件 中发现问题 - 配置项 '' 缺少 'string_regex' 条件必需的 'value' 参数"
warning.config.condition.string_regex.missing_regex: "在文件 中发现问题 - 配置项 '' 缺少 'string_regex' 条件必需的 'regex' 参数"
warning.config.condition.expression.missing_expression: "在文件 中发现问题 - 配置项 '' 缺少 'expression' 条件必需的 'expression' 参数"
-warning.config.condition.is_null.missing_argument: "在文件 发现问题 - 配置项 '' 缺少 'is_null' 条件的必需的 'argument' 参数."
-warning.config.structure.not_section: "在文件 发现问题 - 配置项 '' 应为配置段落 但实际类型为 ''"
+warning.config.condition.is_null.missing_argument: "在文件 发现问题 - 配置项 '' 缺少 'is_null' 条件的必需的 'argument' 参数"
warning.config.condition.hand.missing_hand: "在文件 发现问题 - 配置项 '' 缺少 'hand' 条件必需的 'hand' 参数"
warning.config.condition.hand.invalid_hand: "在文件 发现问题 - 配置项 '' 使用了无效的 'hand' 参数 ''('hand' 条件)。允许的手部类型: []"
warning.config.condition.on_cooldown.missing_id: "在文件 发现问题 - 配置项 '' 缺少 'on_cooldown' 条件必需的 'id' 参数"
+warning.config.structure.not_section: "在文件 发现问题 - 配置项 '' 应为配置段落 但实际类型为 ''"
warning.config.image.duplicate: "在文件 发现问题 - 重复的图片配置 '' 请检查其他文件中是否存在相同配置"
warning.config.image.missing_height: "在文件 发现问题 - 图片 '' 缺少必需的 'height' 参数"
warning.config.image.height_ascent_conflict: "在文件 发现问题 - 图片 '' 违反位图规则: 'height' 参数 '' 必须不小于 'ascent' 参数 ''"
@@ -141,12 +141,16 @@ warning.config.recipe.smithing_trim.missing_base: "在文件 发
warning.config.recipe.smithing_trim.missing_template_type: "在文件 发现问题 - 锻造纹饰配方 '' 缺少必需的 'template-type' 参数"
warning.config.recipe.smithing_trim.missing_addition: "在文件 发现问题 - 锻造纹饰配方 '' 缺少必需的 'addition' 参数"
warning.config.recipe.smithing_trim.missing_pattern: "在文件 发现问题 - 锻造纹饰配方 '' 缺少必需的 'pattern' 参数"
+warning.config.recipe.brewing.missing_container: "在文件 发现问题 - 酿造配方 '' 缺少必需的 'container' 参数"
+warning.config.recipe.brewing.missing_ingredient: "在文件 发现问题 - 酿造配方 '' 缺少必需的 'ingredient' 参数"
+warning.config.recipe.result.post_processor.missing_type: "在文件 发现问题 - 配方 '' 缺少结果后处理器必需的 'type' 参数"
+warning.config.recipe.result.post_processor.invalid_type: "在文件 发现问题 - 配方 '' 使用了无效结果后处理器类型 ''"
warning.config.i18n.unknown_locale: "在文件 发现问题 - 未知的语言环境 ''"
warning.config.template.duplicate: "在文件 发现问题 - 重复的模板 '' 请检查其他文件中是否存在相同配置"
+warning.config.template.invalid: "在文件 发现问题 - 配置 '' 使用了无效的模板 ''"
warning.config.template.argument.self_increase_int.invalid_range: "在文件 发现问题 - 模板 '' 在 'self_increase_int' 参数中使用了一个起始值 '' 大于终止值 ''"
-warning.config.template.invalid: "在文件 发现问题 - 配置 '' 使用了无效的模板 ''."
warning.config.template.argument.list.invalid_type: "在文件 发现问题 - 模板 '' 的 'list' 参数需要列表类型 但输入参数类型为 ''"
-warning.config.template.argument.missing_value: "在文件 发现问题 - 配置 '' 缺少了 '' 必要的模板参数值. 请使用 arguments 选项进行配置或为此参数设定默认值."
+warning.config.template.argument.missing_value: "在文件 发现问题 - 配置 '' 缺少了 '' 必要的模板参数值. 请使用 arguments 选项进行配置或为此参数设定默认值"
warning.config.vanilla_loot.missing_type: "在文件 发现问题 - 原版战利品 '' 缺少必需的 'type' 参数"
warning.config.vanilla_loot.invalid_type: "在文件 发现问题 - 原版战利品 '' 使用了无效类型 '' 允许的类型: []"
warning.config.vanilla_loot.block.invalid_target: "在文件 发现问题 - 原版战利品 '' 中存在无效的方块目标 ''"
@@ -164,21 +168,24 @@ warning.config.furniture.hitbox.custom.invalid_entity: "在文件 在文件 发现问题 - 重复的物品 '' 请检查其他文件中是否存在相同配置"
warning.config.item.settings.unknown: "在文件 发现问题 - 物品 '' 使用了未知的设置类型 ''"
warning.config.item.settings.invulnerable.invalid_damage_source: "在文件 发现问题 - 物品 '' 物品使用了未知的伤害来源类型 '' 允许的来源: []"
-warning.config.item.settings.equipment.missing_asset_id: "在文件 发现问题 - 物品 '' 缺少 'equipment' 设置所需的 'asset-id' 参数."
-warning.config.item.settings.equipment.invalid_asset_id: "在文件 发现问题 - 物品 '' 为 'equipment' 设置配置了无效的 'asset-id'. 这可能是因为你没有创建装备配置或是错误地拼写了 asset-id."
-warning.config.item.settings.projectile.missing_item: "在文件 发现问题 - 物品 '' 缺少 'projectile' 设置所需的 'item' 参数."
-warning.config.item.data.attribute_modifiers.missing_type: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 数据所需的 'type' 参数."
-warning.config.item.data.attribute_modifiers.missing_amount: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 数据所需的 'amount' 参数."
-warning.config.item.data.attribute_modifiers.missing_operation: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 数据所需的 'operation' 参数."
-warning.config.item.data.attribute_modifiers.display.missing_type: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 显示数据所需的 'type' 参数。"
-warning.config.item.data.attribute_modifiers.display.missing_value: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 显示数据所需的 'value' 参数。"
+warning.config.item.settings.equipment.missing_asset_id: "在文件 发现问题 - 物品 '' 缺少 'equipment' 设置所需的 'asset-id' 参数"
+warning.config.item.settings.equipment.invalid_asset_id: "在文件 发现问题 - 物品 '' 为 'equipment' 设置配置了无效的 'asset-id'. 这可能是因为你没有创建装备配置或是错误地拼写了 asset-id"
+warning.config.item.settings.projectile.missing_item: "在文件 发现问题 - 物品 '' 缺少 'projectile' 设置所需的 'item' 参数"
+warning.config.item.data.attribute_modifiers.missing_type: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 数据所需的 'type' 参数"
+warning.config.item.data.attribute_modifiers.missing_amount: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 数据所需的 'amount' 参数"
+warning.config.item.data.attribute_modifiers.missing_operation: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 数据所需的 'operation' 参数"
+warning.config.item.data.attribute_modifiers.display.missing_type: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 显示数据所需的 'type' 参数"
+warning.config.item.data.attribute_modifiers.display.missing_value: "在文件 发现问题 - 物品 '' 缺少 'attribute-modifiers' 显示数据所需的 'value' 参数"
+warning.config.item.data.external.missing_source: "在文件 发现问题 - 物品 '' 缺少 'external' 数据所需的 'source' 参数"
+warning.config.item.data.external.missing_id: "在文件 发现问题 - 物品 '' 缺少 'external' 数据所需的 'id' 参数"
+warning.config.item.data.external.invalid_source: "在文件 发现问题 - 物品 '' 在 'external' 数据中使用了无效的物品来源 ''"
warning.config.item.missing_material: "在文件 发现问题 - 物品 '' 缺少必需的 'material' 参数"
warning.config.item.invalid_material: "在文件 发现问题 - 物品 '' 使用了无效的材料类型 ''"
-warning.config.item.invalid_custom_model_data: "在文件 发现问题 - 物品 '' 使用了无效的负数模型值 ''."
+warning.config.item.invalid_custom_model_data: "在文件 发现问题 - 物品 '' 使用了无效的负数模型值 ''"
warning.config.item.bad_custom_model_data: "在文件 发现问题 - 物品 '' 使用的自定义模型数据 '' 数值过大 建议使用小于 16,777,216 的值"
+warning.config.item.item_model.conflict: "在文件 发现问题 - 物品 '' 使用了无效的 'item-model' 选项. 这个 item-model 已经存在对应的原版物品"
warning.config.item.custom_model_data_conflict: "在文件 发现问题 - 物品 '' 使用的自定义模型数据 '' 已被物品 '' 占用"
warning.config.item.invalid_component: "在文件 发现问题 - 物品 '' 使用了未知的数据组件 ''"
-warning.config.item.item_model.conflict: "在文件 发现问题 - 物品 '' 使用了无效的 'item-model' 选项. 这个 item-model 已经存在对应的原版物品."
warning.config.item.missing_model_id: "在文件 发现问题 - 物品 '' 缺少必需的 'custom-model-data' 或 'item-model' 参数"
warning.config.item.missing_model: "在文件 中发现问题 - 物品 '' 缺少支持 1.21.4+ 资源包必需的 'model' 配置项"
warning.config.item.behavior.missing_type: "在文件 发现问题 - 物品 '' 的行为配置缺少必需的 'type' 参数"
@@ -206,8 +213,8 @@ warning.config.item.model.condition.missing_on_true: "在文件
warning.config.item.model.condition.missing_on_false: "在文件 发现问题 - 物品 '' 的 'minecraft:condition' 模型缺少必需的 'on-false' 参数"
warning.config.item.model.condition.keybind.missing_keybind: "在文件 发现问题 - 物品 '' 的 'minecraft:keybind_down' 属性缺少必需的 'keybind' 参数"
warning.config.item.model.condition.has_component.missing_component: "在文件 发现问题 - 物品 '' 的 'minecraft:has_component' 属性缺少必需的 'component' 参数"
-warning.config.item.model.condition.component.missing_predicate: "在文件 发现问题 - 物品 '' 的 'minecraft:component' 属性缺少必需的 'predicate' 参数."
-warning.config.item.model.condition.component.missing_value: "在文件 发现问题 - 物品 '' 的 'minecraft:component' 属性缺少必需的 'value' 参数."
+warning.config.item.model.condition.component.missing_predicate: "在文件 发现问题 - 物品 '' 的 'minecraft:component' 属性缺少必需的 'predicate' 参数"
+warning.config.item.model.condition.component.missing_value: "在文件 发现问题 - 物品 '' 的 'minecraft:component' 属性缺少必需的 'value' 参数/yellow>"
warning.config.item.model.composite.missing_models: "在文件 发现问题 - 物品 '' 的 'minecraft:composite' 模型缺少必需的 'models' 参数"
warning.config.item.model.range_dispatch.missing_property: "在文件 发现问题 - 物品 '' 的 'minecraft:range_dispatch' 模型缺少必需的 'property' 参数"
warning.config.item.model.range_dispatch.invalid_property: "在文件 发现问题 - 物品 '' 的 'minecraft:range_dispatch' 模型使用了无效属性 ''"
@@ -241,7 +248,7 @@ warning.config.block.missing_state: "在文件 发现问题 -
warning.config.block.state.property.missing_type: "在文件 发现问题 - 方块 '' 的属性 '' 缺少必需的 'type' 参数"
warning.config.block.state.property.invalid_type: "在文件 发现问题 - 方块 '' 的属性 '' 使用了无效的类型参数 ''"
warning.config.block.state.property.integer.invalid_range: "在文件 发现问题 - 方块 '' 的整数属性 '' 使用了无效的范围参数 '' 正确语法: 1~2"
-warning.config.block.state.property.invalid_format: "在文件 发现问题 - 方块 '' 使用了无效的方块状态属性格式 ''."
+warning.config.block.state.property.invalid_format: "在文件 发现问题 - 方块 '' 使用了无效的方块状态属性格式 ''"
warning.config.block.state.missing_real_id: "在文件 发现问题 - 方块 '' 的 'state' 缺少必需的 'id' 参数 该 ID 是服务端方块 ID 用于唯一标识每种方块状态类型"
warning.config.block.state.missing_state: "在文件 发现问题 - 方块 '' 的 'state' 缺少必需的 'state' 参数"
warning.config.block.state.missing_properties: "在文件 发现问题 - 方块 '' 的 'states' 缺少必需的 'properties' 段落"
@@ -373,9 +380,9 @@ warning.config.function.command.missing_command: "在文件 中
warning.config.function.actionbar.missing_actionbar: "在文件 中发现问题 - 配置项 '' 缺少 'actionbar' 函数必需的 'actionbar' 参数"
warning.config.function.message.missing_message: "在文件 中发现问题 - 配置项 '' 缺少 'message' 函数必需的 'message' 参数"
warning.config.function.open_window.missing_gui_type: "在文件 中发现问题 - 配置项 '' 缺少 'open_window' 函数必需的 'gui-type' 参数"
-warning.config.function.open_window.invalid_gui_type: "在文件 中发现问题 - 配置项 '' 为 'open_window' 函数使用了无效的 GUI 类型 . 允许的类型: []。"
+warning.config.function.open_window.invalid_gui_type: "在文件 中发现问题 - 配置项 '' 为 'open_window' 函数使用了无效的 GUI 类型 . 允许的类型: []"
warning.config.function.run.missing_functions: "在文件 中发现问题 - 配置项 '' 缺少 'run' 函数必需的 'functions' 参数"
-warning.config.function.place_block.missing_block_state: "在文件 中发现问题 - 配置项 '' 缺少 'place_block' 函数必需的 'block-state' 参数."
+warning.config.function.place_block.missing_block_state: "在文件 中发现问题 - 配置项 '' 缺少 'place_block' 函数必需的 'block-state' 参数"
warning.config.function.set_food.missing_food: "在文件 中发现问题 - 配置项 '' 缺少 'set_food' 函数必需的 'food' 参数"
warning.config.function.set_saturation.missing_saturation: "在文件 中发现问题 - 配置项 '' 缺少 'set_saturation' 函数必需的 'saturation' 参数"
warning.config.function.play_sound.missing_sound: "在文件 中发现问题 - 配置项 '' 缺少 'play_sound' 函数必需的 'sound' 参数"
@@ -405,9 +412,9 @@ warning.config.resource_pack.generation.texture_not_in_atlas: "纹理'物品''缺少模型文件: ''"
warning.config.resource_pack.generation.missing_block_model: "方块状态''缺少模型文件: ''"
warning.config.resource_pack.generation.missing_parent_model: "模型''找不到父级模型文件: ''"
-warning.config.resource_pack.generation.malformatted_json: "Json文件 '' 格式错误."
+warning.config.resource_pack.generation.malformatted_json: "Json文件 '' 格式错误"
warning.config.resource_pack.generation.missing_equipment_texture: "装备 '' 缺少纹理 ''"
-warning.config.resource_pack.invalid_overlay_format: "在 config.yml 的 'resource-pack.overlay-format' 处发现问题 - 无效的overlay格式 ''. Overlay格式必须包含占位符 '{version}'."
+warning.config.resource_pack.invalid_overlay_format: "在 config.yml 的 'resource-pack.overlay-format' 处发现问题 - 无效的overlay格式 ''. Overlay格式必须包含占位符 '{version}'"
warning.config.equipment.duplicate: "在文件 发现问题 - 重复的装备配置 ''。请检查其他文件中是否存在相同配置"
warning.config.equipment.missing_type: "在文件 发现问题 - 装备 '' 缺少必需的 'type' 参数"
warning.config.equipment.invalid_type: "在文件 发现问题 - 装备 '' 使用了无效的 'type' 参数"
diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomRecipeResult.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomRecipeResult.java
index aff047c53..db7caeed0 100644
--- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomRecipeResult.java
+++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomRecipeResult.java
@@ -35,7 +35,7 @@ public record CustomRecipeResult(BuildableItem item, int count, PostProces
}
static {
- registerPostProcessorType(Key.of("apply_data"), args -> {
+ registerPostProcessorType(Key.of("craftengine", "apply_data"), args -> {
List> modifiers = new ArrayList<>();
Map data = ResourceConfigUtils.getAsMap(args.get("data"), "data");
for (Map.Entry entry : data.entrySet()) {