Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Daniel Rollins

Members
  • Content Count

    28
  • Joined

  • Last visited

Everything posted by Daniel Rollins

  1. I never did get an answer but I partially solved my issue when I upgraded to 1.16.2 since the new vanilla dimension system includes a tag for changing the sky type. I can't control exactly how much fog, or whether I can get stars without a sun, but I can get either an overworld sky, nether sky, or end sky. For my purposes, getting a nether sky got me most of what I wanted since it gave me a decent level of fog and took away the sun/stars/etc. I had another dimension where I wanted just the stars and so far haven't found a solution to that other than to set the time to midnight and ignore the s
  2. In my entity I made a function like this (you can name the function whatever you want since you are not overriding anything): public static AttributeModifierMap.MutableAttribute setCustomAttributes() { return MobEntity.func_233666_p_().func_233815_a_(Attributes.MOVEMENT_SPEED, (double)0.5F).func_233815_a_(Attributes.MAX_HEALTH, 20.0D).func_233815_a_(Attributes.ATTACK_DAMAGE, 5.0D); } In my main class in the setup function I had a deferredWorkQueue where I dealt with the function above like this: DeferredWorkQueue.runLater(() -> {
  3. Hi, I am trying out the new custom dimension/dimension_type JSONs and have some custom biomes (in code, not the 1.16.2 snapshot JSONs). How do I change the sky? I see in the biome I can change the sky color and fog but I always have a sky (sun/moon/stars). I want to do something more like the end or the nether (no sun/moon/stars, and have a definite sky color in all directions with a heavy fog). In 1.15.2 I could override isSurfaceWorld() and return true to get a normal sky or false to get no sky. I could also return true on doesXZShowFog() to get fog in the distance and if I returned any
  4. Nevermind. Recent forge update made FluidTags#makeWrapperTag() public so I can use that now.
  5. Hi, How do we set up FluidTags in 1.16.1? In 1.15.2 there was a Wrapper class within FluidTags and was able to do this: public static Tag<Fluid> MY_FLUID = new FluidTags.Wrapper(new ResourceLocation(Main.MODID, "my_fluid")); That subclass is gone now and I can't seem to find the new way to set up those tags. Thanks
  6. Hi, In 1.15.2 in our custom entity class you had a function called registerAttributes where you could set MAX_HEALTH, MOVEMENT_SPEED, ATTACK_DAMAGE, etc. Like this: @Override protected void registerAttributes() { super.registerAttributes(); this.getAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(20.0D); this.getAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.5D); this.getAttributes().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(5.0D); this.getAttribute(SWIM_SPEED).se
  7. Thank you. I didn't realize it kept every possible combination mapped, that would be huge. I'm looking into the IDynamicBakedModel now. Do you happen to know where I can find any documentation on it? So far I'm just finding different people's code but not really much explanation (probably just looking in the wrong place).
  8. Hi, I have created a container object to store items. I am looking to make it kind of like a shelf in real life (think texture changing based off of what slots are filled to show the item in that part of the shelf). My container only accepts certain items so I can have a texture for the empty shelf, one for the full shelf and use a multipart blockstate JSON to overlay the filled items (basically overlay a part of the filled shelf onto the empty shelf corresponding to the location of the item). The way I am attempting it is to create several blockstates (slot0, slot1, slot2, ...slot17) as
  9. Hi, I've been hearing a lot about Deferred Registries recently. Some people seem to say this is the new/better way to register everything and to change everything over to the new way. Other people seem to indicate that it is useful for some things and not others. Some people have mentioned certain things not working with deferred registries. Rather than go off of hearsay and people who probably don't know much about the subject, I'd like to hear from you all the truth about this. Is Deferred registries the new way, replacing the old? Should I be changing all my Registry Events to deferred
  10. Hi, I am trying to make a custom sign but it isn't working. I'm not really trying to make a fully custom sign, I just want to have a new additional sign that uses a different texture but behaves the same as the regular signs. (I don't want to override the textures of the regular signs because I want them too). The 2 problems I have with my sign are: 1. No texture (not sure where the texture for signs is declared but blockstate and model jsons do not have them and I haven't been able to find them in code), 2. When placing the sign, it doesn't open the sign GUI. The way I coded it was
  11. Is there a place I could see the error? It didn't show up in the debug log.
  12. Never mind, I figured it out. That particular block doesn't have a FACING property, it has a HORIZONTAL_FACING property. Use the right one and the code works.
  13. Sorry, I should have been more clear. The game doesn't crash, the command dies midway through. I added logger commands and can tell that it stops functioning at the exact statement above. I also get "An unexpected error occurred trying to execute that command" in the chat window and in the log.
  14. Hi, I am trying to write a custom command that finds specific blocks (with certain blockstates) and replaces them with other blocks with specific blockstates. I tried capturing a blockstate like this: BlockState sourceblock = Blocks.RED_GLAZED_TERRACOTTA.getDefaultState().with(BlockStateProperties.FACING, Direction.NORTH); and it crashes. What am I doing wrong? BTW: If I do it without the ".with(BlockStateProperties.FACING, Direction.NORTH)" part it works but then I can't get a specific blockstate. I don't want to replace all of a particular block, just all of a particular blockstate
  15. Hi, I have a GUI that extends Screen. It is similar to how a writable_book works. There is not a container and no tileentity. The Gui pulls data from NBT from the Item and uses a network handler to send the data to the server. The Gui comes up from an Item by using onItemRightClick. I currently call it from that function like this: Minecraft.getInstance().displayGuiScreen(new MyGuiScreen(playerIn, itemstack, handIn)); That has been working fine until I put my mod on a Dedicated Server and got this error at startup: "Attempted to load class net/minecraft/client/gui/screen/Scree
  16. Thank you everyone for your help. One more question: Is it possible to edit the actual Minecraft base code? It seems to be read-only in Eclipse. I found the part of the code where it does the block renames using the data fixer upper. If I could just add several additional lines of code to the function I think I could have it take care of my blocks as well. It seems like such a simple fix if I could just edit it, otherwise I'm not sure how to do it.
  17. So basically at the moment we can't bring over a modded world from 1.12.2 to 1.13 or 1.14? All we can do it get our mod ready for the new version and build everything in the world from scratch or wait for the new DataFixer system? What about that missingMapping thing. Would that help?
  18. Hi, I hope someone can point me in the right direction. I built a mod in 1.12.2 with lots of custom blocks which I used to build things in the world. I now have the mod working in 1.14.4 (and even in 1.13.2 along the way). The problem is that when I load one of my 1.12.2 worlds in 1.13.2 or in 1.14.4, all my custom blocks are gone from the world. I have them in the inventory so I can use them and I kept all the same names, but all my stuff only has the vanilla blocks. The custom blocks are just gone from anything I built. Is there something I'm missing? I figured keeping the block names the s
  19. Hi, I am making a custom command that included an EntityArgument but I don't want to actually parse that argument into entities. My custom command is like a custom teleport command that figures out the destination and then calls the real teleport command with the same source EntityArgument and the destination that my command figures out. I don't to just grab a string because I won't have the suggestions and validation that I normally get when using EntityArgument but I can't pass the parsed entities to the real teleport command as far as I know. Is there something I'm missing here? How can I g
  20. Sorry, didn't see that. I'll just go with more classes and using the getHarvestLevel & getHarvestTool methods. Thank you
  21. Thank you for your reply. If I have to create more classes then I guess I have to but I was wondering if there was anything I could do with this (found in Block Class): static { net.minecraftforge.common.ForgeHooks.setBlockToolSetter((block, tool, level) -> { block.harvestTool = tool; block.harvestLevel = level; }); I'm not super great with Java yet so I'm not sure how I would use this or if it would be easier to just create the extra classes. Thanks
  22. Hi, is there a way to set the block harvest level and tool without having to override the getHarvestTool and getHarvestLevel functions? Basically, how can I set the internal harvestTool and harvestLevel variables? Preferably I would like to be able to set them without putting them in the custom block classes. In my mod I tried to have less actual block classes by basically doing this: BlockList.new_block1 = new Block(Block.Properties.create(Material.IRON).hardnessAndResistance(20.0F, 27.0F).lightValue(0).sound(SoundType.METAL)).setRegistryName(location("new_block1")) # Using vanilla block
×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.