kaiyu

package top.voske.coolTea.decimationRepair.common;

import java.util.List;
import net.decimation.mod.common.item.itemTemplates.ItemAmmo;
import net.decimation.mod.common.item.itemTemplates.ItemAmmoBox;
import net.decimation.mod.common.item.weapon.firearm.ItemGun;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraftforge.event.entity.player.ItemTooltipEvent;

public class EventLoader
{

    public EventLoader()
    {
    }

    public void ItemTooltipEvent(ItemTooltipEvent event)
    {
        ItemStack item = event.itemStack;
        if(((item.func_77973_b() instanceof ItemGun) || (item.func_77973_b() instanceof ItemAmmo) || (item.func_77973_b() instanceof ItemAmmoBox)) && item.func_77978_p() != null && item.func_77978_p().func_74764_b("display") && item.func_77978_p().func_74775_l("display").func_74764_b("Lore"))
        {
            NBTTagList list = (NBTTagList)item.func_77978_p().func_74775_l("display").func_74781_a("Lore");
            for(int i = 0; i < list.func_74745_c(); i++)
                event.toolTip.add(list.func_150307_f(i));

        }
    }
}
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) ansi
// Source File Name:   Entry.java

package top.voske.coolTea.decimationRepair;

import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.eventhandler.EventBus;
import net.minecraftforge.common.MinecraftForge;
import org.apache.logging.log4j.Logger;
import top.voske.coolTea.decimationRepair.common.EventLoader;

public class Entry
{

    public Entry()
    {
    }

    public void preInit(FMLPreInitializationEvent event)
    {
        logger = event.getModLog();
        MinecraftForge.EVENT_BUS.register(new EventLoader());
        FMLCommonHandler.instance().bus().register(new EventLoader());
    }

    public static final String MODID = "decimationrepairclient";
    public static final String NAME = "Decimation Repair Client";
    public static final String VERSION = "1.2.5";
    public static Logger logger = null;
    public static Entry instance;

}

求大佬,帮助我看看这个MOD是干嘛用的,谢谢了
2021.12 数据,可能有更多内容
package top.voske.coolTea.decimationRepair.common;


import java.util.List;
import net.decimation.mod.common.item.itemTemplates.ItemAmmo;
import net.decimation.mod.common.item.itemTemplates.ItemAmmoBox;
import net.decimation.mod.common.item.weapon.firearm.ItemGun;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraftforge.event.entity.player.ItemTooltipEvent;


public class EventLoader
{


    public EventLoader()
    {
    }


    public void ItemTooltipEvent(ItemTooltipEvent event)
    {
  ItemStack item = event.itemStack;
  if(((item.func_77973_b() instanceof ItemGun) || (item.func_77973_b() instanceof ItemAmmo) || (item.func_77973_b() instanceof ItemAmmoBox)) &amp;&amp; item.func_77978_p() != null &amp;&amp; item.func_77978_p().func_74764_b(&quot;display&quot;) &amp;&amp; item.func_77978_p().func_74775_l(&quot;display&quot;).func_74764_b(&quot;Lore&quot;))
  {
   NBTTagList list = (NBTTagList)item.func_77978_p().func_74775_l(&quot;display&quot;).func_74781_a(&quot;Lore&quot;);
   for(int i = 0; i &lt; list.func_74745_c(); i++)
    event.toolTip.add(list.func_150307_f(i));


  }
    }
}
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) ansi
// Source File Name:   Entry.java


package top.voske.coolTea.decimationRepair;


import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.eventhandler.EventBus;
import net.minecraftforge.common.MinecraftForge;
import org.apache.logging.log4j.Logger;
import top.voske.coolTea.decimationRepair.common.EventLoader;


public class Entry
{


    public Entry()
    {
    }


    public void preInit(FMLPreInitializationEvent event)
    {
  logger = event.getModLog();
  MinecraftForge.EVENT_BUS.register(new EventLoader());
  FMLCommonHandler.instance().bus().register(new EventLoader());
    }


    public static final String MODID = &quot;decimationrepairclient&quot;;
    public static final String NAME = &quot;Decimation Repair Client&quot;;
    public static final String VERSION = &quot;1.2.5&quot;;
    public static Logger logger = null;
    public static Entry instance;


}

求大佬,帮助我看看这个MOD是干嘛用的,谢谢了

langyo
我只能看出来这玩意操作了 NBT……

别的真看不出来……

直接反编译拿出来的东西真不是人能看的

CrazyMeow
本帖最后由 a4480481 于 2019-1-5 16:11 编辑

这个MOD的作用是,你把鼠标放到枪、子弹或弹药盒物品上时,动态修改物品的显示信息,记得以前有个MOD叫什么 更详细的附魔 ,就是增加附魔解释的一个MOD, 也是这种方式实现的。

kaiyu
感谢大佬~~~~~~~~~

liach
这东西只是把原版已经会显示的lore再显示一遍而已