- Баллы
- 76
- Имя в Minecraft
- SiRiuS_OSiRiuS
На сервере нестабильно работает именно аттрибут generic.attackDamage. Я выставляю его при помощи кода:
Или с помощью /give-генератора. В обоих случаях аттрибут выдаётся нормально и отображается на предмете. Но работает неправильно, по моему мнению. Так, например, скелет умирает от двух ударов железным мечом что с уроном +20, что с уроном +100000, что с уроном +300000%. То же самое и со стрелой. Без аттрибута умирает от трёх и 20 ударов соответственно. Все остальные аттрибуты, например, generic.movementSpeed, работают исправно. С чем это может быть связано? На 1.11.2-R0 версии то же самое.
Код:
net.minecraft.server.v1_11_R1.ItemStack item = CraftItemStack.asNMSCopy(stack);
NBTTagCompound c = item.hasTag() ? item.getTag() : new NBTTagCompound();
NBTTagList modifiers = new NBTTagList();
NBTTagCompound damage = new NBTTagCompound();
damage.set("AttributeName", new NBTTagString("generic.attackDamage"));
damage.set("Name", new NBTTagString("generic.attackDamage"));
damage.set("Amount", new NBTTagInt(this.damage));
damage.set("Operation", new NBTTagInt(0));
damage.set("UUIDLeast", new NBTTagInt(176014));
damage.set("UUIDMost", new NBTTagInt(88030));
damage.set("Slot", new NBTTagString("mainhand"));
modifiers.add(damage);
c.set("AttributeModifiers", modifiers);
item.setTag(c);
stack = CraftItemStack.asBukkitCopy(item);
Последнее редактирование: