package net.mcreator.target.procedures; import net.mcreator.target.init.TargetModItems; import net.mcreator.target.network.TargetModVariables; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; public class WeaponDrawProcedure { public static void execute(Entity entity, ItemStack itemstack) { if (entity == null) return; ItemStack stack = ItemStack.EMPTY; if ((entity instanceof LivingEntity _livEnt ? _livEnt.getMainHandItem() : ItemStack.EMPTY).getItem() == itemstack.getItem()) { if (itemstack.getOrCreateTag().getDouble("draw") < 2) { itemstack.getOrCreateTag().putDouble("draw", (itemstack.getOrCreateTag().getDouble("draw") + 1)); } } else { itemstack.getOrCreateTag().putDouble("draw", 0); } if (itemstack.getOrCreateTag().getDouble("draw") == 1) { { boolean _setval = false; entity.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).ifPresent(capability -> { capability.zooming = _setval; capability.syncPlayerVariables(entity); }); } if (entity instanceof Player _player) _player.getCooldowns().addCooldown(itemstack.getItem(), 16); if (itemstack.getItem() == TargetModItems.RPG.get() && itemstack.getOrCreateTag().getDouble("ammo") == 0) { itemstack.getOrCreateTag().putDouble("empty", 1); } if (itemstack.getItem() == TargetModItems.SKS.get() && itemstack.getOrCreateTag().getDouble("ammo") == 0) { itemstack.getOrCreateTag().putDouble("gj", 1); } } if ((entity instanceof LivingEntity _livEnt ? _livEnt.getMainHandItem() : ItemStack.EMPTY).getItem() == itemstack.getItem()) { if (itemstack.getOrCreateTag().getDouble("drawtime") < 16) { itemstack.getOrCreateTag().putDouble("drawtime", (itemstack.getOrCreateTag().getDouble("drawtime") + 1)); } } else { itemstack.getOrCreateTag().putDouble("drawtime", 0); } if (itemstack.getOrCreateTag().getDouble("fireanim") > 0) { itemstack.getOrCreateTag().putDouble("fireanim", (itemstack.getOrCreateTag().getDouble("fireanim") - 1)); } } }