Forge Render Event Hitbox Expander
Влияние на механику Minecraft
Подписывается на события шины рендера Forge (RenderPlayerEvent, RenderLivingEvent), подменяя хитбоксы каждый раз, когда игра рендерит модель игрока.
Анализируемые функции и API
RenderPlayerEvent.Pre
Событие Forge, срабатывающее непосредственно перед отрисовкой игрока.
Entity.setBoundingBox
Изменение хитбокса игрока внутри слушателя событий.
Реализация в моде (Исходный код)
// Developer Source (Forge Event listener)
@SubscribeEvent
public void onRenderPlayer(RenderPlayerEvent.Pre event) {
Player player = event.getEntity();
if (player != Minecraft.getInstance().player) {
player.setBoundingBox(player.getBoundingBox().inflate(0.4));
}
}
Декомпилированный вид (Vineflower)
// Decompiled with Vineflower 1.12 (Forge mappings)
@SubscribeEvent
public void onRenderPlayer(RenderPlayerEvent.Pre event) {
Player player = event.getEntity();
if (player != Minecraft.getInstance().player) {
player.setBoundingBox(player.getBoundingBox().inflate(0.4));
}
}
Сигнатура байткода и статический детект
Совпадение ссылок на RenderPlayerEvent или RenderLivingEvent вместе с Entity.setBoundingBox.