Posted August 18, 201213 yr Trying to submit a pull request but I am not being able to make a Forge .patch not including any fml code. Any help would be appreciated.
August 18, 201213 yr If you've done everything correctly, running update_patches should generate all your new patches, thats the exact script i use. I do Forge for free, however the servers to run it arn't free, so anything is appreciated. Consider supporting the team on Patreon
August 18, 201213 yr Author Oh thats easy, thanks dude. So I make a src_base folder in mcp folder. Then I place everything inside src into it. Then I make src_work and place src into it then modified source into src_work and run update_patches.sh? I need to use setup.sh.
August 18, 201213 yr Author That didn't work either. Can't even extract the FML stuff. So i'll have to do something about it. Just want you (Lex) to know that Entity.getEntityData is not working. So I made my own NBT thingy for forge. I'll post it in the requests thingy page.
August 18, 201213 yr Your failure to double click two scrips makes me instantly weary of anything you have to input. However, how exactly is getEntityData not working.. My tests show it working.. I do Forge for free, however the servers to run it arn't free, so anything is appreciated. Consider supporting the team on Patreon
August 18, 201213 yr Author It was always returning null meaning that the statements you put in read/write nbt were never called. I did test this. Sorry I meant that the data is never written to either the "level.dat" or the player.dat when using getEntityData
August 18, 201213 yr Author I don't see ForgeData http://www.minecraftforge.net/forum/index.php?topic=1312.msg11680#new
August 18, 201213 yr As long as you call getEntityData() it'll save it to the entity next time it is written. It's been working for quite some time. It does not save anything if getEntityData() was never called for that entity. So... Show me code. I do Forge for free, however the servers to run it arn't free, so anything is appreciated. Consider supporting the team on Patreon
August 18, 201213 yr Author Made a quick test mod, it was saying it was reading and all. But no ForgeData in the dats and the value went back to zero. Never read. package net.minecraft.src; import java.util.EnumSet; import net.minecraft.client.Minecraft; import net.minecraft.src.thirstmod.ThirstMod; import cpw.mods.fml.common.ITickHandler; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.Init; import cpw.mods.fml.common.Side; import cpw.mods.fml.common.TickType; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.registry.TickRegistry; @Mod(modid = "Test", version = "1.0.0") public class TestModNBT implements ITickHandler { private boolean shouldRead = true; private float randomValue; private int writeTime; @Init public void onLoad(FMLInitializationEvent event) { TickRegistry.registerTickHandler(this, Side.CLIENT); } @Override public void tickStart(EnumSet<TickType> type, Object... tickData) { } @Override public void tickEnd(EnumSet<TickType> type, Object... tickData) { if(ModLoader.getMinecraftInstance().currentScreen != null) { tickGui(ModLoader.getMinecraftInstance().currentScreen); } else if(ModLoader.getMinecraftInstance().thePlayer != null) { tickGame(ModLoader.getMinecraftInstance()); } } @Override public EnumSet<TickType> ticks() { return EnumSet.of(TickType.CLIENT); } @Override public String getLabel() { return null; } private void tickGui(GuiScreen gui) { if(gui instanceof GuiMainMenu) { shouldRead = true; //Just to make sure the data gets read and I don't get tricked. randomValue = 0f; } } private void tickGame(Minecraft minecraft) { if(shouldRead == true) { randomValue = minecraft.thePlayer.getEntityData().getFloat("value"); System.out.println("Data was read. Value is: " + randomValue); shouldRead = false; } else { randomValue = randomValue + 0.0000001f; writeTime++; if(writeTime > 100 /*5 seconds*/) { minecraft.thePlayer.getEntityData().setFloat("value", randomValue); System.out.println("Data was written"); System.out.println(randomValue); writeTime = 0; } } } } I know it used to work cause I used it! But now for some reason it doesn't. The code looks the same as in 1.2.5. Don't know what the problem is. I'll continue using the NBTEvent thing I made until you fix this or I find out out the make patches.
August 18, 201213 yr Well your issue there is fairly obvious. You're writing to the CLIENT entity. Not the server entity. Your client entity never gets saved. I do Forge for free, however the servers to run it arn't free, so anything is appreciated. Consider supporting the team on Patreon
August 18, 201213 yr In its list of players, go dig in the code to find it. I do Forge for free, however the servers to run it arn't free, so anything is appreciated. Consider supporting the team on Patreon
August 18, 201213 yr Author Done. Thanks EntityPlayerMP player = (EntityPlayerMP) ModLoader.getMinecraftServerInstance().getConfigurationManager().playerEntityList.iterator().next();
August 18, 201213 yr That.. is some horrible code. There is a function around there to get the player by name. Your code wont get you what you want if someone happened to join the server before you. I do Forge for free, however the servers to run it arn't free, so anything is appreciated. Consider supporting the team on Patreon
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.