November 14, 20177 yr Just now, Greyscail said: The only thing I send as a message to the server is an integer...? I didn't know how to cal a function with just an integer and all that code is what I came up with It doesn't have to be integers. It can be booleans and other values...
November 14, 20177 yr For example: public class PacketSpawnParticle extends LocationDoublePacket<PacketSpawnParticle>{ private double dx, dy, dz; private int particleId; public PacketSpawnParticle(){} public PacketSpawnParticle(EnumParticleTypes particle, double x, double y, double z, double dx, double dy, double dz){ super(x, y, z); particleId = particle.ordinal(); this.dx = dx; this.dy = dy; this.dz = dz; } @Override public void toBytes(ByteBuf buffer){ super.toBytes(buffer); buffer.writeInt(particleId); buffer.writeDouble(dx); buffer.writeDouble(dy); buffer.writeDouble(dz); } @Override public void fromBytes(ByteBuf buffer){ super.fromBytes(buffer); particleId = buffer.readInt(); dx = buffer.readDouble(); dy = buffer.readDouble(); dz = buffer.readDouble(); } @Override public void handleClientSide(PacketSpawnParticle message, EntityPlayer player){ player.worldObj.spawnParticle(EnumParticleTypes.values()[message.particleId], message.x, message.y, message.z, message.dx, message.dy, message.dz); } @Override public void handleServerSide(PacketSpawnParticle message, EntityPlayer player){} }
November 14, 20177 yr Author 9 minutes ago, Differentiation said: For example: public class PacketSpawnParticle extends LocationDoublePacket<PacketSpawnParticle>{ private double dx, dy, dz; private int particleId; public PacketSpawnParticle(){} public PacketSpawnParticle(EnumParticleTypes particle, double x, double y, double z, double dx, double dy, double dz){ super(x, y, z); particleId = particle.ordinal(); this.dx = dx; this.dy = dy; this.dz = dz; } @Override public void toBytes(ByteBuf buffer){ super.toBytes(buffer); buffer.writeInt(particleId); buffer.writeDouble(dx); buffer.writeDouble(dy); buffer.writeDouble(dz); } @Override public void fromBytes(ByteBuf buffer){ super.fromBytes(buffer); particleId = buffer.readInt(); dx = buffer.readDouble(); dy = buffer.readDouble(); dz = buffer.readDouble(); } @Override public void handleClientSide(PacketSpawnParticle message, EntityPlayer player){ player.worldObj.spawnParticle(EnumParticleTypes.values()[message.particleId], message.x, message.y, message.z, message.dx, message.dy, message.dz); } @Override public void handleServerSide(PacketSpawnParticle message, EntityPlayer player){} } I still don't understand how I'm supposed to use a buffer to tell the server to run a function, at best I can use the buffer to indicate to the server what function to run... EDIT: actually hold on I got an idea Edited November 14, 20177 yr by Greyscail
November 14, 20177 yr I gotta go to sleep, I'll help more tomorrow! Try to figure it out while I'm gone!
November 14, 20177 yr I am not touching this thread with a ten foot pole. Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
November 14, 20177 yr Author 4 minutes ago, Draco18s said: I am not touching this thread with a ten foot pole. I'll strap this thread to a ten foot pole and touch you with it
November 14, 20177 yr 5 minutes ago, Greyscail said: I'll strap this thread to a ten foot pole and touch you with it Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
November 14, 20177 yr 7 hours ago, Draco18s said: I am not touching this thread with a ten foot pole. I can relate. @Greyscail, your code is very mixed between sides. I would see this documentation by Forge and this video by MineMaarten, both of which explain sides in detail. But please actually read the documentation and watch the video. When I only started modding it took me a good chunk of time and effort to understand sides. I'm finished helping here! Until next time! ~Differentiation Edited November 14, 20177 yr by Differentiation
November 14, 20177 yr 18 hours ago, Differentiation said: Why the static? Explain. because you need for the @mod.eventSubscriber
November 14, 20177 yr 18 hours ago, Greyscail said: ExampleMod.INSTANCE.registerMessage(ModMessageHandler.class, ModMessage.class, ExampleMod.id++, Side.SERVER); DONT do that in the event handler
November 14, 20177 yr 31 minutes ago, loordgek said: because you need for the @mod.eventSubscriber you don't have to make that static though.
November 14, 20177 yr 10 minutes ago, Differentiation said: you don't have to make that static though. He's probably refering to the @Mod.EventByusSubscriber annotation, which can be used to register event handlers without calling MinecraftForge.EVENT_BUS.register. In that case, you have to make the @SubscribeEvent methods static. https://mcforge.readthedocs.io/en/latest/events/intro/#static-event-handlers Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support. 1.12 -> 1.13 primer by williewillus. 1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support. http://www.howoldisminecraft1710.today/
November 14, 20177 yr Author 55 minutes ago, loordgek said: DONT do that in the event handler When should I do it then?
November 15, 20177 yr 9 hours ago, Greyscail said: When should I do it then? Take a look at this, try to understand it
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.