@Override
public InteractionResultHolder<ItemStack> use(Level level, Player player, InteractionHand hand) {
if(hand == InteractionHand.MAIN_HAND) {
Vec3 look = player.getLookAngle().normalize().scale(2);
player.addDeltaMovement(look);
player.hurtMarked = true;
}
return super.use(level, player, hand);
}
Нет, не учили :_) Пояснишь зачем она?Используй взгляд игрока для таких целей.
Ого, спасибо большое. Ознакомлюсь со статьейНормализации не учили, не?
Для начала тебе нужно взять просто направление. Выдели для этого отдельный Vec3, в который запишешь НОРМАЛИЗОВАННЫЙ вектор взгляда игрока.
Затем уже идут скейлы (в твоём случае это scale(10f))
И наконец уже сам рывок.
Код для 1.20, но работа с векторами во всех играх одинакова:@Override public InteractionResultHolder<ItemStack> use(Level level, Player player, InteractionHand hand) { if(hand == InteractionHand.MAIN_HAND) { Vec3 look = player.getLookAngle().normalize().scale(2); player.addDeltaMovement(look); player.hurtMarked = true; } return super.use(level, player, hand); }