Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.mcreator.auradium.procedures;
- import net.minecraft.world.phys.Vec3;
- import net.minecraft.world.level.LevelAccessor;
- import net.minecraft.world.entity.Mob;
- import net.minecraft.world.entity.Entity;
- import net.minecraft.server.level.ServerPlayer;
- import net.minecraft.commands.arguments.EntityAnchorArgument;
- import net.mcreator.auradium.entity.ApexHyperionEntity;
- import net.mcreator.auradium.AuradiumMod;
- public class ApexHyperionPunchProcedure {
- public static void execute(LevelAccessor world, Entity entity) {
- if (entity == null)
- return;
- // Here's where the game crashes
- entity.lookAt(EntityAnchorArgument.Anchor.EYES, new Vec3(((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getX()), ((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getY()),
- ((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getZ())));
- if (entity instanceof ApexHyperionEntity) {
- ((ApexHyperionEntity) entity).setAnimation("hyperion.punch.start");
- }
- AuradiumMod.queueServerWork(25, () -> {
- if (entity instanceof ApexHyperionEntity) {
- ((ApexHyperionEntity) entity).setAnimation("hyperion.punch.windup");
- }
- {
- Entity _ent = entity;
- _ent.teleportTo(((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getX()), ((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getY()),
- ((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getZ()));
- if (_ent instanceof ServerPlayer _serverPlayer)
- _serverPlayer.connection.teleport(((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getX()), ((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getY()),
- ((entity instanceof Mob _mobEnt ? (Entity) _mobEnt.getTarget() : null).getZ()), _ent.getYRot(), _ent.getXRot());
- }
- AuradiumMod.queueServerWork(3, () -> {
- if (entity instanceof ApexHyperionEntity) {
- ((ApexHyperionEntity) entity).setAnimation("hyperion.punch.finish");
- }
- });
- });
- entity.getPersistentData().putString("Trigger", "Null");
- entity.getPersistentData().putDouble("Wait", 100);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement