Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Draco18s

Members
  • Joined

  • Last visited

Everything posted by Draco18s

  1. It's this. You're causing Minecraft to load the texture from disk and reallocate memory for it (and then immediately discard it) every frame.
  2. How would I do that? http://en.wikipedia.org/wiki/Method_overriding
  3. Well I can tell you right now that this: @Override public void updateEntity() { this.moveEye(); } @SideOnly(Side.CLIENT) public void moveEye() { //... } Will crash the dedicated server.
  4. ...and rather than sending the data when the typer hits "done" you send it immediately as soon as it changes.
  5. Ah, I know what it is. You need to have a constructor that takes a block in its constructor, because the method is called via Reflection and Forge doesn't know that you've given a 0-parameter constructor and passed the block yourself. In other words: you thought you were being clever and instead Forge is saying, "no you idiot, that's bad!" public ItemBlockCoalGun(Block b) { super(b); setMaxStackSize(1); setUnlocalizedName("coal_gun"); } It's to insure that the Block you're registering the ItemBlock for is actually passed to the ItemBlock class.
  6. That depends. What is UnLogicII.coal_gun ?
  7. Diamond enchantability is lower than iron, presumably, because it's also the most efficient and most durable already. As for efficiency, yes, it's just an increase with each tier with gold being super fast and super enchantable so that it's actually useful (and still no one uses it).
  8. 1) Your block is configured to be replaceable (look at Snow_Layer and Tall_Grass) which it should not be. 2) By not having a collision volume for raytracing, the game doesn't see your block for the purposes of interaction. Water, lava, and air (along with most other fluids) are like this because you shouldn't be prevented from acting when inside these non-solid blocks.
  9. The fastest way to do it would be to access the chunk's extendedblockstorage arrays directly. Build the structure, then in a last-pass do a standard setBlock() somewhere (possibly several?) to update the lighting once, rather than after every block.
  10. I've seen this when the dedicated server is in offline mode and a client connects. There's an internet connection, but the server (having the server.properties file say that it's offline) just doesn't fetch the UUIDs. Keybounce has his server set up that way so that for storytelling purposes he can do name-changes and have "NPCs" for a Youtube series he's doing. The official name-change service is not sufficient (requiring a 30 day wait between changes!) That is: the client sends a valid UUID that Mojang recognizes, but the server can't find a player with that UUID.
  11. For players, uuid is always and everywhere the same, get uuid and get player: UUID uuid = EntityPlayer.func_146094_a(player.getGameProfile()); EntityPlayer p = world.func_152378_a(uuid); For entities: entity.getUniqueID() or entity.getPersistentID() For entity getters, you will need to loop through loaded entities and check if uuid matches... I'll just point out that this doesn't work for servers that are in Offline mode, because it doesn't retrieve UUIDs from Mojang. http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/1291999-unique-artifacts-powerful-randomly-generated-items?comment=1408
  12. No. They are not. In 1.7 its just a byte value and it has no meaning other than what the code does with it. In 1.8, its stored the same way (as a byte value) but translated into an enum by the code.
  13. Yes. Render multiple passes and return different values. https://github.com/Draco18s/Artifacts/blob/master/main/java/com/draco18s/artifacts/item/ItemArtifact.java#L106-147
  14. By "during play" do you mean "the player activates an item/places a block/does a thing" or something else?
  15. http://www.minecraftforge.net/forum/index.php/topic,22764.0.html
  16. You don't need a custom entity for this. https://github.com/Draco18s/Artifacts/blob/master/main/java/com/draco18s/artifacts/item/ItemArtifact.java#L366
  17. Actually it does. Just not most of the time. How do you think the boat item works?
  18. Hover over it and get your IDE to prompt you with hints. Or import manually.
  19. public void onBucketFill(FillBucketEvent event) { Uh. There's something missing here...
  20. You...don't understand how ModelResourceLocation works, do you? The first parameter is the MODID, the second parameter is the filename. You're adding the item's unlocalized name to the wrong part. Also, setTextureName() and getTextureName() are things. No need to substring the unlocalized name. I blame Pahmir.
  21. The vanilla behavior is: Always replace on metadata / BlockState change. Forge gives you the possibility to change it. Yes, fine, but why does forge supply the default that it does? e.g. inconsistent with prior behavior.
  22. Makes me wonder why Forge doesn't patch that. Unless this behavior is the patch, in which case, I question someone's sanity.
  23. Ah, for specific types. Ok, then yeah. I was thinking more like "wool and planks" not "torches."
  24. Question: Why do you loop through the entire structure, placing only the non-meta blocks, then loop through the whole structure a second time for meta blocks? Why not do both in the same pass?
  25. Uh, worldgen, or some other time? Because generating a whole chunk is 16,384 blocks just to get to sealevel.

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.