Помощь с изменением предметов

Версия Minecraft
1.6.4

jopi

Попрошайка
1,421
30
260
После где-то 8-ми часовой ё**и с этим плагином и мобом я сдаюсь и прошу помощи у людей которые смогут мне помочь.
Расклад таков:
У меня есть плагин который отправляет от имени игрока команду, назовем ее ABCDCOMMAND
команда ABCDCOMMAND обрабатывается серверным модом, для команды нужны аргументы: ID(INT), SLOT(STRING), TAGS(STRING)
я отправляю команду с плагина от имени игрока: ABCDCOMMAND 3393 0 up=16,eqpd=1
Код команды:
Java:
public void processCommand(ICommandSender send, String[] pars) {
       int id = Integer.valueOf(pars[0]);
       String slot = pars[1];
       String[] KV = pars[2].split(",");
       ItemStack wk = new ItemStack(id, 1, 0);
       EntityPlayer ep = (EntityPlayer) send;
       if (slot.equals("0")) {
           ep.inventory.currentItem = 0;
           wk = ep.getHeldItem();
           NBTTagCompound nbt = Lmao.getOrCreateNbtData(wk);
           for (int i = 0; i != KV.length; i++)
               nbt.setInteger(KV[i].split("=")[0], Integer.valueOf(KV[i].split("=")[1]));
           ep.setCurrentItemOrArmor(0, wk);
           System.out.println("work 0 joined");
       }
}

Проблема: Нбт не устанавливается, предмет не меняется.

P.S.
@CMTV , лого сайта потекло
213321.png
 
Краш-лог
# В консоль 'work 0 joined' не пишется.
Краш-лог:
# В консоль 'work 0 joined' не пишется.

timaxa007

Модератор
5,831
409
672
Lmao.getOrCreateNbtData(wk);
Этот NBT set'иться в ItemStack? Если нет, то после добавлений всяких значений, set'и его в ItemStack.
А так-же возможно нужен ещё после манипуляций с ItemStack ещё написать:
Java:
((EntityPlayerMP)player).sendContainerToPlayer(player.inventoryContainer);
Ты уверен? Может "i < KV.length"?
KV.split("=")[0], Integer.valueOf(KV.split("=")[1]
Думаю, не лучший выбор.
---
лого сайта потекло
У меня нет, но у меня постоянно стоит светлая тема.
 

jopi

Попрошайка
1,421
30
260
@timaxa007
1. это если вообще нету тегов на предмете создается нбт компаунд, если есть просто достаются теги(в предметах моих обязательно есть нбт поэтому только достаю).

2. да, потому-что length идет к примеру 1-10, а в массиве идут 0-9
размер 10 а достать можно от 0 до 9(10 всего)

3. но рабочий должен быть тк команда отправляется только плагином

4. у меня на хроме так почему-то.
 
Сверху