-
[1.8] how do I use localization for more then blocks, creative taps and items?
think I use it wrong or something for I tried to print it to see what it gave me and it just gives me the key I wrote --EDIT also if I try StatCollector.canTranslate("translation.test.none") it returns false on the key --EDIT omg never mind I just had assets spelled wrong, it works now Thanks
-
[1.8] how do I use localization for more then blocks, creative taps and items?
I am just wondering how I could use localization more. I've made an attempt to use it with a configuration file as it stands, but I can't find any doc on localization. So far I've only been able to find localization for creative taps, blocks and items
-
[1.8] [Solved] NullPointerException network problem
The NullPointerException where only happening for the second client connected to the server.
-
[1.8] [Solved] NullPointerException network problem
thanks it works now but would that not mean that the first player also should return NullPointerException? also where can I find some doc on the IThreadListener? can't hurt to read up on it
-
[1.8] [Solved] NullPointerException network problem
I've made a test package to learn IMessage and IMessage handler and it works fine if i play singleplayer and multiplayer but when I try to connect with a second player LAN or server the second player will get a NullPointerException when i try to find the player Here's the package and handler public class TestPacket implements IMessage{ private int test; public TestPacket() {} public TestPacket(int test) { this.test = test; } @Override public void toBytes(ByteBuf buf) { buf.writeInt(test); } @Override public void fromBytes(ByteBuf buf) { test = buf.readInt(); } public static class Handler implements IMessageHandler<TestPacket,IMessage>{ @Override public IMessage onMessage(TestPacket message, MessageContext ctx) { LogHelper.info(message.test); if(ctx.side.isClient()){ EntityPlayer player = (EntityPlayer) Minecraft.getMinecraft().theWorld.getEntityByID(message.test); player.addChatComponentMessage(new ChatComponentText("Awesome!")); } return null; } } } how i make the network channel @Mod.EventHandler public void preInit(FMLPreInitializationEvent event) { ConfigurationHandler.init(event.getSuggestedConfigurationFile()); FMLCommonHandler.instance().bus().register(new ConfigurationHandler()); MinecraftForge.EVENT_BUS.register(new RegisterEvent()); Network = NetworkRegistry.INSTANCE.newSimpleChannel(Reference.NETWORKCHANNEL); Network.registerMessage(TestPacket.Handler.class,TestPacket.class, 0,Side.CLIENT); } The package gets send on PlayerLoggedInEvent @SubscribeEvent public void onEntityJoinWorld(PlayerEvent.PlayerLoggedInEvent event) { BloodCore.get(event.player).SyncWithServer(); } What it calls in my IEEP public void SyncWithServer(){ VampireMain.Network.sendTo(new TestPacket(player.getEntityId()),(EntityPlayerMP) player); } Here's the Log from the second client https://gist.github.com/anonymous/674535f7e4ca01055389
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
thanks it works now
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
oh.. i thought that the commonProxy got run server and client side, just trying to keep the code clean. Never mind i moved everything from the preinit method back but the client still have the problem of return NullPointerException client log after login to server https://gist.github.com/anonymous/6a67c1f2464f5eeb9e33 method called by package @Override public void syncWithServerHandler(int currentBlood,int level,int type) { EntityPlayer player = Minecraft.getMinecraft().thePlayer; BloodCore bloodCore = BloodCore.get(player); bloodCore.setCurrentBlood(currentBlood); bloodCore.setVampireLevel(level); bloodCore.setVampireType(type); } current preInit @Mod.EventHandler public void preInit(FMLPreInitializationEvent event) { network = NetworkRegistry.INSTANCE.newSimpleChannel(Referance.MODID); network.registerMessage(syncWithServer.Handler.class, syncWithServer.class, 0, Side.CLIENT); VampireRegister.registerVampire(new BloodVampire()); ConfigurationHandler.init(ConfigFile); FMLCommonHandler.instance().bus().register(new ConfigurationHandler()); } the event that starts it all @SubscribeEvent public void onEntityJoinWorld(EntityJoinWorldEvent event){ if (!event.entity.worldObj.isRemote && event.entity instanceof EntityPlayer) { BloodCore.get((EntityPlayer) event.entity).syncWithServer(); } } the syncWithServer method public void syncWithServer() { if(!player.worldObj.isRemote) vampiric.network.sendTo(new syncWithServer(this.CurrentBlood,this.VampireLevel,this.VampireType,this.player.getDisplayName().getUnformattedText()),(EntityPlayerMP) player); } can it be a 1.8 forge bug?
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
i register the IEEP in EntityConstruction event @SubscribeEvent public void handleConstruction(EntityEvent.EntityConstructing event) { if (event.entity instanceof EntityPlayer && BloodCore.get((EntityPlayer) event.entity) == null) { BloodCore.register((EntityPlayer) event.entity); } } and it calls this method public static void register(EntityPlayer player) { player.registerExtendedProperties(BloodCore.PROP_NAME, new BloodCore(player)); } and my eventHandler are registered by my commonProxy public void preInit(){ ConfigurationHandler.init(ConfigFile); FMLCommonHandler.instance().bus().register(new ConfigurationHandler()); } @Mod.EventHandler public void preInit(FMLPreInitializationEvent event) { network = NetworkRegistry.INSTANCE.newSimpleChannel(Referance.MODID); network.registerMessage(syncWithServer.Handler.class, syncWithServer.class,0, Side.CLIENT); proxy.preInit(); proxy.registerVampires(); }
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
ok... but why does it return null (nullExeption) when i then try to use it with my IExtendedEntity... then? this is what the onMessage calls @Override public void syncWithServerHandler(int currentBlood,int level,int type) { EntityPlayer player = Minecraft.getMinecraft().thePlayer; BloodCore bloodCore = BloodCore.get(player); <----- NullPointerException here when trying to connect to server bloodCore.setCurrentBlood(currentBlood); bloodCore.setVampireLevel(level); bloodCore.setVampireType(type); } the Bloodcore.get method looks like this public static BloodCore get(EntityPlayer player) {return (BloodCore) player.getExtendedProperties(PROP_NAME);}
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
idea says EntityPlayerSP for me http://puu.sh/dyqxM/78a96e7327.png
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
ah, ok didn't think i should register it there but there are sometimes java just confuses me --EDIT Minecraft.getMinecraft.thePlayer still returns null --EDIT ok if i make it print to console it does not return null then it return EntityPlayerSP witch is a bit problematic for my get method in a IExtendedEntity... only accepts EntityPlayer and if i try to convert it to a EntityPlayer EntityPlayer player = (EntityPlayer) Minecraft.getMinecraft.thePlayer; idea says (EntityPlayer) are not in use/necessary.
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
I've read a lot of java but I'm still not sure what delegate means or does I've try'ed to register the packet in mine @SidedPoxy (ClientProxy) but that made Minecraft.getMinecraft.thePlayer return an nullExpection
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
I've try'ed using Minecraft.getMinecraft().thePlayer and makes the server crash https://gist.github.com/anonymous/e531a46eeb7ba5b27804
-
[1.8] can't find a way to get player in packets (IMessageHandler) [Solved]
i'm trying to sync some numbers from server to client but i need to now the player before i can set the numbers public static class Handler implements IMessageHandler<syncWithServer,IMessage> { @Override public IMessage onMessage(syncWithServer message, MessageContext ctx) { EntityPlayer player = ctx.getServerHandler().playerEntity.worldObj.getPlayerEntityByName(message.player); BloodCore bloodCore = BloodCore.get(player); bloodCore.setCurrentBlood(message.currentBlood); bloodCore.setVampireLevel(message.level); bloodCore.setVampireType(message.type); return null; } } with this as the code i get this error message https://gist.github.com/anonymous/e497758f2a16710a720d when this happens the client does not crash it just say a fatal error has occured, this connection is terminated. I've also try'ed to get the player client side (the handler is client sided) but when i do that the server crashes on startup this is how i register the packets and made the network channel (yes it is in preinit) network = NetworkRegistry.INSTANCE.newSimpleChannel(Referance.MODID); network.registerMessage(syncWithServer.Handler.class, syncWithServer.class,0, Side.CLIENT); my packet class itself public class syncWithServer implements IMessage{ int currentBlood,level,type; String player; public syncWithServer() {} public syncWithServer(int currentBlood,int level,int type, String player) { this.currentBlood = currentBlood; this.level = level; this.type = type; this.player = player; } @Override public void toBytes(ByteBuf buf) { buf.writeInt(currentBlood); buf.writeInt(level); buf.writeInt(type); ByteBufUtils.writeUTF8String(buf,player); } @Override public void fromBytes(ByteBuf buf) { this.currentBlood = buf.readInt(); this.level = buf.readInt(); this.type = buf.readInt(); } public static class Handler implements IMessageHandler<syncWithServer,IMessage> { @Override public IMessage onMessage(syncWithServer message, MessageContext ctx) { EntityPlayer player = ctx.getServerHandler().playerEntity.worldObj.getPlayerEntityByName(message.player); BloodCore bloodCore = BloodCore.get(player); bloodCore.setCurrentBlood(message.currentBlood); bloodCore.setVampireLevel(message.level); bloodCore.setVampireType(message.type); return null; } } }
-
[1.7.10]some questions for using apis
i try'ed that and only one of the 3 apis i wan't to use worked what i want to use is ae2, buildcraft, thaumcraft 4 the weird part is that for those apis that don't work (the way the tutorial says how to do) i can't see the classes but the folders are there http://puu.sh/atLSI/397da42ea8.PNG
IPS spam blocked by CleanTalk.