Fixed blocks not saving data

This commit is contained in:
Tschipp 2021-12-24 23:54:33 +01:00
parent df6498a236
commit 28c4d4a2f9
16 changed files with 130 additions and 128 deletions

View File

@ -35,7 +35,7 @@ public class RenderEntityEvents
public static final Map<String, Entity> nbtEntityMap = new HashMap<>(); public static final Map<String, Entity> nbtEntityMap = new HashMap<>();
public static Entity getEntity(ItemStack carried, Level world) public static Entity getEntity(ItemStack carried, Level level)
{ {
String nbt = ItemCarryonEntity.getPersistentData(carried).toString(); String nbt = ItemCarryonEntity.getPersistentData(carried).toString();
if (nbtEntityMap.containsKey(nbt)) if (nbtEntityMap.containsKey(nbt))
@ -43,7 +43,7 @@ public class RenderEntityEvents
return nbtEntityMap.get(nbt); return nbtEntityMap.get(nbt);
} }
Entity entity = ItemCarryonEntity.getEntity(carried, world); Entity entity = ItemCarryonEntity.getEntity(carried, level);
nbtEntityMap.put(nbt, entity); nbtEntityMap.put(nbt, entity);
return entity; return entity;
@ -51,7 +51,7 @@ public class RenderEntityEvents
@OnlyIn(Dist.CLIENT) @OnlyIn(Dist.CLIENT)
@SubscribeEvent @SubscribeEvent
public void onWorldUnload(WorldEvent.Unload event) public void onLevelUnload(WorldEvent.Unload event)
{ {
nbtEntityMap.clear(); nbtEntityMap.clear();
} }
@ -64,7 +64,7 @@ public class RenderEntityEvents
@SubscribeEvent @SubscribeEvent
public void renderHand(RenderHandEvent event) public void renderHand(RenderHandEvent event)
{ {
Level world = Minecraft.getInstance().level; Level level = Minecraft.getInstance().level;
Player player = Minecraft.getInstance().player; Player player = Minecraft.getInstance().player;
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
int perspective = CarryRenderHelper.getPerspective(); int perspective = CarryRenderHelper.getPerspective();
@ -79,7 +79,7 @@ public class RenderEntityEvents
if (ModList.get().isLoaded("realrender") || ModList.get().isLoaded("rfpr")) if (ModList.get().isLoaded("realrender") || ModList.get().isLoaded("rfpr"))
return; return;
Entity entity = getEntity(stack, world); Entity entity = getEntity(stack, level);
if (entity != null) if (entity != null)
{ {
@ -117,7 +117,7 @@ public class RenderEntityEvents
Optional<EntityType<?>> type = EntityType.byString(entityname); Optional<EntityType<?>> type = EntityType.byString(entityname);
if (type.isPresent()) if (type.isPresent())
newEntity = type.get().create(world); newEntity = type.get().create(level);
if (newEntity != null) if (newEntity != null)
{ {

View File

@ -124,7 +124,7 @@ public class RenderEvents
@SubscribeEvent @SubscribeEvent
@OnlyIn(Dist.CLIENT) @OnlyIn(Dist.CLIENT)
public void onJoinWorld(EntityJoinWorldEvent event) public void onJoinLevel(EntityJoinWorldEvent event)
{ {
if (event.getEntity() instanceof Player) if (event.getEntity() instanceof Player)
{ {
@ -232,7 +232,7 @@ public class RenderEvents
@SubscribeEvent @SubscribeEvent
public void renderHand(RenderHandEvent event) public void renderHand(RenderHandEvent event)
{ {
Level world = Minecraft.getInstance().level; Level level = Minecraft.getInstance().level;
Player player = Minecraft.getInstance().player; Player player = Minecraft.getInstance().player;
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
int perspective = CarryRenderHelper.getPerspective(); int perspective = CarryRenderHelper.getPerspective();
@ -267,7 +267,7 @@ public class RenderEvents
matrix.mulPose(Vector3f.XP.rotationDegrees(8)); matrix.mulPose(Vector3f.XP.rotationDegrees(8));
} }
BakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, world, player) : tileStack.isEmpty() ? Minecraft.getInstance().getBlockRenderer().getBlockModel(state) : Minecraft.getInstance().getItemRenderer().getModel(tileStack, world, player, 0); BakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, level, player) : tileStack.isEmpty() ? Minecraft.getInstance().getBlockRenderer().getBlockModel(state) : Minecraft.getInstance().getItemRenderer().getModel(tileStack, level, player, 0);
CarryOnOverride carryOverride = ScriptChecker.getOverride(player); CarryOnOverride carryOverride = ScriptChecker.getOverride(player);
if (carryOverride != null) if (carryOverride != null)
@ -281,7 +281,7 @@ public class RenderEvents
{ {
ItemStack s = new ItemStack(b, 1); ItemStack s = new ItemStack(b, 1);
s.setTag(carryOverride.getRenderNBT()); s.setTag(carryOverride.getRenderNBT());
model = Minecraft.getInstance().getItemRenderer().getModel(s, world, player, 0); model = Minecraft.getInstance().getItemRenderer().getModel(s, level, player, 0);
} }
} }
} }
@ -313,10 +313,10 @@ public class RenderEvents
@SuppressWarnings({ "deprecation", "resource" }) @SuppressWarnings({ "deprecation", "resource" })
@OnlyIn(Dist.CLIENT) @OnlyIn(Dist.CLIENT)
@SubscribeEvent @SubscribeEvent
public void onRenderWorld(RenderLevelLastEvent event) public void onRenderLevel(RenderLevelLastEvent event)
{ {
Minecraft mc = Minecraft.getInstance(); Minecraft mc = Minecraft.getInstance();
Level world = mc.level; Level level = mc.level;
float partialticks = event.getPartialTick(); float partialticks = event.getPartialTick();
BufferSource buffer = MultiBufferSource.immediate(Tesselator.getInstance().getBuilder()); BufferSource buffer = MultiBufferSource.immediate(Tesselator.getInstance().getBuilder());
PoseStack matrix = event.getPoseStack(); PoseStack matrix = event.getPoseStack();
@ -328,7 +328,7 @@ public class RenderEvents
RenderSystem.disableCull(); RenderSystem.disableCull();
RenderSystem.disableDepthTest(); RenderSystem.disableDepthTest();
for (Player player : world.players()) for (Player player : level.players())
{ {
if (perspective == 0 && player == mc.player) if (perspective == 0 && player == mc.player)
continue; continue;
@ -345,7 +345,7 @@ public class RenderEvents
applyBlockTransformations(player, partialticks, matrix, block); applyBlockTransformations(player, partialticks, matrix, block);
BakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, world, player) : tileItem.isEmpty() ? mc.getBlockRenderer().getBlockModel(state) : mc.getItemRenderer().getModel(tileItem, world, player, 0); BakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, level, player) : tileItem.isEmpty() ? mc.getBlockRenderer().getBlockModel(state) : mc.getItemRenderer().getModel(tileItem, level, player, 0);
CarryOnOverride carryOverride = ScriptChecker.getOverride(player); CarryOnOverride carryOverride = ScriptChecker.getOverride(player);
if (carryOverride != null) if (carryOverride != null)
@ -359,7 +359,7 @@ public class RenderEvents
{ {
ItemStack s = new ItemStack(b, 1); ItemStack s = new ItemStack(b, 1);
s.setTag(carryOverride.getRenderNBT()); s.setTag(carryOverride.getRenderNBT());
model = mc.getItemRenderer().getModel(s, world, player, 0); model = mc.getItemRenderer().getModel(s, level, player, 0);
} }
} }
} }
@ -382,7 +382,7 @@ public class RenderEvents
} }
else if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemEntity && ItemCarryonEntity.hasEntityData(stack)) else if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemEntity && ItemCarryonEntity.hasEntityData(stack))
{ {
Entity entity = RenderEntityEvents.getEntity(stack, world); Entity entity = RenderEntityEvents.getEntity(stack, level);
if (entity != null) if (entity != null)
{ {
@ -402,7 +402,7 @@ public class RenderEvents
Optional<EntityType<?>> type = EntityType.byString(entityname); Optional<EntityType<?>> type = EntityType.byString(entityname);
if (type.isPresent()) if (type.isPresent())
newEntity = type.get().create(world); newEntity = type.get().create(level);
if (newEntity != null) if (newEntity != null)
{ {

View File

@ -35,11 +35,11 @@ public class PositionClientEvents
IPosition cap = player.getCapability(PositionProvider.POSITION_CAPABILITY).orElse(new TEPosition()); IPosition cap = player.getCapability(PositionProvider.POSITION_CAPABILITY).orElse(new TEPosition());
if (cap.isBlockActivated()) if (cap.isBlockActivated())
{ {
Level world = player.level; Level level = player.level;
BlockPos pos = cap.getPos(); BlockPos pos = cap.getPos();
if (world != null) if (level != null)
{ {
BlockEntity te = world.getBlockEntity(pos); BlockEntity te = level.getBlockEntity(pos);
if (te == null) if (te == null)
{ {
// player.openContainer = null; // player.openContainer = null;

View File

@ -32,13 +32,13 @@ public class PositionCommonEvents
public void onBlockRight(PlayerInteractEvent.RightClickBlock event) public void onBlockRight(PlayerInteractEvent.RightClickBlock event)
{ {
BlockPos pos = event.getPos(); BlockPos pos = event.getPos();
Level world = event.getWorld(); Level level = event.getWorld();
Player player = event.getPlayer(); Player player = event.getPlayer();
if (event.isCanceled() || player == null || player instanceof FakePlayer) if (event.isCanceled() || player == null || player instanceof FakePlayer)
return; return;
BlockEntity te = world.getBlockEntity(pos); BlockEntity te = level.getBlockEntity(pos);
if (te != null && player.getCapability(PositionProvider.POSITION_CAPABILITY).isPresent()) if (te != null && player.getCapability(PositionProvider.POSITION_CAPABILITY).isPresent())
{ {
IPosition cap = player.getCapability(PositionProvider.POSITION_CAPABILITY).orElse(new TEPosition()); IPosition cap = player.getCapability(PositionProvider.POSITION_CAPABILITY).orElse(new TEPosition());

View File

@ -68,7 +68,7 @@ public class ItemEntityEvents
public void onItemDropped(EntityJoinWorldEvent event) public void onItemDropped(EntityJoinWorldEvent event)
{ {
Entity e = event.getEntity(); Entity e = event.getEntity();
Level world = event.getWorld(); Level level = event.getWorld();
if (e instanceof net.minecraft.world.entity.item.ItemEntity eitem) if (e instanceof net.minecraft.world.entity.item.ItemEntity eitem)
{ {
ItemStack stack = eitem.getItem(); ItemStack stack = eitem.getItem();
@ -76,9 +76,9 @@ public class ItemEntityEvents
if (item == RegistrationHandler.itemEntity && ItemCarryonEntity.hasEntityData(stack)) if (item == RegistrationHandler.itemEntity && ItemCarryonEntity.hasEntityData(stack))
{ {
BlockPos pos = eitem.blockPosition(); BlockPos pos = eitem.blockPosition();
Entity entity = ItemCarryonEntity.getEntity(stack, world); Entity entity = ItemCarryonEntity.getEntity(stack, level);
entity.setPos(pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5); entity.setPos(pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5);
world.addFreshEntity(entity); level.addFreshEntity(entity);
ItemCarryonEntity.clearEntityData(stack); ItemCarryonEntity.clearEntityData(stack);
eitem.setItem(ItemStack.EMPTY); eitem.setItem(ItemStack.EMPTY);
@ -95,7 +95,7 @@ public class ItemEntityEvents
{ {
ItemStack main = player.getMainHandItem(); ItemStack main = player.getMainHandItem();
ItemStack off = player.getOffhandItem(); ItemStack off = player.getOffhandItem();
Level world = event.getWorld(); Level level = event.getWorld();
Entity entity = event.getTarget(); Entity entity = event.getTarget();
BlockPos pos = entity.blockPosition(); BlockPos pos = entity.blockPosition();
@ -108,7 +108,7 @@ public class ItemEntityEvents
if (entity instanceof Animal) if (entity instanceof Animal)
((Animal) entity).dropLeash(true, true); ((Animal) entity).dropLeash(true, true);
if (PickupHandler.canPlayerPickUpEntity((ServerPlayer) player, entity) && ItemCarryonEntity.storeEntityData(entity, world, stack)) if (PickupHandler.canPlayerPickUpEntity((ServerPlayer) player, entity) && ItemCarryonEntity.storeEntityData(entity, level, stack))
{ {
LazyOptional<IItemHandler> handler = entity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY); LazyOptional<IItemHandler> handler = entity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY);
@ -141,12 +141,12 @@ public class ItemEntityEvents
} }
else if (!main.isEmpty() && main.getItem() == RegistrationHandler.itemEntity && ItemCarryonEntity.hasEntityData(main) && !CarryOnKeybinds.isKeyPressed(player) && Settings.stackableEntities.get()) else if (!main.isEmpty() && main.getItem() == RegistrationHandler.itemEntity && ItemCarryonEntity.hasEntityData(main) && !CarryOnKeybinds.isKeyPressed(player) && Settings.stackableEntities.get())
{ {
Entity entityHeld = ItemCarryonEntity.getEntity(main, world); Entity entityHeld = ItemCarryonEntity.getEntity(main, level);
if (entity.invulnerableTime == 0 && entityHeld instanceof LivingEntity) if (entity.invulnerableTime == 0 && entityHeld instanceof LivingEntity)
{ {
if (!world.isClientSide && entityHeld.getUUID() != entity.getUUID() && entity.isAlive()) if (!level.isClientSide && entityHeld.getUUID() != entity.getUUID() && entity.isAlive())
{ {
double sizeHeldEntity = entityHeld.getBbHeight() * entityHeld.getBbWidth(); double sizeHeldEntity = entityHeld.getBbHeight() * entityHeld.getBbWidth();
@ -173,14 +173,14 @@ public class ItemEntityEvents
double tempY = entity.getY(); double tempY = entity.getY();
double tempZ = entity.getZ(); double tempZ = entity.getZ();
entityHeld.setPos(tempX, tempY + 2.6, tempZ); entityHeld.setPos(tempX, tempY + 2.6, tempZ);
world.addFreshEntity(entityHeld); level.addFreshEntity(entityHeld);
entityHeld.startRiding(topEntity, false); entityHeld.startRiding(topEntity, false);
entityHeld.teleportTo(tempX, tempY, tempZ); entityHeld.teleportTo(tempX, tempY, tempZ);
} }
else else
{ {
entityHeld.setPos(entity.getX(), entity.getY(), entity.getZ()); entityHeld.setPos(entity.getX(), entity.getY(), entity.getZ());
world.addFreshEntity(entityHeld); level.addFreshEntity(entityHeld);
entityHeld.startRiding(topEntity, false); entityHeld.startRiding(topEntity, false);
} }
@ -189,17 +189,17 @@ public class ItemEntityEvents
ItemEvents.sendPacket(player, 9, 0); ItemEvents.sendPacket(player, 9, 0);
event.setCanceled(true); event.setCanceled(true);
event.setCancellationResult(InteractionResult.FAIL); event.setCancellationResult(InteractionResult.FAIL);
world.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.HORSE_SADDLE, SoundSource.PLAYERS, 0.5F, 1.5F); level.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.HORSE_SADDLE, SoundSource.PLAYERS, 0.5F, 1.5F);
} }
else else
{ {
world.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.NOTE_BLOCK_BASS, SoundSource.PLAYERS, 0.5F, 1.5F); level.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.NOTE_BLOCK_BASS, SoundSource.PLAYERS, 0.5F, 1.5F);
} }
} }
} }
else else
{ {
world.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.NOTE_BLOCK_BASS, SoundSource.PLAYERS, 0.5F, 1.5F); level.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.NOTE_BLOCK_BASS, SoundSource.PLAYERS, 0.5F, 1.5F);
} }
} }
@ -246,16 +246,16 @@ public class ItemEntityEvents
public void onLivingUpdate(LivingUpdateEvent event) public void onLivingUpdate(LivingUpdateEvent event)
{ {
LivingEntity entity = event.getEntityLiving(); LivingEntity entity = event.getEntityLiving();
Level world = entity.level; Level level = entity.level;
ItemStack main = entity.getMainHandItem(); ItemStack main = entity.getMainHandItem();
if (!main.isEmpty() && main.getItem() == RegistrationHandler.itemEntity && ItemCarryonEntity.hasEntityData(main)) if (!main.isEmpty() && main.getItem() == RegistrationHandler.itemEntity && ItemCarryonEntity.hasEntityData(main))
{ {
BlockPos pos = entity.blockPosition(); BlockPos pos = entity.blockPosition();
BlockPos below = pos.relative(Direction.DOWN); BlockPos below = pos.relative(Direction.DOWN);
if (world.getBlockState(pos).getMaterial() == Material.WATER || world.getBlockState(below).getMaterial() == Material.WATER) if (level.getBlockState(pos).getMaterial() == Material.WATER || level.getBlockState(below).getMaterial() == Material.WATER)
{ {
Entity contained = ItemCarryonEntity.getEntity(main, world); Entity contained = ItemCarryonEntity.getEntity(main, level);
if (contained != null) if (contained != null)
{ {
float height = contained.getBbWidth(); float height = contained.getBbWidth();

View File

@ -97,7 +97,7 @@ public class ItemEvents
public void onItemDropped(EntityJoinWorldEvent event) public void onItemDropped(EntityJoinWorldEvent event)
{ {
Entity e = event.getEntity(); Entity e = event.getEntity();
Level world = event.getWorld(); Level level = event.getWorld();
if (e instanceof net.minecraft.world.entity.item.ItemEntity eitem) if (e instanceof net.minecraft.world.entity.item.ItemEntity eitem)
{ {
ItemStack stack = eitem.getItem(); ItemStack stack = eitem.getItem();
@ -106,23 +106,23 @@ public class ItemEvents
{ {
BlockPos pos = eitem.blockPosition(); BlockPos pos = eitem.blockPosition();
BlockPos finalPos = pos; BlockPos finalPos = pos;
BlockPlaceContext context = new DirectionalPlaceContext(world, pos, Direction.DOWN, stack, Direction.UP); BlockPlaceContext context = new DirectionalPlaceContext(level, pos, Direction.DOWN, stack, Direction.UP);
if (!world.getBlockState(pos).canBeReplaced(context) || !context.canPlace()) if (!level.getBlockState(pos).canBeReplaced(context) || !context.canPlace())
{ {
for (Direction facing : Direction.values()) for (Direction facing : Direction.values())
{ {
BlockPos offsetPos = pos.relative(facing); BlockPos offsetPos = pos.relative(facing);
BlockPlaceContext newContext = new DirectionalPlaceContext(world, offsetPos, Direction.DOWN, stack, Direction.UP); BlockPlaceContext newContext = new DirectionalPlaceContext(level, offsetPos, Direction.DOWN, stack, Direction.UP);
if (world.getBlockState(offsetPos).canBeReplaced(newContext) && newContext.canPlace()) if (level.getBlockState(offsetPos).canBeReplaced(newContext) && newContext.canPlace())
{ {
finalPos = offsetPos; finalPos = offsetPos;
break; break;
} }
} }
} }
world.setBlockAndUpdate(finalPos, ItemCarryonBlock.getBlockState(stack)); level.setBlockAndUpdate(finalPos, ItemCarryonBlock.getBlockState(stack));
BlockEntity tile = world.getBlockEntity(finalPos); BlockEntity tile = level.getBlockEntity(finalPos);
if (tile != null) if (tile != null)
{ {
var nbt = ItemCarryonBlock.getTileData(stack); var nbt = ItemCarryonBlock.getTileData(stack);
@ -149,14 +149,14 @@ public class ItemEvents
if (event.getPlayer() instanceof Player) if (event.getPlayer() instanceof Player)
{ {
Player player = event.getPlayer(); Player player = event.getPlayer();
Level world = player.getCommandSenderWorld(); Level level = player.getCommandSenderWorld();
ItemStack carried = player.getMainHandItem(); ItemStack carried = player.getMainHandItem();
if (!carried.isEmpty() && carried.getItem() == RegistrationHandler.itemTile || carried.getItem() == RegistrationHandler.itemEntity) if (!carried.isEmpty() && carried.getItem() == RegistrationHandler.itemTile || carried.getItem() == RegistrationHandler.itemEntity)
{ {
if (carried.getItem() == RegistrationHandler.itemTile) if (carried.getItem() == RegistrationHandler.itemTile)
{ {
CarryOnOverride override = ScriptChecker.inspectBlock(ItemCarryonBlock.getBlockState(carried), world, player.blockPosition(), ItemCarryonBlock.getTileData(carried)); CarryOnOverride override = ScriptChecker.inspectBlock(ItemCarryonBlock.getBlockState(carried), level, player.blockPosition(), ItemCarryonBlock.getTileData(carried));
if (override != null) if (override != null)
CarryOn.network.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) player), new CarrySlotPacket(player.getInventory().selected, player.getId(), override.hashCode())); CarryOn.network.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) player), new CarrySlotPacket(player.getInventory().selected, player.getId(), override.hashCode()));
else else
@ -164,7 +164,7 @@ public class ItemEvents
} }
else else
{ {
CarryOnOverride override = ScriptChecker.inspectEntity(ItemCarryonEntity.getEntity(carried, world)); CarryOnOverride override = ScriptChecker.inspectEntity(ItemCarryonEntity.getEntity(carried, level));
if (override != null) if (override != null)
CarryOn.network.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) player), new CarrySlotPacket(player.getInventory().selected, player.getId(), override.hashCode())); CarryOn.network.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) player), new CarrySlotPacket(player.getInventory().selected, player.getId(), override.hashCode()));
else else
@ -206,14 +206,14 @@ public class ItemEvents
if (e instanceof Player player && tracker instanceof ServerPlayer) if (e instanceof Player player && tracker instanceof ServerPlayer)
{ {
Level world = player.getCommandSenderWorld(); Level level = player.getCommandSenderWorld();
ItemStack carried = player.getMainHandItem(); ItemStack carried = player.getMainHandItem();
if (!carried.isEmpty() && carried.getItem() == RegistrationHandler.itemTile || carried.getItem() == RegistrationHandler.itemEntity) if (!carried.isEmpty() && carried.getItem() == RegistrationHandler.itemTile || carried.getItem() == RegistrationHandler.itemEntity)
{ {
if (carried.getItem() == RegistrationHandler.itemTile) if (carried.getItem() == RegistrationHandler.itemTile)
{ {
CarryOnOverride override = ScriptChecker.inspectBlock(ItemCarryonBlock.getBlockState(carried), world, player.blockPosition(), ItemCarryonBlock.getTileData(carried)); CarryOnOverride override = ScriptChecker.inspectBlock(ItemCarryonBlock.getBlockState(carried), level, player.blockPosition(), ItemCarryonBlock.getTileData(carried));
if (override != null) if (override != null)
CarryOn.network.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) tracker), new CarrySlotPacket(player.getInventory().selected, player.getId(), override.hashCode())); CarryOn.network.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) tracker), new CarrySlotPacket(player.getInventory().selected, player.getId(), override.hashCode()));
else else
@ -221,7 +221,7 @@ public class ItemEvents
} }
else else
{ {
CarryOnOverride override = ScriptChecker.inspectEntity(ItemCarryonEntity.getEntity(carried, world)); CarryOnOverride override = ScriptChecker.inspectEntity(ItemCarryonEntity.getEntity(carried, level));
if (override != null) if (override != null)
CarryOn.network.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) tracker), new CarrySlotPacket(player.getInventory().selected, player.getId(), override.hashCode())); CarryOn.network.send(PacketDistributor.PLAYER.with(() -> (ServerPlayer) tracker), new CarrySlotPacket(player.getInventory().selected, player.getId(), override.hashCode()));
else else
@ -298,28 +298,28 @@ public class ItemEvents
ItemStack main = player.getMainHandItem(); ItemStack main = player.getMainHandItem();
ItemStack off = player.getOffhandItem(); ItemStack off = player.getOffhandItem();
Level world = event.getWorld(); Level level = event.getWorld();
BlockPos pos = event.getPos(); BlockPos pos = event.getPos();
BlockState state = world.getBlockState(pos); BlockState state = level.getBlockState(pos);
if (main.isEmpty() && off.isEmpty() && CarryOnKeybinds.isKeyPressed(player)) if (main.isEmpty() && off.isEmpty() && CarryOnKeybinds.isKeyPressed(player))
{ {
ItemStack stack = new ItemStack(RegistrationHandler.itemTile); ItemStack stack = new ItemStack(RegistrationHandler.itemTile);
BlockEntity te = world.getBlockEntity(pos); BlockEntity te = level.getBlockEntity(pos);
if (PickupHandler.canPlayerPickUpBlock((ServerPlayer) player, te, world, pos)) if (PickupHandler.canPlayerPickUpBlock((ServerPlayer) player, te, level, pos))
{ {
player.closeContainer(); player.closeContainer();
world.levelEvent(1010, pos, 0); level.levelEvent(1010, pos, 0);
if (ItemCarryonBlock.storeTileData(te, world, pos, state, stack)) if (ItemCarryonBlock.storeTileData(te, level, pos, state, stack))
{ {
BlockState statee = world.getBlockState(pos); BlockState statee = level.getBlockState(pos);
CompoundTag tag = new CompoundTag(); CompoundTag tag = new CompoundTag();
tag = world.getBlockEntity(pos) != null ? world.getBlockEntity(pos).save(tag) : new CompoundTag(); tag = level.getBlockEntity(pos) != null ? level.getBlockEntity(pos).saveWithId() : tag;
CarryOnOverride override = ScriptChecker.inspectBlock(state, world, pos, tag); CarryOnOverride override = ScriptChecker.inspectBlock(state, level, pos, tag);
int overrideHash = 0; int overrideHash = 0;
if (override != null) if (override != null)
overrideHash = override.hashCode(); overrideHash = override.hashCode();
@ -330,8 +330,8 @@ public class ItemEvents
{ {
sendPacket(player, player.getInventory().selected, overrideHash); sendPacket(player, player.getInventory().selected, overrideHash);
world.removeBlockEntity(pos); level.removeBlockEntity(pos);
world.removeBlock(pos, false); level.removeBlock(pos, false);
player.setItemInHand(InteractionHand.MAIN_HAND, stack); player.setItemInHand(InteractionHand.MAIN_HAND, stack);
event.setUseBlock(Result.DENY); event.setUseBlock(Result.DENY);
event.setUseItem(Result.DENY); event.setUseItem(Result.DENY);
@ -344,7 +344,7 @@ public class ItemEvents
{ {
sendPacket(player, player.getInventory().selected, overrideHash); sendPacket(player, player.getInventory().selected, overrideHash);
emptyTileEntity(te); emptyTileEntity(te);
world.removeBlock(pos, false); level.removeBlock(pos, false);
player.setItemInHand(InteractionHand.MAIN_HAND, stack); player.setItemInHand(InteractionHand.MAIN_HAND, stack);
event.setUseBlock(Result.DENY); event.setUseBlock(Result.DENY);
event.setUseItem(Result.DENY); event.setUseItem(Result.DENY);
@ -354,7 +354,7 @@ public class ItemEvents
catch (Exception ex) catch (Exception ex)
{ {
sendPacket(player, 9, 0); sendPacket(player, 9, 0);
world.setBlockAndUpdate(pos, statee); level.setBlockAndUpdate(pos, statee);
if (!tag.isEmpty()) if (!tag.isEmpty())
{ {
BlockEntity.loadStatic(pos, statee, tag); BlockEntity.loadStatic(pos, statee, tag);
@ -444,9 +444,9 @@ public class ItemEvents
int carrySlot = original.getInventory().selected; int carrySlot = original.getInventory().selected;
ItemStack stack = player.getInventory().removeItemNoUpdate(carrySlot); ItemStack stack = player.getInventory().removeItemNoUpdate(carrySlot);
Level world = player.level; Level level = player.level;
ItemEntity item = new ItemEntity(world, 0, 0, 0, stack); ItemEntity item = new ItemEntity(level, 0, 0, 0, stack);
BlockPos pos = null; BlockPos pos = null;
Optional<BlockPos> bedpos = original.getSleepingPos(); Optional<BlockPos> bedpos = original.getSleepingPos();
if (bedpos.isPresent()) if (bedpos.isPresent())
@ -454,7 +454,7 @@ public class ItemEvents
if (pos == null) if (pos == null)
pos = player.blockPosition(); pos = player.blockPosition();
item.setPos(pos.getX(), pos.getY(), pos.getZ()); item.setPos(pos.getX(), pos.getY(), pos.getZ());
world.addFreshEntity(item); level.addFreshEntity(item);
} }
} }

View File

@ -191,7 +191,7 @@ public class ModelOverridesHandler
} }
@OnlyIn(Dist.CLIENT) @OnlyIn(Dist.CLIENT)
public static BakedModel getCustomOverrideModel(BlockState state, CompoundTag tag, Level world, Player player) public static BakedModel getCustomOverrideModel(BlockState state, CompoundTag tag, Level level, Player player)
{ {
int stateid = Block.getId(state); int stateid = Block.getId(state);
CompoundTag[] keys = new CompoundTag[OVERRIDE_OBJECTS.size()]; CompoundTag[] keys = new CompoundTag[OVERRIDE_OBJECTS.size()];
@ -224,7 +224,7 @@ public class ModelOverridesHandler
if (override instanceof BlockState) if (override instanceof BlockState)
return Minecraft.getInstance().getBlockRenderer().getBlockModel((BlockState) override); return Minecraft.getInstance().getBlockRenderer().getBlockModel((BlockState) override);
else else
return Minecraft.getInstance().getItemRenderer().getModel((ItemStack) override, world, player, 0); return Minecraft.getInstance().getItemRenderer().getModel((ItemStack) override, level, player, 0);
} }
} }
} }

View File

@ -29,50 +29,50 @@ import tschipp.carryon.common.scripting.ScriptChecker;
public class PickupHandler public class PickupHandler
{ {
public static boolean canPlayerPickUpBlock(ServerPlayer player, @Nullable BlockEntity tile, Level world, BlockPos pos) public static boolean canPlayerPickUpBlock(ServerPlayer player, @Nullable BlockEntity tile, Level level, BlockPos pos)
{ {
if (player.gameMode.getGameModeForPlayer() == GameType.SPECTATOR || player.gameMode.getGameModeForPlayer() == GameType.ADVENTURE) if (player.gameMode.getGameModeForPlayer() == GameType.SPECTATOR || player.gameMode.getGameModeForPlayer() == GameType.ADVENTURE)
return false; return false;
BlockState state = world.getBlockState(pos); BlockState state = level.getBlockState(pos);
CompoundTag tag = new CompoundTag(); CompoundTag tag = new CompoundTag();
if (tile != null) if (tile != null)
tile.save(tag); tile.saveWithId();
CarryOnOverride override = ScriptChecker.inspectBlock(world.getBlockState(pos), world, pos, tag); CarryOnOverride override = ScriptChecker.inspectBlock(level.getBlockState(pos), level, pos, tag);
if (override != null) if (override != null)
{ {
return ScriptChecker.fulfillsConditions(override, player) && handleProtections(player, world, pos, state); return ScriptChecker.fulfillsConditions(override, player) && handleProtections(player, level, pos, state);
} }
else else
{ {
if (Settings.useWhitelistBlocks.get()) if (Settings.useWhitelistBlocks.get())
{ {
if (!ListHandler.isAllowed(world.getBlockState(pos).getBlock())) if (!ListHandler.isAllowed(level.getBlockState(pos).getBlock()))
{ {
return false; return false;
} }
} }
else if (ListHandler.isForbidden(world.getBlockState(pos).getBlock())) else if (ListHandler.isForbidden(level.getBlockState(pos).getBlock()))
{ {
return false; return false;
} }
if (state.getDestroySpeed(world, pos) != -1 || player.isCreative()) if (state.getDestroySpeed(level, pos) != -1 || player.isCreative())
{ {
double distance = Vec3.atLowerCornerOf(pos).distanceTo(player.position()); double distance = Vec3.atLowerCornerOf(pos).distanceTo(player.position());
double maxDist = Settings.maxDistance.get(); double maxDist = Settings.maxDistance.get();
if (distance < maxDist && !ItemCarryonBlock.isLocked(pos, world)) if (distance < maxDist && !ItemCarryonBlock.isLocked(pos, level))
{ {
if (CustomPickupOverrideHandler.hasSpecialPickupConditions(state)) if (CustomPickupOverrideHandler.hasSpecialPickupConditions(state))
{ {
return CarryonGamestageHelper.hasGamestage(CustomPickupOverrideHandler.getPickupCondition(state), player) && handleProtections(player, world, pos, state); return CarryonGamestageHelper.hasGamestage(CustomPickupOverrideHandler.getPickupCondition(state), player) && handleProtections(player, level, pos, state);
} }
else if (Settings.pickupAllBlocks.get() ? true : tile != null) else if (Settings.pickupAllBlocks.get() ? true : tile != null)
{ {
return handleProtections(player, world, pos, state); return handleProtections(player, level, pos, state);
} }
} }
@ -158,9 +158,9 @@ public class PickupHandler
public static class PickUpBlockEvent extends BlockEvent.BreakEvent public static class PickUpBlockEvent extends BlockEvent.BreakEvent
{ {
public PickUpBlockEvent(Level world, BlockPos pos, BlockState state, Player player) public PickUpBlockEvent(Level level, BlockPos pos, BlockState state, Player player)
{ {
super(world, pos, state, player); super(level, pos, state, player);
} }
} }
@ -172,11 +172,11 @@ public class PickupHandler
} }
} }
private static boolean handleProtections(ServerPlayer player, Level world, BlockPos pos, BlockState state) private static boolean handleProtections(ServerPlayer player, Level level, BlockPos pos, BlockState state)
{ {
boolean breakable = true; boolean breakable = true;
PickUpBlockEvent event = new PickUpBlockEvent(world, pos, state, player); PickUpBlockEvent event = new PickUpBlockEvent(level, pos, state, player);
MinecraftForge.EVENT_BUS.post(event); MinecraftForge.EVENT_BUS.post(event);
if (event.isCanceled()) if (event.isCanceled())

View File

@ -201,10 +201,10 @@ public class ReflectionHelper
* The class to find the method on. * The class to find the method on.
* @param methodName * @param methodName
* The name of the method to find (used in developer * The name of the method to find (used in developer
* environments, i.e. "getWorldTime"). * environments, i.e. "getLevelTime").
* @param methodObfName * @param methodObfName
* The obfuscated name of the method to find (used in obfuscated * The obfuscated name of the method to find (used in obfuscated
* environments, i.e. "getWorldTime"). If the name you are * environments, i.e. "getLevelTime"). If the name you are
* looking for is on a class that is never obfuscated, this * looking for is on a class that is never obfuscated, this
* should be null. * should be null.
* @param parameterTypes * @param parameterTypes

View File

@ -85,7 +85,7 @@ public class ItemCarryonBlock extends Item
{ {
Direction facing = context.getClickedFace(); Direction facing = context.getClickedFace();
Player player = context.getPlayer(); Player player = context.getPlayer();
Level world = context.getLevel(); Level level = context.getLevel();
BlockPos pos = context.getClickedPos(); BlockPos pos = context.getClickedPos();
ItemStack stack = context.getItemInHand(); ItemStack stack = context.getItemInHand();
@ -101,16 +101,16 @@ public class ItemCarryonBlock extends Item
BlockPos pos2 = pos; BlockPos pos2 = pos;
Block containedblock = getBlock(stack); Block containedblock = getBlock(stack);
BlockState containedstate = getBlockState(stack); BlockState containedstate = getBlockState(stack);
if (!world.getBlockState(pos2).canBeReplaced(new BlockPlaceContext(context))) if (!level.getBlockState(pos2).canBeReplaced(new BlockPlaceContext(context)))
{ {
pos2 = pos.relative(facing); pos2 = pos.relative(facing);
} }
if (world.getBlockState(pos2).canBeReplaced(new BlockPlaceContext(context)) && containedblock != null) if (level.getBlockState(pos2).canBeReplaced(new BlockPlaceContext(context)) && containedblock != null)
{ {
boolean canPlace = containedstate.canSurvive(world, pos2); boolean canPlace = containedstate.canSurvive(level, pos2);
if (canPlace && player.mayUseItemAt(pos, facing, stack) && world.mayInteract(player, pos2)) if (canPlace && player.mayUseItemAt(pos, facing, stack) && level.mayInteract(player, pos2))
{ {
BlockState placementState = containedblock.getStateForPlacement(new BlockPlaceContext(context)); BlockState placementState = containedblock.getStateForPlacement(new BlockPlaceContext(context));
@ -138,13 +138,13 @@ public class ItemCarryonBlock extends Item
// } // }
// } // }
BlockSnapshot snapshot = BlockSnapshot.create(world.dimension(), world, pos2); BlockSnapshot snapshot = BlockSnapshot.create(level.dimension(), level, pos2);
EntityPlaceEvent event = new EntityPlaceEvent(snapshot, world.getBlockState(pos), player); EntityPlaceEvent event = new EntityPlaceEvent(snapshot, level.getBlockState(pos), player);
MinecraftForge.EVENT_BUS.post(event); MinecraftForge.EVENT_BUS.post(event);
if (!event.isCanceled()) if (!event.isCanceled())
{ {
world.setBlockAndUpdate(pos2, actualState); level.setBlockAndUpdate(pos2, actualState);
// If the blockstate doesn't handle rotation, // If the blockstate doesn't handle rotation,
// try to // try to
@ -181,7 +181,7 @@ public class ItemCarryonBlock extends Item
} }
} }
BlockEntity tile = world.getBlockEntity(pos2); BlockEntity tile = level.getBlockEntity(pos2);
if (tile != null) if (tile != null)
{ {
CompoundTag data = getTileData(stack); CompoundTag data = getTileData(stack);
@ -189,7 +189,7 @@ public class ItemCarryonBlock extends Item
tile.load(data); tile.load(data);
} }
clearTileData(stack); clearTileData(stack);
player.playSound(actualState.getSoundType(world, pos2, player).getPlaceSound(), 1.0f, 0.5f); player.playSound(actualState.getSoundType(level, pos2, player).getPlaceSound(), 1.0f, 0.5f);
player.setItemInHand(InteractionHand.MAIN_HAND, ItemStack.EMPTY); player.setItemInHand(InteractionHand.MAIN_HAND, ItemStack.EMPTY);
player.getPersistentData().remove("overrideKey"); player.getPersistentData().remove("overrideKey");
ItemEvents.sendPacket(player, 9, 0); ItemEvents.sendPacket(player, 9, 0);
@ -203,7 +203,7 @@ public class ItemCarryonBlock extends Item
{ {
e.printStackTrace(); e.printStackTrace();
if (world != null && world.isClientSide) if (level != null && level.isClientSide)
{ {
CarryOn.LOGGER.info("Block: " + ItemCarryonBlock.getBlock(stack)); CarryOn.LOGGER.info("Block: " + ItemCarryonBlock.getBlock(stack));
CarryOn.LOGGER.info("BlockState: " + ItemCarryonBlock.getBlockState(stack)); CarryOn.LOGGER.info("BlockState: " + ItemCarryonBlock.getBlockState(stack));
@ -230,7 +230,7 @@ public class ItemCarryonBlock extends Item
} }
@Override @Override
public void inventoryTick(ItemStack stack, Level world, Entity entity, int itemSlot, boolean isSelected) public void inventoryTick(ItemStack stack, Level level, Entity entity, int itemSlot, boolean isSelected)
{ {
if (hasTileData(stack)) if (hasTileData(stack))
{ {
@ -258,14 +258,14 @@ public class ItemCarryonBlock extends Item
return false; return false;
} }
public static boolean storeTileData(@Nullable BlockEntity tile, Level world, BlockPos pos, BlockState state, ItemStack stack) public static boolean storeTileData(@Nullable BlockEntity tile, Level level, BlockPos pos, BlockState state, ItemStack stack)
{ {
if (stack.isEmpty()) if (stack.isEmpty())
return false; return false;
CompoundTag tileTag = new CompoundTag(); CompoundTag tileTag = new CompoundTag();
if (tile != null) if (tile != null)
tileTag = tile.save(tileTag); tileTag = tile.saveWithId();
CompoundTag tag = stack.hasTag() ? stack.getTag() : new CompoundTag(); CompoundTag tag = stack.hasTag() ? stack.getTag() : new CompoundTag();
if (tag.contains(TILE_DATA_KEY)) if (tag.contains(TILE_DATA_KEY))
@ -327,7 +327,7 @@ public class ItemCarryonBlock extends Item
// { // {
// if (stack.hasTag()) // if (stack.hasTag())
// { // {
// CompoundNBT tag = stack.getTag(); // CompoundTag tag = stack.getTag();
// int meta = tag.getInt("meta"); // int meta = tag.getInt("meta");
// return meta; // return meta;
// } // }
@ -350,13 +350,13 @@ public class ItemCarryonBlock extends Item
return Blocks.AIR.defaultBlockState(); return Blocks.AIR.defaultBlockState();
} }
public static boolean isLocked(BlockPos pos, Level world) public static boolean isLocked(BlockPos pos, Level level)
{ {
BlockEntity te = world.getBlockEntity(pos); BlockEntity te = level.getBlockEntity(pos);
if (te != null) if (te != null)
{ {
CompoundTag tag = new CompoundTag(); CompoundTag tag = new CompoundTag();
te.save(tag); te.saveWithId();
return tag.contains("Lock") ? !tag.getString("Lock").equals("") : false; return tag.contains("Lock") ? !tag.getString("Lock").equals("") : false;
} }

View File

@ -74,13 +74,13 @@ public class ItemCarryonEntity extends Item
return false; return false;
} }
public static boolean storeEntityData(@Nonnull Entity entity, Level world, ItemStack stack) public static boolean storeEntityData(@Nonnull Entity entity, Level level, ItemStack stack)
{ {
if (entity == null || stack.isEmpty()) if (entity == null || stack.isEmpty())
return false; return false;
CompoundTag entityData = new CompoundTag(); CompoundTag entityData = new CompoundTag();
entityData = entity.serializeNBT(); entity.saveWithoutId(entityData);
String name = EntityType.getKey(entity.getType()).toString(); String name = EntityType.getKey(entity.getType()).toString();
@ -98,13 +98,13 @@ public class ItemCarryonEntity extends Item
public InteractionResult useOn(UseOnContext context) public InteractionResult useOn(UseOnContext context)
{ {
Player player = context.getPlayer(); Player player = context.getPlayer();
Level world = context.getLevel(); Level level = context.getLevel();
BlockPos pos = context.getClickedPos(); BlockPos pos = context.getClickedPos();
Direction facing = context.getClickedFace(); Direction facing = context.getClickedFace();
ItemStack stack = context.getItemInHand(); ItemStack stack = context.getItemInHand();
BlockState state = world.getBlockState(pos); BlockState state = level.getBlockState(pos);
if (ModList.get().isLoaded("betterplacement") && CarryOnKeybinds.isKeyPressed(player)) if (ModList.get().isLoaded("betterplacement") && CarryOnKeybinds.isKeyPressed(player))
return InteractionResult.FAIL; return InteractionResult.FAIL;
@ -118,13 +118,13 @@ public class ItemCarryonEntity extends Item
finalPos = pos.relative(facing); finalPos = pos.relative(facing);
} }
Entity entity = getEntity(stack, world); Entity entity = getEntity(stack, level);
if (entity != null) if (entity != null)
{ {
if (!world.isClientSide) if (!level.isClientSide)
{ {
entity.absMoveTo(finalPos.getX() + 0.5, finalPos.getY(), finalPos.getZ() + 0.5, 180 + player.yHeadRot, 0.0f); entity.absMoveTo(finalPos.getX() + 0.5, finalPos.getY(), finalPos.getZ() + 0.5, 180 + player.yHeadRot, 0.0f);
world.addFreshEntity(entity); level.addFreshEntity(entity);
if (entity instanceof Mob) if (entity instanceof Mob)
{ {
((Mob) entity).playAmbientSound(); ((Mob) entity).playAmbientSound();
@ -143,11 +143,11 @@ public class ItemCarryonEntity extends Item
} }
@Override @Override
public void inventoryTick(ItemStack stack, Level world, Entity entity, int itemSlot, boolean isSelected) public void inventoryTick(ItemStack stack, Level level, Entity entity, int itemSlot, boolean isSelected)
{ {
if (hasEntityData(stack)) if (hasEntityData(stack))
{ {
if (getEntity(stack, world) == null) if (getEntity(stack, level) == null)
stack = ItemStack.EMPTY; stack = ItemStack.EMPTY;
if (entity instanceof LivingEntity) if (entity instanceof LivingEntity)
@ -155,7 +155,7 @@ public class ItemCarryonEntity extends Item
if (entity instanceof Player && Settings.slownessInCreative.get() ? false : ((Player) entity).isCreative()) if (entity instanceof Player && Settings.slownessInCreative.get() ? false : ((Player) entity).isCreative())
return; return;
((LivingEntity) entity).addEffect(new MobEffectInstance(MobEffects.MOVEMENT_SLOWDOWN, 1, this.potionLevel(stack, world), false, false)); ((LivingEntity) entity).addEffect(new MobEffectInstance(MobEffects.MOVEMENT_SLOWDOWN, 1, this.potionLevel(stack, level), false, false));
} }
} }
@ -185,9 +185,9 @@ public class ItemCarryonEntity extends Item
return null; return null;
} }
public static Entity getEntity(ItemStack stack, Level world) public static Entity getEntity(ItemStack stack, Level level)
{ {
if (world == null) if (level == null)
return null; return null;
String name = getEntityName(stack); String name = getEntityName(stack);
@ -198,18 +198,20 @@ public class ItemCarryonEntity extends Item
if (type.isPresent()) if (type.isPresent())
{ {
entity = type.get().create(world); entity = type.get().create(level);
} }
if (entity != null) if (entity != null)
{ {
try try
{ {
initGoals.invoke(entity); if (entity instanceof Mob)
entity.deserializeNBT(e); initGoals.invoke(entity);
entity.load(e);
} }
catch (Exception e1) catch (Exception e1)
{ {
e1.printStackTrace();
} }
} }
@ -256,9 +258,9 @@ public class ItemCarryonEntity extends Item
return null; return null;
} }
private int potionLevel(ItemStack stack, Level world) private int potionLevel(ItemStack stack, Level level)
{ {
Entity e = getEntity(stack, world); Entity e = getEntity(stack, level);
if (e == null) if (e == null)
return 1; return 1;

View File

@ -26,14 +26,14 @@ import tschipp.carryon.common.helper.ScriptParseHelper;
public class ScriptChecker public class ScriptChecker
{ {
@Nullable @Nullable
public static CarryOnOverride inspectBlock(BlockState state, Level world, BlockPos pos, @Nullable CompoundTag tag) public static CarryOnOverride inspectBlock(BlockState state, Level level, BlockPos pos, @Nullable CompoundTag tag)
{ {
if (!Settings.useScripts.get()) if (!Settings.useScripts.get())
return null; return null;
Block block = state.getBlock(); Block block = state.getBlock();
Material material = state.getMaterial(); Material material = state.getMaterial();
float hardness = state.getDestroySpeed(world, pos); float hardness = state.getDestroySpeed(level, pos);
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")
float resistance = block.getExplosionResistance(); float resistance = block.getExplosionResistance();
CompoundTag nbt = tag; CompoundTag nbt = tag;

View File

@ -49,11 +49,11 @@ public class CarrySlotPacket
{ {
ctx.get().enqueueWork(() -> { ctx.get().enqueueWork(() -> {
Level world = CarryOn.proxy.getWorld(); Level level = CarryOn.proxy.getLevel();
if (world != null) if (level != null)
{ {
Entity e = world.getEntity(this.entityid); Entity e = level.getEntity(this.entityid);
if (e instanceof Player player) if (e instanceof Player player)
{ {

View File

@ -31,7 +31,7 @@ public class ClientProxy implements IProxy
} }
@Override @Override
public Level getWorld() public Level getLevel()
{ {
return Minecraft.getInstance().level; return Minecraft.getInstance().level;
} }

View File

@ -11,5 +11,5 @@ public interface IProxy
public Player getPlayer(); public Player getPlayer();
public Level getWorld(); public Level getLevel();
} }

View File

@ -20,7 +20,7 @@ public class ServerProxy implements IProxy
} }
@Override @Override
public Level getWorld() public Level getLevel()
{ {
return null; return null;
} }