2
1
Fork 1
mirror of https://github.com/ACGaming/Spackenmobs synced 2024-11-25 16:22:36 +01:00

Compare commits

...

4 commits

Author SHA1 Message Date
ACGaming
c0b24dcf0f Gradle fixes 2021-01-01 13:50:07 +01:00
ACGaming
809b87759e Removed unused assets (for now) 2021-01-01 12:46:49 +01:00
ACGaming
9befa74d59 Drachenlord gets properly angry + spawn rate adjustments 2021-01-01 12:36:58 +01:00
ACGaming
9c8ff732a0 POMMES 2021-01-01 12:02:07 +01:00
59 changed files with 930 additions and 457 deletions

102
README.md Normal file
View file

@ -0,0 +1,102 @@
# Spackenmobs
## Advanced Mobs
### Friedrich Liechtenstein
![Friedrich Liechtenstein](https://i.imgur.com/GR1KQhp.png)
*"Diese Brause ist enorm."*
Friedrich Liechtenstein is your local trader for Ahoj-Brause. Provide paper and he will give you soda powder or milk him with a glass bottle to get his finest soda. He would also like to meet your mother.
### Jens
![Jens](https://i.imgur.com/J8r6q1B.png)
*"Ich hab' extrem lange Finger!"*
Jens is a small Austrian streamer with a thriving meme culture. He will get horny if you feed him Corsair RAM. He also loves surströmming, so make sure to feed him fish and reap the rewards after some time of digesting!
## Simple Mobs
### ApoRed
![ApoRed](https://i.imgur.com/w3ReO5a.png)
*"Nicht auf meine Yeezys, Digga!"*
ApoRed acts like a skeleton and insults you if you hit him.
### Baka Mitai Creeper
![Baka Mitai Creeper](https://i.imgur.com/jcI7mzM.png)
*"Dame da ne, dame yo dame na no yo..."*
Baka Mitai Creeper is disguised as a regular creeper but has a much larger explosion radius. But don't worry, it has a pretty long fuse time and plays Baka Mitai when exploding.
### Drachenlord
![Drachenlord](https://i.imgur.com/AzYF7TD.png)
*"Verdammt'n Arschlöcha!"*
1.12: Drachenlord acts like a zombie pigman and spawns in the Nether. He will get very angry if you hit him!
1.16: Drachenlord acts like a zombie and will get very angry if you hit him!
### Gisela (1.16 only)
![Gisela](https://i.imgur.com/PCaBpEs.png)
*"POMMES!"*
Gisela is the alter ego of the German YouTuber "Gewitter im Kopf". He always makes meaningful statements and runs around like crazy.
### Holzstammhuhn
![Holzstammhuhn](https://i.imgur.com/VEE7eMZ.png)
*"PLOCK!"*
Holzstammhuhn is a replica of Chicken's Log Chicken but it makes wooden sounds, so that's a bonus. It only exists because the German translation became a meme.
### Islamist
![Islamist](https://i.imgur.com/q8tAyN2.png)
*"Allahu Akbar!"*
Islamist acts like a creeper and will spread his faith when exploding.
### Marcell D'Avis
![Marcell D'Avis](https://i.imgur.com/MUDp0Hf.png)
*"Hallo!"*
Marcell D'Avis acts like a zombie and is the manager for customer satisfaction at 1&1. He will tell you about the benefits of 1&1's products and customer support.
### Mr. Bean
![Mr. Bean](https://i.imgur.com/YXOxre8.png)
*"Magic!"*
Mr. Bean acts like a zombie and limits his statements to "Magic" and snorting noises.
### MZTEWolf
![MZTEWolf](https://i.imgur.com/0P6Gmmy.png)
*Rust noises*
MZTEWolf acts like a wolf and is based on a lousy coder from Thuringia. It has a passion for Kotlin and Rust.
### Schalker
![Schalker](https://i.imgur.com/eUrvPnm.png)
*"Schalke 04, Liebe im Revier..."*
Schalker acts like a shulker and will spread its love for soccer and the Ruhr area.
### Smava Creeper
![Smava Creeper](https://i.imgur.com/ALnOxRo.png)
*"Wenn Kredit, dann..."*
Smava Creeper acts like a creeper and is a pesky credit agent known from the infamous TV ads. Watch out, it is twice as fast and its explosions are twice as strong! It also explodes a little faster.
## Items
To be added...

View file

@ -12,8 +12,8 @@ apply plugin: 'net.minecraftforge.gradle'
// Only edit below this line, the above code adds and enables the necessary things for Forge to be setup.
version = "${version}"
group = "com.acgaming.spackenmobs"
archivesBaseName = "spackenmobs-Creepers-${mc_version}"
group = "mod.acgaming.spackenmobs"
archivesBaseName = "${jar_name}-${mc_version}"
sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8'

View file

@ -3,6 +3,10 @@
org.gradle.jvmargs=-Xmx3G
org.gradle.daemon=false
# Base info
jar_name=Spackenmobs
mod_id=spackenmobs
# Version
mc_version=1.16.4
version=1.0

View file

@ -16,6 +16,7 @@ public class ClientHandler
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.BAKAMITAI_CREEPER.get(), BakaMitaiCreeperRenderer::new);
RenderingRegistry.registerEntityRenderingHandler(SpackenmobsRegistry.DRACHENLORD.get(), DrachenlordRenderer::new);
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);

View file

@ -0,0 +1,25 @@
package mod.acgaming.spackenmobs.client.renderer.entity;
import mod.acgaming.spackenmobs.entity.GiselaEntity;
import net.minecraft.client.renderer.entity.EntityRendererManager;
import net.minecraft.client.renderer.entity.MobRenderer;
import net.minecraft.client.renderer.entity.model.BipedModel;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
@OnlyIn(Dist.CLIENT)
public class GiselaRenderer extends MobRenderer<GiselaEntity, BipedModel<GiselaEntity>>
{
private static final ResourceLocation GISELA_TEXTURES = new ResourceLocation("spackenmobs:textures/entities/gisela.png");
public GiselaRenderer(EntityRendererManager renderManagerIn)
{
super(renderManagerIn, new BipedModel<>(0.0F), 0.25F);
}
public ResourceLocation getEntityTexture(GiselaEntity entity)
{
return GISELA_TEXTURES;
}
}

View file

@ -1,11 +1,14 @@
package mod.acgaming.spackenmobs.entity;
import mod.acgaming.spackenmobs.init.SpackenmobsRegistry;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityType;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.ai.attributes.AttributeModifierMap;
import net.minecraft.entity.ai.attributes.Attributes;
import net.minecraft.entity.monster.MonsterEntity;
import net.minecraft.entity.monster.ZombieEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.EquipmentSlotType;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
@ -14,16 +17,24 @@ import net.minecraft.util.SoundEvent;
import net.minecraft.world.DifficultyInstance;
import net.minecraft.world.World;
import javax.annotation.Nullable;
import java.util.UUID;
public class DrachenlordEntity extends ZombieEntity
{
private int angerLevel;
private int randomSoundDelay;
private UUID angerTargetUUID;
public DrachenlordEntity(EntityType<? extends DrachenlordEntity> type, World worldIn)
{
super(type, worldIn);
this.isImmuneToFire();
}
public static AttributeModifierMap.MutableAttribute registerAttributes()
{
return MonsterEntity.func_234295_eP_().createMutableAttribute(Attributes.FOLLOW_RANGE, 35.0D).createMutableAttribute(Attributes.MOVEMENT_SPEED, 0.18F).createMutableAttribute(Attributes.ATTACK_DAMAGE, 3.0D).createMutableAttribute(Attributes.ARMOR, 2.0D).createMutableAttribute(Attributes.ZOMBIE_SPAWN_REINFORCEMENTS);
return MonsterEntity.func_234295_eP_().createMutableAttribute(Attributes.FOLLOW_RANGE, 35.0D).createMutableAttribute(Attributes.MOVEMENT_SPEED, 0.2F).createMutableAttribute(Attributes.ATTACK_DAMAGE, 3.0D).createMutableAttribute(Attributes.ARMOR, 2.0D).createMutableAttribute(Attributes.ZOMBIE_SPAWN_REINFORCEMENTS);
}
protected void setEquipmentBasedOnDifficulty(DifficultyInstance difficulty)
@ -32,6 +43,71 @@ public class DrachenlordEntity extends ZombieEntity
this.setItemStackToSlot(EquipmentSlotType.MAINHAND, new ItemStack(Items.GOLDEN_AXE));
}
public boolean attackEntityFrom(DamageSource source, float amount)
{
if (this.isInvulnerableTo(source))
{
return false;
}
else
{
Entity entity = source.getTrueSource();
if (entity instanceof PlayerEntity)
{
this.becomeAngryAt(entity);
}
return super.attackEntityFrom(source, amount);
}
}
public void setRevengeTarget(@Nullable LivingEntity livingEntity)
{
super.setRevengeTarget(livingEntity);
if (livingEntity != null)
{
this.angerTargetUUID = livingEntity.getUniqueID();
}
}
public void becomeAngryAt(Entity entity)
{
this.angerLevel = 400 + this.rand.nextInt(400);
this.randomSoundDelay = this.rand.nextInt(40);
if (entity instanceof LivingEntity)
{
this.setRevengeTarget((LivingEntity) entity);
}
}
public boolean isAngry()
{
return this.angerLevel > 0;
}
public void tick()
{
if (this.isAngry())
{
--this.angerLevel;
}
if (this.randomSoundDelay > 0 && --this.randomSoundDelay == 0)
{
this.playSound(SpackenmobsRegistry.ENTITY_DRACHENLORD_ANGRY.get(), 1.0F, 1.0F);
}
if (this.angerLevel > 0 && this.angerTargetUUID != null && this.getRevengeTarget() == null)
{
PlayerEntity entityplayer = this.world.getPlayerByUuid(this.angerTargetUUID);
this.setRevengeTarget(entityplayer);
this.attackingPlayer = entityplayer;
this.recentlyHit = this.getRevengeTimer();
}
super.tick();
}
protected SoundEvent getAmbientSound()
{
return SpackenmobsRegistry.ENTITY_DRACHENLORD_AMBIENT.get();

View file

@ -0,0 +1,80 @@
package mod.acgaming.spackenmobs.entity;
import mod.acgaming.spackenmobs.init.SpackenmobsRegistry;
import net.minecraft.block.BlockState;
import net.minecraft.entity.*;
import net.minecraft.entity.ai.attributes.AttributeModifierMap;
import net.minecraft.entity.ai.attributes.Attributes;
import net.minecraft.entity.ai.goal.*;
import net.minecraft.entity.passive.AnimalEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.util.DamageSource;
import net.minecraft.util.SoundEvent;
import net.minecraft.util.SoundEvents;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraft.world.server.ServerWorld;
public class GiselaEntity extends AnimalEntity
{
public GiselaEntity(EntityType<? extends GiselaEntity> type, World worldIn)
{
super(type, worldIn);
}
public static AttributeModifierMap.MutableAttribute registerAttributes()
{
return MobEntity.func_233666_p_().createMutableAttribute(Attributes.MAX_HEALTH, 20.0D).createMutableAttribute(Attributes.MOVEMENT_SPEED, 1.25F);
}
protected void registerGoals()
{
this.goalSelector.addGoal(0, new SwimGoal(this));
this.goalSelector.addGoal(1, new PanicGoal(this, 1.5D));
this.goalSelector.addGoal(2, new BreedGoal(this, 1.25D));
this.goalSelector.addGoal(4, new FollowParentGoal(this, 1.25D));
this.goalSelector.addGoal(5, new WaterAvoidingRandomWalkingGoal(this, 1.25D));
this.goalSelector.addGoal(6, new LookAtGoal(this, PlayerEntity.class, 6.0F));
this.goalSelector.addGoal(7, new LookRandomlyGoal(this));
}
protected SoundEvent getAmbientSound()
{
return SpackenmobsRegistry.ENTITY_GISELA_AMBIENT.get();
}
protected SoundEvent getHurtSound(DamageSource damageSourceIn)
{
return SpackenmobsRegistry.ENTITY_GISELA_HURT.get();
}
protected SoundEvent getDeathSound()
{
return SpackenmobsRegistry.ENTITY_GISELA_HURT.get();
}
protected void playStepSound(BlockPos pos, BlockState blockIn)
{
this.playSound(SoundEvents.ENTITY_COW_STEP, 0.15F, 1.0F);
}
public int getTalkInterval()
{
return 20;
}
protected float getSoundVolume()
{
return 0.6F;
}
public GiselaEntity func_241840_a(ServerWorld p_241840_1_, AgeableEntity p_241840_2_)
{
return SpackenmobsRegistry.GISELA.get().create(p_241840_1_);
}
protected float getStandingEyeHeight(Pose poseIn, EntitySize sizeIn)
{
return this.isChild() ? sizeIn.height * 0.95F : 1.3F;
}
}

View file

@ -48,6 +48,7 @@ public class SpackenmobsEntities
for (Spawners entry : info.getSpawners(EntityClassification.CREATURE))
{
registerSpawn(creature_spawns, entry, ConfigurationHandler.SPAWN.holzstammhuhn_weight.get(), ConfigurationHandler.SPAWN.holzstammhuhn_min.get(), ConfigurationHandler.SPAWN.holzstammhuhn_max.get(), EntityType.CHICKEN, SpackenmobsRegistry.HOLZSTAMMHUHN.get());
registerSpawn(creature_spawns, entry, ConfigurationHandler.SPAWN.gisela_weight.get(), ConfigurationHandler.SPAWN.gisela_min.get(), ConfigurationHandler.SPAWN.gisela_max.get(), EntityType.SHEEP, SpackenmobsRegistry.GISELA.get());
registerSpawn(creature_spawns, entry, ConfigurationHandler.SPAWN.jens_weight.get(), ConfigurationHandler.SPAWN.jens_min.get(), ConfigurationHandler.SPAWN.jens_max.get(), EntityType.PIG, SpackenmobsRegistry.JENS.get());
registerSpawn(creature_spawns, entry, ConfigurationHandler.SPAWN.friedrich_weight.get(), ConfigurationHandler.SPAWN.friedrich_min.get(), ConfigurationHandler.SPAWN.friedrich_max.get(), EntityType.COW, SpackenmobsRegistry.FRIEDRICH_LIECHTENSTEIN.get());
registerSpawn(creature_spawns, entry, ConfigurationHandler.SPAWN.mztewolf_weight.get(), ConfigurationHandler.SPAWN.mztewolf_min.get(), ConfigurationHandler.SPAWN.mztewolf_max.get(), EntityType.WOLF, SpackenmobsRegistry.MZTEWOLF.get());
@ -61,8 +62,9 @@ public class SpackenmobsEntities
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.BAKAMITAI_CREEPER.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::canMonsterSpawnInLight);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.DRACHENLORD.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::canMonsterSpawnInLight);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.FRIEDRICH_LIECHTENSTEIN.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, AnimalEntity::canAnimalSpawn);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.ISLAMIST.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::canMonsterSpawnInLight);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.GISELA.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, AnimalEntity::canAnimalSpawn);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.HOLZSTAMMHUHN.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, AnimalEntity::canAnimalSpawn);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.ISLAMIST.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::canMonsterSpawnInLight);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.JENS.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, AnimalEntity::canAnimalSpawn);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.MARCELLDAVIS.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::canMonsterSpawnInLight);
EntitySpawnPlacementRegistry.register(SpackenmobsRegistry.MRBEAN.get(), PlacementType.ON_GROUND, Type.MOTION_BLOCKING_NO_LEAVES, MonsterEntity::canMonsterSpawnInLight);
@ -74,8 +76,9 @@ public class SpackenmobsEntities
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.BAKAMITAI_CREEPER.get(), BakaMitaiCreeperEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.DRACHENLORD.get(), DrachenlordEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.FRIEDRICH_LIECHTENSTEIN.get(), FriedrichLiechtensteinEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.ISLAMIST.get(), IslamistEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.GISELA.get(), GiselaEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.HOLZSTAMMHUHN.get(), HolzstammhuhnEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.ISLAMIST.get(), IslamistEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.JENS.get(), JensEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.MARCELLDAVIS.get(), MarcellDAvisEntity.registerAttributes().create());
GlobalEntityTypeAttributes.put(SpackenmobsRegistry.MRBEAN.get(), MrBeanEntity.registerAttributes().create());

View file

@ -40,6 +40,10 @@ public class SpackenmobsRegistry
public static final RegistryObject<EntityType<FriedrichLiechtensteinEntity>> FRIEDRICH_LIECHTENSTEIN = ENTITIES.register("friedrich",
() -> register("friedrich", EntityType.Builder.create(FriedrichLiechtensteinEntity::new, EntityClassification.CREATURE)
.size(0.6F, 1.8F).trackingRange(10)));
// Gisela
public static final RegistryObject<EntityType<GiselaEntity>> GISELA = ENTITIES.register("gisela",
() -> register("gisela", EntityType.Builder.create(GiselaEntity::new, EntityClassification.CREATURE)
.size(0.6F, 1.8F).trackingRange(10)));
// Holzstammhuhn
public static final RegistryObject<EntityType<HolzstammhuhnEntity>> HOLZSTAMMHUHN = ENTITIES.register("holzstammhuhn",
() -> register("holzstammhuhn", EntityType.Builder.create(HolzstammhuhnEntity::new, EntityClassification.CREATURE)
@ -83,6 +87,7 @@ public class SpackenmobsRegistry
public static final RegistryObject<Item> BAKAMITAI_CREEPER_SPAWN_EGG = ITEMS.register("bakamitai_creeper_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.BAKAMITAI_CREEPER::get, 826890, 0, itemBuilder()));
public static final RegistryObject<Item> DRACHENLORD_SPAWN_EGG = ITEMS.register("drachenlord_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.DRACHENLORD::get, 15256745, 8738878, itemBuilder()));
public static final RegistryObject<Item> FRIEDRICH_LIECHTENSTEIN_SPAWN_EGG = ITEMS.register("friedrich_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.FRIEDRICH_LIECHTENSTEIN::get, 16447728, 15878595, itemBuilder()));
public static final RegistryObject<Item> GISELA_SPAWN_EGG = ITEMS.register("gisela_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.GISELA::get, 39835, 16448250, itemBuilder()));
public static final RegistryObject<Item> HOLZSTAMMHUHN_SPAWN_EGG = ITEMS.register("holzstammhuhn_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.HOLZSTAMMHUHN::get, 12096347, 5295899, itemBuilder()));
public static final RegistryObject<Item> ISLAMIST_SPAWN_EGG = ITEMS.register("islamist_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.ISLAMIST::get, 15263976, 15211548, itemBuilder()));
public static final RegistryObject<Item> JENS_SPAWN_EGG = ITEMS.register("jens_spawn_egg", () -> new CustomSpawnEggItem(SpackenmobsRegistry.JENS::get, 6704526, 6767911, itemBuilder()));
@ -109,6 +114,10 @@ public class SpackenmobsRegistry
public static final RegistryObject<SoundEvent> ENTITY_FRIEDRICH_AMBIENT = SOUND_EVENTS.register("entities.friedrich.ambient", () -> createSound("entities.friedrich.ambient"));
public static final RegistryObject<SoundEvent> ENTITY_FRIEDRICH_HURT = SOUND_EVENTS.register("entities.friedrich.hurt", () -> createSound("entities.friedrich.hurt"));
public static final RegistryObject<SoundEvent> ENTITY_FRIEDRICH_DEATH = SOUND_EVENTS.register("entities.friedrich.death", () -> createSound("entities.friedrich.death"));
// Gisela
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"));

View file

@ -47,6 +47,10 @@ public class ConfigurationHandler
public final ForgeConfigSpec.IntValue friedrich_max;
public final ForgeConfigSpec.IntValue friedrich_weight;
public final ForgeConfigSpec.IntValue gisela_min;
public final ForgeConfigSpec.IntValue gisela_max;
public final ForgeConfigSpec.IntValue gisela_weight;
public final ForgeConfigSpec.IntValue holzstammhuhn_min;
public final ForgeConfigSpec.IntValue holzstammhuhn_max;
public final ForgeConfigSpec.IntValue holzstammhuhn_weight;
@ -86,51 +90,55 @@ public class ConfigurationHandler
apored_min = builder.defineInRange("apored_min", 1, 1, 64);
apored_max = builder.defineInRange("apored_max", 1, 1, 64);
apored_weight = builder.defineInRange("apored_weight", 80, 0, 200);
apored_weight = builder.defineInRange("apored_weight", 60, 0, 200);
bakamitai_creeper_min = builder.defineInRange("bakamitai_creeper_min", 1, 1, 64);
bakamitai_creeper_max = builder.defineInRange("bakamitai_creeper_max", 1, 1, 64);
bakamitai_creeper_weight = builder.defineInRange("bakamitai_creeper_weight", 80, 0, 200);
bakamitai_creeper_weight = builder.defineInRange("bakamitai_creeper_weight", 60, 0, 200);
drachenlord_min = builder.defineInRange("drachenlord_min", 1, 1, 64);
drachenlord_max = builder.defineInRange("drachenlord_max", 1, 1, 64);
drachenlord_weight = builder.defineInRange("drachenlord_weight", 80, 0, 200);
drachenlord_weight = builder.defineInRange("drachenlord_weight", 60, 0, 200);
friedrich_min = builder.defineInRange("friedrich_min", 1, 1, 64);
friedrich_max = builder.defineInRange("friedrich_max", 1, 1, 64);
friedrich_weight = builder.defineInRange("friedrich_weight", 10, 0, 200);
friedrich_weight = builder.defineInRange("friedrich_weight", 8, 0, 200);
gisela_min = builder.defineInRange("gisela_min", 1, 1, 64);
gisela_max = builder.defineInRange("gisela_max", 1, 1, 64);
gisela_weight = builder.defineInRange("gisela_weight", 8, 0, 200);
holzstammhuhn_min = builder.defineInRange("holzstammhuhn_min", 1, 1, 64);
holzstammhuhn_max = builder.defineInRange("holzstammhuhn_max", 1, 1, 64);
holzstammhuhn_weight = builder.defineInRange("holzstammhuhn_weight", 10, 0, 200);
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", 80, 0, 200);
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", 10, 0, 200);
jens_weight = builder.defineInRange("jens_weight", 8, 0, 200);
marcell_davis_min = builder.defineInRange("marcell_davis_min", 1, 1, 64);
marcell_davis_max = builder.defineInRange("marcell_davis_max", 1, 1, 64);
marcell_davis_weight = builder.defineInRange("marcell_davis_weight", 80, 0, 200);
marcell_davis_weight = builder.defineInRange("marcell_davis_weight", 60, 0, 200);
mr_bean_min = builder.defineInRange("mr_bean_min", 1, 1, 64);
mr_bean_max = builder.defineInRange("mr_bean_max", 1, 1, 64);
mr_bean_weight = builder.defineInRange("mr_bean_weight", 80, 0, 200);
mr_bean_weight = builder.defineInRange("mr_bean_weight", 60, 0, 200);
mztewolf_min = builder.defineInRange("mztewolf_min", 1, 1, 64);
mztewolf_max = builder.defineInRange("mztewolf_max", 1, 1, 64);
mztewolf_weight = builder.defineInRange("mztewolf_weight", 10, 0, 200);
mztewolf_weight = builder.defineInRange("mztewolf_weight", 8, 0, 200);
schalker_min = builder.defineInRange("schalker_min", 1, 1, 64);
schalker_max = builder.defineInRange("schalker_max", 1, 1, 64);
schalker_weight = builder.defineInRange("schalker_weight", 80, 0, 200);
schalker_weight = builder.defineInRange("schalker_weight", 60, 0, 200);
smava_creeper_min = builder.defineInRange("smava_creeper_min", 1, 1, 64);
smava_creeper_max = builder.defineInRange("smava_creeper_max", 1, 1, 64);
smava_creeper_weight = builder.defineInRange("smava_creeper_weight", 80, 0, 200);
smava_creeper_weight = builder.defineInRange("smava_creeper_weight", 60, 0, 200);
builder.pop();
}

View file

@ -15,24 +15,22 @@
"entity.spackenmobs.bakamitai_creeper": "Baka Mitai-Creeper",
"entity.spackenmobs.drachenlord": "Drachenlord",
"entity.spackenmobs.friedrich": "Friedrich Liechtenstein",
"entity.spackenmobs.gisela": "Gisela",
"entity.spackenmobs.holzstammhuhn": "Holzstammhuhn",
"entity.spackenmobs.islamist": "Islamist",
"entity.spackenmobs.itbyhf": "ITbyHF",
"entity.spackenmobs.jens": "Jens",
"entity.spackenmobs.jens_wither": "Jens-Wither",
"entity.spackenmobs.latin_teacher": "Lateinlehrerin",
"entity.spackenmobs.marcell_davis": "Marcell D'Avis",
"entity.spackenmobs.mr_bean": "Mr. Bean",
"entity.spackenmobs.mztewolf": "MZTEWolf",
"entity.spackenmobs.schalker": "Schalker",
"entity.spackenmobs.smava_creeper": "Smava-Creeper",
"entity.spackenmobs.tilera_ghast": "tilera-Ghast",
"item.spackenmobs.ahoj_brause": "Ahoj-Brause Brausepulver",
"item.spackenmobs.ahoj_brause_drink": "Ahoj-Brause Brause",
"item.spackenmobs.apored_spawn_egg": "Erschaffe ApoRed",
"item.spackenmobs.bakamitai_creeper_spawn_egg": "Erschaffe Baka Mitai-Creeper",
"item.spackenmobs.drachenlord_spawn_egg": "Erschaffe Drachenlord",
"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",

View file

@ -15,24 +15,22 @@
"entity.spackenmobs.bakamitai_creeper": "Baka Mitai Creeper",
"entity.spackenmobs.drachenlord": "Drachenlord",
"entity.spackenmobs.friedrich": "Friedrich Liechtenstein",
"entity.spackenmobs.gisela": "Gisela",
"entity.spackenmobs.holzstammhuhn": "Holzstammhuhn",
"entity.spackenmobs.islamist": "Islamist",
"entity.spackenmobs.itbyhf": "ITbyHF",
"entity.spackenmobs.jens": "Jens",
"entity.spackenmobs.jens_wither": "Jens Wither",
"entity.spackenmobs.latin_teacher": "Latin Teacher",
"entity.spackenmobs.marcell_davis": "Marcell D'Avis",
"entity.spackenmobs.mr_bean": "Mr. Bean",
"entity.spackenmobs.mztewolf": "MZTEWolf",
"entity.spackenmobs.schalker": "Schalker",
"entity.spackenmobs.smava_creeper": "Smava Creeper",
"entity.spackenmobs.tilera_ghast": "tilera Ghast",
"item.spackenmobs.ahoj_brause": "Ahoj-Brause Soda Powder",
"item.spackenmobs.ahoj_brause_drink": "Ahoj-Brause Soda",
"item.spackenmobs.apored_spawn_egg": "Spawn ApoRed",
"item.spackenmobs.bakamitai_creeper_spawn_egg": "Spawn Baka Mitai Creeper",
"item.spackenmobs.drachenlord_spawn_egg": "Spawn Drachenlord",
"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",

View file

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

View file

@ -951,5 +951,97 @@
"name": "spackenmobs:friedrich/hurt"
}
]
},
"entities.gisela.ambient": {
"sounds": [
{
"name": "spackenmobs:gisela/say1"
},
{
"name": "spackenmobs:gisela/say2"
},
{
"name": "spackenmobs:gisela/say3"
},
{
"name": "spackenmobs:gisela/say4"
},
{
"name": "spackenmobs:gisela/say5"
},
{
"name": "spackenmobs:gisela/say6"
},
{
"name": "spackenmobs:gisela/say7"
},
{
"name": "spackenmobs:gisela/say8"
},
{
"name": "spackenmobs:gisela/say9"
},
{
"name": "spackenmobs:gisela/say10"
},
{
"name": "spackenmobs:gisela/say11"
},
{
"name": "spackenmobs:gisela/say12"
},
{
"name": "spackenmobs:gisela/say13"
},
{
"name": "spackenmobs:gisela/say14"
},
{
"name": "spackenmobs:gisela/say15"
},
{
"name": "spackenmobs:gisela/say16"
},
{
"name": "spackenmobs:gisela/say17"
},
{
"name": "spackenmobs:gisela/say18"
},
{
"name": "spackenmobs:gisela/say19"
},
{
"name": "spackenmobs:gisela/say20"
},
{
"name": "spackenmobs:gisela/say21"
},
{
"name": "spackenmobs:gisela/say22"
},
{
"name": "spackenmobs:gisela/say23"
}
]
},
"entities.gisela.hurt": {
"sounds": [
{
"name": "spackenmobs:gisela/hurt1"
},
{
"name": "spackenmobs:gisela/hurt2"
},
{
"name": "spackenmobs:gisela/hurt3"
},
{
"name": "spackenmobs:gisela/hurt4"
},
{
"name": "spackenmobs:gisela/hurt5"
}
]
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View file

@ -1,50 +1,57 @@
{
"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:arrow"
}]
},
{
"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:bone"
}]
}
]
"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:arrow"
}
]
},
{
"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:bone"
}
]
}
]
}

View file

@ -1,42 +1,50 @@
{
"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"
}]
}
]
"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"
}
]
}
]
}

View file

@ -1,52 +1,58 @@
{
"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:rotten_flesh"
}]
},
{
"rolls": 1,
"entries": [{
"type": "minecraft:item",
"name": "minecraft:golden_axe"
},
{
"type": "minecraft:item",
"name": "minecraft:carrot"
},
{
"type": "minecraft:item",
"name": "minecraft:potato"
}
],
"conditions": [{
"condition": "minecraft:killed_by_player"
},
{
"condition": "minecraft:random_chance_with_looting",
"chance": 0.025,
"looting_multiplier": 0.01
}
]
}
]
"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:rotten_flesh"
}
]
},
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "minecraft:golden_axe"
},
{
"type": "minecraft:item",
"name": "minecraft:carrot"
},
{
"type": "minecraft:item",
"name": "minecraft:potato"
}
],
"conditions": [
{
"condition": "minecraft:killed_by_player"
},
{
"condition": "minecraft:random_chance_with_looting",
"chance": 0.025,
"looting_multiplier": 0.01
}
]
}
]
}

View file

@ -1,26 +1,31 @@
{
"type": "minecraft:entity",
"pools": [{
"rolls": 1,
"entries": [{
"type": "minecraft:item",
"name": "spackenmobs:ahoj_brause",
"weight": 1,
"functions": [{
"function": "minecraft:set_count",
"count": {
"min": 1,
"max": 3
}
},
{
"function": "minecraft:looting_enchant",
"count": {
"min": 0,
"max": 1
}
}
]
}]
}]
"type": "minecraft:entity",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "spackenmobs:ahoj_brause",
"weight": 1,
"functions": [
{
"function": "minecraft:set_count",
"count": {
"min": 1,
"max": 3
}
},
{
"function": "minecraft:looting_enchant",
"count": {
"min": 0,
"max": 1
}
}
]
}
]
}
]
}

View file

@ -1,54 +1,63 @@
{
"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:feather"
}]
},
{
"rolls": 1,
"entries": [{
"type": "minecraft:item",
"functions": [{
"function": "minecraft:furnace_smelt",
"conditions": [{
"condition": "minecraft:entity_properties",
"predicate": {
"flags": {
"is_on_fire": true
}
},
"entity": "this"
}]
},
{
"function": "minecraft:looting_enchant",
"count": {
"min": 0.0,
"max": 1.0
}
}
],
"name": "minecraft:chicken"
}]
}
]
"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:stick"
}
]
},
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"functions": [
{
"function": "minecraft:furnace_smelt",
"conditions": [
{
"condition": "minecraft:entity_properties",
"predicate": {
"flags": {
"is_on_fire": true
}
},
"entity": "this"
}
]
},
{
"function": "minecraft:looting_enchant",
"count": {
"min": 0.0,
"max": 1.0
}
}
],
"name": "minecraft:charcoal"
}
]
}
]
}

View file

@ -1,42 +1,50 @@
{
"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"
}]
}
]
"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"
}
]
}
]
}

View file

@ -1,26 +1,31 @@
{
"type": "minecraft:entity",
"pools": [{
"rolls": 1,
"entries": [{
"type": "minecraft:item",
"name": "spackenmobs:ram",
"weight": 1,
"functions": [{
"function": "minecraft:set_count",
"count": {
"min": 1,
"max": 3
}
},
{
"function": "minecraft:looting_enchant",
"count": {
"min": 0,
"max": 1
}
}
]
}]
}]
"type": "minecraft:entity",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "spackenmobs:ram",
"weight": 1,
"functions": [
{
"function": "minecraft:set_count",
"count": {
"min": 1,
"max": 3
}
},
{
"function": "minecraft:looting_enchant",
"count": {
"min": 0,
"max": 1
}
}
]
}
]
}
]
}

View file

@ -1,52 +1,58 @@
{
"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:rotten_flesh"
}]
},
{
"rolls": 1,
"entries": [{
"type": "minecraft:item",
"name": "minecraft:iron_ingot"
},
{
"type": "minecraft:item",
"name": "minecraft:carrot"
},
{
"type": "minecraft:item",
"name": "minecraft:potato"
}
],
"conditions": [{
"condition": "minecraft:killed_by_player"
},
{
"condition": "minecraft:random_chance_with_looting",
"chance": 0.025,
"looting_multiplier": 0.01
}
]
}
]
"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:rotten_flesh"
}
]
},
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "minecraft:iron_ingot"
},
{
"type": "minecraft:item",
"name": "minecraft:carrot"
},
{
"type": "minecraft:item",
"name": "minecraft:potato"
}
],
"conditions": [
{
"condition": "minecraft:killed_by_player"
},
{
"condition": "minecraft:random_chance_with_looting",
"chance": 0.025,
"looting_multiplier": 0.01
}
]
}
]
}

View file

@ -1,52 +1,58 @@
{
"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:rotten_flesh"
}]
},
{
"rolls": 1,
"entries": [{
"type": "minecraft:item",
"name": "minecraft:iron_ingot"
},
{
"type": "minecraft:item",
"name": "minecraft:carrot"
},
{
"type": "minecraft:item",
"name": "minecraft:potato"
}
],
"conditions": [{
"condition": "minecraft:killed_by_player"
},
{
"condition": "minecraft:random_chance_with_looting",
"chance": 0.025,
"looting_multiplier": 0.01
}
]
}
]
"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:rotten_flesh"
}
]
},
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "minecraft:iron_ingot"
},
{
"type": "minecraft:item",
"name": "minecraft:carrot"
},
{
"type": "minecraft:item",
"name": "minecraft:potato"
}
],
"conditions": [
{
"condition": "minecraft:killed_by_player"
},
{
"condition": "minecraft:random_chance_with_looting",
"chance": 0.025,
"looting_multiplier": 0.01
}
]
}
]
}

View file

@ -1,3 +1,3 @@
{
"type": "minecraft:entity"
"type": "minecraft:entity"
}

View file

@ -1,15 +1,21 @@
{
"type": "minecraft:entity",
"pools": [{
"rolls": 1,
"entries": [{
"type": "minecraft:item",
"name": "minecraft:shulker_shell"
}],
"conditions": [{
"condition": "minecraft:random_chance_with_looting",
"chance": 0.5,
"looting_multiplier": 0.0625
}]
}]
"type": "minecraft:entity",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "minecraft:shulker_shell"
}
],
"conditions": [
{
"condition": "minecraft:random_chance_with_looting",
"chance": 0.5,
"looting_multiplier": 0.0625
}
]
}
]
}

View file

@ -1,42 +1,50 @@
{
"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"
}]
}
]
"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"
}
]
}
]
}