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. They won't. You want it back the way it was? MOD IT. Oh wait, someone already did. https://minecraft.curseforge.com/projects/classic-combat
  2. Don't make coremods.
  3. PotionEffects are what get applied to entities.
  4. Caused by: java.io.FileNotFoundException: mff:models/block/absynthium_slab_top.json Caused by: java.io.FileNotFoundException: mff:models/block/shelving_white.json Caused by: java.io.FileNotFoundException: mff:models/item/shelf_deco1.json And three or so MissingVariantException for the lamp1 I don't see an error related to the backsplash_base.
  5. You will need to post more. Use Pastebin
  6. This. Always this. You, as a caller, should not care what the implementation is, only that it does what it says it does. You cannot, and should not ever, "take shortcuts" because of what the implementation does.
  7. No. Use this: ItemStack stack = event.getBlockState().getPickBlock(state, null, world, pos, player) Pass a raytraceresult if you can, but no vanilla blocks use it and its highly unlikely that any mod block will either. That's because you should never be calling getMetaFromState() yourself. Leaves have data values that are for decay that are not relevant to the resulting item. Similarly wool blocks have metadata values that are backwards from their item form.
  8. Not only does the server not need to know about the model, it cannot know. The attempt to call that method on the server will crash it with a ClassNotFoundException
  9. By this we mean: Tell us what you want your user to see/do/interact with/have happen. Do no explain your attempts to code it.
  10. MyWorldSavedData.get(any_world_ref).amount_of_full_moons? You'd have to make it a public variable (or add a getter) though.
  11. If you have red lines it is NOT CORRECT.
  12. The title and description of this very forum:
  13. I haven't actually used it. So it's possible that you're right. Buut...there is no blockstate or model file for Air.
  14. (I swear I've seen it somewhere though... Hmm...) Found it: /** * The type of render function called. MODEL for mixed tesr and static model, MODELBLOCK_ANIMATED for TESR-only, * LIQUID for vanilla liquids, INVISIBLE to skip all rendering */ public EnumBlockRenderType getRenderType(IBlockState state) { return EnumBlockRenderType.INVISIBLE; }
  15. I might have the value wrong, but I was sure there was a BlockRenderLayer that was NONE or INVISIBLE or similar.
  16. I rarely used variants when the variants were actual variants. The flowers in my Ore Flowers mod is pretty much the only thing at this point, and flattening it won't take too much work. Everything else is actually a property (Facing, Value, etc)
  17. Can't you also override getBlockLayer with? public BlockRenderLayer getBlockLayer() { return BlockRenderLayer.INVISIBLE; }
  18. Yes, its just that you have to do a lot of backwards math in some cases. You need to divide out the player's current tool (this is not a simple thing to do), modify the value, then multiply it back in. Oh, and you can't modify... Mining machines that don't use a fake player Explosion power (e.g. the block resistance property) "3x3" tools that don't (correctly / at all) fire events for secondary blocks
  19. I believe so. There's also a note in there about custom recipes need to be synced with the client, but I'm unsure what that means exactly. It says "don't just send the JSON file to make the client reparse it," but there's no good information on what you should do.
  20. Thought I'd share this here. https://gist.github.com/williewillus/353c872bcf1a6ace9921189f6100d09a Skimming over it I see that there have been some (for the better) MCP name changes (BlockSnow -> BlockSnowLayer, BlockSnowBlock -> BlockSnow) and that non-lower-case registry names will now throw an error instead of silently converting it. Lang files are now json (along with some other changes to the folder structure that are easily automated to update) Advancements, functions, loot tables, recipes, and structures moved from assets/ to data/. ALL metadata (magic numbers) is gone. e.g. Tool damage is now handled via NBT. Item variants that used metadata should be flattened (new Item instances); don't NBT hack your way to victory. Remove your getMetaFromState/getStateFromMeta methods, they are no longer needed. If you were saving blockstates using registry name + meta, you should now use NBTUtil.read/writeBlockstate. See how Endermen save their carried block for an example. Worldgen is now its own separate thread(s). This may be a huge issue for some mods, as it will require a check for thread safety. Block attributes (material or hardness) are now final. This is a bit of a disappointment for me, as while in 1.12 I wasn't fiddling with them, my old (un-updated) Harder Underground did increase the hardness of every shovel-diggable block. And I would like to do that again some day. There's lots of superinterfaces on world now representing different things you can do (e.g. there's an interface for read-only access to the world). If possible, try using the least specific one. This makes sense to me and I support that notion. It'll probably be tough to get used to, but will be better in the end, as it reduces the reliance on World as a a hard reference and allows for alternate implementations without breaking stuff. Multiple kinds of air. If you weren't already using IBlockState.isAir, now you have to.
  21. Funny how Lex said that already:

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.