Jump to content

xana43

Members
  • Posts

    7
  • Joined

  • Last visited

xana43's Achievements

Tree Puncher

Tree Puncher (2/8)

0

Reputation

  1. I almost got it working, I made an interface for both the master tile entity and the blocks that make up the multiblock where when the block is placed it finds the master in an area and then sends the check method I made for it to check if the blocks are valid
  2. so here's the issue at hand. I've made a tile entity that uses the block pattern interface to check if the multiblock that it's part of is complete/valid. I have it set up so that it checks the structure of the neighbor is changed. but my issue is this @Override public void neighborChanged(final BlockState pState, final Level pLevel, final BlockPos pPos, final Block pBlock, final BlockPos pFromPos, final boolean pIsMoving) { super.neighborChanged(pState, pLevel, pPos, pBlock, pFromPos, pIsMoving); if(pLevel.getBlockEntity(pPos) instanceof ScannerTileEntity scannerTile) { //CodeLyokoMain.Log.info("check"); if(!pLevel.isClientSide()) { scannerTile.check(); } //if(level.getBlockState(pos.above().above()).getBlock() == ModBlocks.SCANNER_TOP.get()) //{ // scannerTile.check(); //} } } it only checks the block RIGHT next to it in all directions what I want is to check is a radius if any block has changed in these states, but I am unsure how to check that. one of the thoughts I've had is to call the super again but change the pFromPos to pFromPos.above()
  3. oh that's what you mean, well I tried to implement I Item handler, but it seemed to be not the thing I was looking for (a lot more data needed to be sent to it than was available) so I decided to try a more simpler route. I extended INBTSerializeable<ListTag> then made a hashmap that held a UUID and a ListTag, and used the methods that are part of the inventory class (I.E. player.getInventory().save()) and loaded the map with that, then serialized it using a forloop on it's keyset and returned each element etc etc.
  4. how would I go about doing that? I've been trying for the past hour and i'm really confused, is it that I need to extend the item handler in the capability class or add an item handler to the player and reference that?
  5. well now i'm confused, because the player can't provide an Item handler, only the raw inventory class that it contains, i'm not sure if that's the same thing, but i'll try it and see what happens
  6. huh, that's good to know that it handles all that now, because back when I first started modding (1.12) IItem handler didn't use to sync with the server properly
  7. I'm working on a pretty advanced mod that has to muck about with dimensions and changing the entire player inventory between these dimensions. I currently have this Capability https://github.com/xana43/CodeLyoko-Legacy/blob/MC-1.18/src/main/java/com/Ultra_Nerd/CodeLyokoLegacy/player/Dimension/DimensionCapabilities.java and it's registered here https://github.com/xana43/CodeLyoko-Legacy/blob/MC-1.18/src/main/java/com/Ultra_Nerd//CodeLyokoLegacy/player/Capabilities/CapabilityRegistration.java and like most of the mod functions i'm doing I'm defining the server message here https://github.com/xana43/CodeLyoko-Legacy/blob/MC-1.18/src/main/java/com/Ultra_Nerd//CodeLyokoLegacy/Network/Util/CapabilityPlayerInventorySync.java and adding the capability packet handler here https://github.com/xana43/CodeLyoko-Legacy/blob/MC-1.18/src/main/java/com/Ultra_Nerd//CodeLyokoLegacy/Network/Util/PacketHandler.java this issue i've been having is that for some reason whenever the inventory save is triggered (currently it's triggered whenever the player changes a dimension and the dimension they're changing to isn't a vanilla dimension) the log keeps saying this https://pastebin.com/VPDMYry3 I've dealt with handling simple values in the Byte buffer (such as normal NBT as defined by the player Class capability) but i'm confused on how reading a collection works. any help would be appreciated (also sorry if the formatting it's the prettiest i'm a bit rusty on my java because i've mainly been working on other projects that are in C# or javascript)
×
×
  • Create New...

Important Information

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