Jump to content

rinart73

Members
  • Posts

    51
  • Joined

  • Last visited

Converted

  • Gender
    Male

Recent Profile Visitors

3904 profile views

rinart73's Achievements

Stone Miner

Stone Miner (3/8)

0

Reputation

  1. I'm trying to crate a small mod that uses Thaumcraft API. As you can see, it's not packed as jar file. I tried to archive it as jar and place in the libs category of my project. After that IntelliJ IDEA sees the thaumcraft package but no classes in it. I tried to add various 'compile' directives in the build.gradle file with no success. One of them actually messed up everything and IntelliJ didn't see any minecraft classes either. Please help. I searched but various tutorials only say what to do when you have a .jar file and Eclipse.
  2. How to achieve maximum performance with TESR if I'm going to make almost static blocks? In theory I need to make a lot of tile entities that are changing their view only on player interaction or when neighbor block changes. No animation on tick. Unfortunately I couldn't find a way to achieve my goal with usual json block models, because I need to deform block model by moving their vertices. And as I understand there was thing called ISBRH for 1.7.10 that was intended for custom but static models. It was removed in 1.8.
  3. For example I need to track down a sequence of events that happen with Player. Firstly he uses some item, then he is attacked by Skeleton and then he is in the water. Boom! Sequence is done, time to do some action. If he dies or relogs or world restarts, then sequence should be reset as well. Or if I just need to make some actions every X times when event happens. I don't really need this data to be saved, why should I make data files larger when I don't even use this data? So, I can return null instead of NBT Base Tag in serializeNBT?
  4. Basically I need to store a few values for Entities. I'm fine that this values will be reset to defaults on Entity death. And I don't want this values to be saved in files. The thing is, I must provide a Storage implementation to register Custom Capability. What should I do?
  5. At this point I already managed to get getActuallState to work (I said it a few posts above). So now getActualState method is called and the correct value is returned. But the model of block isn't changing until I'll force a block update. If I'll try to break block, it will emit particles with the correct texture. So the game just doesn't want to.. redraw block?
  6. Bump. Seriously, I have just one problem left. Anybody?
  7. UPD: I managed to get the game to call getActualState. Have no idea how. There is only one problem left. When I break blocks that don't see sky, they emit "no-sky" (dark) particles. And when I break blocks that're seeing sky, they emit "sees-sky" (white) particles. The only problem is that block that see sky are still having dark texture, that is weird. UPD: Ok, as I understand, there is no built-in system that detects that the game should re-render block that changed it's blockstate? I tried to push block with piston and it changed color. So in order to change just the model of block, I should trigger a full block update. It doesn't seem to be performance-wise thing. But since everybody's code works as intended (block model updates instantly) and mine is not, here is the code of my block's class. https://pastebin.com/pqracKUs
  8. No. And the thing is: If I'll remove this.setDefaultState(this.blockState.getBaseState().withProperty(SKY, false)); from the constructor, getActualState will be called by game. And the value can be false or true, but the block will ALWAYS look like the blockstate is always "true" for it. Also, there will be an ItemBlock with purple texture in CreativeTab. And it shouldn't be there. If I'll keep this line. There is only ItemBlock with metadata 0 (how it was intended to) and getActualState won't ever be called by the game. At this moment I just don't know why and how.
  9. Nothing happens, breakpoint is not hit. As I said, the game doesn't call it. Yes, I'm using Override annotation.
  10. I know that it's not set to true because if it will be set to true, I will see the other blockstate of the block, which has other texture. Also, I tried to log the value of ((World)worldIn).canBlockSeeSky(pos) every time this method is called. And it's not called during the game. So I'm expecting block to change it's appearance according to if it's exposed to sky or not and it just doesn't change it, becuase this method isn't called by the game.
  11. Nevermind, it was my mistake. I have other question now: Tutorial says: "If we want our block to have a property that is set not by metadata but by the surrounding blocks or other values, we have to override getActualState." @Override public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { return super.getActualState(state, worldIn, pos); } "This method allows us to modify the state which was calculated using the metadata. The calculated state is passed in as the argument "state". We can use .withProperty on this field to modify or add certain properties. For instance, we could add the property "sky" which is a boolean and true if the block has no other block above it." @Override public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { return state.withProperty(SKY, ((World)worldIn).canBlockSeeSky(pos)); } So, if the block can see sky, it should have property SKY set to true. The thing is that it doesn't works. It seems that the game doesn't call getActuallState at all. If I'll move this code to the updateTick() event and will enable randomTicks, it works fine. But in the getActuallState it doesn't
  12. Is there any way to have block with blockstates, but have it as ItemBlock in only one blockstate? I mean, for example, I have a block that changes it's blockstate depending on the surrounding area. So it has 2 states: default blockstate and a blockstate when certain conditions are met. But I want to have only default blockstate as an ItemBlock. What do I need to change? Don't register ItemBlock for meta-s other than 0 in mesher? Or don't register other blockstates in ModelLoader? Or what? When I'm trying to change anything, everything just breaks and I say hi to purple textures.
  13. Well, I adapted 1.8 tutorial for blockstates and it kinda works. But as for the item part of the block - it's just purple block in player hands - for any state. And when I tried to use "ModelBakery.registerItemVariants", it's got even worse. Now it's flying in front of player and has text with the name of the block variant. I'm following tutorial, I have JSON models for every state in the "models/block" and "models/item" directories. I'm going to ask for a tutorial again, because nor current tutorial, nor game code (which is actually different from what I see in the tutorials in the internet - for example it lack the using of ModelBakery.registerItemVariants and that stuff for blocks like carpets) helps me.
  14. Does it breaks/can break anything if I register most of the stuff in preInit? Because it's much more comfortable then just splitting everything into SubscribeEvents.
×
×
  • Create New...

Important Information

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