Big_Bad_E
-
Posts
312 -
Joined
-
Last visited
Posts posted by Big_Bad_E
-
-
14 hours ago, ProPane865 said:
Ok... and? This thread should be marked as "solved" if you removed the print statement.
No... that’s not how it works. removing a print statement didn’t fix my problem.
9 hours ago, diesieben07 said:You need to use Screen#addButton to add buttons.
I will change the method, I’ve been looking at old code that worked without thinking of changes like this.
-
1 minute ago, ProPane865 said:
I don't see a print...
I removed it for the git push to make it more clean. It also closes the GUI which is a pretty obvious test statement.
-
I have a pretty simple GUI, where I add two buttons. Both are added but neither button's IPressable is called when I click the button. The button highlights on hover.
Button initialization:
buttons.clear(); buttons.add(new Button(guiLeft + 8, guiTop + 39, 48, 20, new TranslationTextComponent("gui.battlepets.pet.skills").getFormattedText(), (button) -> { mc.player.closeScreen(); }));
Screen class:
Spoilerpublic class PetScreen extends ContainerScreen<PetContainer> { private static final ResourceLocation GUITEXTURE = new ResourceLocation("battlepets:textures/gui/pet.png"); private PetEntity pet; private int currTexIndex = 0; private Widget texButton; public PetScreen(PetContainer container, PlayerInventory playerInventory, ITextComponent name) { super(container, playerInventory, container.getName()); pet = container.getPet(); } @Override public void init() { super.init(); Minecraft mc = Minecraft.getInstance(); buttons.clear(); buttons.add(new Button(guiLeft + 8, guiTop + 39, 48, 20, new TranslationTextComponent("gui.battlepets.pet.skills").getFormattedText(), (button) -> { mc.player.closeScreen(); //TODO skill inv //NetworkHooks.openGui(mc.player, new CulinaryWorkbenchContainerProvider(pos)); })); buttons.add(texButton = new Button(guiLeft + 8, guiTop - 28, xSize - 16, 20, "<...>", (button) -> { PetType type = pet.getPetType(); if (++currTexIndex >= type.textures.length) { currTexIndex = 0; } String tex = type.textures[currTexIndex]; pet.setTexture(tex); updateTextureButton(false); })); updateTextureButton(true); } @Override protected void drawGuiContainerForegroundLayer(int par1, int par2) { FontRenderer fontRenderer = Minecraft.getInstance().fontRenderer; fontRenderer.drawString(container.getName().getFormattedText(), 8, 6, 4210752); fontRenderer.drawString(playerInventory.hasCustomName() ? playerInventory.getCustomName().getFormattedText() : playerInventory.getName().getFormattedText(), 8, this.ySize - 96 + 2, 4210752); } @Override protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); texButton.render(mouseX, mouseY, partialTicks); Minecraft.getInstance().getTextureManager().bindTexture(GUITEXTURE); int k = (this.width - this.xSize) / 2; int l = (this.height - this.ySize) / 2; blit(k, l, 0, 0, this.xSize, this.ySize); if (pet.hasSkill(Skill.INVENTORY_ARMOR.id)) { blit(k + 7 + 18, l + 17, 0, 220, 18, 18); } if (pet.hasSkill(Skill.TRAVEL_MOUNTABLE.id)) { blit(k + 7, l + 17, 18, 220, 18, 18); } if (pet.hasSkill(Skill.INVENTORY_WEAPON.id)) { blit(k + 7 + 36, l + 17, 36, 220, 18, 18); } if (pet.hasSkill(Skill.INVENTORY.id)) { int count = (pet.getPetInventory().getSizeInventory() - 3) / 3; int rows = Math.min(count, 3); blit(k + 115, l + 17, 0, 166, 54, 18 * rows); int cols = Math.max(count - 3, 0); blit(k + 115 + 18 * 3, l + 17, 18 * 3, 166, 18 * cols, 54); } InventoryScreen.drawEntityOnScreen(k + 88, l + 60, 17, (float)(k+88) - mouseX, (float)(l+45) - mouseY, this.pet); } @Override public void render(int mx, int my, float par3) { super.render(mx, my, par3); } private void updateTextureButton(boolean initial) { if (initial) { int tex = 0; for(int i = 0; i < pet.getPetType().textures.length; i++) if(pet.getPetType().textures[i].equals(pet.getTexture())) tex = i; currTexIndex = tex; } texButton.setMessage(new TranslationTextComponent("pet.battlepets.texture").getFormattedText().replace("%s", new TranslationTextComponent("pet.battlepets.texture." + pet.getPetType().name().toLowerCase() + "." + pet.getTexture()).getFormattedText())); } }
I put a print on top of the button press callback, yet nothing is printed.
-
11 hours ago, diesieben07 said:
That's not how you use teh data manager. createKey must be called once, vanilla uses a static initializer for this, you should do the same.
Pretty much look at how vanilla uses it.
That was it, I didn't realize datamanager was called multiple times.
Thanks for that, now it is all working.
-
Nevermind, data still isn't sync'd.
I set the collar color on the server, but the collar color is never sync'd to the client.
GitHub:
https://github.com/BigBadE/BattlePets
How I register the collar color to the datamanager:
@Override public void registerData() { super.registerData(); collar = EntityDataManager.createKey(PetEntity.class, DataSerializers.VARINT) dataManager.register(collar, DyeColor.RED.getId()); }
I then set it to a different color in the interact (server-side) (I change it to 3) and confirm that it is set server-side (it is), but in my entity renderer (client side) it is still set to red (14).
The same thing happens with all other data sent over.
-
1 hour ago, Animefan8888 said:
Dont register them in your constructor, do it in the registerData method.
Yes of course the entity needs to know that those values exist.
Thanks for telling me about registerData, that fixed all my problems!
-
Okay, so I started using DataManager.
Problem is, when the server registers the datamanager values, the datamanagers values aren't sync'd to the client, so the client tries to get values from default datamanagers values (Do I register them client side?) instead of the correct ones set.
I tried setting every datamanager to dirty but that changed nothing.
I tried to use the Packet SEntityMetadataPacket, but got this error:
Spoilerjava.lang.IllegalArgumentException: Invalid message net.minecraft.network.play.server.SEntityMetadataPacket
at net.minecraftforge.fml.network.simple.IndexedMessageCodec.build(IndexedMessageCodec.java:131) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {}
at net.minecraftforge.fml.network.simple.SimpleChannel.encodeMessage(SimpleChannel.java:68) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {}
at net.minecraftforge.fml.network.simple.SimpleChannel.toBuffer(SimpleChannel.java:76) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {}
at net.minecraftforge.fml.network.simple.SimpleChannel.toVanillaPacket(SimpleChannel.java:107) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {}
at net.minecraftforge.fml.network.simple.SimpleChannel.send(SimpleChannel.java:102) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {}
at bigbade.battlepets.entities.PetEntity.<init>(PetEntity.java:93) ~[main/:?] {}
at bigbade.battlepets.items.ConverterItem.convertPet(ConverterItem.java:148) ~[main/:?] {}
at bigbade.battlepets.items.ConverterItem.hitEntity(ConverterItem.java:55) ~[main/:?] {}
at bigbade.battlepets.listeners.HitProtector.onAttack(HitProtector.java:23) ~[main/:?] {}
at net.minecraftforge.eventbus.ASMEventHandler_0_HitProtector_onAttack_AttackEntityEvent.invoke(.dynamic) ~[?:?] {}
at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:80) ~[eventbus-0.10.1-service.jar:?] {}
at net.minecraftforge.eventbus.EventBus.post(EventBus.java:258) ~[eventbus-0.10.1-service.jar:?] {}
at net.minecraftforge.common.ForgeHooks.onPlayerAttackTarget(ForgeHooks.java:722) ~[?:?] {}
at net.minecraft.entity.player.PlayerEntity.attackTargetEntityWithCurrentItem(PlayerEntity.java:1060) ~[?:?] {pl:accesstransformer:B}
at net.minecraft.entity.player.ServerPlayerEntity.attackTargetEntityWithCurrentItem(ServerPlayerEntity.java:1324) ~[?:?] {pl:accesstransformer:B}
at net.minecraft.network.play.ServerPlayNetHandler.processUseEntity(ServerPlayNetHandler.java:1145) ~[?:?] {}
at net.minecraft.network.play.client.CUseEntityPacket.processPacket(CUseEntityPacket.java:82) ~[?:?] {}
at net.minecraft.network.play.client.CUseEntityPacket.processPacket(CUseEntityPacket.java:15) ~[?:?] {}
at net.minecraft.network.PacketThreadUtil.lambda$checkThreadAndEnqueue$0(PacketThreadUtil.java:14) ~[?:?] {}
at net.minecraft.util.concurrent.TickDelayedTask.run(TickDelayedTask.java:20) ~[?:?] {}
at net.minecraft.util.concurrent.ThreadTaskExecutor.run(ThreadTaskExecutor.java:131) [?:?] {pl:accesstransformer:B}
at net.minecraft.util.concurrent.RecursiveEventLoop.run(RecursiveEventLoop.java:22) [?:?] {}
at net.minecraft.util.concurrent.ThreadTaskExecutor.driveOne(ThreadTaskExecutor.java:106) [?:?] {pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.func_213205_aW(MinecraftServer.java:708) [?:?] {pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.driveOne(MinecraftServer.java:702) [?:?] {pl:accesstransformer:B}
at net.minecraft.util.concurrent.ThreadTaskExecutor.drainTasks(ThreadTaskExecutor.java:93) [?:?] {pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.runScheduledTasks(MinecraftServer.java:687) [?:?] {pl:accesstransformer:B}
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:635) [?:?] {pl:accesstransformer:B}
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201] {} -
Just now, Animefan8888 said:
Sync it with a packet or the DataManager that entities use.
THATS WHAT DATAMANAGER DOES!
Ohh... I'm so stupid. Thanks for telling me that.
-
Nevermind, it seems that somehow two instances are being created, one on Client one on Server. problem is the Client one doesn't have the data the Server one does.
The only solution I can think of is somehow canceling the spawn of the client one, sending a packet over with all the data, and spawning it client side with that. IDK if that works though, or if there is an easier solution.
I'm pretty sure the entity is summoned client side on this line:
net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(new net.minecraftforge.event.entity.EntityEvent.EntityConstructing(this));
I know the client side entity is spawned with AnimalEntity#init
-
1 minute ago, Animefan8888 said:
Because you never told it to get called btw.
Are you sure that what you tried the first time didn't work? How did you test it?
You're right, it turns out I forgot to check the side with the first method, cause all the values were set to the default fail safe values.
-
1 minute ago, Animefan8888 said:
Spawn entities only on the server.
We need more than just that snippet of code. Where is it being called from?
It is being called on the server, I use
if(!world.isRemote)
The entity is being spawned from Item#hitEntity(ItemStack, LivingEntity, LivingEntity).
(Just remembered GitHub exists).
-
I am trying to have an item, when right clicked on an entity, spawn my custom entity.
Problem is, I need to pass the UUID of the player and the type of entity clicked for rendering/AI.
What I tried:
MyEntity entity = new MyEntity(); entity.setType(type) entity.setOwner(owner) entity.setPosition(position) world.addEntity(entity)
Problem is, that entity is replaced with another one server-side which has no data.
Next I tried:
CompoundNBT nbt = new CompoundNBT(); nbt.putInt("type", type.ordinal()); nbt.putUniqueId("owner", player.getGameProfile().getId()); if (tameable != null) nbt.putBoolean("sitting", tameable.isSitting()); ITextComponent name = null; if (target.getCustomName() != null) name = target.getCustomName(); PetEntity pet = EntityRegistry.PETENTITY.spawn(target.getEntityWorld(), nbt, null, player, target.getPosition(), SpawnReason.EVENT, false, false); target.remove(); target.getEntityWorld().addEntity(pet);
Then I read the NBT data by overriding AnimalEntity#readAdditional(NBTCompound), but that is never called.
-
Try running it without mods, if that works, remove half the mods, if it works put those in another folder and repeat with the other half.
Repeat till you find the crashing mod.
-
I tried setting d0 to 0 outside of the if, and using
super.travel(new Vec3d(f, movement.y+d0, f1));
but still no y movement.
-
I am trying to make an entity that is basically a horse, and I want the riding player to be able to jump.
Currently I implemented IJumpingMount, and copied the Horse code (modified a bit).
Current travel method:
@Override public void travel(Vec3d movement) { if (this.isBeingRidden() && !isSitting()) { LivingEntity livingentity = (LivingEntity) this.getPassengers().get(0); this.rotationYaw = livingentity.rotationYaw; this.prevRotationYaw = this.rotationYaw; this.rotationPitch = livingentity.rotationPitch * 0.5F; this.setRotation(this.rotationYaw, this.rotationPitch); this.renderYawOffset = this.rotationYaw; this.rotationYawHead = this.renderYawOffset; float f = livingentity.moveStrafing * 0.5F; float f1 = livingentity.moveForward; if (f1 <= 0.0F) { f1 *= 0.25F; } if (this.jumpPower > 0 && !this.isJumping && onGround) { double d0 = 0.85f * (double) this.jumpPower; double d1; if (this.isPotionActive(Effects.JUMP_BOOST)) { d1 = d0 + (double) ((float) (this.getActivePotionEffect(Effects.JUMP_BOOST).getAmplifier() + 1) * 0.1F); } else { d1 = d0; } Vec3d vec3d = this.getMotion(); this.setMotion(vec3d.x, d1, vec3d.z); this.setJumping(true); this.isAirBorne = true; if (f1 > 0.0F) { float f2 = MathHelper.sin(this.rotationYaw * ((float) Math.PI / 180F)); float f3 = MathHelper.cos(this.rotationYaw * ((float) Math.PI / 180F)); this.setMotion(this.getMotion().add(-0.4F * f2 * this.jumpPower, 0.0D, (0.4F * f3 * this.jumpPower))); this.playSound(SoundEvents.ENTITY_HORSE_JUMP, 0.4F, 1.0F); } this.jumpPower = 0.0F; } this.jumpMovementFactor = this.getAIMoveSpeed() * 0.1F; if (this.canPassengerSteer()) { this.setAIMoveSpeed((float) this.getAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).getValue()); super.travel(new Vec3d(f, movement.y, f1)); } else if (livingentity instanceof PlayerEntity) { this.setMotion(Vec3d.ZERO); } if (this.onGround) { this.jumpPower = 0.0F; this.setJumping(false); } this.prevLimbSwingAmount = this.limbSwingAmount; double d2 = this.posX - this.prevPosX; double d3 = this.posZ - this.prevPosZ; float f4 = MathHelper.sqrt(d2 * d2 + d3 * d3) * 4.0F; if (f4 > 1.0F) { f4 = 1.0F; } this.limbSwingAmount += (f4 - this.limbSwingAmount) * 0.4F; this.limbSwing += this.limbSwingAmount; } else { this.jumpMovementFactor = 0.02F; super.travel(movement); } }
I know the y motion is set to .85, but the animal is not jumping. They can move around correctly when I press WSAD, but not jump.
-
Yep, using EVENT_BUS.register() worked. Thanks!
Edit: It just didn't call the event.
What do I use? I tried @Mod.EventBusSubscriber but no luck.
Nevermind, I used @Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD)
-
On 8/16/2019 at 1:26 PM, DaemonUmbra said:
Not that I know of
Is this a thing? What classes/methods do you use?
-
33 minutes ago, Animefan8888 said:
Post all of your code. Preferably as a git repo.
-
5 minutes ago, Animefan8888 said:
Somewhere you are casting it to a Block...Or using it as a Block.
It is being cast to a block by Forge, and it is in the block registry somehow?
Error line:
for(Block block : Registry.BLOCK) { block.getStateContainer().getValidStates().forEach((p_217837_1_) -> { this.func_217843_a(BlockModelShapes.getModelLocation(p_217837_1_)); }); }
(From ModelBakery.java)
I register an item in the mod too, but no blocks at all.
-
I am trying to port an old 1.7.10 mod, and realizing how out of date it is, I decided a rewrite would be much better.
I am trying to make an entity, for now it has a few simple NBT functions, and a simple method, but nothing else.
Whenever I start MC, the game crashes during startup.
Registry:
@ObjectHolder("battlepets") public class EntityRegistry { public static EntityType<AnimalEntity> PETENTITY; @SubscribeEvent public static void onEntityRegister(RegistryEvent.Register<EntityType<?>> event) { PETENTITY = (EntityType<AnimalEntity>) EntityType.Builder.create(new PetEntityFactory(), EntityClassification.CREATURE).build("pet").setRegistryName("battlepets", "pet"); event.getRegistry().register(PETENTITY); } }
Factory:
public class PetEntityFactory implements EntityType.IFactory<Entity> { @Override public Entity create(EntityType type, World world) { return new PetEntity(world, PetType.DOG, null); } }
Entity (probably not needed):
Spoilerpublic class PetEntity extends AnimalEntity { private int level; private int skillPoints; private boolean sitting; private PetType type; private UUID ownerUUID; public PetEntity(World worldIn, PetType type, UUID ownerUUID) { super(EntityRegistry.PETENTITY, worldIn); this.type = type; level = 0; sitting = false; skillPoints = 1; this.ownerUUID = ownerUUID; } //TODO add breedable pets @Nullable @Override public AgeableEntity createChild(AgeableEntity ageable) { return null; } public void setOwnerUUID(UUID uuid) { this.ownerUUID = uuid; } public void setPetType(PetType type) { this.type = type; } public void setSitting(boolean sitting) { this.sitting = sitting; } public void setCustomName(String name) { setCustomName(new StringTextComponent(name)); } public void setLevel(int level) { this.level = level; } public void setFreeSkillPoints(int points) { this.skillPoints = points; } public int getLevel() { return level; } public int getFreeSkillPoints() { return skillPoints; } public void levelUp() { if (getLevel() >= Level.MAX_LEVEL) { return; } setLevel(getLevel() + 1); setFreeSkillPoints(getFreeSkillPoints() + 1); } @Override public void writeAdditional(CompoundNBT compound) { compound.putInt("level", level); compound.putInt("skillPoints", skillPoints); compound.putInt("petType", type.ordinal()); compound.putBoolean("sitting", sitting); compound.putUniqueId("owner", ownerUUID); } @Override public void readAdditional(CompoundNBT compound) { level = compound.getInt("level"); skillPoints = compound.getInt("skillPoints"); type = PetType.values()[compound.getInt("petType")]; sitting = compound.getBoolean("sitting"); ownerUUID = compound.getUniqueId("owner"); } }
Error:
Spoiler[18:03:26.480] [Client thread/FATAL] [minecraft/Minecraft]: Reported exception thrown!
net.minecraft.crash.ReportedException: Rendering overlay
at net.minecraft.client.renderer.GameRenderer.updateCameraAndRender(GameRenderer.java:563) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:920) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.Minecraft.run(Minecraft.java:384) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.main.Main.main(Main.java:127) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {pl:runtimedistcleaner:A}
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_201] {}
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_201] {}
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_201] {}
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_201] {}
at net.minecraftforge.userdev.FMLUserdevClientLaunchProvider.lambda$launchService$0(FMLUserdevClientLaunchProvider.java:55) ~[forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-2.1.4.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:50) [modlauncher-2.1.4.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:68) [modlauncher-2.1.4.jar:?] {}
at cpw.mods.modlauncher.Launcher.run(Launcher.java:77) [modlauncher-2.1.4.jar:?] {}
at cpw.mods.modlauncher.Launcher.main(Launcher.java:62) [modlauncher-2.1.4.jar:?] {}
at net.minecraftforge.userdev.LaunchTesting.main(LaunchTesting.java:101) [forge-1.14.2-26.0.62_mapped_snapshot_20190621-1.14.2-recomp.jar:?] {}
Caused by: java.lang.ClassCastException: net.minecraft.entity.EntityType cannot be cast to net.minecraft.block.Block
at net.minecraft.client.renderer.model.ModelBakery.<init>(ModelBakery.java:116) ~[?:?] {pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraftforge.client.model.ModelLoader.<init>(ModelLoader.java:141) ~[?:?] {}
at net.minecraft.client.renderer.model.ModelManager.prepare(ModelManager.java:48) ~[?:?] {pl:runtimedistcleaner:A}
at net.minecraft.client.renderer.model.ModelManager.prepare(ModelManager.java:13) ~[?:?] {pl:runtimedistcleaner:A}
at net.minecraft.client.resources.ReloadListener.lambda$reload$0(ReloadListener.java:15) ~[?:?] {pl:runtimedistcleaner:A}
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590) ~[?:1.8.0_201] {}
at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1582) ~[?:1.8.0_201] {}
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_201] {}
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) ~[?:1.8.0_201] {}
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) ~[?:1.8.0_201] {}
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157) ~[?:1.8.0_201] {} -
53 minutes ago, DaemonUmbra said:
Oh this is on the task and not actually running it, I see.
When you say it worked for 1.8.9, you're not using the same build.gradle are you?
No no no, definitely not. It was the lack of a Java JDK.
- 1
-
4 minutes ago, DaemonUmbra said:
Chances are you need to set the module in the runConfig to the main module.
I set it to main
FIGURED IT OUT! Intellij decided to set my JDK to none instead of JDK 1.8 for some reason.
-
When I run genIntellijRuns I get this error:
java.lang.NullPointerException at net.minecraftforge.gradle.common.Constants.addXml(Constants.java:297) at net.minecraftforge.gradle.user.UserBasePlugin.injectIntellijRuns(UserBasePlugin.java:1305) at net.minecraftforge.gradle.user.UserBasePlugin$14.execute(UserBasePlugin.java:1213) at net.minecraftforge.gradle.user.UserBasePlugin$14.execute(UserBasePlugin.java:1176) at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:621)
So I saw a report on the GitHub saying delete .idea files and run gradlew idea genIntellijRuns.
Same error, but a client/server configuration are created. It worked for a 1.8.9 project, and I get the run config in this 1.12.2 project, but when I run it I get this error:
Error: Could not find or load main class GradleStart
gradlew runClient works once but it stops (I am trying to run ThermalDynamics with the files from their github) with an error that there are two jei jars.
If I run it again no window opens and I get the "task success" message.
If I run genIntellijRuns and idea genIntellijRuns it says task successful without the error.
I tried deleting the .gradle and reruning setupDecompWorkspace and genIntellijRuns, this time it made the StartGradle file but Intellij doesn't find it.
-
21 hours ago, Animefan8888 said:
The ID is stored in the container like you said not the inventory.
Duh, I wasn't thinking about this! Thanks!
[1.14.2] [SOLVED] Button.IPressable not called
in Modder Support
Posted
Yep Screen#addButton did it. Thanks!