Jump to content

Recommended Posts

Posted

So, as I was working on doing some achievement based stuff for my mod, I tried to create a crafting handler. Upon doing so, I noticed that ICraftingHandler is no longer an interface.

 

Just wondering if anyone knows what it was replaced by or what I can use to get the same functionality? An event, possibly?

 

Thanks in advance!

-Mitchellbrine

 

Minecraft can do ANYTHING, it's coded in Java and you got the full power of Java behind you when you code. So nothing is impossible.

It may be freaking fucking hard though, but still possible ;)

 

If you create a topic on Modder Support, live by this motto:

I don't want your charity, I want your information
Posted

Funny, when I remembered the crafting handlers, I had always wanted a way of cancelling them. Thanks diesieben07!

-Mitchellbrine

 

Minecraft can do ANYTHING, it's coded in Java and you got the full power of Java behind you when you code. So nothing is impossible.

It may be freaking fucking hard though, but still possible ;)

 

If you create a topic on Modder Support, live by this motto:

I don't want your charity, I want your information
Posted

Um, diesieben, I'm having a bit of issues with the fact that the event is not working. I have it with a @SubscribeEvent, but it doesn't seem to even run the event.

-Mitchellbrine

 

Minecraft can do ANYTHING, it's coded in Java and you got the full power of Java behind you when you code. So nothing is impossible.

It may be freaking fucking hard though, but still possible ;)

 

If you create a topic on Modder Support, live by this motto:

I don't want your charity, I want your information
Posted

Thanks, Alias, but I already got that part. It still doesn't work after I register it.

-Mitchellbrine

 

Minecraft can do ANYTHING, it's coded in Java and you got the full power of Java behind you when you code. So nothing is impossible.

It may be freaking fucking hard though, but still possible ;)

 

If you create a topic on Modder Support, live by this motto:

I don't want your charity, I want your information
Posted

Okay, here are the classes. I would link you to my repository, but I'd have to add you to it on BitBucket (it's private while I'm updating).

 

So here they are:

 

Here's my MainMod class (Sorry it's so long, It's a big mod)

 

package mc.Mitchellbrine.anchormanMod.common.core;

import mc.Mitchellbrine.anchormanMod.common.block.CarpetFormer;
import mc.Mitchellbrine.anchormanMod.common.block.CarpetFormerFilled;
import mc.Mitchellbrine.anchormanMod.common.block.DawnSummoner;
import mc.Mitchellbrine.anchormanMod.common.block.DispenserBehaviorAddition;
import mc.Mitchellbrine.anchormanMod.common.block.DispenserBehaviorWool;
import mc.Mitchellbrine.anchormanMod.common.block.DuskSummoner;
import mc.Mitchellbrine.anchormanMod.common.block.EmptyBlock;
import mc.Mitchellbrine.anchormanMod.common.block.ExperienceCarpet;
import mc.Mitchellbrine.anchormanMod.common.block.FarmCarpet;
import mc.Mitchellbrine.anchormanMod.common.block.LaunchCarpet;
import mc.Mitchellbrine.anchormanMod.common.block.MidnightSummoner;
import mc.Mitchellbrine.anchormanMod.common.block.NetherCarpet;
import mc.Mitchellbrine.anchormanMod.common.block.NoonSummoner;
import mc.Mitchellbrine.anchormanMod.common.block.RainSummoner;
import mc.Mitchellbrine.anchormanMod.common.block.SpawnSummoner;
import mc.Mitchellbrine.anchormanMod.common.block.ThunderSummoner;
import mc.Mitchellbrine.anchormanMod.common.block.WelcomeCarpet;
import mc.Mitchellbrine.anchormanMod.common.block.WelcomeCarpet1;
import mc.Mitchellbrine.anchormanMod.common.block.WelcomeCarpet2;
import mc.Mitchellbrine.anchormanMod.common.block.WelcomeCarpet3;
import mc.Mitchellbrine.anchormanMod.common.event.CraftingHandler;
import mc.Mitchellbrine.anchormanMod.common.event.LivingMagicalMurderEvent;
import mc.Mitchellbrine.anchormanMod.common.item.Needle;
import mc.Mitchellbrine.anchormanMod.common.item.NeedleWithThread;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityCarpetFormer;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityCarpetFormerFilled;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityDawnCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityDuskCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityExpCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityFarmCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityLaunchCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityMidnightCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityNetherCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityNoonCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityRainCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntitySpawnCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityThunderCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityWelcomeCarpet;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityWelcomeCarpet1;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityWelcomeCarpet2;
import mc.Mitchellbrine.anchormanMod.common.tileentity.TileEntityWelcomeCarpet3;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.stats.Achievement;
import net.minecraftforge.common.AchievementPage;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.common.config.Configuration;
import net.minecraftforge.oredict.OreDictionary;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.registry.GameRegistry;

@Mod(modid = "weatherManMod", name = "Weather Carpets Mod", version = "DEV BUILD", useMetadata = true)
public class MainMod {

@SidedProxy(clientSide = "mc.Mitchellbrine.anchormanMod.client.core.ClientProxy", serverSide = "mc.Mitchellbrine.anchormanMod.common.core.CommonProxy")
public static CommonProxy proxy;

public static String MOD_ID = "anchorman";


public static CreativeTabs ModTab = new ModTab(CreativeTabs.getNextID(), "weatherCarpetDev");
//	public static CreativeTabs ModTab = new ModTab(CreativeTabs.getNextID(), "weatherCarpet");
//	public static CreativeTabs ModTab = new ModTab(CreativeTabs.getNextID(), "weatherCarpetBeta");


public static int versionType = 1;

// Config Ids

public static int rSID;
public static int tSID;
public static int nSID;
public static int mSID;
public static int daSID;
public static int duSID;
public static int sSID;
public static int lCID;
public static int welcomeMatNorthID;
public static int welcomeMatEastID;
public static int welcomeMatSouthID;
public static int welcomeMatWestID;
public static int expCID;
public static int mW;
public static int mW2;
public static int mDW;
public static int mNW;
public static int bMID;
public static int fCID;
public static int mP;
public static int mP2;
public static int mDP;
public static int mNP;
public static int hSID;	

// Carpet Former

public static Block carpetFormer;
public static Block carpetFormerFilled;

// Carpets

public static Block rainSummoner;
public static Block thunderSummoner;
public static Block noonSummoner;
public static Block midnightSummoner;
public static Block dawnSummoner;
public static Block duskSummoner;
public static Block spawnSummoner;
public static Block launcherCarpet;
public static Block welcomeMat;
public static Block welcomeMatEast;
public static Block welcomeMatSouth;
public static Block welcomeMatWest;
public static Block expCarpet;
public static Block bonemealBlock;
public static Block farmCarpet;
public static Block netherCarpet;

// Wool

public static Block magicalWool;
public static Block magicalWool2;

public static Block magicalDayWool;
public static Block magicalNightWool;

// Pearls

public static Item magicalPearl;
public static Item magicalPearl2;

public static Item magicalDayPearl;
public static Item magicalNightPearl;

public static Item needle;
public static Item needleWithThread;

public static String lastStableVersion = "1.0.0";
public static String lastBetaVersion = "N/A";
public static String lastDevVersion = "14w09a";

// Skill System

public static Achievement weaving;
public static Achievement carpetCreation;
public static Achievement linearMastery;

public static AchievementPage weatherCarpetsPage;

// Misc Integers

public static int versionChannel;
public static int over9000Enabled;
public static int isUserValidated;
public static boolean stopBuggingMe;
public static boolean legacyRecipes;
public static int notified = 0;

@EventHandler
public void preInit(FMLPreInitializationEvent event)
{
Configuration config = new Configuration(event.getSuggestedConfigurationFile());

config.load();

//	rSID = config.get(Configuration.CATEGORY_GENERAL, "rS", 230).getInt();
//	tSID = config.get(Configuration.CATEGORY_GENERAL, "tS", 231).getInt();
//	nSID = config.get(Configuration.CATEGORY_GENERAL, "nS", 232).getInt();
//	mSID = config.get(Configuration.CATEGORY_GENERAL, "mS", 234).getInt();
//	daSID = config.get(Configuration.CATEGORY_GENERAL, "daS", 235).getInt();
//	duSID = config.get(Configuration.CATEGORY_GENERAL, "duS", 236).getInt();
//	sSID = config.get(Configuration.CATEGORY_GENERAL, "sS", 237).getInt();
//	lCID = config.get(Configuration.CATEGORY_GENERAL, "lC", 238).getInt();
//	welcomeMatNorthID = config.get(Configuration.CATEGORY_GENERAL, "wM", 239).getInt();
//	welcomeMatEastID = config.get(Configuration.CATEGORY_GENERAL, "wM1", 240).getInt();
//	welcomeMatSouthID = config.get(Configuration.CATEGORY_GENERAL, "wM2", 241).getInt();
//	welcomeMatWestID = config.get(Configuration.CATEGORY_GENERAL, "wM3", 242).getInt();
//	expCID = config.get(Configuration.CATEGORY_GENERAL, "expC", 243).getInt();
//	fCID = config.get(Configuration.CATEGORY_GENERAL, "fC", 244).getInt();
//	hSID = config.get(Configuration.CATEGORY_GENERAL, "hSID", 250).getInt();

//	mW = config.get(Configuration.CATEGORY_GENERAL, "mW", 245).getInt();
//	mW2 = config.get(Configuration.CATEGORY_GENERAL, "mW2", 246).getInt();
//	mDW = config.get(Configuration.CATEGORY_GENERAL, "mdW", 247).getInt();
//	mNW = config.get(Configuration.CATEGORY_GENERAL, "mNW", 248).getInt();
//	bMID = config.get(Configuration.CATEGORY_GENERAL, "bM", 249).getInt();

//	mP = config.get(Configuration.CATEGORY_GENERAL, "mP", 4000).getInt();
//	mP2 = config.get(Configuration.CATEGORY_GENERAL, "mP2", 4001).getInt();
//	mDP = config.get(Configuration.CATEGORY_GENERAL, "mDP", 4002).getInt();
//	mNP = config.get(Configuration.CATEGORY_GENERAL, "mNP", 4003).getInt();

config.addCustomCategoryComment(Configuration.CATEGORY_GENERAL, "These are values for the new AutoUpdate Checker and the new logged in messages. Personally, I would turn stopBuggingMe to true almost immediately! ;P");

versionChannel = config.get(Configuration.CATEGORY_GENERAL, "versionChannel", 0).getInt();
over9000Enabled = config.get(Configuration.CATEGORY_GENERAL, "enableOver9000", 1).getInt();
stopBuggingMe = config.get(Configuration.CATEGORY_GENERAL, "stopBuggingMe", false).getBoolean(false);
legacyRecipes = config.get(Configuration.CATEGORY_GENERAL, "enableLegacyCarpetRecipes", false).getBoolean(false);

config.save();

carpetFormer = new CarpetFormer().setCreativeTab(ModTab).setBlockName("carpetFormer").setBlockTextureName("anchorman:cFIcon");
carpetFormerFilled = new CarpetFormerFilled().setBlockName("carpetFormerFilled").setBlockTextureName("anchorman:cFIcon");

rainSummoner = new RainSummoner().setCreativeTab(ModTab).setBlockName("rainSummoner").setBlockTextureName("anchorman:rSIcon");
thunderSummoner = new ThunderSummoner().setCreativeTab(ModTab).setBlockName("thunderSummoner").setBlockTextureName("anchorman:tSIcon");
noonSummoner = new NoonSummoner().setCreativeTab(ModTab).setBlockName("noonSummoner").setBlockTextureName("anchorman:nSIcon");
midnightSummoner = new MidnightSummoner().setCreativeTab(ModTab).setBlockName("midnightSummoner").setBlockTextureName("anchorman:mSIcon");
dawnSummoner = new DawnSummoner().setCreativeTab(ModTab).setBlockName("dawnSummoner").setBlockTextureName("anchorman:daSIcon");
duskSummoner = new DuskSummoner().setCreativeTab(ModTab).setBlockName("duskSummoner").setBlockTextureName("anchorman:duSIcon");
spawnSummoner = new SpawnSummoner().setCreativeTab(ModTab).setBlockName("spawnSummoner").setBlockTextureName("anchorman:sSIcon");
launcherCarpet = new LaunchCarpet().setCreativeTab(ModTab).setBlockName("launchCarpet").setBlockTextureName("anchorman:lIcon");
welcomeMat = new WelcomeCarpet().setCreativeTab(ModTab).setBlockName("welcomeMat").setBlockTextureName("anchorman:wIcon");
welcomeMatEast = new WelcomeCarpet1().setBlockName("welcomeMatEast").setBlockTextureName("anchorman:wIcon");
welcomeMatSouth = new WelcomeCarpet2().setBlockName("welcomeMatSouth").setBlockTextureName("anchorman:wIcon");
welcomeMatWest =  new WelcomeCarpet3().setBlockName("welcomeMatWest").setBlockTextureName("anchorman:wIcon");
expCarpet = new ExperienceCarpet().setCreativeTab(ModTab).setBlockName("expSummoner").setBlockTextureName("anchorman:expIcon");
farmCarpet = new FarmCarpet().setCreativeTab(ModTab).setBlockName("farmSummoner").setBlockTextureName("anchorman:fIcon");
netherCarpet = new NetherCarpet().setCreativeTab(ModTab).setBlockName("netherSummoner").setBlockTextureName("anchorman:hIcon");

magicalWool = new EmptyBlock(Material.cloth).setHardness(0.8F).setStepSound(Block.soundTypeCloth).setCreativeTab(ModTab).setBlockName("magicalWool").setBlockTextureName("anchorman:magicalWool");
magicalWool2 = new EmptyBlock(Material.cloth).setHardness(0.8F).setStepSound(Block.soundTypeCloth).setCreativeTab(ModTab).setBlockName("boundMagicalWool").setBlockTextureName("anchorman:boundMagicalWool");
magicalDayWool = new EmptyBlock(Material.cloth).setHardness(0.8F).setStepSound(Block.soundTypeCloth).setCreativeTab(ModTab).setBlockName("dayWool").setBlockTextureName("anchorman:dayWool");
magicalNightWool = new EmptyBlock(Material.cloth).setHardness(0.8F).setStepSound(Block.soundTypeCloth).setCreativeTab(ModTab).setBlockName("nightWool").setBlockTextureName("anchorman:nightWool");
bonemealBlock = new EmptyBlock(Material.plants).setHardness(4.0F).setCreativeTab(ModTab).setBlockName("boneMeal").setBlockTextureName("boneMeal").setBlockTextureName("anchorman:boneMealBlock");

magicalPearl = new Item().setCreativeTab(ModTab).setUnlocalizedName("magicalPearl").setTextureName("anchorman:" + "magicalPearl");
magicalPearl2 = new Item().setCreativeTab(ModTab).setUnlocalizedName("boundMagicalPearl").setTextureName("anchorman:" + "magicalPearl2");
magicalDayPearl = new Item().setCreativeTab(ModTab).setUnlocalizedName("magicalDayPearl").setTextureName("anchorman:" + "magicalDayPearl");
magicalNightPearl = new Item().setCreativeTab(ModTab).setUnlocalizedName("magicalNightPearl").setTextureName("anchorman:"+ "magicalNightPearl");

needle = new Needle().setCreativeTab(ModTab).setUnlocalizedName("needle").setTextureName("anchorman:needle");
needleWithThread = new NeedleWithThread().setCreativeTab(ModTab).setUnlocalizedName("needleWithThread").setTextureName("anchorman:needleThread");

GameRegistry.registerBlock(rainSummoner, "anchorman:rainSummoner");
GameRegistry.registerBlock(thunderSummoner, "anchorman:thunderSummoner");
GameRegistry.registerBlock(noonSummoner, "anchorman:noonSummoner");
GameRegistry.registerBlock(midnightSummoner, "anchorman:midnightSummoner");
GameRegistry.registerBlock(dawnSummoner, "anchorman:dawnSummoner");
GameRegistry.registerBlock(duskSummoner, "anchorman:duskSummoner");
GameRegistry.registerBlock(spawnSummoner, "anchorman:spawnSummoner");
GameRegistry.registerBlock(launcherCarpet, "anchorman:launchCarpet");
GameRegistry.registerBlock(welcomeMat, "anchorman:welcomeMat");
GameRegistry.registerBlock(welcomeMatEast, "anchorman:welcomeMatEast");
GameRegistry.registerBlock(welcomeMatSouth, "anchorman:welcomeMatSouth");
GameRegistry.registerBlock(welcomeMatWest, "anchorman:welcomeMatWest");
GameRegistry.registerBlock(farmCarpet, "anchorman:farmSummoner");
GameRegistry.registerBlock(netherCarpet, "anchorman:netherCarpet");
GameRegistry.registerBlock(expCarpet, "anchorman:expSummoner");
GameRegistry.registerBlock(carpetFormer, "anchorman:carpetFormer");
GameRegistry.registerBlock(carpetFormerFilled, "anchorman:carpetFormerFilled");
GameRegistry.registerBlock(magicalWool, "anchorman:magicalWool");
GameRegistry.registerBlock(magicalWool2, "anchorman:boundMagicalWool");
GameRegistry.registerBlock(magicalDayWool, "anchorman:magicalDayWool");
GameRegistry.registerBlock(magicalNightWool, "anchorman:magicalNightWool");
GameRegistry.registerBlock(bonemealBlock, "anchorman:boneMeal");

GameRegistry.registerItem(magicalPearl, "anchorman:magicalPearl");
GameRegistry.registerItem(magicalPearl2, "anchorman:boundMagicalPearl");
GameRegistry.registerItem(magicalDayPearl, "anchorman:magicalDayPearl");
GameRegistry.registerItem(magicalNightPearl, "anchorman:magicalNightPearl");
GameRegistry.registerItem(needle, "anchorman:needle");
GameRegistry.registerItem(needleWithThread, "anchorman:needleWithThread");

weaving = new Achievement("weaving", "weaving", 0, 0, needle, (Achievement)null).initIndependentStat();
carpetCreation = new Achievement("carpet", "carpet", 2, 0, MainMod.carpetFormer, weaving).registerStat();
linearMastery = new Achievement("linear", "linear", 4, 0, MainMod.magicalDayPearl, carpetCreation).registerStat();

    weatherCarpetsPage = new AchievementPage("Weather Carpets", new Achievement[] {weaving, carpetCreation, linearMastery});

}

@EventHandler
public void init(FMLInitializationEvent event)
{

	OreDictionary.registerOre(bMID, bonemealBlock);

	MinecraftForge.EVENT_BUS.register(new LivingMagicalMurderEvent());
	MinecraftForge.EVENT_BUS.register(new CraftingHandler());

	GameRegistry.registerTileEntity(TileEntityRainCarpet.class, "anchorman:rainCarpet");
	GameRegistry.registerTileEntity(TileEntityThunderCarpet.class, "anchorman:thunderCarpet");
	GameRegistry.registerTileEntity(TileEntityNoonCarpet.class, "anchorman:noonCarpet");
	GameRegistry.registerTileEntity(TileEntityMidnightCarpet.class, "anchorman:midnightCarpet");
	GameRegistry.registerTileEntity(TileEntityDawnCarpet.class, "anchorman:dawnCarpet");
	GameRegistry.registerTileEntity(TileEntityDuskCarpet.class, "anchorman:duskCarpet");
	GameRegistry.registerTileEntity(TileEntitySpawnCarpet.class, "anchorman:spawnCarpet");
	GameRegistry.registerTileEntity(TileEntityLaunchCarpet.class, "anchorman:launchCarpet");
	GameRegistry.registerTileEntity(TileEntityWelcomeCarpet.class, "anchorman:welcomeCarpet");
	GameRegistry.registerTileEntity(TileEntityWelcomeCarpet1.class, "anchorman:welcomeCarpet1");
	GameRegistry.registerTileEntity(TileEntityWelcomeCarpet2.class, "anchorman:welcomeCarpet2");
	GameRegistry.registerTileEntity(TileEntityWelcomeCarpet3.class, "anchorman:welcomeCarpet3");
	GameRegistry.registerTileEntity(TileEntityExpCarpet.class, "anchorman:expCarpet");
	GameRegistry.registerTileEntity(TileEntityFarmCarpet.class, "anchorman:farmCarpet");
	GameRegistry.registerTileEntity(TileEntityNetherCarpet.class, "anchorman:netherCarpet");
	GameRegistry.registerTileEntity(TileEntityCarpetFormer.class, "anchorman:carpetFormerTE");
	GameRegistry.registerTileEntity(TileEntityCarpetFormerFilled.class, "anchorman:carpetFormerFilledTE");

	proxy.registerTileEntities();		

	GameRegistry.addSmelting(magicalPearl, new ItemStack(magicalPearl2, 1), 0.25F);
	GameRegistry.addRecipe(new ItemStack(magicalWool2, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalPearl2,Character.valueOf('Y'), magicalWool);
//		GameRegistry.addRecipe(new ItemStack(rainSummoner, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Items.water_bucket);
//		GameRegistry.addRecipe(new ItemStack(thunderSummoner, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Blocks.iron_block);
	GameRegistry.addRecipe(new ItemStack(magicalDayWool , 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), magicalDayPearl);
	GameRegistry.addRecipe(new ItemStack(magicalNightWool , 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), magicalNightPearl);
	GameRegistry.addRecipe(new ItemStack(dawnSummoner, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), magicalDayWool);
	GameRegistry.addRecipe(new ItemStack(duskSummoner, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), magicalNightWool);
	GameRegistry.addRecipe(new ItemStack(noonSummoner, 1), "XYX", "XXX", "XZX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), magicalDayWool, Character.valueOf('Z'), magicalNightWool);
	GameRegistry.addRecipe(new ItemStack(midnightSummoner, 1), "XZX", "XXX", "XYX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), magicalDayWool, Character.valueOf('Z'), magicalNightWool);
//		GameRegistry.addRecipe(new ItemStack(spawnSummoner, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Items.bed);
//		GameRegistry.addRecipe(new ItemStack(launcherCarpet, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Blocks.tnt);
	GameRegistry.addRecipe(new ItemStack(welcomeMat, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), new ItemStack(Blocks.wool, 1, 12), Character.valueOf('Y'), Items.sign);
//		GameRegistry.addRecipe(new ItemStack(expCarpet, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Blocks.bookshelf);
	GameRegistry.addRecipe(new ItemStack(bonemealBlock, 1), "XXX", "XXX", "XXX", Character.valueOf('X'), new ItemStack(Items.dye, 1, 15));
//		GameRegistry.addRecipe(new ItemStack(farmCarpet, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), bonemealBlock);
//		GameRegistry.addRecipe(new ItemStack(netherCarpet, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Items.blaze_powder);
	GameRegistry.addRecipe(new ItemStack(needle, 1), "X  "," Y ","  Y", Character.valueOf('X'), Items.leather, Character.valueOf('Y'), Items.iron_ingot);
	GameRegistry.addRecipe(new ItemStack(needle, 1), "Y  "," Y ","  X", Character.valueOf('X'), Items.leather, Character.valueOf('Y'), Items.iron_ingot);

	GameRegistry.addShapelessRecipe(new ItemStack(needleWithThread, 1), MainMod.needle, Items.string);
	GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 9, 15), bonemealBlock);

	if (MainMod.legacyRecipes == true) {
		GameRegistry.addRecipe(new ItemStack(rainSummoner, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Items.water_bucket);
		GameRegistry.addRecipe(new ItemStack(thunderSummoner, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Blocks.iron_block);

		GameRegistry.addRecipe(new ItemStack(spawnSummoner, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Items.bed);
		GameRegistry.addRecipe(new ItemStack(launcherCarpet, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Blocks.tnt);

		GameRegistry.addRecipe(new ItemStack(expCarpet, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Blocks.bookshelf);

		GameRegistry.addRecipe(new ItemStack(farmCarpet, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), bonemealBlock);
		GameRegistry.addRecipe(new ItemStack(netherCarpet, 1), "XXX", "XYX", "XXX", Character.valueOf('X'), magicalWool2, Character.valueOf('Y'), Items.blaze_powder);
	}

	DispenserBehaviorAddition.addDispenserBehavior(MainMod.magicalPearl2, new DispenserBehaviorWool());

	AchievementPage.registerAchievementPage(weatherCarpetsPage);

}
}

 

 

And here's my class for the event:

 

package mc.Mitchellbrine.anchormanMod.common.event;

import mc.Mitchellbrine.anchormanMod.common.core.MainMod;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent.ItemCraftedEvent;

public class CraftingHandler {

@SubscribeEvent
public void craftingStuff(ItemCraftedEvent event) {
	System.out.println("Checkpoint A");
	if (event.hasResult()) {
	if (!event.player.worldObj.isRemote) {
		System.out.println("Checkpoint B");
	if (event.crafting.getItem() == MainMod.needleWithThread) {
		System.out.println("Checkpoint C");
		event.player.addStat(MainMod.weaving, 1);
		System.out.println("Checkpoint D");
	}
	}
	}
}

}

 

-Mitchellbrine

 

Minecraft can do ANYTHING, it's coded in Java and you got the full power of Java behind you when you code. So nothing is impossible.

It may be freaking fucking hard though, but still possible ;)

 

If you create a topic on Modder Support, live by this motto:

I don't want your charity, I want your information
Posted

Derp... sorry, the PlayerEvent is an FML event, my bad. You have to register it like this:

 

FMLCommonHandler.instance().bus().register(new CraftingHandler());

 

EDIT: It's confusing, because there are multiple PlayerEvents, one for FML, and one for MinecraftForge, so you have to double-check the import you are using and subscribe based on that import. The FML PlayerEvents contain most of what used to be in IPlayerTracker, plus item crafting and smelting events.

Posted

Thank you so much Alias! Just got it to work!

-Mitchellbrine

 

Minecraft can do ANYTHING, it's coded in Java and you got the full power of Java behind you when you code. So nothing is impossible.

It may be freaking fucking hard though, but still possible ;)

 

If you create a topic on Modder Support, live by this motto:

I don't want your charity, I want your information

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.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • I am trying to make an attack animation works for this entity, I have followed tutorials on youtube, looked into Geckolib's documentation but I can't find why it isn't working. The walking animation works, the mob recognizes the player and attack them. The model and animations were made in Blockbench.   public class RedSlimeEntity extends TensuraTamableEntity implements IAnimatable { private final AnimationFactory factory = GeckoLibUtil.createFactory(this); private boolean swinging; private long lastAttackTime; public RedSlimeEntity(EntityType<? extends RedSlimeEntity> type, Level worldIn) { super(type, worldIn); this.xpReward = 20; } public static AttributeSupplier.Builder createAttributes() { AttributeSupplier.Builder builder = Mob.createMobAttributes(); builder = builder.add(Attributes.MOVEMENT_SPEED, 0.1); builder = builder.add(Attributes.MAX_HEALTH, 50); builder = builder.add(Attributes.ARMOR, 0); builder = builder.add(Attributes.ATTACK_DAMAGE, 25); builder = builder.add(Attributes.FOLLOW_RANGE, 16); return builder; } public static void init() { } @Override protected void registerGoals() { this.goalSelector.addGoal(3, new FloatGoal(this)); this.goalSelector.addGoal(1, new RedSlimeAttackGoal(this, 1.2D, false)); this.goalSelector.addGoal(4, new WaterAvoidingRandomStrollGoal(this, 1.0D)); this.goalSelector.addGoal(5, new RandomLookAroundGoal(this)); this.goalSelector.addGoal(2, new RedSlimeAttackGoal.StopNearPlayerGoal(this, 1)); this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, Player.class, true)); } private <E extends IAnimatable> PlayState predicate(AnimationEvent<E> event) { if (event.isMoving()) { event.getController().setAnimation(new AnimationBuilder().addAnimation("animation.model.walk", true)); return PlayState.CONTINUE; } event.getController().setAnimation(new AnimationBuilder().addAnimation("animation.model.idle", true)); return PlayState.CONTINUE; } private <E extends IAnimatable> PlayState attackPredicate(AnimationEvent<E> event) { if (this.swinging && event.getController().getAnimationState() == AnimationState.Stopped) { event.getController().setAnimation(new AnimationBuilder().addAnimation("animation.model.attack", false)); this.swinging = false; return PlayState.CONTINUE; } return PlayState.STOP; } @Override public void swing(InteractionHand hand, boolean updateSelf) { super.swing(hand, updateSelf); this.swinging = true; } @Override public void registerControllers(AnimationData data) { data.addAnimationController(new AnimationController<>(this, "controller", 0, this::predicate)); data.addAnimationController(new AnimationController<>(this, "attackController", 0, this::attackPredicate)); } @Override public AnimationFactory getFactory() { return factory; } class RedSlimeAttackGoal extends MeleeAttackGoal { private final RedSlimeEntity entity; public RedSlimeAttackGoal(RedSlimeEntity entity, double speedModifier, boolean longMemory) { super(entity, speedModifier, longMemory); this.entity = entity; if (this.mob.getTarget() != null && this.mob.getTarget().isAlive()) { long currentTime = this.entity.level.getGameTime(); if (!this.entity.swinging && currentTime - this.entity.lastAttackTime > 20) { // 20 ticks = 1 second this.entity.swinging = true; this.entity.lastAttackTime = currentTime; } } } protected double getAttackReach(LivingEntity target) { return this.mob.getBbWidth() * 2.0F * this.mob.getBbWidth() * 2.0F + target.getBbWidth(); } @Override protected void checkAndPerformAttack(LivingEntity target, double distToEnt) { double reach = this.getAttackReach(target); if (distToEnt <= reach && this.getTicksUntilNextAttack() <= 0) { this.resetAttackCooldown(); this.entity.swinging = true; this.mob.doHurtTarget(target); } } public static class StopNearPlayerGoal extends Goal { private final Mob mob; private final double stopDistance; public StopNearPlayerGoal(Mob mob, double stopDistance) { this.mob = mob; this.stopDistance = stopDistance; } @Override public boolean canUse() { Player nearestPlayer = this.mob.level.getNearestPlayer(this.mob, stopDistance); if (nearestPlayer != null) { double distanceSquared = this.mob.distanceToSqr(nearestPlayer); return distanceSquared < (stopDistance * stopDistance); } return false; } @Override public void tick() { // Stop movement this.mob.getNavigation().stop(); } @Override public boolean canContinueToUse() { Player nearestPlayer = this.mob.level.getNearestPlayer(this.mob, stopDistance); if (nearestPlayer != null) { double distanceSquared = this.mob.distanceToSqr(nearestPlayer); return distanceSquared < (stopDistance * stopDistance); } return false; } } @Override public void tick() { super.tick(); if (this.mob.getTarget() != null && this.mob.getTarget().isAlive()) { if (!this.entity.swinging) { this.entity.swinging = true; } } } } @Override public @Nullable AgeableMob getBreedOffspring(ServerLevel serverLevel, AgeableMob ageableMob) { return null; } @Override public int getRemainingPersistentAngerTime() { return 0; } @Override public void setRemainingPersistentAngerTime(int i) { } @Override public @Nullable UUID getPersistentAngerTarget() { return null; } @Override public void setPersistentAngerTarget(@Nullable UUID uuid) { } @Override public void startPersistentAngerTimer() { } protected void playStepSound(BlockPos pos, BlockState blockIn) { this.playSound(SoundEvents.SLIME_SQUISH, 0.15F, 1.0F); } protected SoundEvent getAmbientSound() { return SoundEvents.SLIME_SQUISH; } protected SoundEvent getHurtSound(DamageSource damageSourceIn) { return SoundEvents.SLIME_HURT; } protected SoundEvent getDeathSound() { return SoundEvents.SLIME_DEATH; } protected float getSoundVolume() { return 0.2F; } }  
    • CAN ANYBODY HELP ME? JVM info: Oracle Corporation - 1.8.0_431 - 25.431-b10 java.net.preferIPv4Stack=true Current Time: 15/01/2025 17:45:17 Host: files.minecraftforge.net [104.21.58.163, 172.67.161.211] Host: maven.minecraftforge.net [172.67.161.211, 104.21.58.163] Host: libraries.minecraft.net [127.0.0.1] Host: launchermeta.mojang.com [127.0.0.1] Host: piston-meta.mojang.com [127.0.0.1] Host: sessionserver.mojang.com [127.0.0.1] Host: authserver.mojang.com [Unknown] Error checking https://launchermeta.mojang.com/: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target Data kindly mirrored by CreeperHost at https://www.creeperhost.net/ Considering minecraft server jar Downloading libraries Found 1 additional library directories Considering library cpw.mods:securejarhandler:2.1.10   Downloading library from https://maven.creeperhost.net/cpw/mods/securejarhandler/2.1.10/securejarhandler-2.1.10.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm:9.7.1   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm/9.7.1/asm-9.7.1.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-commons:9.7.1   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-commons/9.7.1/asm-commons-9.7.1.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-tree:9.7.1   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-tree/9.7.1/asm-tree-9.7.1.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-util:9.7.1   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-util/9.7.1/asm-util-9.7.1.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-analysis:9.7.1   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-analysis/9.7.1/asm-analysis-9.7.1.jar     Download completed: Checksum validated. Considering library net.minecraftforge:accesstransformers:8.0.4   Downloading library from https://maven.creeperhost.net/net/minecraftforge/accesstransformers/8.0.4/accesstransformers-8.0.4.jar     Download completed: Checksum validated. Considering library org.antlr:antlr4-runtime:4.9.1   Downloading library from https://maven.creeperhost.net/org/antlr/antlr4-runtime/4.9.1/antlr4-runtime-4.9.1.jar     Download completed: Checksum validated. Considering library net.minecraftforge:eventbus:6.0.5   Downloading library from https://maven.creeperhost.net/net/minecraftforge/eventbus/6.0.5/eventbus-6.0.5.jar     Download completed: Checksum validated. Considering library net.minecraftforge:forgespi:7.0.1   Downloading library from https://maven.creeperhost.net/net/minecraftforge/forgespi/7.0.1/forgespi-7.0.1.jar     Download completed: Checksum validated. Considering library net.minecraftforge:coremods:5.2.1   Downloading library from https://maven.creeperhost.net/net/minecraftforge/coremods/5.2.1/coremods-5.2.1.jar     Download completed: Checksum validated. Considering library cpw.mods:modlauncher:10.0.9   Downloading library from https://maven.creeperhost.net/cpw/mods/modlauncher/10.0.9/modlauncher-10.0.9.jar     Download completed: Checksum validated. Considering library net.minecraftforge:unsafe:0.2.0   Downloading library from https://maven.creeperhost.net/net/minecraftforge/unsafe/0.2.0/unsafe-0.2.0.jar     Download completed: Checksum validated. Considering library net.minecraftforge:mergetool:1.1.5:api   Downloading library from https://maven.creeperhost.net/net/minecraftforge/mergetool/1.1.5/mergetool-1.1.5-api.jar     Download completed: Checksum validated. Considering library com.electronwill.night-config:core:3.6.4   Downloading library from https://maven.creeperhost.net/com/electronwill/night-config/core/3.6.4/core-3.6.4.jar     Download completed: Checksum validated. Considering library com.electronwill.night-config:toml:3.6.4   Downloading library from https://maven.creeperhost.net/com/electronwill/night-config/toml/3.6.4/toml-3.6.4.jar     Download completed: Checksum validated. Considering library org.apache.maven:maven-artifact:3.8.5   Downloading library from https://maven.creeperhost.net/org/apache/maven/maven-artifact/3.8.5/maven-artifact-3.8.5.jar     Download completed: Checksum validated. Considering library net.jodah:typetools:0.6.3   Downloading library from https://maven.creeperhost.net/net/jodah/typetools/0.6.3/typetools-0.6.3.jar     Download completed: Checksum validated. Considering library net.minecrell:terminalconsoleappender:1.2.0   Downloading library from https://maven.creeperhost.net/net/minecrell/terminalconsoleappender/1.2.0/terminalconsoleappender-1.2.0.jar     Download completed: Checksum validated. Considering library org.jline:jline-reader:3.12.1   Downloading library from https://maven.creeperhost.net/org/jline/jline-reader/3.12.1/jline-reader-3.12.1.jar     Download completed: Checksum validated. Considering library org.jline:jline-terminal:3.12.1   Downloading library from https://maven.creeperhost.net/org/jline/jline-terminal/3.12.1/jline-terminal-3.12.1.jar     Download completed: Checksum validated. Considering library org.spongepowered:mixin:0.8.5   Downloading library from https://maven.creeperhost.net/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar     Download completed: Checksum validated. Considering library org.openjdk.nashorn:nashorn-core:15.4   Downloading library from https://maven.creeperhost.net/org/openjdk/nashorn/nashorn-core/15.4/nashorn-core-15.4.jar     Download completed: Checksum validated. Considering library net.minecraftforge:JarJarSelector:0.3.19   Downloading library from https://maven.creeperhost.net/net/minecraftforge/JarJarSelector/0.3.19/JarJarSelector-0.3.19.jar     Download completed: Checksum validated. Considering library net.minecraftforge:JarJarMetadata:0.3.19   Downloading library from https://maven.creeperhost.net/net/minecraftforge/JarJarMetadata/0.3.19/JarJarMetadata-0.3.19.jar     Download completed: Checksum validated. Considering library cpw.mods:bootstraplauncher:1.1.2   Downloading library from https://maven.creeperhost.net/cpw/mods/bootstraplauncher/1.1.2/bootstraplauncher-1.1.2.jar     Download completed: Checksum validated. Considering library net.minecraftforge:JarJarFileSystems:0.3.19   Downloading library from https://maven.creeperhost.net/net/minecraftforge/JarJarFileSystems/0.3.19/JarJarFileSystems-0.3.19.jar     Download completed: Checksum validated. Considering library net.minecraftforge:fmlloader:1.20.1-47.3.12   Downloading library from https://maven.creeperhost.net/net/minecraftforge/fmlloader/1.20.1-47.3.12/fmlloader-1.20.1-47.3.12.jar     Download completed: Checksum validated. Considering library net.minecraftforge:fmlearlydisplay:1.20.1-47.3.12   Downloading library from https://maven.creeperhost.net/net/minecraftforge/fmlearlydisplay/1.20.1-47.3.12/fmlearlydisplay-1.20.1-47.3.12.jar     Download completed: Checksum validated. Considering library com.github.jponge:lzma-java:1.3   Downloading library from https://maven.creeperhost.net/com/github/jponge/lzma-java/1.3/lzma-java-1.3.jar     Download completed: Checksum validated. Considering library com.google.code.findbugs:jsr305:3.0.2   Downloading library from https://libraries.minecraft.net/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar Failed to establish connection to https://libraries.minecraft.net/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar  Host: libraries.minecraft.net [127.0.0.1] javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.ssl.Alert.createSSLException(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.checkServerCerts(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.onConsumeCertificate(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.consume(Unknown Source)     at sun.security.ssl.SSLHandshake.consume(Unknown Source)     at sun.security.ssl.HandshakeContext.dispatch(Unknown Source)     at sun.security.ssl.HandshakeContext.dispatch(Unknown Source)     at sun.security.ssl.TransportContext.dispatch(Unknown Source)     at sun.security.ssl.SSLTransport.decode(Unknown Source)     at sun.security.ssl.SSLSocketImpl.decode(Unknown Source)     at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(Unknown Source)     at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)     at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)     at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)     at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)     at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)     at java.net.HttpURLConnection.getResponseCode(Unknown Source)     at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)     at net.minecraftforge.installer.DownloadUtils.getConnection(DownloadUtils.java:240)     at net.minecraftforge.installer.DownloadUtils.download(DownloadUtils.java:174)     at net.minecraftforge.installer.DownloadUtils.download(DownloadUtils.java:164)     at net.minecraftforge.installer.DownloadUtils.downloadLibrary(DownloadUtils.java:149)     at net.minecraftforge.installer.actions.Action.downloadLibraries(Action.java:73)     at net.minecraftforge.installer.actions.ServerInstall.run(ServerInstall.java:72)     at net.minecraftforge.installer.InstallerPanel.run(InstallerPanel.java:271)     at net.minecraftforge.installer.SimpleInstaller.launchGui(SimpleInstaller.java:182)     at net.minecraftforge.installer.SimpleInstaller.main(SimpleInstaller.java:154) Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.validator.PKIXValidator.doBuild(Unknown Source)     at sun.security.validator.PKIXValidator.engineValidate(Unknown Source)     at sun.security.validator.Validator.validate(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source)     ... 27 more Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source)     at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)     at java.security.cert.CertPathBuilder.build(Unknown Source)     ... 33 more Considering library com.google.code.gson:gson:2.10.1   Downloading library from https://libraries.minecraft.net/com/google/code/gson/gson/2.10.1/gson-2.10.1.jar Failed to establish connection to https://libraries.minecraft.net/com/google/code/gson/gson/2.10.1/gson-2.10.1.jar  Host: libraries.minecraft.net [127.0.0.1] javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.ssl.Alert.createSSLException(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.checkServerCerts(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.onConsumeCertificate(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.consume(Unknown Source)     at sun.security.ssl.SSLHandshake.consume(Unknown Source)     at sun.security.ssl.HandshakeContext.dispatch(Unknown Source)     at sun.security.ssl.HandshakeContext.dispatch(Unknown Source)     at sun.security.ssl.TransportContext.dispatch(Unknown Source)     at sun.security.ssl.SSLTransport.decode(Unknown Source)     at sun.security.ssl.SSLSocketImpl.decode(Unknown Source)     at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(Unknown Source)     at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)     at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)     at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)     at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)     at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)     at java.net.HttpURLConnection.getResponseCode(Unknown Source)     at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)     at net.minecraftforge.installer.DownloadUtils.getConnection(DownloadUtils.java:240)     at net.minecraftforge.installer.DownloadUtils.download(DownloadUtils.java:174)     at net.minecraftforge.installer.DownloadUtils.download(DownloadUtils.java:164)     at net.minecraftforge.installer.DownloadUtils.downloadLibrary(DownloadUtils.java:149)     at net.minecraftforge.installer.actions.Action.downloadLibraries(Action.java:73)     at net.minecraftforge.installer.actions.ServerInstall.run(ServerInstall.java:72)     at net.minecraftforge.installer.InstallerPanel.run(InstallerPanel.java:271)     at net.minecraftforge.installer.SimpleInstaller.launchGui(SimpleInstaller.java:182)     at net.minecraftforge.installer.SimpleInstaller.main(SimpleInstaller.java:154) Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.validator.PKIXValidator.doBuild(Unknown Source)     at sun.security.validator.PKIXValidator.engineValidate(Unknown Source)     at sun.security.validator.Validator.validate(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source)     ... 27 more Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source)     at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)     at java.security.cert.CertPathBuilder.build(Unknown Source)     ... 33 more Considering library com.google.errorprone:error_prone_annotations:2.1.3   Downloading library from https://maven.creeperhost.net/com/google/errorprone/error_prone_annotations/2.1.3/error_prone_annotations-2.1.3.jar     Download completed: Checksum validated. Considering library com.google.guava:guava:25.1-jre   Downloading library from https://maven.creeperhost.net/com/google/guava/guava/25.1-jre/guava-25.1-jre.jar     Download completed: Checksum validated. Considering library com.google.j2objc:j2objc-annotations:1.1   Downloading library from https://maven.creeperhost.net/com/google/j2objc/j2objc-annotations/1.1/j2objc-annotations-1.1.jar     Download completed: Checksum validated. Considering library com.nothome:javaxdelta:2.0.1   Downloading library from https://maven.creeperhost.net/com/nothome/javaxdelta/2.0.1/javaxdelta-2.0.1.jar     Download completed: Checksum validated. Considering library commons-io:commons-io:2.4   Downloading library from https://libraries.minecraft.net/commons-io/commons-io/2.4/commons-io-2.4.jar Failed to establish connection to https://libraries.minecraft.net/commons-io/commons-io/2.4/commons-io-2.4.jar  Host: libraries.minecraft.net [127.0.0.1] javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.ssl.Alert.createSSLException(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.checkServerCerts(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.onConsumeCertificate(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.consume(Unknown Source)     at sun.security.ssl.SSLHandshake.consume(Unknown Source)     at sun.security.ssl.HandshakeContext.dispatch(Unknown Source)     at sun.security.ssl.HandshakeContext.dispatch(Unknown Source)     at sun.security.ssl.TransportContext.dispatch(Unknown Source)     at sun.security.ssl.SSLTransport.decode(Unknown Source)     at sun.security.ssl.SSLSocketImpl.decode(Unknown Source)     at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(Unknown Source)     at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)     at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)     at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)     at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)     at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)     at java.net.HttpURLConnection.getResponseCode(Unknown Source)     at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)     at net.minecraftforge.installer.DownloadUtils.getConnection(DownloadUtils.java:240)     at net.minecraftforge.installer.DownloadUtils.download(DownloadUtils.java:174)     at net.minecraftforge.installer.DownloadUtils.download(DownloadUtils.java:164)     at net.minecraftforge.installer.DownloadUtils.downloadLibrary(DownloadUtils.java:149)     at net.minecraftforge.installer.actions.Action.downloadLibraries(Action.java:73)     at net.minecraftforge.installer.actions.ServerInstall.run(ServerInstall.java:72)     at net.minecraftforge.installer.InstallerPanel.run(InstallerPanel.java:271)     at net.minecraftforge.installer.SimpleInstaller.launchGui(SimpleInstaller.java:182)     at net.minecraftforge.installer.SimpleInstaller.main(SimpleInstaller.java:154) Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.validator.PKIXValidator.doBuild(Unknown Source)     at sun.security.validator.PKIXValidator.engineValidate(Unknown Source)     at sun.security.validator.Validator.validate(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source)     ... 27 more Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source)     at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)     at java.security.cert.CertPathBuilder.build(Unknown Source)     ... 33 more Considering library de.oceanlabs.mcp:mcp_config:1.20.1-20230612.114412@zip   Downloading library from https://maven.creeperhost.net/de/oceanlabs/mcp/mcp_config/1.20.1-20230612.114412/mcp_config-1.20.1-20230612.114412.zip     Download completed: Checksum validated. Considering library de.siegmar:fastcsv:2.2.2   Downloading library from https://maven.creeperhost.net/de/siegmar/fastcsv/2.2.2/fastcsv-2.2.2.jar     Download completed: Checksum validated. Considering library net.minecraftforge:ForgeAutoRenamingTool:0.1.22:all   Downloading library from https://maven.creeperhost.net/net/minecraftforge/ForgeAutoRenamingTool/0.1.22/ForgeAutoRenamingTool-0.1.22-all.jar     Download completed: Checksum validated. Considering library net.minecraftforge:binarypatcher:1.1.1   Downloading library from https://maven.creeperhost.net/net/minecraftforge/binarypatcher/1.1.1/binarypatcher-1.1.1.jar     Download completed: Checksum validated. Considering library net.minecraftforge:fmlcore:1.20.1-47.3.12   Downloading library from https://maven.creeperhost.net/net/minecraftforge/fmlcore/1.20.1-47.3.12/fmlcore-1.20.1-47.3.12.jar     Download completed: Checksum validated. Considering library net.minecraftforge:fmlearlydisplay:1.20.1-47.3.12   File exists: Checksum validated. Considering library net.minecraftforge:fmlloader:1.20.1-47.3.12   File exists: Checksum validated. Considering library net.minecraftforge:forge:1.20.1-47.3.12:universal   Downloading library from https://maven.creeperhost.net/net/minecraftforge/forge/1.20.1-47.3.12/forge-1.20.1-47.3.12-universal.jar     Download completed: Checksum validated. Considering library net.minecraftforge:installertools:1.4.1   Downloading library from https://maven.creeperhost.net/net/minecraftforge/installertools/1.4.1/installertools-1.4.1.jar     Download completed: Checksum validated. Considering library net.minecraftforge:jarsplitter:1.1.4   Downloading library from https://maven.creeperhost.net/net/minecraftforge/jarsplitter/1.1.4/jarsplitter-1.1.4.jar     Download completed: Checksum validated. Considering library net.minecraftforge:javafmllanguage:1.20.1-47.3.12   Downloading library from https://maven.creeperhost.net/net/minecraftforge/javafmllanguage/1.20.1-47.3.12/javafmllanguage-1.20.1-47.3.12.jar     Download completed: Checksum validated. Considering library net.minecraftforge:lowcodelanguage:1.20.1-47.3.12   Downloading library from https://maven.creeperhost.net/net/minecraftforge/lowcodelanguage/1.20.1-47.3.12/lowcodelanguage-1.20.1-47.3.12.jar     Download completed: Checksum validated. Considering library net.minecraftforge:mclanguage:1.20.1-47.3.12   Downloading library from https://maven.creeperhost.net/net/minecraftforge/mclanguage/1.20.1-47.3.12/mclanguage-1.20.1-47.3.12.jar     Download completed: Checksum validated. Considering library net.minecraftforge:srgutils:0.4.3   Downloading library from https://maven.creeperhost.net/net/minecraftforge/srgutils/0.4.3/srgutils-0.4.3.jar     Download completed: Checksum validated. Considering library net.minecraftforge:srgutils:0.4.9   Downloading library from https://maven.creeperhost.net/net/minecraftforge/srgutils/0.4.9/srgutils-0.4.9.jar     Download completed: Checksum validated. Considering library net.minecraftforge:srgutils:0.5.6   Downloading library from https://maven.creeperhost.net/net/minecraftforge/srgutils/0.5.6/srgutils-0.5.6.jar     Download completed: Checksum validated. Considering library net.sf.jopt-simple:jopt-simple:5.0.4   Downloading library from https://libraries.minecraft.net/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar Failed to establish connection to https://libraries.minecraft.net/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar  Host: libraries.minecraft.net [127.0.0.1] javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.ssl.Alert.createSSLException(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.TransportContext.fatal(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.checkServerCerts(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.onConsumeCertificate(Unknown Source)     at sun.security.ssl.CertificateMessage$T13CertificateConsumer.consume(Unknown Source)     at sun.security.ssl.SSLHandshake.consume(Unknown Source)     at sun.security.ssl.HandshakeContext.dispatch(Unknown Source)     at sun.security.ssl.HandshakeContext.dispatch(Unknown Source)     at sun.security.ssl.TransportContext.dispatch(Unknown Source)     at sun.security.ssl.SSLTransport.decode(Unknown Source)     at sun.security.ssl.SSLSocketImpl.decode(Unknown Source)     at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(Unknown Source)     at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)     at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)     at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)     at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)     at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)     at java.net.HttpURLConnection.getResponseCode(Unknown Source)     at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)     at net.minecraftforge.installer.DownloadUtils.getConnection(DownloadUtils.java:240)     at net.minecraftforge.installer.DownloadUtils.download(DownloadUtils.java:174)     at net.minecraftforge.installer.DownloadUtils.download(DownloadUtils.java:164)     at net.minecraftforge.installer.DownloadUtils.downloadLibrary(DownloadUtils.java:149)     at net.minecraftforge.installer.actions.Action.downloadLibraries(Action.java:73)     at net.minecraftforge.installer.actions.ServerInstall.run(ServerInstall.java:72)     at net.minecraftforge.installer.InstallerPanel.run(InstallerPanel.java:271)     at net.minecraftforge.installer.SimpleInstaller.launchGui(SimpleInstaller.java:182)     at net.minecraftforge.installer.SimpleInstaller.main(SimpleInstaller.java:154) Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.validator.PKIXValidator.doBuild(Unknown Source)     at sun.security.validator.PKIXValidator.engineValidate(Unknown Source)     at sun.security.validator.Validator.validate(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source)     at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source)     ... 27 more Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target     at sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source)     at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)     at java.security.cert.CertPathBuilder.build(Unknown Source)     ... 33 more Considering library net.sf.jopt-simple:jopt-simple:6.0-alpha-3   Downloading library from https://maven.creeperhost.net/net/sf/jopt-simple/jopt-simple/6.0-alpha-3/jopt-simple-6.0-alpha-3.jar     Download completed: Checksum validated. Considering library org.checkerframework:checker-qual:2.0.0   Downloading library from https://maven.creeperhost.net/org/checkerframework/checker-qual/2.0.0/checker-qual-2.0.0.jar     Download completed: Checksum validated. Considering library org.codehaus.mojo:animal-sniffer-annotations:1.14   Downloading library from https://maven.creeperhost.net/org/codehaus/mojo/animal-sniffer-annotations/1.14/animal-sniffer-annotations-1.14.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-analysis:9.2   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-analysis/9.2/asm-analysis-9.2.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-commons:9.2   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-commons/9.2/asm-commons-9.2.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-commons:9.6   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-commons/9.6/asm-commons-9.6.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-tree:9.2   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-tree/9.2/asm-tree-9.2.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm-tree:9.6   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm-tree/9.6/asm-tree-9.6.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm:9.2   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm/9.2/asm-9.2.jar     Download completed: Checksum validated. Considering library org.ow2.asm:asm:9.6   Downloading library from https://maven.creeperhost.net/org/ow2/asm/asm/9.6/asm-9.6.jar     Download completed: Checksum validated. Considering library trove:trove:1.0.2   Downloading library from https://maven.creeperhost.net/trove/trove/1.0.2/trove-1.0.2.jar     Download completed: Checksum validated. These libraries failed to download. Try again. com.google.code.findbugs:jsr305:3.0.2 com.google.code.gson:gson:2.10.1 commons-io:commons-io:2.4 net.sf.jopt-simple:jopt-simple:5.0.4 There was an error during installation  
    • Maybe some kind of bug with Pixelmon - something with Raids   Report it to the Creators
    • Did you make changes at the paper-global.yml file?   If not, delete this file and restart the server
    • My friends and I are playing a modified version of BMC4 and we're noticing stuff like passive mobs. (I think) like creatures/animals from Alex mobs, naturalist, let's do nature and even vanilla MC (sheep, cow, pigs, chickens, horses, donkeys) don't really spawn in, unlike the sea creatures and hostile monsters spawn in just fine and normal numbers. Here is a mod list from a crash report: https://pastebin.ubuntu.com/p/K9vJxxx6n4/ Just a quick copy and paste of the mod list from an unrelated crash report If anything please let me know if I should post pics of the mods from my mods folder I want to know how to increase their spawn rate/amount and if there are any mods that are causing the scarce appearances of these mobs
  • Topics

×
×
  • Create New...

Important Information

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