2
1
Fork 1
mirror of https://github.com/ACGaming/Spackenmobs synced 2024-06-11 06:58:56 +02:00

Fun and games for CurseForge

This commit is contained in:
ACGaming 2022-03-26 09:38:31 +01:00
parent 1a07d7c71a
commit bda83c8f75
24 changed files with 7 additions and 596 deletions

View file

@ -9,4 +9,4 @@ mod_id=spackenmobs
# Version
mc_version=1.16.5
version=1.1
version=1.1-CF

View file

@ -19,7 +19,6 @@ public class ClientHandler
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.FRIEDRICH_LIECHTENSTEIN.get(), FriedrichLiechtensteinRenderer::new);
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.GISELA.get(), GiselaRenderer::new);
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.HOLZSTAMMHUHN.get(), HolzstammhuhnRenderer::new);
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.ISLAMIST.get(), IslamistRenderer::new);
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.JENS.get(), JensRenderer::new);
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.MARCELLDAVIS.get(), MarcellDAvisRenderer::new);
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.MRBEAN.get(), MrBeanRenderer::new);

View file

@ -1,49 +0,0 @@
package mod.acgaming.spackenmobs.client.renderer.entity;
import net.minecraft.client.renderer.entity.EntityRendererManager;
import net.minecraft.client.renderer.entity.IEntityRenderer;
import net.minecraft.client.renderer.entity.MobRenderer;
import net.minecraft.client.renderer.entity.model.CreeperModel;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.MathHelper;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import com.mojang.blaze3d.matrix.MatrixStack;
import mod.acgaming.spackenmobs.client.renderer.entity.layer.IslamistChargeLayer;
import mod.acgaming.spackenmobs.entity.IslamistEntity;
@OnlyIn(Dist.CLIENT)
public class IslamistRenderer extends MobRenderer<IslamistEntity, CreeperModel<IslamistEntity>> implements IEntityRenderer<IslamistEntity, CreeperModel<IslamistEntity>>
{
private static final ResourceLocation ISLAMIST_TEXTURES = new ResourceLocation("spackenmobs:textures/entities/islamist.png");
public IslamistRenderer(EntityRendererManager renderManagerIn)
{
super(renderManagerIn, new CreeperModel<>(), 0.5F);
this.addLayer(new IslamistChargeLayer(this));
}
public ResourceLocation getTextureLocation(IslamistEntity entity)
{
return ISLAMIST_TEXTURES;
}
protected float getWhiteOverlayProgress(IslamistEntity livingEntityIn, float partialTicks)
{
float f = livingEntityIn.getCreeperFlashIntensity(partialTicks);
return (int) (f * 10.0F) % 2 == 0 ? 0.0F : MathHelper.clamp(f, 0.5F, 1.0F);
}
protected void scale(IslamistEntity entitylivingbaseIn, MatrixStack matrixStackIn, float partialTickTime)
{
float f = entitylivingbaseIn.getCreeperFlashIntensity(partialTickTime);
float f1 = 1.0F + MathHelper.sin(f * 100.0F) * f * 0.01F;
f = MathHelper.clamp(f, 0.0F, 1.0F);
f = f * f;
f = f * f;
float f2 = (1.0F + f * 0.4F) * f1;
float f3 = (1.0F + f * 0.1F) / f1;
matrixStackIn.scale(f2, f3, f2);
}
}

View file

@ -1,38 +0,0 @@
package mod.acgaming.spackenmobs.client.renderer.entity.layer;
import net.minecraft.client.renderer.entity.IEntityRenderer;
import net.minecraft.client.renderer.entity.layers.EnergyLayer;
import net.minecraft.client.renderer.entity.model.CreeperModel;
import net.minecraft.client.renderer.entity.model.EntityModel;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import mod.acgaming.spackenmobs.entity.IslamistEntity;
@OnlyIn(Dist.CLIENT)
public class IslamistChargeLayer extends EnergyLayer<IslamistEntity, CreeperModel<IslamistEntity>>
{
private static final ResourceLocation LIGHTNING_TEXTURE = new ResourceLocation("textures/entity/creeper/creeper_armor.png");
private final CreeperModel<IslamistEntity> creeperModel = new CreeperModel<>(2.0F);
public IslamistChargeLayer(IEntityRenderer<IslamistEntity, CreeperModel<IslamistEntity>> p_i50947_1_)
{
super(p_i50947_1_);
}
protected float xOffset(float p_225634_1_)
{
return p_225634_1_ * 0.01F;
}
protected ResourceLocation getTextureLocation()
{
return LIGHTNING_TEXTURE;
}
protected EntityModel<IslamistEntity> model()
{
return this.creeperModel;
}
}

View file

@ -1,311 +0,0 @@
package mod.acgaming.spackenmobs.entity;
import java.util.Collection;
import net.minecraft.entity.AreaEffectCloudEntity;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityType;
import net.minecraft.entity.IChargeableMob;
import net.minecraft.entity.ai.attributes.AttributeModifierMap;
import net.minecraft.entity.ai.attributes.Attributes;
import net.minecraft.entity.ai.goal.*;
import net.minecraft.entity.effect.LightningBoltEntity;
import net.minecraft.entity.monster.MonsterEntity;
import net.minecraft.entity.passive.CatEntity;
import net.minecraft.entity.passive.OcelotEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.nbt.CompoundNBT;
import net.minecraft.network.datasync.DataParameter;
import net.minecraft.network.datasync.DataSerializers;
import net.minecraft.network.datasync.EntityDataManager;
import net.minecraft.potion.EffectInstance;
import net.minecraft.util.*;
import net.minecraft.util.math.MathHelper;
import net.minecraft.world.Explosion;
import net.minecraft.world.World;
import net.minecraft.world.server.ServerWorld;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import mod.acgaming.spackenmobs.entity.ai.goal.IslamistSwellGoal;
import mod.acgaming.spackenmobs.init.SpackenmobsRegistry;
@OnlyIn(
value = Dist.CLIENT,
_interface = IChargeableMob.class
)
public class IslamistEntity extends MonsterEntity implements IChargeableMob
{
private static final DataParameter<Integer> STATE = EntityDataManager.defineId(IslamistEntity.class, DataSerializers.INT);
private static final DataParameter<Boolean> POWERED = EntityDataManager.defineId(IslamistEntity.class, DataSerializers.BOOLEAN);
private static final DataParameter<Boolean> IGNITED = EntityDataManager.defineId(IslamistEntity.class, DataSerializers.BOOLEAN);
public static AttributeModifierMap.MutableAttribute registerAttributes()
{
return MonsterEntity.createMonsterAttributes().add(Attributes.MOVEMENT_SPEED, 0.25D);
}
private int lastActiveTime;
private int timeSinceIgnited;
private int fuseTime = 30;
private int explosionRadius = 6;
private int droppedSkulls;
public IslamistEntity(EntityType<? extends IslamistEntity> type, World worldIn)
{
super(type, worldIn);
}
public boolean causeFallDamage(float distance, float damageMultiplier)
{
boolean flag = super.causeFallDamage(distance, damageMultiplier);
this.timeSinceIgnited = (int) ((float) this.timeSinceIgnited + distance * 1.5F);
if (this.timeSinceIgnited > this.fuseTime - 5)
{
this.timeSinceIgnited = this.fuseTime - 5;
}
return flag;
}
protected float getSoundVolume()
{
return 0.6F;
}
public boolean isPowered()
{
return this.entityData.get(POWERED);
}
@OnlyIn(Dist.CLIENT)
public float getCreeperFlashIntensity(float partialTicks)
{
return MathHelper.lerp(partialTicks, (float) this.lastActiveTime, (float) this.timeSinceIgnited) / (float) (this.fuseTime - 2);
}
public int getCreeperState()
{
return this.entityData.get(STATE);
}
public void setCreeperState(int state)
{
this.entityData.set(STATE, state);
}
public void thunderHit(ServerWorld p_241841_1_, LightningBoltEntity p_241841_2_)
{
super.thunderHit(p_241841_1_, p_241841_2_);
this.entityData.set(POWERED, true);
}
public boolean hasIgnited()
{
return this.entityData.get(IGNITED);
}
public void ignite()
{
this.entityData.set(IGNITED, true);
}
public boolean ableToCauseSkullDrop()
{
return this.isPowered() && this.droppedSkulls < 1;
}
public void incrementDroppedSkulls()
{
++this.droppedSkulls;
}
protected void registerGoals()
{
this.goalSelector.addGoal(1, new SwimGoal(this));
this.goalSelector.addGoal(2, new IslamistSwellGoal(this));
this.goalSelector.addGoal(3, new AvoidEntityGoal<>(this, OcelotEntity.class, 6.0F, 1.0D, 1.2D));
this.goalSelector.addGoal(3, new AvoidEntityGoal<>(this, CatEntity.class, 6.0F, 1.0D, 1.2D));
this.goalSelector.addGoal(3, new LeapAtTargetGoal(this, 0.8F));
this.goalSelector.addGoal(4, new MeleeAttackGoal(this, 1.0D, false));
this.goalSelector.addGoal(5, new WaterAvoidingRandomWalkingGoal(this, 0.8D));
this.goalSelector.addGoal(6, new LookAtGoal(this, PlayerEntity.class, 8.0F));
this.goalSelector.addGoal(6, new LookRandomlyGoal(this));
this.targetSelector.addGoal(1, new NearestAttackableTargetGoal<>(this, PlayerEntity.class, true));
this.targetSelector.addGoal(2, new HurtByTargetGoal(this));
}
protected void defineSynchedData()
{
super.defineSynchedData();
this.entityData.define(STATE, -1);
this.entityData.define(POWERED, false);
this.entityData.define(IGNITED, false);
}
public void tick()
{
if (this.isAlive())
{
this.lastActiveTime = this.timeSinceIgnited;
if (this.hasIgnited())
{
this.setCreeperState(1);
}
int i = this.getCreeperState();
if (i > 0 && this.timeSinceIgnited == 0)
{
this.playSound(SpackenmobsRegistry.ENTITY_ISLAMIST_FUSE.get(), 1.0F, 0.5F);
}
this.timeSinceIgnited += i;
if (this.timeSinceIgnited < 0)
{
this.timeSinceIgnited = 0;
}
if (this.timeSinceIgnited >= this.fuseTime)
{
this.timeSinceIgnited = this.fuseTime;
this.explode();
}
}
super.tick();
}
protected SoundEvent getAmbientSound()
{
return SpackenmobsRegistry.ENTITY_ISLAMIST_AMBIENT.get();
}
public void addAdditionalSaveData(CompoundNBT compound)
{
super.addAdditionalSaveData(compound);
if (this.entityData.get(POWERED))
{
compound.putBoolean("powered", true);
}
compound.putShort("Fuse", (short) this.fuseTime);
compound.putByte("ExplosionRadius", (byte) this.explosionRadius);
compound.putBoolean("ignited", this.hasIgnited());
}
public void readAdditionalSaveData(CompoundNBT compound)
{
super.readAdditionalSaveData(compound);
this.entityData.set(POWERED, compound.getBoolean("powered"));
if (compound.contains("Fuse", 99))
{
this.fuseTime = compound.getShort("Fuse");
}
if (compound.contains("ExplosionRadius", 99))
{
this.explosionRadius = compound.getByte("ExplosionRadius");
}
if (compound.getBoolean("ignited"))
{
this.ignite();
}
}
public int getMaxFallDistance()
{
return this.getTarget() == null ? 3 : 3 + (int) (this.getHealth() - 1.0F);
}
protected void dropCustomDeathLoot(DamageSource source, int looting, boolean recentlyHitIn)
{
super.dropCustomDeathLoot(source, looting, recentlyHitIn);
Entity entity = source.getEntity();
if (entity != this && entity instanceof IslamistEntity)
{
IslamistEntity creeperentity = (IslamistEntity) entity;
if (creeperentity.ableToCauseSkullDrop())
{
creeperentity.incrementDroppedSkulls();
this.spawnAtLocation(Items.CREEPER_HEAD);
}
}
}
protected ActionResultType mobInteract(PlayerEntity p_230254_1_, Hand p_230254_2_)
{
ItemStack itemstack = p_230254_1_.getItemInHand(p_230254_2_);
if (itemstack.getItem() == Items.FLINT_AND_STEEL)
{
this.level.playSound(p_230254_1_, this.getX(), this.getY(), this.getZ(), SoundEvents.FLINTANDSTEEL_USE, this.getSoundSource(), 1.0F, this.random.nextFloat() * 0.4F + 0.8F);
if (!this.level.isClientSide)
{
this.ignite();
itemstack.hurtAndBreak(1, p_230254_1_, (player) ->
player.broadcastBreakEvent(p_230254_2_));
}
return ActionResultType.sidedSuccess(this.level.isClientSide);
}
else
{
return super.mobInteract(p_230254_1_, p_230254_2_);
}
}
public boolean doHurtTarget(Entity entityIn)
{
return true;
}
protected SoundEvent getHurtSound(DamageSource damageSourceIn)
{
return SpackenmobsRegistry.ENTITY_ISLAMIST_HURT.get();
}
protected SoundEvent getDeathSound()
{
return SpackenmobsRegistry.ENTITY_ISLAMIST_AMBIENT.get();
}
private void explode()
{
if (!this.level.isClientSide)
{
Explosion.Mode explosion$mode = net.minecraftforge.event.ForgeEventFactory.getMobGriefingEvent(this.level, this) ? Explosion.Mode.DESTROY : Explosion.Mode.NONE;
float f = this.isPowered() ? 2.0F : 1.0F;
this.dead = true;
this.playSound(SpackenmobsRegistry.ENTITY_ISLAMIST_BLOW.get(), 1.0F, 1.0F);
this.level.explode(this, this.getX(), this.getY(), this.getZ(), (float) this.explosionRadius * f, explosion$mode);
this.remove();
this.spawnLingeringCloud();
}
}
private void spawnLingeringCloud()
{
Collection<EffectInstance> collection = this.getActiveEffects();
if (!collection.isEmpty())
{
AreaEffectCloudEntity areaeffectcloudentity = new AreaEffectCloudEntity(this.level, this.getX(), this.getY(), this.getZ());
areaeffectcloudentity.setRadius(2.5F);
areaeffectcloudentity.setRadiusOnUse(-0.5F);
areaeffectcloudentity.setWaitTime(10);
areaeffectcloudentity.setDuration(areaeffectcloudentity.getDuration() / 2);
areaeffectcloudentity.setRadiusPerTick(-areaeffectcloudentity.getRadius() / (float) areaeffectcloudentity.getDuration());
for (EffectInstance effectinstance : collection)
{
areaeffectcloudentity.addEffect(new EffectInstance(effectinstance));
}
this.level.addFreshEntity(areaeffectcloudentity);
}
}
}

View file

@ -1,57 +0,0 @@
package mod.acgaming.spackenmobs.entity.ai.goal;
import java.util.EnumSet;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.ai.goal.Goal;
import mod.acgaming.spackenmobs.entity.IslamistEntity;
public class IslamistSwellGoal extends Goal
{
private final IslamistEntity swellingCreeper;
private LivingEntity creeperAttackTarget;
public IslamistSwellGoal(IslamistEntity entityislamistIn)
{
this.swellingCreeper = entityislamistIn;
this.setFlags(EnumSet.of(Flag.MOVE));
}
public boolean canUse()
{
LivingEntity livingentity = this.swellingCreeper.getTarget();
return this.swellingCreeper.getCreeperState() > 0 || livingentity != null && this.swellingCreeper.distanceToSqr(livingentity) < 9.0D;
}
public void start()
{
this.swellingCreeper.getNavigation().stop();
this.creeperAttackTarget = this.swellingCreeper.getTarget();
}
public void stop()
{
this.creeperAttackTarget = null;
}
public void tick()
{
if (this.creeperAttackTarget == null)
{
this.swellingCreeper.setCreeperState(-1);
}
else if (this.swellingCreeper.distanceToSqr(this.creeperAttackTarget) > 49.0D)
{
this.swellingCreeper.setCreeperState(-1);
}
else if (!this.swellingCreeper.getSensing().canSee(this.creeperAttackTarget))
{
this.swellingCreeper.setCreeperState(-1);
}
else
{
this.swellingCreeper.setCreeperState(1);
}
}
}

View file

@ -39,7 +39,6 @@ public class SpackenmobsEntities
registerSpawn(monster_spawns, entry, ConfigurationHandler.SPAWN.apored_weight.get(), ConfigurationHandler.SPAWN.apored_min.get(), ConfigurationHandler.SPAWN.apored_max.get(), EntityType.SKELETON, SpackenmobsRegistry.APORED.get());
registerSpawn(monster_spawns, entry, ConfigurationHandler.SPAWN.bakamitai_creeper_weight.get(), ConfigurationHandler.SPAWN.bakamitai_creeper_min.get(), ConfigurationHandler.SPAWN.bakamitai_creeper_max.get(), EntityType.CREEPER, SpackenmobsRegistry.BAKAMITAI_CREEPER.get());
registerSpawn(monster_spawns, entry, ConfigurationHandler.SPAWN.drachenlord_weight.get(), ConfigurationHandler.SPAWN.drachenlord_min.get(), ConfigurationHandler.SPAWN.drachenlord_max.get(), EntityType.PIGLIN, SpackenmobsRegistry.DRACHENLORD.get());
registerSpawn(monster_spawns, entry, ConfigurationHandler.SPAWN.islamist_weight.get(), ConfigurationHandler.SPAWN.islamist_min.get(), ConfigurationHandler.SPAWN.islamist_max.get(), EntityType.CREEPER, SpackenmobsRegistry.ISLAMIST.get());
registerSpawn(monster_spawns, entry, ConfigurationHandler.SPAWN.marcell_davis_weight.get(), ConfigurationHandler.SPAWN.marcell_davis_min.get(), ConfigurationHandler.SPAWN.marcell_davis_max.get(), EntityType.ZOMBIE, SpackenmobsRegistry.MARCELLDAVIS.get());
registerSpawn(monster_spawns, entry, ConfigurationHandler.SPAWN.mr_bean_weight.get(), ConfigurationHandler.SPAWN.mr_bean_min.get(), ConfigurationHandler.SPAWN.mr_bean_max.get(), EntityType.ZOMBIE, SpackenmobsRegistry.MRBEAN.get());
registerSpawn(monster_spawns, entry, ConfigurationHandler.SPAWN.schalker_weight.get(), ConfigurationHandler.SPAWN.schalker_min.get(), ConfigurationHandler.SPAWN.schalker_max.get(), EntityType.SHULKER, SpackenmobsRegistry.SCHALKER.get());
@ -67,7 +66,6 @@ public class SpackenmobsEntities
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.FRIEDRICH_LIECHTENSTEIN.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, AnimalEntity::checkAnimalSpawnRules);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.GISELA.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, AnimalEntity::checkAnimalSpawnRules);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.HOLZSTAMMHUHN.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, AnimalEntity::checkAnimalSpawnRules);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.ISLAMIST.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::checkMonsterSpawnRules);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.JENS.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, AnimalEntity::checkAnimalSpawnRules);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.MARCELLDAVIS.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::checkMonsterSpawnRules);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.MRBEAN.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::checkMonsterSpawnRules);
@ -82,7 +80,6 @@ public class SpackenmobsEntities
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.FRIEDRICH_LIECHTENSTEIN.get(), FriedrichLiechtensteinEntity.registerAttributes().build());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.GISELA.get(), GiselaEntity.registerAttributes().build());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.HOLZSTAMMHUHN.get(), HolzstammhuhnEntity.registerAttributes().build());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.ISLAMIST.get(), IslamistEntity.registerAttributes().build());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.JENS.get(), JensEntity.registerAttributes().build());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.MARCELLDAVIS.get(), MarcellDAvisEntity.registerAttributes().build());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.MRBEAN.get(), MrBeanEntity.registerAttributes().build());

View file

@ -54,11 +54,6 @@ public class SpackenmobsRegistry
() -> register("holzstammhuhn", EntityType.Builder.of(HolzstammhuhnEntity::new, EntityClassification.CREATURE)
.sized(0.4F, 0.7F).clientTrackingRange(10)));
public static final RegistryObject<Item> HOLZSTAMMHUHN_SPAWN_EGG = ITEMS.register("holzstammhuhn_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.HOLZSTAMMHUHN::get, 12096347, 5295899, itemBuilder()));
// Islamist
public static final RegistryObject<EntityType<IslamistEntity>> ISLAMIST = ENTITIES.register("islamist",
() -> register("islamist", EntityType.Builder.of(IslamistEntity::new, EntityClassification.MONSTER)
.sized(0.6F, 1.7F).clientTrackingRange(10)));
public static final RegistryObject<Item> ISLAMIST_SPAWN_EGG = ITEMS.register("islamist_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.ISLAMIST::get, 15263976, 15211548, itemBuilder()));
// Jens
public static final RegistryObject<EntityType<JensEntity>> JENS = ENTITIES.register("jens",
() -> register("jens", EntityType.Builder.of(JensEntity::new, EntityClassification.CREATURE)
@ -121,11 +116,6 @@ public class SpackenmobsRegistry
public static final RegistryObject<SoundEvent> ENTITY_GISELA_AMBIENT = SOUND_EVENTS.register("entities.gisela.ambient", () -> createSound("entities.gisela.ambient"));
public static final RegistryObject<SoundEvent> ENTITY_GISELA_HURT = SOUND_EVENTS.register("entities.gisela.hurt", () -> createSound("entities.gisela.hurt"));
//public static final RegistryObject<SoundEvent> ENTITY_GISELA_DEATH = SOUND_EVENTS.register("entities.gisela.death", () -> createSound("entities.gisela.death"));
// Islamist
public static final RegistryObject<SoundEvent> ENTITY_ISLAMIST_FUSE = SOUND_EVENTS.register("entities.islamist.fuse", () -> createSound("entities.islamist.fuse"));
public static final RegistryObject<SoundEvent> ENTITY_ISLAMIST_BLOW = SOUND_EVENTS.register("entities.islamist.blow", () -> createSound("entities.islamist.blow"));
public static final RegistryObject<SoundEvent> ENTITY_ISLAMIST_HURT = SOUND_EVENTS.register("entities.islamist.hurt", () -> createSound("entities.islamist.hurt"));
public static final RegistryObject<SoundEvent> ENTITY_ISLAMIST_AMBIENT = SOUND_EVENTS.register("entities.islamist.ambient", () -> createSound("entities.islamist.ambient"));
// Jens
public static final RegistryObject<SoundEvent> ENTITY_JENS_AMBIENT = SOUND_EVENTS.register("entities.jens.ambient", () -> createSound("entities.jens.ambient"));
public static final RegistryObject<SoundEvent> ENTITY_JENS_HURT = SOUND_EVENTS.register("entities.jens.hurt", () -> createSound("entities.jens.hurt"));

View file

@ -39,9 +39,9 @@ public class ConfigurationHandler
public final ForgeConfigSpec.IntValue bakamitai_creeper_max;
public final ForgeConfigSpec.IntValue bakamitai_creeper_weight;
public final ForgeConfigSpec.IntValue dagibee_min;
public final ForgeConfigSpec.IntValue dagibee_max;
public final ForgeConfigSpec.IntValue dagibee_weight;
//public final ForgeConfigSpec.IntValue dagibee_min;
//public final ForgeConfigSpec.IntValue dagibee_max;
//public final ForgeConfigSpec.IntValue dagibee_weight;
public final ForgeConfigSpec.IntValue drachenlord_min;
public final ForgeConfigSpec.IntValue drachenlord_max;
@ -59,10 +59,6 @@ public class ConfigurationHandler
public final ForgeConfigSpec.IntValue holzstammhuhn_max;
public final ForgeConfigSpec.IntValue holzstammhuhn_weight;
public final ForgeConfigSpec.IntValue islamist_min;
public final ForgeConfigSpec.IntValue islamist_max;
public final ForgeConfigSpec.IntValue islamist_weight;
public final ForgeConfigSpec.IntValue jens_min;
public final ForgeConfigSpec.IntValue jens_max;
public final ForgeConfigSpec.IntValue jens_weight;
@ -100,9 +96,9 @@ public class ConfigurationHandler
bakamitai_creeper_max = builder.defineInRange("bakamitai_creeper_max", 1, 1, 64);
bakamitai_creeper_weight = builder.defineInRange("bakamitai_creeper_weight", 60, 0, 200);
dagibee_min = builder.defineInRange("dagibee_min", 1, 1, 64);
dagibee_max = builder.defineInRange("dagibee_max", 1, 1, 64);
dagibee_weight = builder.defineInRange("dagibee_weight", 8, 0, 200);
//dagibee_min = builder.defineInRange("dagibee_min", 1, 1, 64);
//dagibee_max = builder.defineInRange("dagibee_max", 1, 1, 64);
//dagibee_weight = builder.defineInRange("dagibee_weight", 8, 0, 200);
drachenlord_min = builder.defineInRange("drachenlord_min", 1, 1, 64);
drachenlord_max = builder.defineInRange("drachenlord_max", 1, 1, 64);
@ -120,10 +116,6 @@ public class ConfigurationHandler
holzstammhuhn_max = builder.defineInRange("holzstammhuhn_max", 1, 1, 64);
holzstammhuhn_weight = builder.defineInRange("holzstammhuhn_weight", 8, 0, 200);
islamist_min = builder.defineInRange("islamist_min", 1, 1, 64);
islamist_max = builder.defineInRange("islamist_max", 1, 1, 64);
islamist_weight = builder.defineInRange("islamist_weight", 60, 0, 200);
jens_min = builder.defineInRange("jens_min", 1, 1, 64);
jens_max = builder.defineInRange("jens_max", 1, 1, 64);
jens_weight = builder.defineInRange("jens_weight", 8, 0, 200);

View file

@ -17,7 +17,6 @@
"entity.spackenmobs.friedrich": "Friedrich Liechtenstein",
"entity.spackenmobs.gisela": "Gisela",
"entity.spackenmobs.holzstammhuhn": "Holzstammhuhn",
"entity.spackenmobs.islamist": "Islamist",
"entity.spackenmobs.jens": "Jens",
"entity.spackenmobs.marcell_davis": "Marcell D'Avis",
"entity.spackenmobs.mr_bean": "Mr. Bean",
@ -32,7 +31,6 @@
"item.spackenmobs.friedrich_spawn_egg": "Erschaffe Friedrich Liechtenstein",
"item.spackenmobs.gisela_spawn_egg": "Erschaffe Gisela",
"item.spackenmobs.holzstammhuhn_spawn_egg": "Erschaffe Holzstammhuhn",
"item.spackenmobs.islamist_spawn_egg": "Erschaffe Islamist",
"item.spackenmobs.jens_spawn_egg": "Erschaffe Jens",
"item.spackenmobs.marcell_davis_spawn_egg": "Erschaffe Marcell D'Avis",
"item.spackenmobs.mr_bean_spawn_egg": "Erschaffe Mr. Bean",

View file

@ -17,7 +17,6 @@
"entity.spackenmobs.friedrich": "Friedrich Liechtenstein",
"entity.spackenmobs.gisela": "Gisela",
"entity.spackenmobs.holzstammhuhn": "Holzstammhuhn",
"entity.spackenmobs.islamist": "Islamist",
"entity.spackenmobs.jens": "Jens",
"entity.spackenmobs.marcell_davis": "Marcell D'Avis",
"entity.spackenmobs.mr_bean": "Mr. Bean",
@ -32,7 +31,6 @@
"item.spackenmobs.friedrich_spawn_egg": "Spawn Friedrich Liechtenstein",
"item.spackenmobs.gisela_spawn_egg": "Spawn Gisela",
"item.spackenmobs.holzstammhuhn_spawn_egg": "Spawn Holzstammhuhn",
"item.spackenmobs.islamist_spawn_egg": "Spawn Islamist",
"item.spackenmobs.jens_spawn_egg": "Spawn Jens",
"item.spackenmobs.marcell_davis_spawn_egg": "Spawn Marcell D'Avis",
"item.spackenmobs.mr_bean_spawn_egg": "Spawn Mr. Bean",

View file

@ -1,3 +0,0 @@
{
"parent": "item/template_spawn_egg"
}

View file

@ -270,61 +270,6 @@
}
]
},
"entities.islamist.fuse": {
"sounds": [
{
"name": "spackenmobs:islamist/fuse1"
},
{
"name": "spackenmobs:islamist/fuse2"
},
{
"name": "spackenmobs:islamist/fuse3"
},
{
"name": "spackenmobs:islamist/fuse4"
}
]
},
"entities.islamist.blow": {
"sounds": [
{
"name": "spackenmobs:islamist/blow"
}
]
},
"entities.islamist.hurt": {
"sounds": [
{
"name": "spackenmobs:islamist/say1"
},
{
"name": "spackenmobs:islamist/say2"
},
{
"name": "spackenmobs:islamist/say3"
},
{
"name": "spackenmobs:islamist/say4"
}
]
},
"entities.islamist.ambient": {
"sounds": [
{
"name": "spackenmobs:islamist/say1"
},
{
"name": "spackenmobs:islamist/say2"
},
{
"name": "spackenmobs:islamist/say3"
},
{
"name": "spackenmobs:islamist/say4"
}
]
},
"entities.apored.ambient": {
"sounds": [
{

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

View file

@ -1,50 +0,0 @@
{
"type": "minecraft:entity",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"functions": [
{
"function": "minecraft:set_count",
"count": {
"min": 0.0,
"max": 2.0,
"type": "minecraft:uniform"
}
},
{
"function": "minecraft:looting_enchant",
"count": {
"min": 0.0,
"max": 1.0
}
}
],
"name": "minecraft:gunpowder"
}
]
},
{
"rolls": 1.0,
"entries": [
{
"type": "minecraft:tag",
"name": "minecraft:creeper_drop_music_discs",
"expand": true
}
],
"conditions": [
{
"condition": "minecraft:entity_properties",
"predicate": {
"type": "#minecraft:skeletons"
},
"entity": "killer"
}
]
}
]
}