From 553d6ae40aba366977ae57a5235f4768f5c26ccb Mon Sep 17 00:00:00 2001 From: Atsuihsio <842960157@qq.com> Date: Tue, 4 Jun 2024 12:32:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=93=E8=85=BF=E5=87=8F?= =?UTF-8?q?=E9=80=9F=EF=BC=8C=E4=BF=AE=E5=A4=8D=E6=B3=B0=E7=91=9F=E5=8F=AA?= =?UTF-8?q?=E5=AF=B9=E7=8E=A9=E5=AE=B6=E6=9C=89=E6=95=88=E7=9A=84bug?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=BC=BA=E9=9B=A8=E6=95=A3=E5=BC=93=E5=8D=95?= =?UTF-8?q?=E6=9C=A8=E4=BB=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../target/entity/ProjectileEntity.java | 17 ++++++++++++----- .../entity/TaserBulletProjectileEntity.java | 15 +++++++-------- src/main/resources/data/target/guns/aa_12.json | 2 +- .../resources/data/target/guns/abekiri.json | 4 ++-- src/main/resources/data/target/guns/m_870.json | 2 +- 5 files changed, 23 insertions(+), 17 deletions(-) diff --git a/src/main/java/net/mcreator/target/entity/ProjectileEntity.java b/src/main/java/net/mcreator/target/entity/ProjectileEntity.java index 760b444fd..69b3a6188 100644 --- a/src/main/java/net/mcreator/target/entity/ProjectileEntity.java +++ b/src/main/java/net/mcreator/target/entity/ProjectileEntity.java @@ -1,10 +1,7 @@ package net.mcreator.target.entity; import net.mcreator.target.TargetMod; -import net.mcreator.target.init.TargetModDamageTypes; -import net.mcreator.target.init.TargetModEntities; -import net.mcreator.target.init.TargetModParticleTypes; -import net.mcreator.target.init.TargetModSounds; +import net.mcreator.target.init.*; import net.mcreator.target.network.message.ClientIndicatorMessage; import net.mcreator.target.network.message.PlayerGunKillMessage; import net.mcreator.target.tools.ExtendedEntityRayTraceResult; @@ -22,6 +19,8 @@ import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; import net.minecraft.util.Mth; +import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.effect.MobEffects; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.LivingEntity; @@ -54,7 +53,7 @@ public class ProjectileEntity extends Entity implements IEntityAdditionalSpawnDa protected int shooterId; private float damage = 1f; private float headShot = 1f; - private float legShot = 0.4f; + private float legShot = 0.5f; private boolean beast = false; public ProjectileEntity(EntityType p_i50159_1_, Level p_i50159_2_) { @@ -371,6 +370,14 @@ public class ProjectileEntity extends Entity implements IEntityAdditionalSpawnDa TargetMod.PACKET_HANDLER.send(PacketDistributor.PLAYER.with(() -> player), new ClientIndicatorMessage(0, 5)); } entity.hurt(TargetModDamageTypes.causeGunFireDamage(this.level().registryAccess(), this, this.shooter), this.damage * this.legShot); + if (entity instanceof LivingEntity living) { + if (living instanceof Player player && player.isCreative()){ + return; + } + if (!living.level().isClientSide()) { + living.addEffect(new MobEffectInstance(MobEffects.MOVEMENT_SLOWDOWN,20,2,false,false)); + } + } } else { if (!this.shooter.level().isClientSide() && this.shooter instanceof ServerPlayer player) { diff --git a/src/main/java/net/mcreator/target/entity/TaserBulletProjectileEntity.java b/src/main/java/net/mcreator/target/entity/TaserBulletProjectileEntity.java index f67aca39d..5a3357409 100644 --- a/src/main/java/net/mcreator/target/entity/TaserBulletProjectileEntity.java +++ b/src/main/java/net/mcreator/target/entity/TaserBulletProjectileEntity.java @@ -11,6 +11,7 @@ import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.effect.MobEffects; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.LivingEntity; @@ -99,16 +100,14 @@ public class TaserBulletProjectileEntity extends ThrowableItemProjectile { } } } - } - if (this.getOwner() instanceof LivingEntity source) { - CompoundTag tag = source.getMainHandItem().getOrCreateTag(); - tag.putInt("hit_count", tag.getInt("hit_count") + 1); - } - if (entity instanceof Player player && !player.isCreative()) { - if (!player.level().isClientSide()) { - player.addEffect(new MobEffectInstance(TargetModMobEffects.SHOCK.get(), 100, 0)); + if (entity instanceof LivingEntity living) { + if (living instanceof Player player && player.isCreative()){ + return; + } + if (!living.level().isClientSide()) { + living.addEffect(new MobEffectInstance(TargetModMobEffects.SHOCK.get(), 100, 0)); } } diff --git a/src/main/resources/data/target/guns/aa_12.json b/src/main/resources/data/target/guns/aa_12.json index 02f39e900..e0e1690cc 100644 --- a/src/main/resources/data/target/guns/aa_12.json +++ b/src/main/resources/data/target/guns/aa_12.json @@ -4,7 +4,7 @@ "dev": 3.5, "recoil_x": 0.006, "recoil_y": 0.018, - "damage": 1.5, + "damage": 2, "headshot": 1.5, "velocity": 16, "mag": 25, diff --git a/src/main/resources/data/target/guns/abekiri.json b/src/main/resources/data/target/guns/abekiri.json index 89b6cfbf3..a0397e4e9 100644 --- a/src/main/resources/data/target/guns/abekiri.json +++ b/src/main/resources/data/target/guns/abekiri.json @@ -4,11 +4,11 @@ "dev": 5, "recoil_x": 0.005, "recoil_y": 0.026, - "damage": 2.5, + "damage": 3, "headshot": 1.5, "velocity": 12, "mag": 2, - "projectile_amount": 8, + "projectile_amount": 10, "fire_interval": 2, "weight": 0, "fire_mode": 0, diff --git a/src/main/resources/data/target/guns/m_870.json b/src/main/resources/data/target/guns/m_870.json index 39ecac30c..909a27492 100644 --- a/src/main/resources/data/target/guns/m_870.json +++ b/src/main/resources/data/target/guns/m_870.json @@ -4,7 +4,7 @@ "dev": 3, "recoil_x": 0.009, "recoil_y": 0.03, - "damage": 2.4, + "damage": 3, "headshot": 1.5, "velocity": 16, "mag": 8,