Jump to content

Recommended Posts

Posted (edited)

Hello

my error-log now shows this:

Spoiler

[21Feb2019 20:58:31.793] [Client thread/ERROR] [net.minecraftforge.fml.javafmlmod.FMLModContainer/]: Exception caught during firing event: Can't use a null-name for the registry, object net.minecraft.entity.EntityType@10007fdc.
    Index: 3
    Listeners:
        0: NORMAL
        1: ASM: class com.drachenbauer32.angrybirdsmod.Main$RegistryEvents registerBlocks(Lnet/minecraftforge/event/RegistryEvent$Register;)V
        2: ASM: class com.drachenbauer32.angrybirdsmod.Main$RegistryEvents registerItems(Lnet/minecraftforge/event/RegistryEvent$Register;)V
        3: ASM: class com.drachenbauer32.angrybirdsmod.Main$RegistryEvents registerEntities(Lnet/minecraftforge/event/RegistryEvent$Register;)V
java.lang.NullPointerException: Can't use a null-name for the registry, object net.minecraft.entity.EntityType@10007fdc.
    at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:864)
    at net.minecraftforge.registries.ForgeRegistry.add(ForgeRegistry.java:297)
    at net.minecraftforge.registries.ForgeRegistry.add(ForgeRegistry.java:291)
    at net.minecraftforge.registries.ForgeRegistry.register(ForgeRegistry.java:123)
    at com.drachenbauer32.angrybirdsmod.Main$RegistryEvents.registerEntities(Main.java:114)
    at net.minecraftforge.eventbus.ASMEventHandler_3_RegistryEvents_registerEntities_Register.invoke(.dynamic)
    at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:79)
    at net.minecraftforge.eventbus.EventBus.post(EventBus.java:249)

 

It leads me to this:

@SubscribeEvent
		public static void registerEntities(final RegistryEvent.Register<EntityType<?>> event)
		{
			event.getRegistry().register(EntityType.Builder.create(EntityRed.class, EntityRed::new).tracker(32, 1, true).build(Reference.MOD_ID + ".red"));
			event.getRegistry().register(EntityType.Builder.create(EntityChuck.class, EntityChuck::new).tracker(32, 1, true).build(Reference.MOD_ID + ".chuck"));
			event.getRegistry().register(EntityType.Builder.create(EntityBlues.class, EntityBlues::new).tracker(32, 1, true).build(Reference.MOD_ID + ".blues"));
			event.getRegistry().register(EntityType.Builder.create(EntityBomb.class, EntityBomb::new).tracker(32, 1, true).build(Reference.MOD_ID + ".bomb"));
			event.getRegistry().register(EntityType.Builder.create(EntityMathilda.class, EntityMathilda::new).tracker(32, 1, true).build(Reference.MOD_ID + ".mathilda"));
			RenderHandler.regigisterEntityRenders();
			LOGGER.info("Entities registered.");
		}

 

what does it mean, what exactly i have to fix?

Edited by Drachenbauer
  • Replies 62
  • Created
  • Last Reply

Top Posters In This Topic

Posted (edited)
51 minutes ago, Drachenbauer said:

Can't use a null-name for the registry

You never set the registry names of any of your entity types. The builder has a method to set the registry name

Edited by Cadiboo

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted (edited)

i thaught, the

Reference.MOD_ID + ".red"

part at the end of the lines makes the registtry names.

 

And i find no "setRegistryName" in the strg-space-dropdown-menu in the entity-classes...

Edited by Drachenbauer
Posted

You’re passing in a translation key to that method. And I think that it did used to set the registry name in 1.12.2. It appears that now you need to call setRegistryName on the built entity entry. You can see vanilla/Forge doing something similar at the top of the EntityEntry class in the the register method.

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted

can you tell me how that should look exactly?

 

In some other threads i already told, that i cannot open the minecraft included java-docks, because my eclipse cannot find them through the imports in my files.

Posted (edited)

Now i get no more errors in log, and i can enter my test world.

 

But if i open the creative-inventory, i see black-purple-checkered boxes instead of my spawn-eggs.

And if i try to use them, just a common chicken appears instead of my custom birds...

 

My Main-class:

Spoiler

package com.drachenbauer32.angrybirdsmod;

import java.util.function.Function;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

import com.drachenbauer32.angrybirdsmod.entity.EntityBlues;
import com.drachenbauer32.angrybirdsmod.entity.EntityBomb;
import com.drachenbauer32.angrybirdsmod.entity.EntityChuck;
import com.drachenbauer32.angrybirdsmod.entity.EntityMathilda;
import com.drachenbauer32.angrybirdsmod.entity.EntityRed;
import com.drachenbauer32.angrybirdsmod.init.BlockInit;
import com.drachenbauer32.angrybirdsmod.init.ItemInit;
import com.drachenbauer32.angrybirdsmod.util.Reference;
import com.drachenbauer32.angrybirdsmod.util.handlers.RenderHandler;

import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityType;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemSpawnEgg;
import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
import net.minecraftforge.registries.IForgeRegistry;

@Mod(Reference.MOD_ID)
public class Main
{
	
	private static final Logger LOGGER = LogManager.getLogger(Reference.MOD_ID);
	
	public Main() 
	{
		FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup);
		FMLJavaModLoadingContext.get().getModEventBus().addListener(this::clientRegistries);
		
		MinecraftForge.EVENT_BUS.register(this);
	}
	
	private void setup(final FMLCommonSetupEvent event)
	{
		LOGGER.info("Setup method registered. (This is what used to be preInit)");
		//RegistryHandler.SetupRegistries();
	}
	
	private void clientRegistries(final FMLClientSetupEvent event)
	{
		LOGGER.info("Client registries registered. This is for all things that are client side only.");
	}
	
	@Mod.EventBusSubscriber(bus=Mod.EventBusSubscriber.Bus.MOD)
	public static class RegistryEvents
	{
		public static EntityType<?> EntityInEgg;
		@SubscribeEvent
		public static void registerItems(final RegistryEvent.Register<Item> event)
		{
			event.getRegistry().registerAll(ItemInit.ITEMS.toArray(new Item[0]));
			//public static EntityType<EntityRed> registerEntityAndEgg(IForgeRegistry<Item> itemRegistry, EntityRed.class, EntityRed::new, 0xdf0000, 0xdfbf9f, 32, 1, true, Red);
			EntityInEgg = EntityType.Builder.create(EntityRed.class, EntityRed::new).tracker(32, 1, true).build("angrybirdsmod.red");
		    event.getRegistry().register(new ItemSpawnEgg(EntityInEgg, 0xdf0000, 0xdfbf9f, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("red"));
		    EntityInEgg = EntityType.Builder.create(EntityChuck.class, EntityChuck::new).tracker(32, 1, true).build(Reference.MOD_ID + ".chuck");
		    event.getRegistry().register(new ItemSpawnEgg(EntityInEgg, 0xffff00, 0xffffff, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("chuck"));
		    EntityInEgg = EntityType.Builder.create(EntityBlues.class, EntityBlues::new).tracker(32, 1, true).build(Reference.MOD_ID + ".blues");
		    event.getRegistry().register(new ItemSpawnEgg(EntityInEgg, 0x007fff, 0xff0000, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("blues"));
		    EntityInEgg = EntityType.Builder.create(EntityBomb.class, EntityBomb::new).tracker(32, 1, true).build(Reference.MOD_ID + ".bomb");
		    event.getRegistry().register(new ItemSpawnEgg(EntityInEgg, 0x3f3f3f, 0x7f7f7f, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("bomb"));
		    EntityInEgg = EntityType.Builder.create(EntityMathilda.class, EntityMathilda::new).tracker(32, 1, true).build(Reference.MOD_ID + ".mathilda");
		    event.getRegistry().register(new ItemSpawnEgg(EntityInEgg, 0xffffff, 0xffbfbf, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("mathilda"));
			LOGGER.info("Items registered.");
		}
		
		@SubscribeEvent
		public static void registerBlocks(final RegistryEvent.Register<Block> event)
		{
			event.getRegistry().registerAll(BlockInit.BLOCKS.toArray(new Block[0]));
			LOGGER.info("Blocks registered.");
		}
		
		@SubscribeEvent
		public static void registerEntities(final RegistryEvent.Register<EntityType<?>> event)
		{
			event.getRegistry().register(EntityType.Builder.create(EntityRed.class, EntityRed::new).tracker(32, 1, true).build(Reference.MOD_ID + ".red").setRegistryName("red"));
			event.getRegistry().register(EntityType.Builder.create(EntityChuck.class, EntityChuck::new).tracker(32, 1, true).build(Reference.MOD_ID + ".chuck").setRegistryName("chuck"));
			event.getRegistry().register(EntityType.Builder.create(EntityBlues.class, EntityBlues::new).tracker(32, 1, true).build(Reference.MOD_ID + ".blues").setRegistryName("blues_trio"));
			event.getRegistry().register(EntityType.Builder.create(EntityBomb.class, EntityBomb::new).tracker(32, 1, true).build(Reference.MOD_ID + ".bomb").setRegistryName("bomb"));
			event.getRegistry().register(EntityType.Builder.create(EntityMathilda.class, EntityMathilda::new).tracker(32, 1, true).build(Reference.MOD_ID + ".mathilda").setRegistryName("mathilda"));
			RenderHandler.regigisterEntityRenders();
			LOGGER.info("Entities registered.");
		}
		
		public static <T extends Entity>EntityType<T> registerEntityAndEgg(IForgeRegistry<Item> itemRegistry, Class<T> entityClass, Function<? super World, T> factory, int eggPrimaryColor, int eggSecondaryColor, int trackingRange, int updateFrequency, boolean sendVelocityUpdates, String name)
	    {
	        EntityType<T> type = EntityType.Builder.create(entityClass, factory).tracker(trackingRange, updateFrequency, sendVelocityUpdates).build(Reference.MOD_ID + '.' + name);
	        itemRegistry.register(new ItemSpawnEgg(type, eggPrimaryColor, eggSecondaryColor, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName(name));
	        return type;
	    }
    }
}

 

 

The three classes of my red bird:

 

The EntityRed-class:

Spoiler

package com.drachenbauer32.angrybirdsmod.entity;

import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.passive.EntityChicken;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;

public class EntityRed extends EntityChicken
{
	public EntityRed(World worldIn)
	{
		super(worldIn);
		this.setSize(0.5F, 0.6875F);
	}
	
	@Override
	protected void playStepSound(BlockPos p_180429_1_, IBlockState p_180429_2_)
	{
		super.playStepSound(p_180429_1_, p_180429_2_);
	}
	
	@Override
	public void setBoundingBox(AxisAlignedBB p_174826_1_)
	{
		super.setBoundingBox(p_174826_1_);
	}
	
	@Override
	public float getEyeHeight()
	{
		return 0.25f;
	}
	
	@Override
	public void livingTick()
	{
		super.livingTick();
		this.timeUntilNextEgg = 100;
	}
}

 

 

The ModelRed-class:

Spoiler

package com.drachenbauer32.angrybirdsmod.entity.model;

import net.minecraft.client.renderer.entity.model.ModelBase;
import net.minecraft.client.renderer.entity.model.ModelBox;
import net.minecraft.client.renderer.entity.model.ModelRenderer;
import net.minecraft.entity.Entity;

public class ModelRed extends ModelBase 
{
	private final ModelRenderer bone;
	private final ModelRenderer bone2;
	private final ModelRenderer bone3;
	private final ModelRenderer bone4;
	
	public ModelRed()
	{
		textureWidth = 64;
		textureHeight = 32;
		
		bone = new ModelRenderer(this);
		bone.setRotationPoint(0.0F, 20.0F, 0.0F);
		bone.cubeList.add(new ModelBox(bone, 0, 0, -4.0F, -4.0F, -4.0F, 8, 8, 8, 0.0F, false));
		bone.cubeList.add(new ModelBox(bone, 0, 16, -1.0F, 1.0F, -6.0F, 2, 2, 2, 0.0F, false));
		bone.cubeList.add(new ModelBox(bone, 0, 0, 0.0F, -7.0F, -3.0F, 0, 3, 2, 0.0F, false));
		bone.cubeList.add(new ModelBox(bone, 0, 3, 0.0F, 1.0F, 4.0F, 0, 1, 4, 0.0F, false));
		
		bone2 = new ModelRenderer(this);
		bone2.setRotationPoint(0.0F, -4.0F, -2.0F);
		setRotationAngle(bone2, -1.5708F, 0.0F, 0.0F);
		bone.addChild(bone2);
		bone2.cubeList.add(new ModelBox(bone2, 0, 0, 0.0F, -4.0F, -2.0F, 0, 3, 2, 0.0F, false));
		
		bone3 = new ModelRenderer(this);
		bone3.setRotationPoint(0.0F, 1.0F, 4.0F);
		setRotationAngle(bone3, 0.5236F, 0.0F, 0.0F);
		bone.addChild(bone3);
		bone3.cubeList.add(new ModelBox(bone3, 0, 3, 0.0F, 0.0F, 0.0F, 0, 1, 4, 0.0F, false));
		
		bone4 = new ModelRenderer(this);
		bone4.setRotationPoint(0.0F, 1.0F, 4.0F);
		setRotationAngle(bone4, -0.5236F, 0.0F, 0.0F);
		bone.addChild(bone4);
		bone4.cubeList.add(new ModelBox(bone4, 0, 3, 0.0F, 0.0F, 0.0F, 0, 1, 4, 0.0F, false));
	}
	
	@Override
	public void render(Entity entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch, float scale)
	{
		bone.render(scale);
	}
	
	public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z)
	{
		modelRenderer.rotateAngleX = x;
		modelRenderer.rotateAngleY = y;
		modelRenderer.rotateAngleZ = z;
	}
	
	@Override
	public void setRotationAngles(float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw,
			float headPitch, float scaleFactor, Entity entityIn)
	{
		this.bone.rotateAngleX = headPitch * 0.017453292f;
		this.bone.rotateAngleY = netHeadYaw * 0.017453292f;
	}
}

 

 

The RenderRed-class:

Spoiler

package com.drachenbauer32.angrybirdsmod.entity.render;

import com.drachenbauer32.angrybirdsmod.entity.EntityRed;
import com.drachenbauer32.angrybirdsmod.entity.model.ModelRed;
import com.drachenbauer32.angrybirdsmod.util.Reference;

import net.minecraft.client.renderer.entity.RenderLiving;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.util.ResourceLocation;

public class RenderRed extends RenderLiving<EntityRed>
{
	public static final ResourceLocation TEXTURES = new ResourceLocation(Reference.MOD_ID + ":textures/entity/red.png");
	
	public RenderRed(RenderManager manager)
	{
		super(manager, new ModelRed(), 0.5f);
	}

	@Override
	protected ResourceLocation getEntityTexture(EntityRed entity)
	{
		return TEXTURES;
	}
	
	@Override
	protected void applyRotations(EntityRed entityLiving, float p_77043_2_, float rotationYaw, float partialTicks)
	{
		super.applyRotations(entityLiving, p_77043_2_, rotationYaw, partialTicks);
	}
}

 

What do i need to change, to make my entitys work right?

Edited by Drachenbauer
Posted (edited)

http://www.minecraftforge.net/forum/topic/68854-how-to-register-a-spawn-egg-as-item/

In this thread V0idWa1k3r posted this:

 

Quote

public static EntityType<EntityItem> storedItemType;
    
@SubscribeEvent
public static void onItemRegistry(RegistryEvent.Register<Item> event)
{
    // Here for example I am creating a type for the EntityItem, you would need your own entity here with your own parameters.
    storedItemType = EntityType.Builder.create(EntityItem.class, EntityItem::new).tracker(32, 1, true).build("v0idstestmod.test_entity");
    event.getRegistry().register(new ItemSpawnEgg(storedItemType, 0xffffff, 0x00ff00, new Item.Properties().group(ItemGroup.MISC)));
    // Your other registration code
    ...
}

 

If this is wrong, can you show me a working sample for the right way to connect entitys to spawn eggs right?

Edited by Drachenbauer
Posted (edited)

I still have purple black blocks instead of eggs and get chickens by using them...

so there still must be something with my entity specific files...

 

or is it the placement of

Quote

RenderHandler.regigisterEntityRenders();

in my Main-class?

 

i found this in the console:

Quote

[23:28:48.759] [Client thread/WARN] [minecraft/EntityType]: No data fixer registered for entity angrybirdsmod.red
[23:28:48.772] [Client thread/WARN] [minecraft/EntityType]: No data fixer registered for entity angrybirdsmod.chuck
[23:28:48.783] [Client thread/WARN] [minecraft/EntityType]: No data fixer registered for entity angrybirdsmod.blues
[23:28:48.796] [Client thread/WARN] [minecraft/EntityType]: No data fixer registered for entity angrybirdsmod.bomb
[23:28:48.809] [Client thread/WARN] [minecraft/EntityType]: No data fixer registered for entity angrybirdsmod.mathilda

 

and this:

Quote

[23:29:00.134] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:red#inventory' referenced from: angrybirdsmod:red#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/red.json
[23:29:00.135] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:chuck#inventory' referenced from: angrybirdsmod:chuck#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/chuck.json
[23:29:00.137] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:blues#inventory' referenced from: angrybirdsmod:blues#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/blues.json
[23:29:00.138] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:bomb#inventory' referenced from: angrybirdsmod:bomb#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/bomb.json
[23:29:00.139] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:mathilda#inventory' referenced from: angrybirdsmod:mathilda#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/mathilda.json

 

Why it tries to find item-jsons in my resources?

it should take the files for the common spawn-egg appearence in the common resources ofminecraft.

Edited by Drachenbauer
Posted (edited)

this is my main-class now:

Spoiler

package com.drachenbauer32.angrybirdsmod;

import java.util.function.Function;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

import com.drachenbauer32.angrybirdsmod.entity.EntityBlues;
import com.drachenbauer32.angrybirdsmod.entity.EntityBomb;
import com.drachenbauer32.angrybirdsmod.entity.EntityChuck;
import com.drachenbauer32.angrybirdsmod.entity.EntityMathilda;
import com.drachenbauer32.angrybirdsmod.entity.EntityRed;
import com.drachenbauer32.angrybirdsmod.init.BlockInit;
import com.drachenbauer32.angrybirdsmod.init.ItemInit;
import com.drachenbauer32.angrybirdsmod.util.Reference;
import com.drachenbauer32.angrybirdsmod.util.handlers.RenderHandler;

import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityType;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemSpawnEgg;
import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
import net.minecraftforge.registries.IForgeRegistry;

@Mod(Reference.MOD_ID)
public class Main
{
	
	private static final Logger LOGGER = LogManager.getLogger(Reference.MOD_ID);
	
	public Main() 
	{
		FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup);
		FMLJavaModLoadingContext.get().getModEventBus().addListener(this::clientRegistries);
		
		MinecraftForge.EVENT_BUS.register(this);
	}
	
	private void setup(final FMLCommonSetupEvent event)
	{
		LOGGER.info("Setup method registered. (This is what used to be preInit)");
		//RegistryHandler.SetupRegistries();
	}
	
	private void clientRegistries(final FMLClientSetupEvent event)
	{
		LOGGER.info("Client registries registered. This is for all things that are client side only.");
	}
	
	@Mod.EventBusSubscriber(bus=Mod.EventBusSubscriber.Bus.MOD)
	public static class RegistryEvents
	{
		public static EntityType<?> EggRed;
		public static EntityType<?> EggChuck;
		public static EntityType<?> EggBlues;
		public static EntityType<?> EggBomb;
		public static EntityType<?> EggMathilda;
		
		@SubscribeEvent
		public static void registerBlocks(final RegistryEvent.Register<Block> event)
		{
			 BlockInit.register(event);
		}
		
		@SubscribeEvent
		public static void registerItems(final RegistryEvent.Register<Item> event)
		{
			ItemInit.register(event);
			//public static EntityType<EntityRed> registerEntityAndEgg(IForgeRegistry<Item> itemRegistry, EntityRed.class, EntityRed::new, 0xdf0000, 0xdfbf9f, 32, 1, true, Red);
			EggRed = EntityType.Builder.create(EntityRed.class, EntityRed::new).tracker(32, 1, true).build("angrybirdsmod.red").setRegistryName("red");
		    event.getRegistry().register(new ItemSpawnEgg(EggRed, 0xdf0000, 0xdfbf9f, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("red"));
		    EggChuck = EntityType.Builder.create(EntityChuck.class, EntityChuck::new).tracker(32, 1, true).build(Reference.MOD_ID + ".chuck").setRegistryName("chuck");
		    event.getRegistry().register(new ItemSpawnEgg(EggChuck, 0xffff00, 0xffffff, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("chuck"));
		    EggBlues = EntityType.Builder.create(EntityBlues.class, EntityBlues::new).tracker(32, 1, true).build(Reference.MOD_ID + ".blues").setRegistryName("blues");
		    event.getRegistry().register(new ItemSpawnEgg(EggBlues, 0x007fff, 0xff0000, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("blues"));
		    EggBomb = EntityType.Builder.create(EntityBomb.class, EntityBomb::new).tracker(32, 1, true).build(Reference.MOD_ID + ".bomb").setRegistryName("bomb");
		    event.getRegistry().register(new ItemSpawnEgg(EggBomb, 0x3f3f3f, 0x7f7f7f, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("bomb"));
		    EggMathilda = EntityType.Builder.create(EntityMathilda.class, EntityMathilda::new).tracker(32, 1, true).build(Reference.MOD_ID + ".mathilda").setRegistryName("mathilda");
		    event.getRegistry().register(new ItemSpawnEgg(EggMathilda, 0xffffff, 0xffbfbf, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName("mathilda"));
			LOGGER.info("Items registered.");
		}
		
		@SubscribeEvent
		public static void registerEntities(final RegistryEvent.Register<EntityType<?>> event)
		{
			event.getRegistry().register(EggRed);
			event.getRegistry().register(EggChuck);
			event.getRegistry().register(EggBlues);
			event.getRegistry().register(EggBomb);
			event.getRegistry().register(EggMathilda);
			RenderHandler.regigisterEntityRenders();
			LOGGER.info("Entities registered.");
		}
		
		public static <T extends Entity>EntityType<T> registerEntityAndEgg(IForgeRegistry<Item> itemRegistry, Class<T> entityClass, Function<? super World, T> factory, int eggPrimaryColor, int eggSecondaryColor, int trackingRange, int updateFrequency, boolean sendVelocityUpdates, String name)
	    {
	        EntityType<T> type = EntityType.Builder.create(entityClass, factory).tracker(trackingRange, updateFrequency, sendVelocityUpdates).build(Reference.MOD_ID + '.' + name);
	        itemRegistry.register(new ItemSpawnEgg(type, eggPrimaryColor, eggSecondaryColor, new Item.Properties().group(ItemGroup.MATERIALS)).setRegistryName(name));
	        return type;
	    }
    }
}

 

 

I don´t know how a json for a spawn-egg must look like...

 

Found it in one of the resource-packs on my pc.

Edited by Drachenbauer
Posted

The part of the log file:

Spoiler

 

[18:32:16.828] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:red#inventory' referenced from: angrybirdsmod:red#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/red.json
[18:32:16.831] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:chuck#inventory' referenced from: angrybirdsmod:chuck#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/chuck.json
[18:32:16.833] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:blues#inventory' referenced from: angrybirdsmod:blues#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/blues.json
[18:32:16.836] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:bomb#inventory' referenced from: angrybirdsmod:bomb#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/bomb.json
[18:32:16.838] [Client thread/WARN] [minecraft/ModelBakery]: Unable to load model: 'angrybirdsmod:mathilda#inventory' referenced from: angrybirdsmod:mathilda#inventory: java.io.FileNotFoundException: angrybirdsmod:models/item/mathilda.json

 

 

and the scheenshot:

eclips10.png

 

Why it cannot find them?

i already made a refresh and a cleanup.

Posted

Use a git client. GitHub Desktop is a user friendly and underpowered one. Make a repository in the root folder of your project and publish it to GitHub

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted (edited)

Use a git client. GitHub Desktop is a user friendly and underpowered one. Make a repository in the root folder of your project and publish it to GitHub

 

Edit: Sorry, when I opened this page up again it re-posted this. 

Edited by Cadiboo

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted (edited)

i cannot install the GitHub Desktop .

i get an error and it crashed.

 

Spoiler

11748> 2017-05-09 21:04:28> Program: Starting Squirrel Updater: --install .
11748> 2017-05-09 21:04:28> Program: Starting install, writing to C:\Users\Besitzer\AppData\Local\SquirrelTemp
11748> 2017-05-09 21:04:29> Program: About to install to: C:\Users\Besitzer\AppData\Local\Discord
11748> 2017-05-09 21:04:29> SingleGlobalInstance: Grabbing lockfile with timeout of 00:00:10
11748> 2017-05-09 21:04:29> CheckForUpdateImpl: Reading RELEASES file from C:\Users\Besitzer\AppData\Local\SquirrelTemp
11748> 2017-05-09 21:04:30> CheckForUpdateImpl: Remote version 0.0.297 differs from local
11748> 2017-05-09 21:04:30> CheckForUpdateImpl: First run or local directory is corrupt, starting from scratch
11748> 2017-05-09 21:04:31> ApplyReleasesImpl: Writing files to app directory: C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\app.ico to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\app.ico
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\blink_image_resources_200_percent.pak to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\blink_image_resources_200_percent.pak
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\content_resources_200_percent.pak to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\content_resources_200_percent.pak
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\content_shell.pak to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\content_shell.pak
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\Discord.exe to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\Discord.exe
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\d3dcompiler_47.dll to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\d3dcompiler_47.dll
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\ffmpeg.dll to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\ffmpeg.dll
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\icudtl.dat to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\icudtl.dat
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\libEGL.dll to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\libEGL.dll
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\libGLESv2.dll to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\libGLESv2.dll
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\natives_blob.bin to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\natives_blob.bin
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\node.dll to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\node.dll
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\Squirrel.exe to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\Squirrel.exe
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\views_resources_200_percent.pak to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\views_resources_200_percent.pak
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\ui_resources_200_percent.pak to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\ui_resources_200_percent.pak
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\snapshot_blob.bin to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\snapshot_blob.bin
11748> 2017-05-09 21:05:08> ApplyReleasesImpl: Moving file C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\lib\net45\xinput1_3.dll to C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297\xinput1_3.dll
11748> 2017-05-09 21:05:21> IEnableLogger: Failed to invoke post-install: System.IO.DirectoryNotFoundException: Ein Teil des Pfades "C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297" konnte nicht gefunden werden.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.FileSystemEnumerableIterator`1.CommonInit()
   bei System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
   bei System.IO.DirectoryInfo.EnumerateFiles()
   bei Squirrel.SquirrelAwareExecutableDetector.GetAllSquirrelAwareApps(String directory, Int32 minimumVersion)
   bei Squirrel.UpdateManager.ApplyReleasesImpl.<invokePostInstall>d__e7.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<LogIfThrows>d__4d.MoveNext()
11748> 2017-05-09 21:05:22> Unhandled exception: System.AggregateException: Mindestens ein Fehler ist aufgetreten. ---> System.IO.DirectoryNotFoundException: Ein Teil des Pfades "C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297" konnte nicht gefunden werden.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.FileSystemEnumerableIterator`1.CommonInit()
   bei System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
   bei System.IO.DirectoryInfo.EnumerateFiles()
   bei Squirrel.SquirrelAwareExecutableDetector.GetAllSquirrelAwareApps(String directory, Int32 minimumVersion)
   bei Squirrel.UpdateManager.ApplyReleasesImpl.<invokePostInstall>d__e7.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<LogIfThrows>d__4d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei Squirrel.UpdateManager.ApplyReleasesImpl.<ApplyReleases>d__79.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.UpdateManager.<FullInstall>d__f.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei Squirrel.Update.Program.<Install>d__3a.MoveNext()
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   bei System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   bei System.Threading.Tasks.Task.Wait()
   bei Squirrel.Update.Program.executeCommandLine(String[] args)
   bei Squirrel.Update.Program.main(String[] args)
---> (Interne Ausnahme #0) System.IO.DirectoryNotFoundException: Ein Teil des Pfades "C:\Users\Besitzer\AppData\Local\Discord\app-0.0.297" konnte nicht gefunden werden.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.FileSystemEnumerableIterator`1.CommonInit()
   bei System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
   bei System.IO.DirectoryInfo.EnumerateFiles()
   bei Squirrel.SquirrelAwareExecutableDetector.GetAllSquirrelAwareApps(String directory, Int32 minimumVersion)
   bei Squirrel.UpdateManager.ApplyReleasesImpl.<invokePostInstall>d__e7.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<LogIfThrows>d__4d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei Squirrel.UpdateManager.ApplyReleasesImpl.<ApplyReleases>d__79.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.UpdateManager.<FullInstall>d__f.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei Squirrel.Update.Program.<Install>d__3a.MoveNext()<---

ext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__3b.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<<DeleteDirectory>b__35>d__38.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass1e`1.<>c__DisplayClass20.<<ForEachAsync>b__1d>d__22.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__3b.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<LogIfThrows>d__4d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei Squirrel.Update.Program.<Install>d__3a.MoveNext()
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   bei System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   bei System.Threading.Tasks.Task.Wait()
   bei Squirrel.Update.Program.executeCommandLine(String[] args)
   bei Squirrel.Update.Program.main(String[] args)
---> (Interne Ausnahme #0) System.IO.IOException: Der Prozess kann nicht auf die Datei "C:\Users\Besitzer\AppData\Local\Discord\packages\SquirrelTemp\tempa" zugreifen, da sie von einem anderen Prozess verwendet wird.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.File.InternalDelete(String path, Boolean checkHost)
   bei System.IO.File.Delete(String path)
   bei Squirrel.Utility.<DeleteDirectory>b__34(String file)
   bei Squirrel.Utility.<>c__DisplayClass18`1.<>c__DisplayClass1a.<ForEachAsync>b__17()
   bei System.Threading.Tasks.Task.InnerInvoke()
   bei System.Threading.Tasks.Task.Execute()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass1e`1.<>c__DisplayClass20.<<ForEachAsync>b__1d>d__22.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__3b.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<<DeleteDirectory>b__35>d__38.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass1e`1.<>c__DisplayClass20.<<ForEachAsync>b__1d>d__22.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__3b.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<<DeleteDirectory>b__35>d__38.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass1e`1.<>c__DisplayClass20.<<ForEachAsync>b__1d>d__22.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__3b.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<LogIfThrows>d__4d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei Squirrel.Update.Program.<Install>d__3a.MoveNext()<---

2019-02-25 21:58:33> Program: Starting Squirrel Updater: --install .
2019-02-25 21:58:33> Program: Starting install, writing to C:\Users\Besitzer\AppData\Local\SquirrelTemp
2019-02-25 21:58:34> Program: About to install to: C:\Users\Besitzer\AppData\Local\GitHubDesktop
2019-02-25 21:58:35> CheckForUpdateImpl: Couldn't write out staging user ID, this user probably shouldn't get beta anything: System.IO.DirectoryNotFoundException: Ein Teil des Pfades "C:\Users\Besitzer\AppData\Local\GitHubDesktop\packages\.betaId" konnte nicht gefunden werden.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   bei System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   bei System.IO.StreamWriter.CreateFile(String path, Boolean append, Boolean checkHost)
   bei System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize, Boolean checkHost)
   bei System.IO.File.InternalWriteAllText(String path, String contents, Encoding encoding, Boolean checkHost)
   bei System.IO.File.WriteAllText(String path, String contents, Encoding encoding)
   bei Squirrel.UpdateManager.CheckForUpdateImpl.getOrCreateStagedUserId()
2019-02-25 21:58:35> CheckForUpdateImpl: Failed to load local releases, starting from scratch: System.IO.DirectoryNotFoundException: Ein Teil des Pfades "C:\Users\Besitzer\AppData\Local\GitHubDesktop\packages\RELEASES" konnte nicht gefunden werden.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   bei System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
   bei Squirrel.Utility.LoadLocalReleases(String localReleaseFile)
   bei Squirrel.UpdateManager.CheckForUpdateImpl.<CheckForUpdate>d__2.MoveNext()
2019-02-25 21:58:35> CheckForUpdateImpl: Reading RELEASES file from C:\Users\Besitzer\AppData\Local\SquirrelTemp
2019-02-25 21:58:36> CheckForUpdateImpl: First run or local directory is corrupt, starting from scratch
2019-02-25 21:58:37> ApplyReleasesImpl: Writing files to app directory: C:\Users\Besitzer\AppData\Local\GitHubDesktop\app-1.6.2
2019-02-25 21:58:37> LogHost: Rigging execution stub for lib/net45/GitHubDesktop_ExecutionStub.exe to C:\Users\Besitzer\AppData\Local\GitHubDesktop\GitHubDesktop.exe
2019-02-25 21:59:17> ApplyReleasesImpl: Squirrel Enabled Apps: []
2019-02-25 21:59:17> ApplyReleasesImpl: No apps are marked as Squirrel-aware! Going to run them all
2019-02-25 21:59:17> ApplyReleasesImpl: Starting fixPinnedExecutables
2019-02-25 21:59:17> ApplyReleasesImpl: Examining Pin: AION Free-To-Play.lnk
2019-02-25 21:59:17> ApplyReleasesImpl: Examining Pin: Amazon.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: AniFX.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Animated kitty that chases the mouse cursor.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: blender.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Blockbench.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: BlueStacks (2).lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: BOINC Manager.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: c3.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: c3_mapper.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Character Map.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Delphi 7.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Denpa Men-Editor.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Die Sims...800x600.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: DkMapperGui MFC Application.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: DOSBox DOS Emulator.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Dragon's Den 3.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Dragon's Prophet.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Dungeon Keeper 2 Editor.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: eclipse.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Felix.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Fiesta Online DE.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: File Explorer.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Filter Forge x64.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Firefox.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: FirestormOS-Release.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: FirestormOS-Releasex64.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Forge Mod Builder.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: GIMP 2.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Google Chrome.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: GrandFantasia-DE.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Hardware entfernen.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: IC.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: IcoFX.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Inkscape (2).lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: JDownloader.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: JSMain.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: LayOut.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Mario Editor.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: MCAnimator.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: mcreator.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: MeshLabServer.lnk
2019-02-25 21:59:18> ApplyReleasesImpl: Examining Pin: Microsoft Office.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Minecraft Forums Avatar Generator.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Minecraft Game Launcher.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Minecraft.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: MissionEditor.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Mozilla Firefox.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Mozilla Thunderbird.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: MultiMC Launcher.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Netscape 7.1.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: NosTale.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Notepad.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: OpenOffice Calc.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Opera-Browser.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Oracle of Secrets.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Paint.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: PDF-XChange Editor.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: PdfEditor 2.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: PHARAO & KÖNIGIN DES NILS.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Platformer Game Engine - Editor (2).lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Platformer Game Engine - Editor.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Play Twin Saga.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: PloppClassic.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: PloppSL.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Pokemon World Online.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Resource Editor by Anders Melander.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Resource Hacker.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: RGSS Player.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: School of Dragons.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Scratch.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Second Life Viewer.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: SecondLifeProjectMerchantOutbox.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Settings.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: SketchUp (2).lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: SMBXLauncher.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Space Engineers.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Star Stable Online.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Steam.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Task Manager.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: User Guide.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Visual Studio 2015.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: VisualBoyAdvance emulator.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: Wings 3D 1.4.1.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: WizardGraphicalClient.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: WizardLauncher.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: www.SuperMarioBrosX.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Examining Pin: ZeldaPasswords.lnk
2019-02-25 21:59:19> ApplyReleasesImpl: Fixing up tray icons
2019-02-25 21:59:19> ApplyReleasesImpl: cleanDeadVersions: for version 1.6.2
2019-02-25 21:59:19> ApplyReleasesImpl: cleanDeadVersions: exclude folder app-1.6.2
einem anderen Prozess verwendet wird.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.File.InternalDelete(String path, Boolean checkHost)
   bei System.IO.File.Delete(String path)
   bei Squirrel.Utility.<>c.<DeleteDirectory>b__19_0(String file)
   bei Squirrel.Utility.<>c__DisplayClass12_1`1.<ForEachAsync>b__1()
   bei System.Threading.Tasks.Task.InnerInvoke()
   bei System.Threading.Tasks.Task.Execute()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<LogIfThrows>d__37.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei Squirrel.Update.Program.<Install>d__4.MoveNext()
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   bei System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   bei System.Threading.Tasks.Task.Wait()
   bei Squirrel.Update.Program.executeCommandLine(String[] args)
   bei Squirrel.Update.Program.main(String[] args)
---> (Interne Ausnahme #0) System.IO.IOException: Der Prozess kann nicht auf die Datei "C:\Users\Besitzer\AppData\Local\GitHubDesktop\app-1.6.2\resources\app\git\usr\bin\msys-crypto-1.0.0.dll" zugreifen, da sie von einem anderen Prozess verwendet wird.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.File.InternalDelete(String path, Boolean checkHost)
   bei System.IO.File.Delete(String path)
   bei Squirrel.Utility.<>c.<DeleteDirectory>b__19_0(String file)
   bei Squirrel.Utility.<>c__DisplayClass12_1`1.<ForEachAsync>b__1()
   bei System.Threading.Tasks.Task.InnerInvoke()
   bei System.Threading.Tasks.Task.Execute()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c.<<DeleteDirectory>b__19_1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<>c__DisplayClass13_0`1.<<ForEachAsync>b__1>d.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<DeleteDirectory>d__19.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei Squirrel.Utility.<LogIfThrows>d__37.MoveNext()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei Squirrel.Update.Program.<Install>d__4.MoveNext()<---

 

 

how do i setup my repository correctly without the client?

Edited by Drachenbauer
Posted
28 minutes ago, diesieben07 said:
  • Install Git.
  • Create empty repository on GIthub.
  • Open a command line and navigate to your project root (where your build.gradle is). Type the following commands:
    • git init
    • git remote add origin <url to your github repository>
    • git add -A
    • git commit -m "Initial Commit"
    • git push -u origin master

And please learn Git.

 

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

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

    • So me and a couple of friends are playing with a shitpost mod pack and one of the mods in the pack is corail tombstone and for some reason there is a problem with it, where on death to fire the player will get kicked out of the server and the tombstone will not spawn basically deleting an entire inventory, it doesn't matter what type of fire it is, whether it's from vanilla fire/lava, or from modded fire like ice&fire/lycanites and it's common enough to where everyone on the server has experienced at least once or twice and it doesn't give any crash log. a solution to this would be much appreciated thank you!
    • It is 1.12.2 - I have no idea if there is a 1.12 pack
    • Okay, but does the modpack works with 1.12 or just with 1.12.2, because I need the Forge client specifically for Minecraft 1.12, not 1.12.2
    • Version 1.19 - Forge 41.0.63 I want to create a wolf entity that I can ride, so far it seems to be working, but the problem is that when I get on the wolf, I can’t control it. I then discovered that the issue is that the server doesn’t detect that I’m riding the wolf, so I’m struggling with synchronization. However, it seems to not be working properly. As I understand it, the server receives the packet but doesn’t register it correctly. I’m a bit new to Java, and I’ll try to provide all the relevant code and prints *The comments and prints are translated by chatgpt since they were originally in Spanish* Thank you very much in advance No player is mounted, or the passenger is not a player. No player is mounted, or the passenger is not a player. No player is mounted, or the passenger is not a player. No player is mounted, or the passenger is not a player. No player is mounted, or the passenger is not a player. MountableWolfEntity package com.vals.valscraft.entity; import com.vals.valscraft.network.MountSyncPacket; import com.vals.valscraft.network.NetworkHandler; import net.minecraft.client.Minecraft; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.ai.attributes.AttributeSupplier; import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.entity.animal.Wolf; import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.Entity; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.Level; import net.minecraft.world.phys.Vec3; import net.minecraftforge.event.TickEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.network.PacketDistributor; public class MountableWolfEntity extends Wolf { private boolean hasSaddle; private static final EntityDataAccessor<Byte> DATA_ID_FLAGS = SynchedEntityData.defineId(MountableWolfEntity.class, EntityDataSerializers.BYTE); public MountableWolfEntity(EntityType<? extends Wolf> type, Level level) { super(type, level); this.hasSaddle = false; } @Override protected void defineSynchedData() { super.defineSynchedData(); this.entityData.define(DATA_ID_FLAGS, (byte)0); } public static AttributeSupplier.Builder createAttributes() { return Wolf.createAttributes() .add(Attributes.MAX_HEALTH, 20.0) .add(Attributes.MOVEMENT_SPEED, 0.3); } @Override public InteractionResult mobInteract(Player player, InteractionHand hand) { ItemStack itemstack = player.getItemInHand(hand); if (itemstack.getItem() == Items.SADDLE && !this.hasSaddle()) { if (!player.isCreative()) { itemstack.shrink(1); } this.setSaddle(true); return InteractionResult.SUCCESS; } else if (!level.isClientSide && this.hasSaddle()) { player.startRiding(this); MountSyncPacket packet = new MountSyncPacket(true); // 'true' means the player is mounted NetworkHandler.CHANNEL.sendToServer(packet); // Ensure the server handles the packet return InteractionResult.SUCCESS; } return InteractionResult.PASS; } @Override public void travel(Vec3 travelVector) { if (this.isVehicle() && this.getControllingPassenger() instanceof Player) { System.out.println("The wolf has a passenger."); System.out.println("The passenger is a player."); Player player = (Player) this.getControllingPassenger(); // Ensure the player is the controller this.setYRot(player.getYRot()); this.yRotO = this.getYRot(); this.setXRot(player.getXRot() * 0.5F); this.setRot(this.getYRot(), this.getXRot()); this.yBodyRot = this.getYRot(); this.yHeadRot = this.yBodyRot; float forward = player.zza; float strafe = player.xxa; if (forward <= 0.0F) { forward *= 0.25F; } this.flyingSpeed = this.getSpeed() * 0.1F; this.setSpeed((float) this.getAttributeValue(Attributes.MOVEMENT_SPEED) * 1.5F); this.setDeltaMovement(new Vec3(strafe, travelVector.y, forward).scale(this.getSpeed())); this.calculateEntityAnimation(this, false); } else { // The wolf does not have a passenger or the passenger is not a player System.out.println("No player is mounted, or the passenger is not a player."); super.travel(travelVector); } } public boolean hasSaddle() { return this.hasSaddle; } public void setSaddle(boolean hasSaddle) { this.hasSaddle = hasSaddle; } @Override protected void dropEquipment() { super.dropEquipment(); if (this.hasSaddle()) { this.spawnAtLocation(Items.SADDLE); this.setSaddle(false); } } @SubscribeEvent public static void onServerTick(TickEvent.ServerTickEvent event) { if (event.phase == TickEvent.Phase.START) { MinecraftServer server = net.minecraftforge.server.ServerLifecycleHooks.getCurrentServer(); if (server != null) { for (ServerPlayer player : server.getPlayerList().getPlayers()) { if (player.isPassenger() && player.getVehicle() instanceof MountableWolfEntity) { MountableWolfEntity wolf = (MountableWolfEntity) player.getVehicle(); System.out.println("Tick: " + player.getName().getString() + " is correctly mounted on " + wolf); } } } } } private boolean lastMountedState = false; @Override public void tick() { super.tick(); if (!this.level.isClientSide) { // Only on the server boolean isMounted = this.isVehicle() && this.getControllingPassenger() instanceof Player; // Only print if the state changed if (isMounted != lastMountedState) { if (isMounted) { Player player = (Player) this.getControllingPassenger(); // Verify the passenger is a player System.out.println("Server: Player " + player.getName().getString() + " is now mounted."); } else { System.out.println("Server: The wolf no longer has a passenger."); } lastMountedState = isMounted; } } } @Override public void addPassenger(Entity passenger) { super.addPassenger(passenger); if (passenger instanceof Player) { Player player = (Player) passenger; if (!this.level.isClientSide && player instanceof ServerPlayer) { // Send the packet to the server to indicate the player is mounted NetworkHandler.CHANNEL.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) player), new MountSyncPacket(true)); } } } @Override public void removePassenger(Entity passenger) { super.removePassenger(passenger); if (passenger instanceof Player) { Player player = (Player) passenger; if (!this.level.isClientSide && player instanceof ServerPlayer) { // Send the packet to the server to indicate the player is no longer mounted NetworkHandler.CHANNEL.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) player), new MountSyncPacket(false)); } } } @Override public boolean isControlledByLocalInstance() { Entity entity = this.getControllingPassenger(); return entity instanceof Player; } @Override public void positionRider(Entity passenger) { if (this.hasPassenger(passenger)) { double xOffset = Math.cos(Math.toRadians(this.getYRot() + 90)) * 0.4; double zOffset = Math.sin(Math.toRadians(this.getYRot() + 90)) * 0.4; passenger.setPos(this.getX() + xOffset, this.getY() + this.getPassengersRidingOffset() + passenger.getMyRidingOffset(), this.getZ() + zOffset); } } } MountSyncPacket package com.vals.valscraft.network; import com.vals.valscraft.entity.MountableWolfEntity; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class MountSyncPacket { private final boolean isMounted; public MountSyncPacket(boolean isMounted) { this.isMounted = isMounted; } public void encode(FriendlyByteBuf buffer) { buffer.writeBoolean(isMounted); } public static MountSyncPacket decode(FriendlyByteBuf buffer) { return new MountSyncPacket(buffer.readBoolean()); } public void handle(NetworkEvent.Context context) { context.enqueueWork(() -> { ServerPlayer player = context.getSender(); // Get the player from the context if (player != null) { // Verifies if the player has dismounted if (!isMounted) { Entity vehicle = player.getVehicle(); if (vehicle instanceof MountableWolfEntity wolf) { // Logic to remove the player as a passenger wolf.removePassenger(player); System.out.println("Server: Player " + player.getName().getString() + " is no longer mounted."); } } } }); context.setPacketHandled(true); // Marks the packet as handled } } networkHandler package com.vals.valscraft.network; import com.vals.valscraft.valscraft; import net.minecraft.resources.ResourceLocation; import net.minecraftforge.network.NetworkRegistry; import net.minecraftforge.network.simple.SimpleChannel; import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class NetworkHandler { private static final String PROTOCOL_VERSION = "1"; public static final SimpleChannel CHANNEL = NetworkRegistry.newSimpleChannel( new ResourceLocation(valscraft.MODID, "main"), () -> PROTOCOL_VERSION, PROTOCOL_VERSION::equals, PROTOCOL_VERSION::equals ); public static void init() { int packetId = 0; // Register the mount synchronization packet CHANNEL.registerMessage( packetId++, MountSyncPacket.class, MountSyncPacket::encode, MountSyncPacket::decode, (msg, context) -> msg.handle(context.get()) // Get the context with context.get() ); } }  
  • Topics

×
×
  • Create New...

Important Information

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