Перейти к содержимому
Mineforgian

MetaAwareBlocks

Adds meta-aware versions of several Block rendering functions

Загрузки
372
Подписчики
1
Обновлён
3 декабря 2024 г.
Лицензия
LGPL-3.0-only

Опубликован 3 декабря 2024 г.

Исходный код

MetaAwareBlocks

As of now this only transforms Minecraft's code, and currently that is all that is planned due to other mods being a compatibility nightmare without any great way to go about things automatically. I'd have to write mixins for every single mod, and it's just not practical. If someone wants to create pull requests adding support for a mod, that's great, but for now it only supports Minecraft's native code.

This is a library used to add meta-aware functionality for several (primarily rendering) functions inside of net.minecraft.block.Block.

Usage:

Creating a new block:

class NewBlock implements IMetaAware {
  ...

  @Override
  public boolean renderAsNormalBlock(IBlockAccess world, int x, int y, int z) {
    return world.getBlockMetadata(world, x, y, z) != 0;
  }

  ...
}

Mixin into a preexisting block:

@Mixin(NewBlock.class)
public abstract class MixinNewBlock implements IMetaAware {
  @Override
  public boolean renderAsNormalBlock(IBlockAccess world, int x, int y, int z) {
    return world.getBlockMetadata(world, x, y, z) != 0;
  }
}

Ченджлог

0.0.3-alphaАльфа1.7.10 · 3 декабря 2024 г.

Now adds meta-aware support for Block.canProvidePower, as well as only modifies mixin priority when necessary for Hodgepodge compatibility

0.0.2-alphaАльфа1.7.10 · 3 декабря 2024 г.

Fix ArrayIndexOutOfBoundsException in MixinBlockVine.redirectUpdateTick4

Комментарии

Загружаем…