• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

CyclopsMC / CyclopsCore / #479033794

03 May 2025 01:07PM UTC coverage: 22.057% (-0.04%) from 22.101%
#479033794

push

github

rubensworks
Merge remote-tracking branch 'origin/master-1.19-lts' into master-1.20-lts

0 of 21 new or added lines in 3 files covered. (0.0%)

1 existing line in 1 file now uncovered.

2297 of 10414 relevant lines covered (22.06%)

0.22 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/main/java/org/cyclops/cyclopscore/event/LecternInfoBookHandler.java
1
package org.cyclops.cyclopscore.event;
2

3
import net.minecraft.server.level.ServerPlayer;
4
import net.minecraft.world.InteractionHand;
5
import net.minecraft.world.level.block.Blocks;
6
import net.minecraft.world.level.block.LecternBlock;
7
import net.minecraft.world.level.block.entity.BlockEntity;
8
import net.minecraft.world.level.block.entity.LecternBlockEntity;
9
import net.minecraft.world.level.block.state.BlockState;
10
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
11
import net.minecraftforge.eventbus.api.SubscribeEvent;
12
import org.cyclops.cyclopscore.helper.ItemStackHelpers;
13
import org.cyclops.cyclopscore.inventory.InventoryLocationPlayer;
14
import org.cyclops.cyclopscore.item.ItemGui;
15

16
/**
17
 * @author rubensworks
18
 */
NEW
19
public class LecternInfoBookHandler {
×
20

21
    @SubscribeEvent
22
    public void onRightClickLectern(PlayerInteractEvent.RightClickBlock event) {
NEW
23
        BlockState blockState = event.getLevel().getBlockState(event.getPos());
×
NEW
24
        BlockEntity blockEntity = event.getLevel().getBlockEntity(event.getPos());
×
NEW
25
        if (!event.getLevel().isClientSide()
×
NEW
26
                && blockState.is(Blocks.LECTERN)
×
NEW
27
                && blockEntity instanceof LecternBlockEntity lecternBlockEntity
×
NEW
28
                && lecternBlockEntity.getBook().getItem() instanceof ItemGui itemGui) {
×
NEW
29
            if (event.getEntity().isCrouching()) {
×
30
                // Remove book from lectern if sneaking
NEW
31
                ItemStackHelpers.spawnItemStack(event.getLevel(), event.getPos().relative(blockState.getValue(LecternBlock.FACING)), lecternBlockEntity.getBook().copy());
×
NEW
32
                LecternBlock.resetBookState(event.getEntity(), event.getLevel(), event.getPos(), blockState, false);
×
NEW
33
                lecternBlockEntity.clearContent();
×
34
            } else {
35
                // Read book
NEW
36
                itemGui.openGuiForItemIndex(event.getLevel(), (ServerPlayer) event.getEntity(), InventoryLocationPlayer.getInstance().handToLocation(event.getEntity(), InteractionHand.MAIN_HAND, 0));
×
37
            }
NEW
38
            event.setCanceled(true);
×
39
        }
NEW
40
    }
×
41
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc