Используй offer(ItemStack) вместо set(ItemStack).
offer(ItemStack)
set(ItemStack)
admin Благодарю.
Так. Это не порядок, если у игрока нет места в инвентаре и хотбаре, то заполняет слоты брони. С каких пор слоты для брони принимают не только броню?
SawFowl какая версия API? Как я знаю, offer не должен добавлять предмет куда нельзя.
offer
admin API7 и он дал у меня деревянную лопату во все слоты брони. Единственное, что я придумал это сделать проверку инвентаря на наличие этого предмета. И да я же тег поставил 😄
Как я понимаю надо тикет писать, что бы в слоты для брони через offerток броня ставилась.
SawFowl да, всё верно.
admin Написал тикет, в общем как мне сказали надо сначала проверить инвентарь игрока на заполненность. Буду рыть в этом направлении.
SawFowl ссылку на тикет
admin https://github.com/SpongePowered/SpongeCommon/issues/2035#issuecomment-409868107
SawFowl тебе не нужно ничего проверять, просто получи MainPlayerInventory из инвентаря игрока и всё. Чем ты переводил-то?
MainPlayerInventory
admin Гуглом конечно же. Я не большой знаток английского.
SawFowl
MainPlayerInventory inv = inventory.query(QueryOperationTypes.INVENTORY_TYPE.of(MainPlayerInventory)).get();
В inv клади предметы.
inv
А вот есть еще над чем посмеяться, косяк этот не только я допустил по незнанию, в плагине UniversalMarket он тоже есть, но я чет даже писать не хочу его разрабу, забьет чую как и все разработчики мелких плагинов которым я писал на счет фиксов.
admin Это я уже в курсе, так и сделал.
Вопрос решен. То чувство, когда помимо добавления функционала в свой плагин еще и чужой пофиксил.
public void yaTopKoder() { System.out.println("Код шикарен"); }