Posted October 11, 201212 yr Hello guys, i made a new particle in minecraft, and sometimes when i spawn it in the world using ModLoader.getMinecraftInstance().effectRenderer.addEffect(particleClass); it crashes, sometimes it works fine, but most of the time it crashes. this is the error i get: 2012-10-11 14:44:02 [iNFO] [sTDERR] java.util.ConcurrentModificationException 2012-10-11 14:44:02 [iNFO] [sTDERR] at java.util.ArrayList$Itr.checkForComodification(Unknown Source) 2012-10-11 14:44:02 [iNFO] [sTDERR] at java.util.ArrayList$Itr.next(Unknown Source) 2012-10-11 14:44:02 [iNFO] [sTDERR] at net.minecraft.src.Entity.moveEntity(Entity.java:680) 2012-10-11 14:44:02 [iNFO] [sTDERR] at MethyrClient.ParticleHD5.onUpdate(ParticleHD5.java:97) 2012-10-11 14:44:02 [iNFO] [sTDERR] at net.minecraft.src.EffectRenderer.updateEffects(EffectRenderer.java:67) 2012-10-11 14:44:02 [iNFO] [sTDERR] at net.minecraft.client.Minecraft.runTick(Minecraft.java:1800) 2012-10-11 14:44:02 [iNFO] [sTDERR] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:843) 2012-10-11 14:44:02 [iNFO] [sTDERR] at net.minecraft.client.Minecraft.run(Minecraft.java:773) 2012-10-11 14:44:02 [iNFO] [sTDERR] at java.lang.Thread.run(Unknown Source) 2012-10-11 14:44:12 [iNFO] [sTDOUT] Stopping! could somebody help me out?
October 11, 201212 yr Make sure you're spawning particles only with the client thread! If you have to call this in the server thread (e.g. if the method is only executing on a server), then use packets to handle particle spawning. To check if it's client side, check if world.isRemote == true. BTW: Use Minecraft.getMinecraft() instead of ModLoader.getMinecraftInstance(). Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! | mah twitter This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.
October 11, 201212 yr Author well, i am already using the (world.isRemote) method, i'll try the minecraft thing but my package is in minecraft.common. maybe that's wrong? could you tell me which classes should be client sided and which classes should be server sided? because i also have a client sided package for rendering stuff like the particles
October 11, 201212 yr Author nope that doesn't work either, i even get another error...: 2012-10-11 16:21:21 [iNFO] [sTDERR] java.util.ConcurrentModificationException 2012-10-11 16:21:21 [iNFO] [sTDERR] at java.util.ArrayList$Itr.checkForComodification(Unknown Source) 2012-10-11 16:21:21 [iNFO] [sTDERR] at java.util.ArrayList$Itr.next(Unknown Source) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.Entity.moveEntity(Entity.java:680) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.EntityLiving.moveEntityWithHeading(EntityLiving.java:1356) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.EntityLiving.onLivingUpdate(EntityLiving.java:1578) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.EntityAgeable.onLivingUpdate(EntityAgeable.java:59) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.EntityAnimal.onLivingUpdate(EntityAnimal.java:40) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.EntityLiving.onUpdate(EntityLiving.java:692) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.World.updateEntityWithOptionalForce(World.java:2033) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.WorldServer.updateEntityWithOptionalForce(WorldServer.java:538) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.World.updateEntity(World.java:1998) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.World.updateEntities(World.java:1879) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.WorldServer.updateEntities(WorldServer.java:437) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:629) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:560) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.IntegratedServer.tick(IntegratedServer.java:107) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:466) 2012-10-11 16:21:21 [iNFO] [sTDERR] at net.minecraft.src.ThreadServerApplication.run(ThreadServerApplication.java:18)
October 12, 201212 yr I use such system like minecraft uses, only that it's customized addEffect(ClientProxy) - https://github.com/batlefield/Zoocraftia/blob/master/source/minecraft/net/zoocraftia/dimension/client/ClientProxy.java#L149 addEffect(CommonProxy) - https://github.com/batlefield/Zoocraftia/blob/master/source/common/net/zoocraftia/dimension/CommonProxy.java#L106 particleEntity - https://github.com/batlefield/Zoocraftia/blob/master/source/minecraft/net/zoocraftia/dimension/client/EntityPortalFX.java addEffect call in my portal class - https://github.com/batlefield/Zoocraftia/blob/master/source/common/net/zoocraftia/dimension/BlockPortal.java#L219
October 13, 201212 yr Author nope, it still does not work, my game crashes with the same error, do i also need to add the particleOverlay?
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.