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.

GotoLink

Members
  • Joined

  • Last visited

Everything posted by GotoLink

  1. Since you want the player's name, you'll need a crafting handler. It would be really easy for Thaumcraft to call the crafting hook (ICraftingHandler) from Forge, bug the author about it if it isn't already doing that.
  2. You don't need a coremod You can raytrace, of course, but you can also: EntityPlayerMP#theItemInWorldManager would give all the information you want on the currently damaged block by corresponding player.
  3. Stay on server side if it affects the world: if(!world.isRemote) As for block overriding, once again, it isn't good to do so. If you want to change how a block "do things" different, there are other ways. I can't be more specific without you telling what you want to change.
  4. If Thaumcraft recipes are the same as vanilla...what is the question again ? You don't know how to use NBT ?
  5. You can't register that recipe. You'll have to register an ICraftingHandler for that. Set the minimum result (5) in your recipe, then in onSmelting(EntityPlayer player, ItemStack result) check the result for corresponding item, and add to its stackSize a new Random().nextInt(5). By the way: ((10 - 5) + 1) = 6
  6. No. Removing a block is raping the game. Why would you do that anyway ? It isn't like you need to remove Mojang things in order for yours to work. Quite the opposite actually.
  7. Vanilla furnace recipes are unique. If you use an item that another mod has already a furnace recipe for, you'll remove it. I'd recommend making a different furnace with such recipes.
  8. Well...you don't do anything when someone breaks the block.
  9. EntityLivingBase#onDeath(DamageSource) You put it into your mob class. That is called overriding the method, look it up in some Java course.
  10. There is no obvious way to get something like this. That value isn't run nor store anywhere. I'd go with using on a new list: Item#getSubItems(int,CreativeTabs,List) then get the list size.
  11. ChunkProviderEnd.class You can get it directly, it is public. There is no structure generation in the End, so you might as well do it the old fashioned way, using IWorldGenerator.
  12. Fix your mod load order. Every block and item should be registered in PreInit.
  13. The texture path, obviously.
  14. 1/LivingDeathEvent or EntityLivingBase#onDeath(DamageSource) 2/World#spawnEntityInWorld(Entity) 3/Entity.ticksExisted is an already existing countdown that you can use in Entity#onUpdate() 4/Entity#onInteractFirst for the right click 5/EntityLiving#targetTasks#addTask(int, EntityAI)
  15. Well obsidian is pretty rare...only appears naturally when water and lava collide. You may have found the IBlockAccess#getBlockMaterial(int,int,int) method.
  16. You can't override a static method. Most likely, that method exists and isn't static in the first place.
  17. 1)You can already look at minecraft and forge sources with setupDecompWorkspace. 2)This has nothing to do with gradle. There is nothing preventing someone to manage multiple projects in on workspace.
  18. That is called a world save. It is located into the saves folder. You can copy, rename and distribute it any number of time. By the way, the entire world can't be maped at its creation. The main part of Minecraft is procedural terrain generation.
  19. Due to an integer overflow error that Mojang won't fix, the globalEntityID has a very limited range of values. Which is why findGlobalUniqueEntityID was implemented (by ModLoader i presume?) to avoid conflict between such IDs. registerModEntity is implemented by Forge to deal with both issues at once. With this you don't need to care about conflicting id, as it uses internal id, and each mod has 256 of them, thus not very "limited". As a bonus, you also have more control over tracking range and such. In conclusion: Use registerModEntity. It is a lot better.
  20. You can add new pages to the wiki.
  21. The methods an interface defines are most of the time here for a reason. It should have been pretty obvious by looking at TickType javadoc.
  22. GotoLink replied to Mecblader's topic in Modder Support
    @Override public int damageDropped(int meta) { return meta; } @Override public int idDropped(int meta, Random random, int fortune) { return theOtherBlock.blockID; }
  23. CommandWeather is hard to find ? try our latest product of the most mind-blowing technology: the "Search" tool. Can't believe it ? the first trillion uses is free of charge, every day of the month till the end of time Our company won't be responsible for any damage done to your brain when using our product.
  24. Remove the getEntity() method. It is 100% useless. Use the entity instance that is given to you by the event.
  25. You have two of FMLInitializationEvent. It is highly unlikely going to work.

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.