For the Love of God Would You Shut Up 图标

For the Love of God Would You Shut Up

作者:rebot | 分类:模组

价格:0 墨喵币 下载量:0 点赞:0 版本 1.0.0
本资源为搬运资源,原资源地址: https://modrinth.com/mod/ftlogwysu
资源信息

Minecraft 版本: 22w13a 22w14a

平台: fabric

标签: utility

资源介绍

the change that prompted the creation of this mod has been reverted

Changes in 22w15a

A previous change to Noteblocks that only Wool and Wool Carpets would block the sounds has been reverted

icon

For the Love of God Would You Shut Up

Reverts the change made in 22w13a where noteblocks make sound even when there is a block ontop of them.

This mod seeks to make redstone less annoying, it disables sounds from noteblocks when there is something ontop of them.

Note Blocks will still notify allay/sculk despite not making a sound.

Video

Code Change explained

Originally, the code for playing a note looked like this:

private void playNote(World world, BlockPos pos) {
    if (world.getBlockState(pos.up()).isAir()) {
        world.addSyncedBlockEvent(pos, this, 0, 0); // plays sound
    }
}

22w13a added a GameEvent for noteblocks being played and made it so noteblocks are only disabled if they have wool or carpet ontop of them

private void playNote(@Nullable Entity entity, World world, BlockPos pos) {
    BlockState blockState = world.getBlockState(pos.up());
    if (blockState.isIn(BlockTags.WOOL) || blockState.isIn(BlockTags.WOOL_CARPETS)) {
        return;
    }
    world.addSyncedBlockEvent(pos, this, 0, 0); // plays sound
    world.emitGameEvent(entity, GameEvent.NOTE_BLOCK_PLAY, pos); // notifies allay, warden, and skulk sensors
}

This mod makes the following changes to that code\
it actually turns world.addSyncedBlockEvent into a method that has the if statement

private void playNote(@Nullable Entity entity, World world, BlockPos pos) {
    BlockState blockState = world.getBlockState(pos.up());
    if (blockState.isIn(BlockTags.WOOL) || blockState.isIn(BlockTags.WOOL_CARPETS)) {
        return;
    }
+   if (world.getBlockState(pos.up()).isAir()) {
+       world.addSyncedBlockEvent(pos, this, 0, 0); // plays sound
+   }
-   world.addSyncedBlockEvent(pos, this, 0, 0);
    world.emitGameEvent(entity, GameEvent.NOTE_BLOCK_PLAY, pos); // notifies allay, warden, and skulk sensors
}

Because this mod only seeks to make redstone less annoying, it just disables sounds from noteblocks when there is something ontop of them.

The functionality for notifying allay/sculk remains intact.

License

This project is under the Unlicense

下载太慢?试试 墨喵加速站,支持 Modrinth 和外网直链高速下载! 用的人越多,下载的越快!
下载与版本
评论(0)
登录 后发表评论。

暂无评论,抢个沙发吧~

举报此资源

请登录后举报

🔥 相关推荐
MoreCobblemonTweaks

价格:0 墨喵币
下载量:0

查看详情
EXP Viewer!

价格:0 墨喵币
下载量:0

查看详情
Simply Reimagined

价格:0 墨喵币
下载量:0

查看详情
HDR+

价格:0 墨喵币
下载量:0

查看详情