mirror of
https://github.com/Sollace/Unicopia.git
synced 2025-02-01 19:46:42 +01:00
Fixed projectiles not updating/exploding multiple times
This commit is contained in:
parent
53e4e93605
commit
25352710b7
2 changed files with 12 additions and 8 deletions
|
@ -222,8 +222,8 @@ public class ProjectileEntity extends ThrownItemEntity implements IMagicals, Adv
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handleStatus(byte byte_1) {
|
public void handleStatus(byte id) {
|
||||||
if (byte_1 == 3) {
|
if (id == 3) {
|
||||||
ParticleEffect effect = getParticleParameters();
|
ParticleEffect effect = getParticleParameters();
|
||||||
|
|
||||||
for(int i = 0; i < 8; i++) {
|
for(int i = 0; i < 8; i++) {
|
||||||
|
@ -253,10 +253,14 @@ public class ProjectileEntity extends ThrownItemEntity implements IMagicals, Adv
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCollision(HitResult result) {
|
protected void onCollision(HitResult result) {
|
||||||
if (result.getType() == HitResult.Type.BLOCK) {
|
if (!removed) {
|
||||||
onHitBlock((BlockHitResult)result);
|
remove();
|
||||||
} else if (result.getType() == HitResult.Type.ENTITY) {
|
|
||||||
onHitEntity((EntityHitResult)result);
|
if (result.getType() == HitResult.Type.BLOCK) {
|
||||||
|
onHitBlock((BlockHitResult)result);
|
||||||
|
} else if (result.getType() == HitResult.Type.ENTITY) {
|
||||||
|
onHitEntity((EntityHitResult)result);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,8 +31,8 @@ public interface UEntities {
|
||||||
|
|
||||||
EntityType<ButterflyEntity> BUTTERFLY = register("butterfly", FabricEntityTypeBuilder.create(EntityCategory.AMBIENT, ButterflyEntity::new));
|
EntityType<ButterflyEntity> BUTTERFLY = register("butterfly", FabricEntityTypeBuilder.create(EntityCategory.AMBIENT, ButterflyEntity::new));
|
||||||
|
|
||||||
EntityType<ProjectileEntity> THROWN_ITEM = register("thrown_item", FabricEntityTypeBuilder.<ProjectileEntity>create(EntityCategory.MISC, ProjectileEntity::new).trackable(100, 10));
|
EntityType<ProjectileEntity> THROWN_ITEM = register("thrown_item", FabricEntityTypeBuilder.<ProjectileEntity>create(EntityCategory.MISC, ProjectileEntity::new).trackable(100, 2));
|
||||||
EntityType<SpearEntity> THROWN_SPEAR = register("thrown_spear", FabricEntityTypeBuilder.<SpearEntity>create(EntityCategory.MISC, SpearEntity::new).trackable(100, 10));
|
EntityType<SpearEntity> THROWN_SPEAR = register("thrown_spear", FabricEntityTypeBuilder.<SpearEntity>create(EntityCategory.MISC, SpearEntity::new).trackable(100, 2));
|
||||||
|
|
||||||
static <T extends Entity> EntityType<T> register(String name, FabricEntityTypeBuilder<T> builder) {
|
static <T extends Entity> EntityType<T> register(String name, FabricEntityTypeBuilder<T> builder) {
|
||||||
return Registry.register(Registry.ENTITY_TYPE, new Identifier("unicopia", name), builder.build());
|
return Registry.register(Registry.ENTITY_TYPE, new Identifier("unicopia", name), builder.build());
|
||||||
|
|
Loading…
Reference in a new issue