Jump to content

[1.12.2] Vanilla mobs with custom loot table [SOLVED]


supreme marshal

Recommended Posts

I feel close to do this, but I still have some error in my codes. Hopefully someone can help me with that.

 

So I have a Dragon_loot.json file for my loot tables.

Then I have a class named LootTableHandler to handle my Loot_table.json file

and then I have another class named LivingDropsEvent where I want to get a vanilla mob (zombie for example), remove his loot table and put my new loot table instead.

 

Here is my codes for LootTableHandler class:

package com.SupremeMarshal.MoreToolsTierMod.util.handlers;

import com.SupremeMarshal.MoreToolsTierMod.util.Reference;

import net.minecraft.util.ResourceLocation;
import net.minecraft.world.storage.loot.LootTableList;

public class LootTableHandler 
{
	public static final ResourceLocation DRAGON_LOOT = LootTableList.register(new ResourceLocation(Reference.MOD_ID, "dragon_loot"));
}

 

Codes for LivingDropsEvent class:

package com.SupremeMarshal.MoreToolsTierMod.util.handlers;

import net.minecraft.entity.passive.EntitySheep;
import net.minecraftforge.fml.common.eventhandler.EventPriority;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;

public class LivingDropsEvent 
{

	@SubscribeEvent(priority=EventPriority.NORMAL, receiveCanceled=true)
	public void onEvent(LivingDropsEvent event)
	{
// Here it say "entity" (at "event.entity instancof") can not be resolved or is not a field, same goes for "drops" (at "event.drops.clear")
	    if (event.entity instanceof EntityZombie)
	    {
//here, it should remove loot table from Zombie
	        System.out.println("EntitySheep drops event");
	        event.drops.clear();
//here I want to put the new loot table for zombie
	        protected ResourceLocation getLootTable()
	        {
	        	return LootTableHandler.DRAGON_LOOT
	        }
	        
	    }
	} 
	
}

 

Edited by supreme marshal
Link to comment
Share on other sites

That is not how that event works.

 

For 1, your function is a void function, meaning it returns nothing and you're trying to return whatever LootTableHandler.DRAGON_LOOT is.

Two, that's not what that event is for. Yes, its to modify the drops, but it does so outside the context of loot tables.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

There is actually a LootTableLoadEvent you should use instead. Basically you can check for whether it is the dragon loot table loading and then replace it.

 

See a tutorial here: https://tutorials.darkhax.net/tutorials/loot_tables/

 

Note that recently the event has added the ability to get the LootTableManager instance as well which gives you ability to access more powerful methods.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Link to comment
Share on other sites

1 minute ago, jabelar said:

There is actually a LootTableLoadEvent you should use instead. Basically you can check for whether it is the dragon loot table loading and then replace it.

 

See a tutorial here: https://tutorials.darkhax.net/tutorials/loot_tables/

 

Note that recently the event has added the ability to get the LootTableManager instance as well which gives you ability to access more powerful methods.

Thanks, I'm seeking to obtain more knowledge.

Link to comment
Share on other sites

Ok I got through the tutorial and created this new class. I made an item called Dragon helm, and put this item on the Loot Table of Witch but when I tested the game, he never dropped the dragon helm. I killed 20 Witch to confirm it. Here is the code:

 

public class LootTable 
{
	@SubscribeEvent
	public void onLootTablesLoaded(LootTableLoadEvent event) {

	    //Witch
	    if (event.getName().equals(LootTableList.ENTITIES_WITCH)) {
	   	 
	        final LootPool main = event.getTable().getPool("main");
	 
	        if (main != null) {
	 
	            // main.addEntry(new LootEntryItem(ITEM, WEIGHT, QUALITY, FUNCTIONS, CONDITIONS, NAME));
	            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[0], "ms:dragon_helm"));
	            
	        }
	    }
	}

}

 

Edited by supreme marshal
Link to comment
Share on other sites

Is your event properly subscribed to the event bus? You need to use the @EventSubscriber annotation on the class. Also, depending on how you register to the bus you now probably need to make your event handling method static.

 

In any case, you should confirm that your loot table method is being called. I usually do this by putting some console print statements in the code to show that the event fired and you can also put it in other parts to make sure the event type matched and your if statements executed as expected. Alternatively you can set a breakpoint and use the debug mode of Eclipse to confirm the execution.

Edited by jabelar

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Link to comment
Share on other sites

 

12 minutes ago, jabelar said:

Is your event properly subscribed to the event bus? You need to use the @EventSubscriber annotation on the class. Also, depending on how you register to the bus you now probably need to make your event handling method static.

Damn son. I only needed to add that. Thank you it work!! Now, I'm going to try and mess around with this stuff to make my dragon helm a super rare drop (something like 10x rarer than diamond gem drop) I think I can do this with the conditions RandomChance.

Edited by supreme marshal
Link to comment
Share on other sites

new LootCondition[0] is an array, you need to pass in a list of conditions (in this case, an array of size 1), not a single one, unboxed.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

4 minutes ago, Draco18s said:

new LootCondition[0] is an array, you need to pass in a list of conditions (in this case, an array of size 1), not a single one, unboxed.

I'm a bit confused. I do my list of conditions where exactly? and when you say; "not a single one, unboxed", idk what you mean. Do you mean to put [1] instead of [0] after the "LootCondition" ?

Link to comment
Share on other sites

17 minutes ago, supreme marshal said:

I'm a bit confused. I do my list of conditions where exactly? and when you say; "not a single one, unboxed", idk what you mean. Do you mean to put [1] instead of [0] after the "LootCondition" ?

 

What he means is sometimes even though you only want to pass in one condition the method expects an array. So simply make an array with only one condition and pass that. In other words you need to match the type LoopCondition[] not LoopCondition.

 

In other words, leave the new LootCondition[0] but initialize the first element to be new RandomChance(0.5F)

  • Like 1

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Link to comment
Share on other sites

Of course it does, that's how you create arrays.

  • Like 1

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Look at this piece of art.. Behold, a tiny piece of what I'm about to do with custom loot table:

package com.SupremeMarshal.MoreToolsTierMod.util.handlers;

import org.omg.CORBA.INITIALIZE;

import com.SupremeMarshal.MoreToolsTierMod.init.ModItems;

import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.world.storage.loot.LootEntryItem;
import net.minecraft.world.storage.loot.LootEntryTable;
import net.minecraft.world.storage.loot.LootPool;
import net.minecraft.world.storage.loot.LootTableList;
import net.minecraft.world.storage.loot.RandomValueRange;
import net.minecraft.world.storage.loot.conditions.LootCondition;
import net.minecraft.world.storage.loot.conditions.RandomChance;
import net.minecraft.world.storage.loot.functions.LootFunction;
import net.minecraft.world.storage.loot.functions.SetCount;
import net.minecraftforge.event.LootTableLoadEvent;
import net.minecraftforge.fml.common.Mod.EventBusSubscriber;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;

@EventBusSubscriber
public class LootTable 
{

	@SubscribeEvent
	public static void onLootTablesLoaded(LootTableLoadEvent event) 
	{
//STRONGHOLD CHEST
	    if (event.getName().equals(LootTableList.CHESTS_STRONGHOLD_CORRIDOR)) 
	    {
	   	 
	        final LootPool main = event.getTable().getPool("main");
	 
	        if (main != null)
	        {
	        	main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
	            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
	            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
	            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
	            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 6, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:mithril_ingot"));
	            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.50F)}, "ms:adamant_helm"));
	            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.50F)}, "ms:adamant_body"));
	            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.50F)}, "ms:adamant_legs"));
	            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.50F)}, "ms:adamant_boots"));
	            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 4, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:adamant_ingot"));
	            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
	            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
	            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
	            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
	            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 2, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:rune_ingot"));
	            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_helm"));
	            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_body"));
	            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_legs"));
	            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_boots"));
	            
	        }
	    }
	}
//SKELETONS
	@SubscribeEvent
	public static void onLootTablesLoaded1(LootTableLoadEvent event) 
	{
	
	
		    if (event.getName().equals(LootTableList.ENTITIES_SKELETON)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.4F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.12F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_helm"));
		        }

		    }
	}
//DUNGEON CHEST
	@SubscribeEvent
	public static void onLootTablesLoaded2(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_SIMPLE_DUNGEON)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 5, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_boots"));
		        }

		    }
	}
//ELDER GUARDIAN
	@SubscribeEvent
	public static void onLootTablesLoaded3(LootTableLoadEvent event) 
	{
		    if (event.getName().equals(LootTableList.ENTITIES_ELDER_GUARDIAN)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.002F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.015F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.015F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:rune_ingot"));
		        }

		    }
	}
//WITCH
	@SubscribeEvent
	public static void onLootTablesLoaded4(LootTableLoadEvent event) 
	{
		    if (event.getName().equals(LootTableList.ENTITIES_WITCH)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.003F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.015F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.015F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.09F)}, "ms:rune_ingot"));
		        }

		    }
		    
	 }
//CHEST NETHER
	@SubscribeEvent
	public static void onLootTablesLoaded5(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_NETHER_BRIDGE)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 10, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 6, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 6, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 10, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 15, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 8))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 6, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 4, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 4, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 6, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 8, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 4, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 4, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 4, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 6))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 3, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 3, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:dragon_boots"));
		        }

		    }
	}
//FISHING TREASURE
	@SubscribeEvent
	public static void onLootTablesLoaded6(LootTableLoadEvent event) 
	{
		    if (event.getName().equals(LootTableList.GAMEPLAY_FISHING_TREASURE)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		        	main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.06F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.06F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[] {new RandomChance(0.3F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.025F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.018F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.018F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.025F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.1F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.001F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.005F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.005F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:rune_ingot"));
		        }

		    }
		    
	 }
//CAVE SPIDER
	@SubscribeEvent
	public static void onLootTablesLoaded7(LootTableLoadEvent event) 
	{
	
	
		    if (event.getName().equals(LootTableList.ENTITIES_CAVE_SPIDER)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.4F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.12F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_helm"));
		        }

		    }
	}
//
	@SubscribeEvent
	public static void onLootTablesLoaded8(LootTableLoadEvent event) 
	{
	
	
		    if (event.getName().equals(LootTableList.ENTITIES_CREEPER)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.4F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.12F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_boots"));
		        }

		    }
	}
//WITHER SKELETON
	@SubscribeEvent
	public static void onLootTablesLoaded9(LootTableLoadEvent event) 
	{
	
	
		    if (event.getName().equals(LootTableList.ENTITIES_WITHER_SKELETON)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.4F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.12F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:rune_ingot"));
		        }

		    }
	}
//SKELETON HORSE
	@SubscribeEvent
	public static void onLootTablesLoaded10(LootTableLoadEvent event) 
	{
	
	
		    if (event.getName().equals(LootTableList.ENTITIES_SKELETON_HORSE)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.2F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.08F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.08F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.2F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.8F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.06F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.04F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.04F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.06F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.24F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.016F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.016F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.06F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.001F)}, "ms:dragon_helm"));
		        }

		    }
	}
//IGLO CHEST
	@SubscribeEvent
	public static void onLootTablesLoaded11(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_IGLOO_CHEST)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 5, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_boots"));
		        }

		    }
	}
//GUARDIAN
	@SubscribeEvent
	public static void onLootTablesLoaded12(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.ENTITIES_GUARDIAN)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.3F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.3F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.15F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.15F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 3))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.035F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.025F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.025F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.035F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 2))}, new LootCondition[] {new RandomChance(0.1F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.0035F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.0025F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.0025F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.0035F)}, "ms:dragon_boots"));
		        }

		    }
	}
//CHEST ABANDONED MINESHAFT
	@SubscribeEvent
	public static void onLootTablesLoaded13(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_ABANDONED_MINESHAFT)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 5, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_boots"));
		        }

		    }
	}
//GHAST
	@SubscribeEvent
	public static void onLootTablesLoaded14(LootTableLoadEvent event) 
	{
		    if (event.getName().equals(LootTableList.ENTITIES_GHAST)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.15F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.15F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.006F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.006F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:dragon_helm"));
		        }

		    }
		    
	 }
//CHEST STRONGHOLD
	@SubscribeEvent
	public static void onLootTablesLoaded15(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_STRONGHOLD_CROSSING)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 6, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 4, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 4, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 6, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 10, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 3, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 3, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 5, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 3, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 3, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 5, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 3, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 3, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_boots"));
		        }

		    }
	}
//ZOMBIE
	@SubscribeEvent
	public static void onLootTablesLoaded16(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.ENTITIES_ZOMBIE)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		        	main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.4F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.12F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.006F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.016F)}, "ms:rune_ingot"));
		        }

		    }
	}
//CHEST JUNGLE TEMPLE
	@SubscribeEvent
	public static void onLootTablesLoaded17(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_JUNGLE_TEMPLE)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 5, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_boots"));
		        }

		    }
	}
//CHEST DESERT PYRAMID
	@SubscribeEvent
	public static void onLootTablesLoaded18(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_DESERT_PYRAMID)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 2, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 3, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 5, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.5F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_boots"));
		        }

		    }
	}
//SPIDER
	@SubscribeEvent
	public static void onLootTablesLoaded19(LootTableLoadEvent event) 
	{
	
	
		    if (event.getName().equals(LootTableList.ENTITIES_SPIDER)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.4F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.12F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.008F)}, "ms:rune_helm"));
		        }

		    }
	}
//CHEST STRONGHOLD LIBRARY
	@SubscribeEvent
	public static void onLootTablesLoaded20(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_STRONGHOLD_LIBRARY)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.125F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 3, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 2, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:dragon_boots"));
		        }

		    }
	}
//MAGMA CUBE
	@SubscribeEvent
	public static void onLootTablesLoaded21(LootTableLoadEvent event) 
	{
		    if (event.getName().equals(LootTableList.ENTITIES_MAGMA_CUBE)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.2F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.005F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.002F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.002F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.005F)}, "ms:dragon_helm"));
		        }

		    }
		    
	 }
//ZOMBIE PIGMAN
	@SubscribeEvent
	public static void onLootTablesLoaded22(LootTableLoadEvent event) 
	{
		    if (event.getName().equals(LootTableList.ENTITIES_ZOMBIE_PIGMAN)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		        	main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.05F)}, "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.1F)}, "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.4F)}, "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.02F)}, "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.03F)}, "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.12F)}, "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.01F)}, "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.005F)}, "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.005F)}, "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.01F)}, "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.04F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.001F)}, "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.0005F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.0005F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.001F)}, "ms:dragon_boots"));
		        }

		    }
		    
	 }
//CHEST END CITY TREASURE
	@SubscribeEvent
	public static void onLootTablesLoaded23(LootTableLoadEvent event) 
	{
		    
		    if (event.getName().equals(LootTableList.CHESTS_END_CITY_TREASURE)) 
		    {
		   	 
		        final LootPool main = event.getTable().getPool("main");
		 
		        if (main != null)
		        {
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_HELM, 10, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_helm"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BODY, 8, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_body"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_LEGS, 8, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_legs"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_BOOTS, 10, 0, new LootFunction[0], new LootCondition[0], "ms:mithril_boots"));
		            main.addEntry(new LootEntryItem(ModItems.MITHRIL_INGOT, 20, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 7))}, new LootCondition[0], "ms:mithril_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_HELM, 6, 0, new LootFunction[0], new LootCondition[0], "ms:adamant_helm"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BODY, 5, 0, new LootFunction[0], new LootCondition[0], "ms:adamant_body"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_LEGS, 5, 0, new LootFunction[0], new LootCondition[0], "ms:adamant_legs"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_BOOTS, 6, 0, new LootFunction[0], new LootCondition[0], "ms:adamant_boots"));
		            main.addEntry(new LootEntryItem(ModItems.ADAMANT_INGOT, 10, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[0], "ms:adamant_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_HELM, 6, 0, new LootFunction[0], new LootCondition[0], "ms:rune_helm"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BODY, 5, 0, new LootFunction[0], new LootCondition[0], "ms:rune_body"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_LEGS, 5, 0, new LootFunction[0], new LootCondition[0], "ms:rune_legs"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_BOOTS, 6, 0, new LootFunction[0], new LootCondition[0], "ms:rune_boots"));
		            main.addEntry(new LootEntryItem(ModItems.RUNE_INGOT, 8, 0, new LootFunction[] {new SetCount(new LootCondition[0], new RandomValueRange(1, 5))}, new LootCondition[] {new RandomChance(0.4F)}, "ms:rune_ingot"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_HELM, 2, 0, new LootFunction[0], new LootCondition[0], "ms:dragon_helm"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BODY, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.33F)}, "ms:dragon_body"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_LEGS, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.33F)}, "ms:dragon_legs"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_BOOTS, 2, 0, new LootFunction[0], new LootCondition[0], "ms:dragon_boots"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_SWORD, 1, 0, new LootFunction[0], new LootCondition[0], "ms:dragon_sword"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_AXE, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.22F)}, "ms:dragon_axe"));
		            main.addEntry(new LootEntryItem(ModItems.DRAGON_PICKAXE, 1, 0, new LootFunction[0], new LootCondition[] {new RandomChance(0.22F)}, "ms:dragon_pickaxe"));
		        }

		    }
	}
	
}

 

Edited by supreme marshal
  • Like 1
Link to comment
Share on other sites

Eh.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

24 minutes ago, Choonster said:

It's probably worth noting that you can use LootEntryTable to generate loot from another loot table.

That is helpful to know.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Hello. I am trying to load a couple mods, as it seems forge is currently having issues with optifine. I heard oculus and rubidium could be used instead of optifine. However, I am now getting these error messages when I try to load these mods with forge. Is there something I am missing? Thank you. Mods List Biomes O Plenty-1.20.1-18.0.0.592.jar oculus-mc1.20.1-1.7.0.jar rubidium-mc1.20.1-0.7.1a.jar TerraBlender-forge-1.20-1-3.0.1.7.jar Forge Version: 1.20.1-forge-47.3.0 Crash Report: https://pastebin.com/ShaaHEh3 Thank you.
    • I was also facing the same. Thank you for helping.
    • I have been putting together mods and stuff for me and my cousin to play with and I keep getting this error when I join a game. Please help and thank you. ---- Minecraft Crash Report ---- // Don't be sad, have a hug! <3 Time: 6/13/24 12:56 AM Description: Unexpected error java.lang.IllegalArgumentException: Multiple entries with same key: glint:RenderType[CompositeState[[texture[Optional[minecraft:textures/misc/enchanted_item_glint.png](blur=true, mipmap=false)], glint_transparency, diffuse_lighting[false], shade_model[flat], alpha[0.0], depth_test[==], cull[false], lightmap[false], overlay[false], fog, no_layering, main_target, glint_texturing, write_mask_state[writeColor=true, writeDepth=false], line_width[1.0]], outlineProperty=none], ]=net.minecraft.client.renderer.BufferBuilder@2bfbbc17 and glint:RenderType[CompositeState[[texture[Optional[minecraft:textures/misc/enchanted_item_glint.png](blur=true, mipmap=false)], glint_transparency, diffuse_lighting[false], shade_model[flat], alpha[0.0], depth_test[==], cull[false], lightmap[false], overlay[false], fog, no_layering, main_target, glint_texturing, write_mask_state[writeColor=true, writeDepth=false], line_width[1.0]], outlineProperty=none], ]=net.minecraft.client.renderer.BufferBuilder@aeeb66e     at com.google.common.collect.ImmutableMap.checkNoConflict(ImmutableMap.java:186) ~[guava-21.0.jar:?] {}     at com.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket(RegularImmutableMap.java:102) ~[guava-21.0.jar:?] {}     at com.google.common.collect.RegularImmutableMap.fromEntryArray(RegularImmutableMap.java:88) ~[guava-21.0.jar:?] {}     at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:359) ~[guava-21.0.jar:?] {}     at tschipp.carryon.client.event.RenderEvents.onRenderWorld(RenderEvents.java:334) ~[?:1.15.6.24] {re:classloading}     at net.minecraftforge.eventbus.ASMEventHandler_882_RenderEvents_onRenderWorld_RenderWorldLastEvent.invoke(.dynamic) ~[?:?] {}     at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:85) ~[eventbus-4.0.0.jar:?] {}     at net.minecraftforge.eventbus.EventBus$$Lambda$3607/1632506112.invoke(Unknown Source) ~[?:?] {}     at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) ~[eventbus-4.0.0.jar:?] {}     at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) ~[eventbus-4.0.0.jar:?] {}     at net.minecraftforge.client.ForgeHooksClient.dispatchRenderLast(ForgeHooksClient.java:201) ~[?:?] {re:classloading}     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {}     at net.optifine.reflect.Reflector.callVoid(Reflector.java:789) ~[?:?] {re:classloading}     at net.minecraft.client.renderer.GameRenderer.func_228378_a_(GameRenderer.java:1027) ~[?:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,xf:fml:fairylights:GameRendererTransformer,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,xf:fml:fairylights:GameRendererTransformer,pl:mixin:APP:immersive_aircraft.mixins.json:GameRendererMixin,pl:mixin:APP:flywheel.mixins.json:StoreProjectionMatrixMixin,pl:mixin:APP:forge-mca.mixin.json:client.MixinGameRenderer,pl:mixin:APP:mixins.essential.json:events.Mixin_GuiDrawScreenEvent_Priority,pl:mixin:A}     at net.minecraft.client.renderer.GameRenderer.func_195458_a(GameRenderer.java:693) ~[?:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,xf:fml:fairylights:GameRendererTransformer,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,xf:fml:fairylights:GameRendererTransformer,pl:mixin:APP:immersive_aircraft.mixins.json:GameRendererMixin,pl:mixin:APP:flywheel.mixins.json:StoreProjectionMatrixMixin,pl:mixin:APP:forge-mca.mixin.json:client.MixinGameRenderer,pl:mixin:APP:mixins.essential.json:events.Mixin_GuiDrawScreenEvent_Priority,pl:mixin:A}     at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:977) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:mts.mixins.json:common.MinecraftMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:architectury.mixins.json:MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.Mixin_RunEssentialTasks,pl:mixin:APP:mixins.essential.json:client.MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_FixKeybindUnpressedInEmoteWheel,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_RecalculateMenuScale,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixInternalByteBufAccess,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixPrematureByteBufFree,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:607) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:mts.mixins.json:common.MinecraftMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:architectury.mixins.json:MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.Mixin_RunEssentialTasks,pl:mixin:APP:mixins.essential.json:client.MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_FixKeybindUnpressedInEmoteWheel,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_RecalculateMenuScale,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixInternalByteBufAccess,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixPrematureByteBufFree,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:184) [?:?] {re:classloading,pl:runtimedistcleaner:A}     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:37) [forge-1.16.5-36.2.42.jar:36.2] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$534/786047074.call(Unknown Source) [forge-1.16.5-36.2.42.jar:36.2] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.1.3.jar:?] {re:classloading}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.1.3.jar:?] {re:classloading} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace:     at com.google.common.collect.ImmutableMap.checkNoConflict(ImmutableMap.java:186) ~[guava-21.0.jar:?] {}     at com.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket(RegularImmutableMap.java:102) ~[guava-21.0.jar:?] {}     at com.google.common.collect.RegularImmutableMap.fromEntryArray(RegularImmutableMap.java:88) ~[guava-21.0.jar:?] {}     at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:359) ~[guava-21.0.jar:?] {}     at tschipp.carryon.client.event.RenderEvents.onRenderWorld(RenderEvents.java:334) ~[?:1.15.6.24] {re:classloading}     at net.minecraftforge.eventbus.ASMEventHandler_882_RenderEvents_onRenderWorld_RenderWorldLastEvent.invoke(.dynamic) ~[?:?] {}     at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:85) ~[eventbus-4.0.0.jar:?] {}     at net.minecraftforge.eventbus.EventBus$$Lambda$3607/1632506112.invoke(Unknown Source) ~[?:?] {}     at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) ~[eventbus-4.0.0.jar:?] {}     at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) ~[eventbus-4.0.0.jar:?] {}     at net.minecraftforge.client.ForgeHooksClient.dispatchRenderLast(ForgeHooksClient.java:201) ~[?:?] {re:classloading}     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {}     at net.optifine.reflect.Reflector.callVoid(Reflector.java:789) ~[?:?] {re:classloading}     at net.minecraft.client.renderer.GameRenderer.func_228378_a_(GameRenderer.java:1027) ~[?:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,xf:fml:fairylights:GameRendererTransformer,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,xf:fml:fairylights:GameRendererTransformer,pl:mixin:APP:immersive_aircraft.mixins.json:GameRendererMixin,pl:mixin:APP:flywheel.mixins.json:StoreProjectionMatrixMixin,pl:mixin:APP:forge-mca.mixin.json:client.MixinGameRenderer,pl:mixin:APP:mixins.essential.json:events.Mixin_GuiDrawScreenEvent_Priority,pl:mixin:A} -- Affected level -- Details:     All players: 1 total; [ClientPlayerEntity['Gilman100'/265, l='ClientLevel', x=141.50, y=70.00, z=-166.50]]     Chunk stats: Client Chunk Cache: 841, 27     Level dimension: minecraft:overworld     Level spawn location: World: (8,64,8), Chunk: (at 8,4,8 in 0,0; contains blocks 0,0,0 to 15,255,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)     Level time: 0 game time, 0 day time     Server brand: forge     Server type: Integrated singleplayer server Stacktrace:     at net.minecraft.client.world.ClientWorld.func_72914_a(ClientWorld.java:617) ~[?:?] {re:mixin,xf:OptiFine:default,re:classloading,xf:OptiFine:default,pl:mixin:APP:abnormals_core.mixins.json:client.ClientWorldMixin,pl:mixin:APP:architectury.mixins.json:MixinClientLevel,pl:mixin:APP:mixins.essential.json:feature.particles.Mixin_AddParticleSystemToClientWorld,pl:mixin:A}     at net.minecraft.client.Minecraft.func_71396_d(Minecraft.java:2031) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:mts.mixins.json:common.MinecraftMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:architectury.mixins.json:MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.Mixin_RunEssentialTasks,pl:mixin:APP:mixins.essential.json:client.MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_FixKeybindUnpressedInEmoteWheel,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_RecalculateMenuScale,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixInternalByteBufAccess,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixPrematureByteBufFree,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:628) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:mts.mixins.json:common.MinecraftMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:architectury.mixins.json:MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.Mixin_RunEssentialTasks,pl:mixin:APP:mixins.essential.json:client.MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_FixKeybindUnpressedInEmoteWheel,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_RecalculateMenuScale,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixInternalByteBufAccess,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixPrematureByteBufFree,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:184) [?:?] {re:classloading,pl:runtimedistcleaner:A}     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:37) [forge-1.16.5-36.2.42.jar:36.2] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$534/786047074.call(Unknown Source) [forge-1.16.5-36.2.42.jar:36.2] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.1.3.jar:?] {re:classloading}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.1.3.jar:?] {re:classloading} -- System Details -- Details:     Minecraft Version: 1.16.5     Minecraft Version ID: 1.16.5     Operating System: Windows 10 (amd64) version 10.0     Java Version: 1.8.0_51, Oracle Corporation     Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation     Memory: 1589460336 bytes (1515 MB) / 4623171584 bytes (4409 MB) up to 6561988608 bytes (6258 MB)     CPUs: 12     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx7040m -Xms256m     ModLauncher: 8.1.3+8.1.3+main-8.1.x.c94d18ec     ModLauncher launch target: fmlclient     ModLauncher naming: srg     ModLauncher services:          /mixin-0.8.4.jar mixin PLUGINSERVICE          /eventbus-4.0.0.jar eventbus PLUGINSERVICE          /forge-1.16.5-36.2.42.jar object_holder_definalize PLUGINSERVICE          /forge-1.16.5-36.2.42.jar runtime_enum_extender PLUGINSERVICE          /accesstransformers-3.0.1.jar accesstransformer PLUGINSERVICE          /forge-1.16.5-36.2.42.jar capability_inject_definalize PLUGINSERVICE          /forge-1.16.5-36.2.42.jar runtimedistcleaner PLUGINSERVICE          /mixin-0.8.4.jar mixin TRANSFORMATIONSERVICE          /OptiFine_1.16.5_HD_U_G8%20(1).jar OptiFine TRANSFORMATIONSERVICE          /essential_1-3-2-5_forge_1-16-5.jar essential-loader TRANSFORMATIONSERVICE          /forge-1.16.5-36.2.42.jar fml TRANSFORMATIONSERVICE      FML: 36.2     Forge: net.minecraftforge:36.2.42     FML Language Providers:          [email protected]         minecraft@1         [email protected]     Mod List:          TFTH 1.2.jar                                      |The_Flesh_That_Hates          |plaque                        |1.0.0               |DONE      |Manifest: NOSIGNATURE         BetterAnimationsCollection-v1.2.4-1.16.5-Forge.jar|Better Animations Collection  |betteranimationscollection    |1.2.4               |DONE      |Manifest: 9a:09:85:98:65:c4:8c:11:c5:49:f6:d6:33:23:39:df:8d:b4:ff:92:84:b8:bd:a5:83:9f:ac:7f:2a:d1:4b:6a         glasscutter-1.1.1-1.16.5.jar                      |Glasscutter                   |glasscutter                   |1.1.1               |DONE      |Manifest: NOSIGNATURE         supermartijn642configlib-1.1.8-forge-mc1.16.jar   |SuperMartijn642's Config Libra|supermartijn642configlib      |1.1.8               |DONE      |Manifest: NOSIGNATURE         Trin Civil Pack-1.16.5-3.22.0.jar                 |Immersive Vehicles (MTS/IV) - |iv_tcp_v3                     |3.20.0              |DONE      |Manifest: NOSIGNATURE         HMM19.3.1MC1.16.5.jar                             |Horror Movie Monsters         |hmm                           |19.3.1              |DONE      |Manifest: NOSIGNATURE         weeping_angels-36.0.1.jar                         |Weeping Angels                |weeping_angels                |36.0.1              |DONE      |Manifest: NOSIGNATURE         jei-1.16.5-7.8.0.1009.jar                         |Just Enough Items             |jei                           |7.8.0.1009          |DONE      |Manifest: NOSIGNATURE         VisualWorkbench-v1.1.0-1.16.5.jar                 |Visual Workbench              |visualworkbench               |1.1.0               |DONE      |Manifest: 9a:09:85:98:65:c4:8c:11:c5:49:f6:d6:33:23:39:df:8d:b4:ff:92:84:b8:bd:a5:83:9f:ac:7f:2a:d1:4b:6a         DoggyTalents-1.16.5-2.1.15.jar                    |Doggy Talents 2               |doggytalents                  |2.1.15              |DONE      |Manifest: NOSIGNATURE         abnormals_core-1.16.5-3.3.1.jar                   |Abnormals Core                |abnormals_core                |3.3.1               |DONE      |Manifest: NOSIGNATURE         mcw-windows-2.2.1-mc1.16.5forge.jar               |Macaw's Windows               |mcwwindows                    |2.2.1               |DONE      |Manifest: NOSIGNATURE         caelus-forge-1.16.5-2.1.3.2.jar                   |Caelus API                    |caelus                        |1.16.5-2.1.3.2      |DONE      |Manifest: NOSIGNATURE         immersive_aircraft-0.5.2+1.16.5-forge.jar         |Immersive Aircraft            |immersive_aircraft            |0.5.2+1.16.5        |DONE      |Manifest: NOSIGNATURE         KleeSlabs_1.16.5-9.2.1.jar                        |KleeSlabs                     |kleeslabs                     |9.2.1               |DONE      |Manifest: NOSIGNATURE         Waystones_1.16.5-7.6.4.jar                        |Waystones                     |waystones                     |7.6.4               |DONE      |Manifest: NOSIGNATURE         jev-1.16.3-2.0.1.jar                              |Just Enough Vehicles          |jev                           |2.0.1               |DONE      |Manifest: NOSIGNATURE         mcwfurnituresbop-1.16.5-1.3.jar                   |Macaw's Furnitures - BOP      |mcwfurnituresbop              |1.16.5-1.3          |DONE      |Manifest: NOSIGNATURE         Clumps-6.0.0.28.jar                               |Clumps                        |clumps                        |6.0.0.28            |DONE      |Manifest: NOSIGNATURE         journeymap-1.16.5-5.8.5p7.jar                     |Journeymap                    |journeymap                    |5.8.5p7             |DONE      |Manifest: NOSIGNATURE         CTM-MC1.16.1-1.1.2.6.jar                          |ConnectedTexturesMod          |ctm                           |MC1.16.1-1.1.2.6    |DONE      |Manifest: NOSIGNATURE         TravelersBackpack-1.16.5-5.4.51.jar               |Traveler's Backpack           |travelersbackpack             |5.4.51              |DONE      |Manifest: NOSIGNATURE         Artifacts-1.16.5-2.10.5.jar                       |Artifacts                     |artifacts                     |1.16.5-2.10.5       |DONE      |Manifest: NOSIGNATURE         FarmingForBlockheads_1.16.5-7.3.1.jar             |Farming for Blockheads        |farmingforblockheads          |7.3.1               |DONE      |Manifest: NOSIGNATURE         Bookshelf-Forge-1.16.5-10.4.33.jar                |Bookshelf                     |bookshelf                     |10.4.33             |DONE      |Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5         NCOBC-1.2.2.jar                                   |Non Craftable Items Become Cra|dolberhats                    |1.2.2               |DONE      |Manifest: NOSIGNATURE         table_top_craft-1.16-1.2.1.jar                    |Table Top Craft               |table_top_craft               |1.16-1.2.1          |DONE      |Manifest: NOSIGNATURE         mcw-doors-1.1.0forge-mc1.16.5.jar                 |Macaw's Doors                 |mcwdoors                      |1.1.0               |DONE      |Manifest: NOSIGNATURE         Immersive Vehicles-1.16.5-22.15.0.jar             |Immersive Vehicles (formerly M|mts                           |NONE                |DONE      |Manifest: NOSIGNATURE         JEITweaker-1.16.5-1.1.0.49.jar                    |JEI Tweaker                   |jeitweaker                    |1.1.0.49            |DONE      |Manifest: NOSIGNATURE         fusion-1.1.1-forge-mc1.16.jar                     |Fusion                        |fusion                        |1.1.1               |DONE      |Manifest: NOSIGNATURE         carryon-1.16.5-1.15.6.24.jar                      |Carry On                      |carryon                       |1.15.6.24           |DONE      |Manifest: NOSIGNATURE         CraftTweaker-1.16.5-7.1.2.527.jar                 |CraftTweaker                  |crafttweaker                  |7.1.2.527           |DONE      |Manifest: NOSIGNATURE         BotanyPots-1.16.5-7.1.41.jar                      |BotanyPots                    |botanypots                    |7.1.41              |DONE      |Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5         forge-1.16.5-36.2.42-universal.jar                |Forge                         |forge                         |36.2.42             |DONE      |Manifest: 22:af:21:d8:19:82:7f:93:94:fe:2b:ac:b7:e4:41:57:68:39:87:b1:a7:5c:c6:44:f9:25:74:21:14:f5:0d:90         Trin Parts Pack-1.16.5-2.23.1.jar                 |Immersive Vehicles (MTS/IV) - |iv_tpp                        |2.22.0              |DONE      |Manifest: NOSIGNATURE         refinedstorage-1.9.18.jar                         |Refined Storage               |refinedstorage                |1.9.18              |DONE      |Manifest: NOSIGNATURE         mcw-paths-1.0.5-1.16.5forge.jar                   |Macaw's Paths and Pavings     |mcwpaths                      |1.0.5               |DONE      |Manifest: NOSIGNATURE         corpse-1.16.5-1.0.6.jar                           |Corpse                        |corpse                        |1.16.5-1.0.6        |DONE      |Manifest: NOSIGNATURE         Scary_Mobs_And_Bosses-mod-1.16.5_1.2.0.jar        |Scary Mobs Mobs and Bosses    |scary_mobs_and_bosses         |1.2.0               |DONE      |Manifest: NOSIGNATURE         chipped-1.16.5-1.2.1-forge.jar                    |Chipped                       |chipped                       |1.16.5-1.2.1-forge  |DONE      |Manifest: NOSIGNATURE         forge-1.16.5-36.2.42-client.jar                   |Minecraft                     |minecraft                     |1.16.5              |DONE      |Manifest: NOSIGNATURE         UndeadExpansion_2.0.4_1.16.5_b.jar                |Undead Expansion              |undead_expansion              |2.0.4               |DONE      |Manifest: NOSIGNATURE         mcw-bridges-3.0.0-mc1.16.5forge.jar               |Macaw's Bridges               |mcwbridges                    |3.0.0               |DONE      |Manifest: NOSIGNATURE         FarmersDelight-1.16.5-0.6.0.jar                   |Farmer's Delight              |farmersdelight                |1.16.5-0.6.0        |DONE      |Manifest: NOSIGNATURE         ToolBelt-1.16.5-1.16.3.jar                        |Tool Belt                     |toolbelt                      |1.16.3              |DONE      |Manifest: NOSIGNATURE         BotanyTrees-1.16.5-3.0.12.jar                     |BotanyTrees                   |botanytrees                   |3.0.12              |DONE      |Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5         BiomesOPlenty-1.16.5-13.1.0.477-universal.jar     |Biomes O' Plenty              |biomesoplenty                 |1.16.5-13.1.0.477   |DONE      |Manifest: NOSIGNATURE         mcw-trapdoors-1.1.3-mc1.16.5forge.jar             |Macaw's Trapdoors             |mcwtrpdoors                   |1.1.3               |DONE      |Manifest: NOSIGNATURE         mcw-fences-1.1.1-mc1.16.5forge.jar                |Macaw's Fences and Walls      |mcwfences                     |1.1.1               |DONE      |Manifest: NOSIGNATURE         supermartijn642corelib-1.1.17a-forge-mc1.16.jar   |SuperMartijn642's Core Lib    |supermartijn642corelib        |1.1.17a             |DONE      |Manifest: NOSIGNATURE         fairylights-4.0.6-1.16.5.jar                      |Fairy Lights                  |fairylights                   |4.0.6               |DONE      |Manifest: NOSIGNATURE         RecipesLibrary-1.16.5-2.0.0.jar                   |Recipes Library               |recipes_lib                   |2.0.0               |DONE      |Manifest: NOSIGNATURE         jeiintegration_1.16.5-7.1.0.22.jar                |JEI Integration               |jeiintegration                |7.1.0.22            |DONE      |Manifest: NOSIGNATURE         SelectablePainting-1.16.5-2.0.1.jar               |Selectable Painting           |selectable_painting           |2.0.1               |DONE      |Manifest: NOSIGNATURE         plushies-1.2-1.16.5-forge.jar                     |Plushie Mod                   |plushies                      |1.2                 |DONE      |Manifest: NOSIGNATURE         flywheel-1.16-0.2.5.jar                           |Flywheel                      |flywheel                      |1.16-0.2.5          |DONE      |Manifest: NOSIGNATURE         curios-forge-1.16.5-4.1.0.0.jar                   |Curios API                    |curios                        |1.16.5-4.1.0.0      |DONE      |Manifest: NOSIGNATURE         sisser-1.7.jar                                    |Sisser                        |sisser                        |1.7                 |DONE      |Manifest: NOSIGNATURE         Croptopia-1.16.5-FORGE-2.0.5.jar                  |Croptopia                     |croptopia                     |2.0.5               |DONE      |Manifest: NOSIGNATURE         polymorph-forge-1.16.5-0.41.jar                   |Polymorph                     |polymorph                     |1.16.5-0.41         |DONE      |Manifest: NOSIGNATURE         abnormals_delight-1.16.5-1.2.1.jar                |Abnormals Delight             |abnormals_delight             |1.2.1               |DONE      |Manifest: NOSIGNATURE         StorageDrawers-1.16.3-8.5.2.jar                   |Storage Drawers               |storagedrawers                |8.5.2               |DONE      |Manifest: NOSIGNATURE         DiagonalFences-v1.1.1-1.16.5.jar                  |Diagonal Fences               |diagonalfences                |1.1.1               |DONE      |Manifest: 9a:09:85:98:65:c4:8c:11:c5:49:f6:d6:33:23:39:df:8d:b4:ff:92:84:b8:bd:a5:83:9f:ac:7f:2a:d1:4b:6a         DoubleSlabs-1.16-3.7.3.jar                        |Double Slabs                  |doubleslabs                   |3.7.3               |DONE      |Manifest: NOSIGNATURE         obfuscate-0.6.3-1.16.5.jar                        |Obfuscate                     |obfuscate                     |0.6.3               |DONE      |Manifest: NOSIGNATURE         vehicle-mod-0.45.2-1.16.3.jar                     |MrCrayfish's Vehicle Mod      |vehicle                       |0.45.2              |DONE      |Manifest: NOSIGNATURE         cfm-7.0.0pre22-1.16.3.jar                         |MrCrayfish's Furniture Mod    |cfm                           |7.0.0-pre22         |DONE      |Manifest: NOSIGNATURE         morecfm-1.3.1-1.16.3.jar                          |MrCrayfish's More Furniture Mo|morecfm                       |1.3.1               |DONE      |Manifest: NOSIGNATURE         architectury-1.32.68.jar                          |Architectury                  |architectury                  |1.32.68             |DONE      |Manifest: NOSIGNATURE         minecraft-comes-alive-7.3.23+1.16.5-universal.jar |Minecraft Comes Alive         |mca                           |7.3.23+1.16.5       |DONE      |Manifest: NOSIGNATURE         connectedglass-1.1.11-forge-mc1.16.jar            |Connected Glass               |connectedglass                |1.1.11              |DONE      |Manifest: NOSIGNATURE         Chisel-MC1.16.5-2.0.1-alpha.4.jar                 |Chisel                        |chisel                        |MC1.16.5-2.0.1-alpha|DONE      |Manifest: NOSIGNATURE         mcw-furniture-3.2.2-mc1.16.5forge.jar             |Macaw's Furniture             |mcwfurnitures                 |3.2.2               |DONE      |Manifest: NOSIGNATURE         apexcore-1.16.5-1.10.0.jar                        |ApexCore                      |apexcore                      |1.10.0              |DONE      |Manifest: NOSIGNATURE         fantasyfurniture-1.16.5-2.0.2.jar                 |Fantasy's Furniture           |fantasyfurniture              |2.0.2               |DONE      |Manifest: NOSIGNATURE         cloth-config-4.17.101-forge.jar                   |Cloth Config v4 API           |cloth-config                  |4.17.101            |DONE      |Manifest: NOSIGNATURE         PuzzlesLib-v1.0.15-1.16.5-Forge.jar               |Puzzles Lib                   |puzzleslib                    |1.0.15              |DONE      |Manifest: 9a:09:85:98:65:c4:8c:11:c5:49:f6:d6:33:23:39:df:8d:b4:ff:92:84:b8:bd:a5:83:9f:ac:7f:2a:d1:4b:6a         Aquaculture-1.16.5-2.1.23.jar                     |Aquaculture 2                 |aquaculture                   |1.16.5-2.1.23       |DONE      |Manifest: NOSIGNATURE         FallingTree-1.16.5-2.11.7.jar                     |FallingTree                   |fallingtree                   |2.11.7              |DONE      |Manifest: NOSIGNATURE         expandability-2.0.1-forge.jar                     |ExpandAbility                 |expandability                 |2.0.1               |DONE      |Manifest: NOSIGNATURE         geckolib-forge-1.16.5-3.0.106.jar                 |GeckoLib                      |geckolib3                     |3.0.106             |DONE      |Manifest: NOSIGNATURE         mcw-lights-1.0.6b-mc1.16.5forge.jar               |Macaw's Lights and Lamps      |mcwlights                     |1.0.6               |DONE      |Manifest: NOSIGNATURE         Essential (forge_1.16.5).jar                      |Essential                     |essential                     |1.3.2.5+ge4fdbcd438 |DONE      |Manifest: NOSIGNATURE         BetterAdvancements-1.16.5-0.1.1.115.jar           |Better Advancements           |betteradvancements            |0.1.1.115           |DONE      |Manifest: NOSIGNATURE     Crash Report UUID: 5a2a5800-3bd7-4640-9bbc-ef9573fc1d4b     Launched Version: forge-36.2.42     Backend library: LWJGL version 3.2.2 build 10     Backend API: NVIDIA GeForce RTX 2050/PCIe/SSE2 GL version 4.6.0 NVIDIA 546.80, NVIDIA Corporation     GL Caps: Using framebuffer using OpenGL 3.0     Using VBOs: Yes     Is Modded: Definitely; Client brand changed to 'forge'     Type: Client (map_client.txt)     Graphics mode: fancy     Resource Packs: vanilla, mod_resources, file/Invisible Item Frame Pack_1.16.4-1.0.zip, file/Mizunos 16 Craft JE CIT_1.16.4_beta-1.0.zip, file/Mizunos 16 Craft JE_1.16.4-1.0.zip     Current Language: English (US)     CPU: 12x AMD Ryzen 5 7535HS with Radeon Graphics      OptiFine Version: OptiFine_1.16.5_HD_U_G8     OptiFine Build: 20210515-161946     Render Distance Chunks: 12     Mipmaps: 4     Anisotropic Filtering: 1     Antialiasing: 0     Multitexture: false     Shaders: BSL_v8.2.09.zip     OpenGlVersion: 4.6.0 NVIDIA 546.80     OpenGlRenderer: NVIDIA GeForce RTX 2050/PCIe/SSE2     OpenGlVendor: NVIDIA Corporation     CpuCount: 12
    • I've been trying to give a little transparency to a block and a custom model, but I'm running into the same issue with the transparency of the block Some guides say I use ItemBlockRenderTypes.setRenderLayer in a ClientEvent class but its deprecated, I already tried to set a Properties in Properties.copy(Blocks.FLOWERPOT) But the render in game still doesn't has transparency, only as an Item  
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.