添加未添加的伤害类型
This commit is contained in:
parent
129460f8a8
commit
c5be3f7551
2 changed files with 14 additions and 2 deletions
|
@ -2,6 +2,7 @@ package net.mcreator.target.event;
|
||||||
|
|
||||||
import net.mcreator.target.entity.BocekarrowEntity;
|
import net.mcreator.target.entity.BocekarrowEntity;
|
||||||
import net.mcreator.target.entity.Target1Entity;
|
import net.mcreator.target.entity.Target1Entity;
|
||||||
|
import net.mcreator.target.init.TargetModDamageTypes;
|
||||||
import net.mcreator.target.init.TargetModTags;
|
import net.mcreator.target.init.TargetModTags;
|
||||||
import net.mcreator.target.network.TargetModVariables;
|
import net.mcreator.target.network.TargetModVariables;
|
||||||
import net.minecraft.commands.CommandSource;
|
import net.minecraft.commands.CommandSource;
|
||||||
|
@ -59,7 +60,7 @@ public class LivingEntityEventHandler {
|
||||||
if (event != null && event.isCancelable()) {
|
if (event != null && event.isCancelable()) {
|
||||||
event.setCanceled(true);
|
event.setCanceled(true);
|
||||||
}
|
}
|
||||||
entity.hurt(new DamageSource(world.registryAccess().registryOrThrow(Registries.DAMAGE_TYPE).getHolderOrThrow(ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation("target:mine"))), sourceentity), (float) amount);
|
entity.hurt(TargetModDamageTypes.causeMineDamage(world.registryAccess(), sourceentity), (float) amount);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -68,7 +69,7 @@ public class LivingEntityEventHandler {
|
||||||
if (damagesource == null || entity == null || immediatesourceentity == null || sourceentity == null) return;
|
if (damagesource == null || entity == null || immediatesourceentity == null || sourceentity == null) return;
|
||||||
if (damagesource.is(DamageTypes.ARROW) && immediatesourceentity instanceof BocekarrowEntity) {
|
if (damagesource.is(DamageTypes.ARROW) && immediatesourceentity instanceof BocekarrowEntity) {
|
||||||
event.setCanceled(true);
|
event.setCanceled(true);
|
||||||
entity.hurt(new DamageSource(world.registryAccess().registryOrThrow(Registries.DAMAGE_TYPE).getHolderOrThrow(ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation("target:arrow_in_brain"))), sourceentity), (float) amount);
|
entity.hurt(TargetModDamageTypes.causeArrowInBrainDamage(world.registryAccess(), sourceentity), (float) amount);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -17,11 +17,22 @@ import javax.annotation.Nullable;
|
||||||
@SuppressWarnings("OptionalGetWithoutIsPresent")
|
@SuppressWarnings("OptionalGetWithoutIsPresent")
|
||||||
public class TargetModDamageTypes {
|
public class TargetModDamageTypes {
|
||||||
public static final ResourceKey<DamageType> GUNFIRE = ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation(TargetMod.MODID, "gunfire"));
|
public static final ResourceKey<DamageType> GUNFIRE = ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation(TargetMod.MODID, "gunfire"));
|
||||||
|
public static final ResourceKey<DamageType> ARROW_IN_BRAIN = ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation(TargetMod.MODID, "arrow_in_brain"));
|
||||||
|
public static final ResourceKey<DamageType> MINE = ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation(TargetMod.MODID, "mine"));
|
||||||
|
|
||||||
|
|
||||||
public static DamageSource causeGunFireDamage(RegistryAccess registryAccess, @Nullable Entity entity) {
|
public static DamageSource causeGunFireDamage(RegistryAccess registryAccess, @Nullable Entity entity) {
|
||||||
return new DamageMessages(registryAccess.registry(Registries.DAMAGE_TYPE).get().getHolderOrThrow(GUNFIRE), entity);
|
return new DamageMessages(registryAccess.registry(Registries.DAMAGE_TYPE).get().getHolderOrThrow(GUNFIRE), entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static DamageSource causeArrowInBrainDamage(RegistryAccess registryAccess, @Nullable Entity entity) {
|
||||||
|
return new DamageMessages(registryAccess.registry(Registries.DAMAGE_TYPE).get().getHolderOrThrow(ARROW_IN_BRAIN), entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static DamageSource causeMineDamage(RegistryAccess registryAccess, @Nullable Entity entity) {
|
||||||
|
return new DamageMessages(registryAccess.registry(Registries.DAMAGE_TYPE).get().getHolderOrThrow(MINE), entity);
|
||||||
|
}
|
||||||
|
|
||||||
private static class DamageMessages extends DamageSource {
|
private static class DamageMessages extends DamageSource {
|
||||||
public DamageMessages(Holder.Reference<DamageType> typeReference) {
|
public DamageMessages(Holder.Reference<DamageType> typeReference) {
|
||||||
super(typeReference);
|
super(typeReference);
|
||||||
|
|
Loading…
Add table
Reference in a new issue