Уменьшение.

Версия Minecraft
1.12.2
Подскажите как сделать Что бы при нажатии на определённую кнопку, а у меня это Z, броня уменьшалась в месте с игроком. Как муравей.
 
Решение
Java:
    @EventHandler
    public void preInit(FMLPreInitializationEvent event) {
        MinecraftForge.EVENT_BUS.register(new EventsForge());
    }
Java:
import net.minecraft.client.renderer.GlStateManager;
import net.minecraftforge.client.event.RenderPlayerEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;

public class EventsForge {

    public static float size = 0.5F;
    
    @SubscribeEvent
    public void sizeRenderPlayerEventPre(RenderPlayerEvent.Pre event) {
        GlStateManager.pushMatrix();
        GlStateManager.scale(size, size, size);
    }

    @SubscribeEvent
    public void sizeRenderPlayerEventPre(RenderPlayerEvent.Post event) {
        GlStateManager.popMatrix();
    }

}
А на счёт...

timaxa007

Модератор
5,831
409
672
Есть эвент на рендер игрока, у него должны быть два подкласса Pre и Post. В Pre открываешь матрицу и используешь scale для изменения размера игрока. В Post закрываешь матрицу.
Под новую версию вроде так.
Java:
    public static float size = 0.5F;
 
    @SubscribeEvent
    public void sizeRenderPlayerEventPre(RenderPlayerEvent.Pre event) {
        GlStateManager.pushMatrix();
        GlStateManager.scale(size, size, size);
    }

    @SubscribeEvent
    public void sizeRenderPlayerEventPost(RenderPlayerEvent.Post event) {
        GlStateManager.popMatrix();
    }

А так-же придётся изменить AABB игрока, чтобы он был меньше и игрок мог проходить через маленькие отверстия. Ну надеюсь поймёшь как.
 
Последнее редактирование:
57
2
2
Есть эвент на рендер игрока, у него должны быть два подкласса Pre и Post. В Pre открываешь матрицу и используешь scale для изменения размера игрока. В Post закрываешь матрицу.
Под новую версию вроде так.
Java:
    public static float size = 0.5F;

    @SubscribeEvent
    public void sizeRenderPlayerEventPre(RenderPlayerEvent.Pre event) {
        GlStateManager.pushMatrix();
        GlStateManager.scale(size, size, size);
    }

    @SubscribeEvent
    public void sizeRenderPlayerEventPost(RenderPlayerEvent.Post event) {
        GlStateManager.popMatrix();
    }

А так-же придётся изменить AABB игрока, чтобы он был меньше и игрок мог проходить через маленькие отверстия. Ну надеюсь поймёшь как.
Помогите пожалуйста. Не выходит у меня то что сдесь написанно. Может писать как то по другому?
 

timaxa007

Модератор
5,831
409
672
Java:
    @EventHandler
    public void preInit(FMLPreInitializationEvent event) {
        MinecraftForge.EVENT_BUS.register(new EventsForge());
    }
Java:
import net.minecraft.client.renderer.GlStateManager;
import net.minecraftforge.client.event.RenderPlayerEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;

public class EventsForge {

    public static float size = 0.5F;
    
    @SubscribeEvent
    public void sizeRenderPlayerEventPre(RenderPlayerEvent.Pre event) {
        GlStateManager.pushMatrix();
        GlStateManager.scale(size, size, size);
    }

    @SubscribeEvent
    public void sizeRenderPlayerEventPre(RenderPlayerEvent.Post event) {
        GlStateManager.popMatrix();
    }

}
А на счёт aabb, то не знаю, что именно писать. А то что написано, aabb не работает как надо.
 
1,007
36
206
"Superheroes by FiskFiles" Ищи. Там чел.-муравей, в нём что-то было. Но я ркуо**п и не могу нормально деобфусцировать и декомпилировать мод.
У этого мода есть исходники, но там косяк с рендером
 

tox1cozZ

aka Agravaine
8,455
598
2,892
С другими игроками: посмотри на себя от своего лица, и от лица другого игрока)
Что ты синхронить собрался? Тут статический размер, он не от чего не зависит. Все и так работает.
 
Сверху