Обновить слот для рендера на экране

Версия Minecraft
1.7.10
1,195
31
183
Рендерю итем из своего кастомного слота своего кастомного инвентаря на экране игрока
drawSlotInventory(mc.fontRenderer, ep.inventory.getStackInSlot(0), (int)(w/scale - 100), (int)(h/scale - 45));
Юзаю итем из данного слота, уменьшаю ему стаксайз при использовании на единицу. Чтобы этот новый стаксайз (к примеру, было 30, стало 29, пока не перезайдешь в инвентарь, в худе на экране не обновится стаксайз, который будет равен 30 до перезахода в инвентарь)
Как обновить для клиента? Достать контейнер и юзнуть detectAndSendChanges() не могу(( Или просто не знаю где его достать
Прокастить так тоже не катит

Java:
ContainerCustomPlayer keke= (ContainerCustomPlayer)serverPlayer.inventoryContainer;
keke.detectAndSendChanges();
 

tox1cozZ

aka Agravaine
8,455
598
2,892
Внимательнее смотреть нужно.
У игрока вызывается каждый тик detectAndSendChanges для inventoryContainer.
Тебе нужно хранить объект своего контейнера в ЭнтитиПропердись и каждый тик вызывать у него detectAndSendChanges.
 

tox1cozZ

aka Agravaine
8,455
598
2,892
как мне обьект контейнера хранить, вот в чем вопрос... Я не знаю где его достать лмао
Эм, просто создай объект и храни переменную.
решил через пакеты и IEEP#inventory.setInventorySlotContents(slot, stack);
Дич, сделай как я сказал лучше.
 
Сверху