give rocket an owner

This commit is contained in:
GearShocky 2025-04-04 18:10:42 +05:00
parent 0a21a0432e
commit 6da38814d2

View File

@ -3,6 +3,7 @@ package ru.dbotthepony.mc.otm.entity
import net.minecraft.core.particles.ParticleTypes
import net.minecraft.sounds.SoundEvent
import net.minecraft.sounds.SoundEvents
import net.minecraft.world.entity.LivingEntity
import net.minecraft.world.entity.projectile.AbstractArrow
import net.minecraft.world.item.ItemStack
import net.minecraft.world.level.Level
@ -11,6 +12,7 @@ import net.minecraft.world.phys.EntityHitResult
import ru.dbotthepony.mc.otm.registry.game.MEntityTypes
class RocketProjectile(level: Level) : AbstractArrow(MEntityTypes.ROCKET, level) {
var owner: LivingEntity? = null
init {
setBaseDamage(5.0)
@ -29,7 +31,7 @@ class RocketProjectile(level: Level) : AbstractArrow(MEntityTypes.ROCKET, level)
override fun onHitEntity(result: EntityHitResult) {
if (!level().isClientSide) {
level().explode(null, x, y, z, 2.0f, Level.ExplosionInteraction.NONE)
level().explode(owner, x, y, z, 2.0f, Level.ExplosionInteraction.NONE)
discard()
}
super.onHitEntity(result)
@ -37,7 +39,7 @@ class RocketProjectile(level: Level) : AbstractArrow(MEntityTypes.ROCKET, level)
override fun onHitBlock(result: BlockHitResult) {
if (!level().isClientSide) {
level().explode(null, x, y, z, 2.0f, Level.ExplosionInteraction.NONE)
level().explode(owner, x, y, z, 2.0f, Level.ExplosionInteraction.NONE)
discard()
}
super.onHitBlock(result)