diff --git a/src/main/java/net/mcreator/target/command/MediumExpCommand.java b/src/main/java/net/mcreator/target/command/MediumExpCommand.java index a68e57f97..646c985bb 100644 --- a/src/main/java/net/mcreator/target/command/MediumExpCommand.java +++ b/src/main/java/net/mcreator/target/command/MediumExpCommand.java @@ -5,6 +5,7 @@ import net.minecraft.commands.CommandSource; import net.minecraft.commands.CommandSourceStack; import net.minecraft.commands.Commands; import net.minecraft.core.BlockPos; +import net.minecraft.core.particles.ParticleTypes; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundSource; @@ -35,7 +36,10 @@ public class MediumExpCommand { world.playLocalSound(x, (y + 1), z, TargetModSounds.EXPFAR.get(), SoundSource.BLOCKS, 24, 1, false); world.playLocalSound(x, (y + 1), z, TargetModSounds.EXPVERYFAR.get(), SoundSource.BLOCKS, 64, 1, false); } + if (world instanceof ServerLevel server) { +// server.sendParticles(ParticleTypes.CAMPFIRE_COSY_SMOKE, x, y, z, 80, 0.4, 1, 0.4, 0.02); + server.getServer().getCommands().performPrefixedCommand(new CommandSourceStack(CommandSource.NULL, new Vec3(x, (y + 1), z), Vec2.ZERO, server, 4, "", Component.literal(""), server.getServer(), null).withSuppressedOutput(), "particle minecraft:campfire_cosy_smoke ~ ~ ~ 0.4 1 0.4 0.02 80 force"); server.getServer().getCommands().performPrefixedCommand(new CommandSourceStack(CommandSource.NULL, new Vec3(x, (y + 1), z), Vec2.ZERO, server, 4, "", Component.literal(""), server.getServer(), null).withSuppressedOutput(), diff --git a/src/main/java/net/mcreator/target/entity/BocekArrowEntity.java b/src/main/java/net/mcreator/target/entity/BocekArrowEntity.java index 075b3f700..cfb9784bb 100644 --- a/src/main/java/net/mcreator/target/entity/BocekArrowEntity.java +++ b/src/main/java/net/mcreator/target/entity/BocekArrowEntity.java @@ -4,6 +4,7 @@ import net.mcreator.target.headshot.BoundingBoxManager; import net.mcreator.target.headshot.IHeadshotBox; import net.mcreator.target.init.TargetModDamageTypes; import net.mcreator.target.init.TargetModEntities; +import net.mcreator.target.init.TargetModSounds; import net.mcreator.target.network.TargetModVariables; import net.minecraft.commands.CommandSource; import net.minecraft.commands.CommandSourceStack; @@ -89,8 +90,7 @@ public class BocekArrowEntity extends AbstractArrow implements ItemSupplier { capability.syncPlayerVariables(living); }); if (!living.level().isClientSide() && living.getServer() != null) { - living.getServer().getCommands().performPrefixedCommand(new CommandSourceStack(CommandSource.NULL, living.position(), living.getRotationVector(), living.level() instanceof ServerLevel ? (ServerLevel) living.level() : null, 4, - living.getName().getString(), living.getDisplayName(), living.level().getServer(), living), "playsound target:indication voice @a ~ ~ ~ 1 1"); + living.playSound(TargetModSounds.INDICATION.get()); } } diff --git a/src/main/java/net/mcreator/target/event/LivingEntityEventHandler.java b/src/main/java/net/mcreator/target/event/LivingEntityEventHandler.java index 6f6357cd5..6ee9533ab 100644 --- a/src/main/java/net/mcreator/target/event/LivingEntityEventHandler.java +++ b/src/main/java/net/mcreator/target/event/LivingEntityEventHandler.java @@ -38,7 +38,9 @@ import net.minecraftforge.network.PacketDistributor; public class LivingEntityEventHandler { @SubscribeEvent public static void onEntityAttacked(LivingHurtEvent event) { - if (event == null || event.getEntity() == null) return; + if (event == null || event.getEntity() == null) { + return; + } renderDamageIndicator(event); target1DamageImmune(event, event.getEntity()); reduceBulletDamage(event, event.getSource(), event.getEntity(), event.getSource().getEntity(), event.getAmount()); @@ -46,14 +48,17 @@ public class LivingEntityEventHandler { @SubscribeEvent public static void onEntityAttacked(LivingAttackEvent event) { - if (event == null || event.getEntity() == null) return; - arrowDamageImmuneForMine(event, event.getSource(), event.getSource().getEntity()); + if (event == null || event.getEntity() == null) { + return; + } claymoreDamage(event, event.getEntity().level(), event.getSource(), event.getEntity(), event.getSource().getEntity(), event.getAmount()); } @SubscribeEvent public static void onEntityDeath(LivingDeathEvent event) { - if (event == null || event.getEntity() == null) return; + if (event == null || event.getEntity() == null) { + return; + } killIndication(event.getSource().getEntity()); } @@ -126,15 +131,6 @@ public class LivingEntityEventHandler { }); } - private static void arrowDamageImmuneForMine(Event event, DamageSource damageSource, Entity sourceEntity) { - if (damageSource == null || sourceEntity == null) return; - if (sourceEntity instanceof Player player && (!sourceEntity.isAlive() || player.isSpectator()) - && (damageSource.is(ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation("target:arrow_in_brain"))) - || damageSource.is(ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation("target:mine"))) - || damageSource.is(DamageTypes.ARROW)) - ) event.setCanceled(true); - } - private static void renderDamageIndicator(LivingHurtEvent event) { if (event == null || event.getEntity() == null) return; var damagesource = event.getSource(); diff --git a/src/main/resources/assets/target/textures/particle/bullethole.png b/src/main/resources/assets/target/textures/particle/bullet_hole.png similarity index 100% rename from src/main/resources/assets/target/textures/particle/bullethole.png rename to src/main/resources/assets/target/textures/particle/bullet_hole.png