MohistMC / Mohist

Minecraft Forge Hybrid server implementing the Spigot/Bukkit API, formerly known as Thermos/Cauldron/MCPC+
https://mohistmc.com
GNU General Public License v3.0
1.32k stars 221 forks source link

Items can't stack in inventory and furnance #3385

Open AsgoreChara666 opened 1 month ago

AsgoreChara666 commented 1 month ago

Minecraft Version : 1.18.2

Mohist Version : 187

Operating System : Windows 10

Logs : No error

Mod list : AttributeFix-Forge-1.18.2-14.0.4.jar, Blue-Archive-Banners-forge-1.18.2-1.0.0.0.jar, Bookshelf-Forge-1.18.2-13.3.56.jar, CustomNPCs-1.18.2.20240614snapshot.jar, FarmersDelight-1.18.2-1.2.3.jar, InvMove-1.18-0.8.2-Forge.jar, Joban-Client-Mod-1.18.2-1.2.2.jar, MTR-LU-Addon-forge-1.18.2-3.2.0-2.0.7.jar, MTR-MSD-Addon-forge-1.18.2-3.2.2-1.3.4-enhancement-1.jar, MTR-NTE-0.5.2+1.18.2.jar, MTR-forge-1.18.2-3.2.2-hotfix-1.jar, MemorySweep-1.18.2-0.8.jar, Police Mod 1.2.0 [1.18.2].jar, SimpleBackups-1.18.2-1.1.13.jar, [1.18.2] SecurityCraft v1.9.10.jar, lostcities-1.18-5.3.29.jar, tacz-1.18.2-1.0.3-all.jar, doespotatotick-1.18.2-4.0.2.jar, apexcore-1.18.2-4.13.0.jar, architectury-4.12.94-forge.jar, armorpointspp-forge-1.18.2-3.1.0.jar, caelus-forge-1.18.1-3.0.0.2.jar, carryon-1.18.2-1.17.2.15.jar, cfm-7.0.0-pre35-1.18.2.jar, cloth-config-6.5.116-forge.jar, cloth-config-6.5.133-forge.jar, create-1.18.2-0.5.1.h.jar, culturaldelights-1.18.2-0.14.jar, curios-forge-1.18.2-5.0.9.2.jar, curiouselytra-forge-1.18.2-5.0.2.0.jar, curiousshulkerboxes-forge-1.18.1-4.2.0.0.jar, doespotatotick-1.18.2-4.0.2.jar, ends_delight-1.18.2-1.2.1.jar, entityculling-forge-1.6.1-mc1.18.2.jar, etched-forge-2.2.1+1.18.2.jar, fantasyfurniture-1.18.2-3.14.0.jar, fastboot-1.18.x-1.1.jar, ferritecore-4.2.2-forge.jar, francium-1.18.2-1.0.1.jar, getittogetherdrops-forge-1.18.2-1.3.jar, immersive_paintings-0.6.7+1.18.2-forge.jar, inventoryhud.forge.1.18.2-3.4.26.jar, jei-1.18.2-forge-10.2.1.1008.jar, krypton-0.1.10-SNAPSHOT.jar, modernfix-forge-5.18.0+mc1.18.2.jar, no_32768_limit-0.1-SNAPSHOT_1.18.2.jar, pollen-forge-1.6.1+1.18.2.jar, yesstevemodel-forge-1.18.2-2.2.2.jar

Plugin list : AntiDisconnectSpam.jar, BlueMap-5.3-spigot.jar, ColorMOTD.jar, CoreProtect-22.4.jar, EClean-1.18.1.jar, GWarp.jar, LagFixer.jar, Lagassist - J[tinksp.com].jar, LoneLibs_1.0.58.jar, LuckPerms-Bukkit-5.4.131.jar, Multiverse-Core-4.3.1.jar, PlayerTitle-4.1.6.jar, PlugManX-2.4.1.jar, ProtocolLib.jar, QuickShop-5.1.2.5.jar, ReviveMe-4.0.7[tinksp.com].jar, SimpleHomes.jar, SimpleTpa.jar, SuperVanish-6.2.20.jar, TAB v4.1.8.jar, Vault.jar, XConomy-Bukkit-2.26.3.jar, [bukkit_spigot_paper]AllMusic_Server-3.2.5-all.jar, easykits-2.3.7.jar, spark-1.10.71-bukkit.jar, worldedit-bukkit-7.2.10.jar

Description of issue : Sometimes items can't stack, and ores and ingots in furnance isn't decrease or increase, but the fuel is still burning. Item have extra NBTs of "tag:{}" and banners with "tag:{BlockEntityTag:{id:"minecraft:banner"}}" could be the reason for can't stack.

GodzzilaS commented 1 week ago

In other cores same issue, i tested all

https://github.com/magmamaintained/Magma-1.18.2/issues/31

The developer of Magma tried to fix it and it didn't quite work out, the furnaces still don't work, when selecting various items, they still don't add up to one slot. https://github.com/magmamaintained/Magma-1.18.2/commit/77c18b16d9f1e382dff3680aefb011fcbc2c1f52

The furnaces will work after add this in your plugin, but will work only after open and close furnace

import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.FurnaceSmeltEvent;
import org.bukkit.inventory.ItemStack

public class FurnaceSmeltHandler implements Listener {

    @EventHandler
    public void onFurnaceSmelt(FurnaceSmeltEvent event) {
        ItemStack source = event.getSource();
        ItemStack result = event.getResult();

        if (source.hasItemMeta() && result != null) {
            if (source.getItemMeta().getPersistentDataContainer() != null) {
                result.setItemMeta(source.getItemMeta().clone());
            }
        }
    }
}