Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Dismiss Notice

Помогите Создание моба лучника MCreator 1.12.2

Discussion in 'Помощь' started by Is3ngrim, Jun 25, 2021.

  1. Автор темы
    Is3ngrim

    Is3ngrim Ньюби

    Trophy Points:
    1
    Имя в Minecraft:
    Is3ngrim
    Столкнулся с проблемой при создании лучника на на базе скелета.Дело в том что моб издает звуки скелета при движении и мне хотелось бы это исключить.Если подскажите что и куда дописать/изменить в коде,буду признателен.

    package net.mcreator.relentless_mobs.entity;

    import net.minecraftforge.fml.relauncher.SideOnly;
    import net.minecraftforge.fml.relauncher.Side;
    import net.minecraftforge.fml.common.registry.EntityRegistry;
    import net.minecraftforge.fml.common.registry.EntityEntryBuilder;
    import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
    import net.minecraftforge.fml.common.event.FMLInitializationEvent;
    import net.minecraftforge.fml.client.registry.RenderingRegistry;

    import net.minecraft.world.biome.Biome;
    import net.minecraft.world.World;
    import net.minecraft.util.ResourceLocation;
    import net.minecraft.util.DamageSource;
    import net.minecraft.item.ItemStack;
    import net.minecraft.item.Item;
    import net.minecraft.inventory.EntityEquipmentSlot;
    import net.minecraft.init.Items;
    import net.minecraft.entity.monster.EntitySkeleton;
    import net.minecraft.entity.ai.EntityAIWander;
    import net.minecraft.entity.ai.EntityAISwimming;
    import net.minecraft.entity.ai.EntityAIPanic;
    import net.minecraft.entity.ai.EntityAILookIdle;
    import net.minecraft.entity.ai.EntityAILeapAtTarget;
    import net.minecraft.entity.ai.EntityAIHurtByTarget;
    import net.minecraft.entity.ai.EntityAIBreakDoor;
    import net.minecraft.entity.SharedMonsterAttributes;
    import net.minecraft.entity.EnumCreatureType;
    import net.minecraft.entity.EnumCreatureAttribute;
    import net.minecraft.entity.Entity;
    import net.minecraft.client.renderer.entity.RenderBiped;
    import net.minecraft.client.model.ModelBiped;

    import net.mcreator.relentless_mobs.item.ItemCoins;
    import net.mcreator.relentless_mobs.ElementsRelentlessmobs;

    import java.util.Iterator;
    import java.util.ArrayList;

    @ElementsRelentlessmobs.ModElement.Tag
    public class EntityBrigand extends ElementsRelentlessmobs.ModElement {
    public static final int ENTITYID = 5;
    public static final int ENTITYID_RANGED = 6;
    public EntityBrigand(ElementsRelentlessmobs instance) {
    super(instance, 1);
    }

    @Override
    public void initElements() {
    elements.entities.add(() -> EntityEntryBuilder.create().entity(EntityCustom.class)
    .id(new ResourceLocation("relentless_mobs", "brigand"), ENTITYID).name("brigand").tracker(64, 3, true).egg(-1, -1).build());
    }

    @Override
    public void init(FMLInitializationEvent event) {
    Biome[] spawnBiomes = allbiomes(Biome.REGISTRY);
    EntityRegistry.addSpawn(EntityCustom.class, 20, 1, 3, EnumCreatureType.CREATURE, spawnBiomes);
    }

    private Biome[] allbiomes(net.minecraft.util.registry.RegistryNamespaced<ResourceLocation, Biome> in) {
    Iterator<Biome> itr = in.iterator();
    ArrayList<Biome> ls = new ArrayList<Biome>();
    while (itr.hasNext())
    ls.add(itr.next());
    return ls.toArray(new Biome[ls.size()]);
    }

    @SideOnly(Side.CLIENT)
    @Override
    public void preInit(FMLPreInitializationEvent event) {
    RenderingRegistry.registerEntityRenderingHandler(EntityCustom.class, renderManager -> {
    RenderBiped customRender = new RenderBiped(renderManager, new ModelBiped(), 0.5f) {
    protected ResourceLocation getEntityTexture(Entity entity) {
    return new ResourceLocation("relentless_mobs:textures/rigand.png");
    }
    };
    customRender.addLayer(new net.minecraft.client.renderer.entity.layers.LayerBipedArmor(customRender) {
    protected void initArmor() {
    this.modelLeggings = new ModelBiped(0.5f);
    this.modelArmor = new ModelBiped(1);
    }
    });
    return customRender;
    });
    }
    public static class EntityCustom extends EntitySkeleton {
    public EntityCustom(World world) {
    super(world);
    setSize(0.6f, 1.8f);
    experienceValue = 5;
    this.isImmuneToFire = true;
    setNoAI(!true);
    enablePersistence();
    this.setItemStackToSlot(EntityEquipmentSlot.MAINHAND, new ItemStack(Items.BOW, (int) (1)));
    }

    @Override
    protected void initEntityAI() {
    super.initEntityAI();
    this.tasks.addTask(1, new EntityAIWander(this, 1));
    this.tasks.addTask(2, new EntityAILookIdle(this));
    this.tasks.addTask(3, new EntityAISwimming(this));
    this.tasks.addTask(4, new EntityAILeapAtTarget(this, (float) 0.8));
    this.tasks.addTask(5, new EntityAIPanic(this, 1.2));
    this.targetTasks.addTask(6, new EntityAIHurtByTarget(this, false));
    this.tasks.addTask(7, new EntityAIBreakDoor(this));
    }

    @Override
    public EnumCreatureAttribute getCreatureAttribute() {
    return EnumCreatureAttribute.ILLAGER;
    }

    @Override
    protected boolean canDespawn() {
    return false;
    }

    @Override
    protected Item getDropItem() {
    return new ItemStack(ItemCoins.block, (int) (1)).getItem();
    }

    @Override
    public net.minecraft.util.SoundEvent getAmbientSound() {
    return (net.minecraft.util.SoundEvent) net.minecraft.util.SoundEvent.REGISTRY.getObject(new ResourceLocation(""));
    }

    @Override
    public net.minecraft.util.SoundEvent getHurtSound(DamageSource ds) {
    return (net.minecraft.util.SoundEvent) net.minecraft.util.SoundEvent.REGISTRY.getObject(new ResourceLocation("entity.generic.hurt"));
    }

    @Override
    public net.minecraft.util.SoundEvent getDeathSound() {
    return (net.minecraft.util.SoundEvent) net.minecraft.util.SoundEvent.REGISTRY.getObject(new ResourceLocation("entity.generic.death"));
    }

    @Override
    protected float getSoundVolume() {
    return 1.0F;
    }

    @Override
    protected void applyEntityAttributes() {
    super.applyEntityAttributes();
    if (this.getEntityAttribute(SharedMonsterAttributes.ARMOR) != null)
    this.getEntityAttribute(SharedMonsterAttributes.ARMOR).setBaseValue(0D);
    if (this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED) != null)
    this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.3D);
    if (this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH) != null)
    this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(10D);
    if (this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE) != null)
    this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(3D);
    }
    }
    }
     
  2. Хостинг MineCraft
    <

Share This Page