forked from ACGaming/Spackenmobs
Friedrich Liechtenstein provides Ahoj-Brause
This commit is contained in:
parent
0ad2241949
commit
5d8cc3b20d
37 changed files with 447 additions and 76 deletions
|
@ -0,0 +1,153 @@
|
|||
package mod.acgaming.spackenmobs.entities;
|
||||
|
||||
import mod.acgaming.spackenmobs.misc.ModItems;
|
||||
import mod.acgaming.spackenmobs.misc.ModLootTableList;
|
||||
import mod.acgaming.spackenmobs.misc.ModSoundEvents;
|
||||
import net.minecraft.entity.EntityCreature;
|
||||
import net.minecraft.entity.EntityLiving;
|
||||
import net.minecraft.entity.IMerchant;
|
||||
import net.minecraft.entity.SharedMonsterAttributes;
|
||||
import net.minecraft.entity.ai.*;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.init.SoundEvents;
|
||||
import net.minecraft.inventory.EntityEquipmentSlot;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.DamageSource;
|
||||
import net.minecraft.util.EnumHand;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.SoundEvent;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.village.MerchantRecipe;
|
||||
import net.minecraft.village.MerchantRecipeList;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class EntityFriedrichLiechtenstein extends EntityCreature implements IMerchant
|
||||
{
|
||||
public EntityFriedrichLiechtenstein(World worldIn)
|
||||
{
|
||||
super(worldIn);
|
||||
setSize(0.6F, 1.8F);
|
||||
setItemStackToSlot(EntityEquipmentSlot.MAINHAND, new ItemStack(ModItems.AHOJ_BRAUSE));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void initEntityAI()
|
||||
{
|
||||
this.tasks.addTask(0, new EntityAISwimming(this));
|
||||
this.tasks.addTask(2, new EntityAIMoveIndoors(this));
|
||||
this.tasks.addTask(3, new EntityAIRestrictOpenDoor(this));
|
||||
this.tasks.addTask(4, new EntityAIOpenDoor(this, true));
|
||||
this.tasks.addTask(5, new EntityAIMoveTowardsRestriction(this, 0.6D));
|
||||
this.tasks.addTask(9, new EntityAIWatchClosest2(this, EntityPlayer.class, 3.0F, 1.0F));
|
||||
this.tasks.addTask(9, new EntityAIWanderAvoidWater(this, 0.6D));
|
||||
this.tasks.addTask(10, new EntityAIWatchClosest(this, EntityLiving.class, 8.0F));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void applyEntityAttributes()
|
||||
{
|
||||
super.applyEntityAttributes();
|
||||
this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean processInteract(EntityPlayer player, EnumHand hand)
|
||||
{
|
||||
ItemStack itemstack = player.getHeldItem(hand);
|
||||
|
||||
if (itemstack.getItem() == Items.GLASS_BOTTLE)
|
||||
{
|
||||
player.playSound(ModSoundEvents.ENTITY_FRIEDRICH_DEATH, 1.0F, 1.0F);
|
||||
player.playSound(SoundEvents.ENTITY_COW_MILK, 1.0F, 1.0F);
|
||||
itemstack.shrink(1);
|
||||
|
||||
if (itemstack.isEmpty())
|
||||
{
|
||||
player.setHeldItem(hand, new ItemStack(ModItems.AHOJ_BRAUSE_DRINK));
|
||||
}
|
||||
else if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.AHOJ_BRAUSE_DRINK)))
|
||||
{
|
||||
player.dropItem(new ItemStack(ModItems.AHOJ_BRAUSE_DRINK), false);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return super.processInteract(player, hand);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ResourceLocation getLootTable()
|
||||
{
|
||||
return ModLootTableList.ENTITIES_FRIEDRICH;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected SoundEvent getAmbientSound()
|
||||
{
|
||||
return ModSoundEvents.ENTITY_FRIEDRICH_AMBIENT;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected SoundEvent getHurtSound(DamageSource damageSourceIn)
|
||||
{
|
||||
return ModSoundEvents.ENTITY_FRIEDRICH_HURT;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected SoundEvent getDeathSound()
|
||||
{
|
||||
return ModSoundEvents.ENTITY_FRIEDRICH_DEATH;
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityPlayer getCustomer()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCustomer(EntityPlayer player)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public MerchantRecipeList getRecipes(EntityPlayer player)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRecipes(MerchantRecipeList recipeList)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void useRecipe(MerchantRecipe recipe)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void verifySellingItem(ItemStack stack)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public World getWorld()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockPos getPos()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
|
@ -8,10 +8,10 @@ import net.minecraft.world.World;
|
|||
|
||||
public class EntityIslamist extends EntityCreeper
|
||||
{
|
||||
private int lastActiveTime;
|
||||
private int timeSinceIgnited;
|
||||
private final int fuseTime = 30;
|
||||
private final int explosionRadius = 6;
|
||||
private int lastActiveTime;
|
||||
private int timeSinceIgnited;
|
||||
|
||||
public EntityIslamist(World worldIn)
|
||||
{
|
||||
|
|
|
@ -11,7 +11,7 @@ public class EntityMarcellDAvis extends EntityZombie
|
|||
public EntityMarcellDAvis(World worldIn)
|
||||
{
|
||||
super(worldIn);
|
||||
this.setSize(0.6F, 1.95F);
|
||||
this.setSize(0.6F, 1.8F);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -11,7 +11,7 @@ public class EntityMrBean extends EntityZombie
|
|||
public EntityMrBean(World worldIn)
|
||||
{
|
||||
super(worldIn);
|
||||
this.setSize(0.6F, 1.95F);
|
||||
this.setSize(0.6F, 1.8F);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -9,10 +9,10 @@ import net.minecraft.world.World;
|
|||
|
||||
public class EntitySmavaCreeper extends EntityCreeper
|
||||
{
|
||||
private int lastActiveTime;
|
||||
private int timeSinceIgnited;
|
||||
private final int fuseTime = 20;
|
||||
private final int explosionRadius = 6;
|
||||
private int lastActiveTime;
|
||||
private int timeSinceIgnited;
|
||||
|
||||
public EntitySmavaCreeper(World worldIn)
|
||||
{
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
package mod.acgaming.spackenmobs.items;
|
||||
|
||||
import net.minecraft.potion.Potion;
|
||||
|
||||
public class ItemPotion extends Potion
|
||||
{
|
||||
public ItemPotion(String name, boolean isBadPotion, int color, int iconIndexX, int iconIndexY)
|
||||
{
|
||||
super(isBadPotion, color);
|
||||
setPotionName("effect." + name);
|
||||
setIconIndex(iconIndexX, iconIndexY);
|
||||
setRegistryName(name);
|
||||
}
|
||||
}
|
|
@ -1,20 +1,22 @@
|
|||
package mod.acgaming.spackenmobs.items;
|
||||
|
||||
import mod.acgaming.spackenmobs.Spackenmobs;
|
||||
import mod.acgaming.spackenmobs.misc.ModItems;
|
||||
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraftforge.client.model.ModelLoader;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
|
||||
public class ItemBase extends Item
|
||||
public class ModItemBase extends Item
|
||||
{
|
||||
public ItemBase(String name, CreativeTabs tab)
|
||||
public ModItemBase(String name)
|
||||
{
|
||||
setUnlocalizedName(name);
|
||||
setRegistryName(name);
|
||||
setUnlocalizedName(Spackenmobs.MODID + "." + name);
|
||||
setCreativeTab(tab);
|
||||
setCreativeTab(Spackenmobs.SPACKENMOBS_TAB);
|
||||
|
||||
ModItems.ITEMS.add(this);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
|
@ -0,0 +1,32 @@
|
|||
package mod.acgaming.spackenmobs.items;
|
||||
|
||||
import mod.acgaming.spackenmobs.Spackenmobs;
|
||||
import mod.acgaming.spackenmobs.misc.ModItems;
|
||||
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemFood;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.client.model.ModelLoader;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
|
||||
public class ModItemFoodBase extends ItemFood
|
||||
{
|
||||
public ModItemFoodBase(String name, int amount, float saturation, boolean isAnimalFood)
|
||||
{
|
||||
super(amount, saturation, isAnimalFood);
|
||||
setUnlocalizedName(name);
|
||||
setRegistryName(name);
|
||||
setCreativeTab(Spackenmobs.SPACKENMOBS_TAB);
|
||||
|
||||
ModItems.ITEMS.add(this);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void initModel()
|
||||
{
|
||||
ModelLoader.setCustomModelResourceLocation(this, 0, new ModelResourceLocation(getRegistryName(), "inventory"));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
package mod.acgaming.spackenmobs.items;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.EnumAction;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class ModItemFoodDrink extends ModItemFoodBase
|
||||
{
|
||||
PotionEffect effect;
|
||||
|
||||
public ModItemFoodDrink(String name, int amount, float saturation, boolean isAnimalFood, PotionEffect effect)
|
||||
{
|
||||
super(name, amount, saturation, isAnimalFood);
|
||||
setAlwaysEdible();
|
||||
|
||||
this.effect = effect;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onFoodEaten(ItemStack stack, World worldIn, EntityPlayer player)
|
||||
{
|
||||
if (!worldIn.isRemote)
|
||||
{
|
||||
player.addPotionEffect(new PotionEffect(effect.getPotion(), effect.getDuration(), effect.getAmplifier(), effect.getIsAmbient(), effect.doesShowParticles()));
|
||||
player.inventory.addItemStackToInventory(new ItemStack(Items.GLASS_BOTTLE));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public EnumAction getItemUseAction(ItemStack stack)
|
||||
{
|
||||
return EnumAction.DRINK;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
package mod.acgaming.spackenmobs.items;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class ModItemFoodEffect extends ModItemFoodBase
|
||||
{
|
||||
PotionEffect effect;
|
||||
|
||||
public ModItemFoodEffect(String name, int amount, float saturation, boolean isAnimalFood, PotionEffect effect)
|
||||
{
|
||||
super(name, amount, saturation, isAnimalFood);
|
||||
setAlwaysEdible();
|
||||
|
||||
this.effect = effect;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onFoodEaten(ItemStack stack, World worldIn, EntityPlayer player)
|
||||
{
|
||||
if (!worldIn.isRemote)
|
||||
{
|
||||
player.addPotionEffect(new PotionEffect(effect.getPotion(), effect.getDuration(), effect.getAmplifier(), effect.getIsAmbient(), effect.doesShowParticles()));
|
||||
}
|
||||
}
|
||||
}
|
|
@ -18,6 +18,8 @@ public class ModConfigs
|
|||
public static boolean BakaMitaiCreeper_spawn = true;
|
||||
@Name("Allow Drachenlord to spawn?")
|
||||
public static boolean Drachenlord_spawn = true;
|
||||
@Name("Allow Friedrich Liechtenstein to spawn?")
|
||||
public static boolean Friedrich_spawn = true;
|
||||
@Name("Allow Holzstammhuhn to spawn?")
|
||||
public static boolean Holzstammhuhn_spawn = true;
|
||||
@Name("Allow Islamist to spawn?")
|
||||
|
@ -52,6 +54,12 @@ public class ModConfigs
|
|||
public static int Drachenlord_min = 1;
|
||||
@Name("Drachenlord max group size:")
|
||||
public static int Drachenlord_max = 4;
|
||||
@Name("Friedrich Liechtenstein spawn probability:")
|
||||
public static int Friedrich_weight = 25;
|
||||
@Name("Friedrich Liechtenstein min group size:")
|
||||
public static int Friedrich_min = 1;
|
||||
@Name("Friedrich Liechtenstein max group size:")
|
||||
public static int Friedrich_max = 4;
|
||||
@Name("Holzstammhuhn spawn probability:")
|
||||
public static int Holzstammhuhn_weight = 50;
|
||||
@Name("Holzstammhuhn min group size:")
|
||||
|
|
|
@ -18,5 +18,6 @@ public class ModEntities
|
|||
RenderingRegistry.registerEntityRenderingHandler(EntitySmavaCreeper.class, RenderSmavaCreeper.FACTORY);
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityWolfMZTE.class, RenderWolfMZTE.FACTORY);
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityHolzstammhuhn.class, RenderHolzstammhuhn.FACTORY);
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityFriedrichLiechtenstein.class, RenderFriedrichLiechtenstein.FACTORY);
|
||||
}
|
||||
}
|
|
@ -1,14 +1,22 @@
|
|||
package mod.acgaming.spackenmobs.misc;
|
||||
|
||||
import mod.acgaming.spackenmobs.Spackenmobs;
|
||||
import mod.acgaming.spackenmobs.items.ItemBase;
|
||||
import mod.acgaming.spackenmobs.items.ModItemBase;
|
||||
import mod.acgaming.spackenmobs.items.ModItemFoodDrink;
|
||||
import mod.acgaming.spackenmobs.items.ModItemFoodEffect;
|
||||
import net.minecraft.init.MobEffects;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry.ObjectHolder;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@ObjectHolder(Spackenmobs.MODID)
|
||||
public class ModItems
|
||||
{
|
||||
public static final Item RAM = new ItemBase("ram", Spackenmobs.SPACKENMOBS_TAB);
|
||||
public static final Item RAM_ON_A_STICK = new ItemBase("ram_on_a_stick", Spackenmobs.SPACKENMOBS_TAB);
|
||||
public static final Item SURSTROEMMING = new ItemBase("surstroemming", Spackenmobs.SPACKENMOBS_TAB);
|
||||
public static final List<Item> ITEMS = new ArrayList<Item>();
|
||||
|
||||
public static final Item RAM = new ModItemBase("ram");
|
||||
public static final Item RAM_ON_A_STICK = new ModItemBase("ram_on_a_stick");
|
||||
public static final Item SURSTROEMMING = new ModItemBase("surstroemming");
|
||||
public static final Item AHOJ_BRAUSE = new ModItemFoodEffect("ahoj_brause", 2, 0.15F, false, new PotionEffect(MobEffects.SPEED, 200, 5, false, true));
|
||||
public static final Item AHOJ_BRAUSE_DRINK = new ModItemFoodDrink("ahoj_brause_drink", 4, 0.3F, false, new PotionEffect(MobEffects.SPEED, 400, 10, false, true));
|
||||
}
|
|
@ -5,7 +5,6 @@ import net.minecraft.util.ResourceLocation;
|
|||
import net.minecraft.world.storage.loot.LootTable;
|
||||
import net.minecraft.world.storage.loot.LootTableManager;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.Collections;
|
||||
import java.util.Set;
|
||||
|
||||
|
@ -14,6 +13,7 @@ public class ModLootTableList
|
|||
private static final Set<ResourceLocation> LOOT_TABLES = Sets.newHashSet();
|
||||
public static final ResourceLocation EMPTY = register("empty");
|
||||
public static final ResourceLocation ENTITIES_JENS = register("entities/jens");
|
||||
public static final ResourceLocation ENTITIES_FRIEDRICH = register("entities/friedrich");
|
||||
private static final Set<ResourceLocation> READ_ONLY_LOOT_TABLES = Collections.unmodifiableSet(LOOT_TABLES);
|
||||
|
||||
public static Set<ResourceLocation> getAll()
|
||||
|
|
|
@ -1,12 +0,0 @@
|
|||
package mod.acgaming.spackenmobs.misc;
|
||||
|
||||
import mod.acgaming.spackenmobs.Spackenmobs;
|
||||
import mod.acgaming.spackenmobs.items.ItemPotion;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry.ObjectHolder;
|
||||
|
||||
@ObjectHolder(Spackenmobs.MODID)
|
||||
public class ModPotions
|
||||
{
|
||||
public static final Potion SURSTROEMMING_DRINK = new ItemPotion("surstroemming_drink", true, 42, 0, 0);
|
||||
}
|
|
@ -48,4 +48,8 @@ public class ModSoundEvents
|
|||
|
||||
public static final SoundEvent ENTITY_BAKAMITAICREEPER_FUSE = new SoundEvent(new ResourceLocation("spackenmobs:entities.bakamitai_creeper.fuse"));
|
||||
public static final SoundEvent ENTITY_BAKAMITAICREEPER_BLOW = new SoundEvent(new ResourceLocation("spackenmobs:entities.bakamitai_creeper.blow"));
|
||||
|
||||
public static final SoundEvent ENTITY_FRIEDRICH_AMBIENT = new SoundEvent(new ResourceLocation("spackenmobs:entities.friedrich.ambient"));
|
||||
public static final SoundEvent ENTITY_FRIEDRICH_HURT = new SoundEvent(new ResourceLocation("spackenmobs:entities.friedrich.hurt"));
|
||||
public static final SoundEvent ENTITY_FRIEDRICH_DEATH = new SoundEvent(new ResourceLocation("spackenmobs:entities.friedrich.death"));
|
||||
}
|
|
@ -1,24 +1,11 @@
|
|||
package mod.acgaming.spackenmobs.misc;
|
||||
|
||||
import mod.acgaming.spackenmobs.Spackenmobs;
|
||||
import mod.acgaming.spackenmobs.entities.EntityApoRed;
|
||||
import mod.acgaming.spackenmobs.entities.EntityBakaMitaiCreeper;
|
||||
import mod.acgaming.spackenmobs.entities.EntityDrachenlord;
|
||||
import mod.acgaming.spackenmobs.entities.EntityHolzstammhuhn;
|
||||
import mod.acgaming.spackenmobs.entities.EntityIslamist;
|
||||
import mod.acgaming.spackenmobs.entities.EntityJens;
|
||||
import mod.acgaming.spackenmobs.entities.EntityMarcellDAvis;
|
||||
import mod.acgaming.spackenmobs.entities.EntityMrBean;
|
||||
import mod.acgaming.spackenmobs.entities.EntitySchalker;
|
||||
import mod.acgaming.spackenmobs.entities.EntitySmavaCreeper;
|
||||
import mod.acgaming.spackenmobs.entities.EntityWolfMZTE;
|
||||
import mod.acgaming.spackenmobs.entities.*;
|
||||
import net.minecraft.entity.EnumCreatureType;
|
||||
import net.minecraft.entity.monster.EntityCreeper;
|
||||
import net.minecraft.entity.monster.EntityPigZombie;
|
||||
import net.minecraft.entity.monster.EntityShulker;
|
||||
import net.minecraft.entity.monster.EntitySkeleton;
|
||||
import net.minecraft.entity.monster.EntityZombie;
|
||||
import net.minecraft.entity.monster.*;
|
||||
import net.minecraft.entity.passive.EntityChicken;
|
||||
import net.minecraft.entity.passive.EntityCow;
|
||||
import net.minecraft.entity.passive.EntityPig;
|
||||
import net.minecraft.entity.passive.EntityWolf;
|
||||
import net.minecraft.item.Item;
|
||||
|
@ -124,18 +111,19 @@ public class RegHandler
|
|||
EntityRegistry.addSpawn(EntityBakaMitaiCreeper.class, ModConfigs.BakaMitaiCreeper_weight, ModConfigs.BakaMitaiCreeper_min, ModConfigs.BakaMitaiCreeper_max, EnumCreatureType.MONSTER,
|
||||
BiomeHelper.getBiomesWithMonster(EntityCreeper.class));
|
||||
}
|
||||
|
||||
// Friedrich Liechtenstein
|
||||
EntityRegistry.registerModEntity(new ResourceLocation("spackenmobs:friedrich"), EntityFriedrichLiechtenstein.class, "friedrich", id++, Spackenmobs.instance, 64, 1, true, 16447728, 15878595);
|
||||
if (ModConfigs.Friedrich_spawn == true)
|
||||
{
|
||||
EntityRegistry.addSpawn(EntityFriedrichLiechtenstein.class, ModConfigs.Friedrich_weight, ModConfigs.Friedrich_min, ModConfigs.Friedrich_max, EnumCreatureType.CREATURE, BiomeHelper.getBiomesWithCreature(EntityCow.class));
|
||||
}
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void registerItems(Register<Item> event)
|
||||
{
|
||||
final Item[] items =
|
||||
{
|
||||
new Item().setRegistryName(Spackenmobs.MODID, "ram").setUnlocalizedName(Spackenmobs.MODID + "." + "ram").setCreativeTab(Spackenmobs.SPACKENMOBS_TAB),
|
||||
new Item().setRegistryName(Spackenmobs.MODID, "ram_on_a_stick").setUnlocalizedName(Spackenmobs.MODID + "." + "ram_on_a_stick").setCreativeTab(Spackenmobs.SPACKENMOBS_TAB),
|
||||
new Item().setRegistryName(Spackenmobs.MODID, "surstroemming").setUnlocalizedName(Spackenmobs.MODID + "." + "surstroemming").setCreativeTab(Spackenmobs.SPACKENMOBS_TAB)
|
||||
};
|
||||
event.getRegistry().registerAll(items);
|
||||
event.getRegistry().registerAll(ModItems.ITEMS.toArray(new Item[0]));
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
|
@ -222,5 +210,13 @@ public class RegHandler
|
|||
event.getRegistry().register(ModSoundEvents.ENTITY_BAKAMITAICREEPER_FUSE);
|
||||
ModSoundEvents.ENTITY_BAKAMITAICREEPER_BLOW.setRegistryName(new ResourceLocation("spackenmobs:entities.bakamitai_creeper.blow"));
|
||||
event.getRegistry().register(ModSoundEvents.ENTITY_BAKAMITAICREEPER_BLOW);
|
||||
|
||||
// Friedrich Liechtenstein
|
||||
ModSoundEvents.ENTITY_FRIEDRICH_AMBIENT.setRegistryName(new ResourceLocation("spackenmobs:entities.friedrich.ambient"));
|
||||
event.getRegistry().register(ModSoundEvents.ENTITY_FRIEDRICH_AMBIENT);
|
||||
ModSoundEvents.ENTITY_FRIEDRICH_HURT.setRegistryName(new ResourceLocation("spackenmobs:entities.friedrich.hurt"));
|
||||
event.getRegistry().register(ModSoundEvents.ENTITY_FRIEDRICH_HURT);
|
||||
ModSoundEvents.ENTITY_FRIEDRICH_DEATH.setRegistryName(new ResourceLocation("spackenmobs:entities.friedrich.death"));
|
||||
event.getRegistry().register(ModSoundEvents.ENTITY_FRIEDRICH_DEATH);
|
||||
}
|
||||
}
|
|
@ -18,6 +18,8 @@ public class RegHandlerModels
|
|||
registerModel(ModItems.RAM, 0);
|
||||
registerModel(ModItems.RAM_ON_A_STICK, 0);
|
||||
registerModel(ModItems.SURSTROEMMING, 0);
|
||||
registerModel(ModItems.AHOJ_BRAUSE, 0);
|
||||
registerModel(ModItems.AHOJ_BRAUSE_DRINK, 0);
|
||||
}
|
||||
|
||||
private static void registerModel(Item item, int meta)
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
package mod.acgaming.spackenmobs.render;
|
||||
|
||||
import mod.acgaming.spackenmobs.entities.EntityFriedrichLiechtenstein;
|
||||
import net.minecraft.client.model.ModelBiped;
|
||||
import net.minecraft.client.renderer.entity.Render;
|
||||
import net.minecraft.client.renderer.entity.RenderBiped;
|
||||
import net.minecraft.client.renderer.entity.RenderManager;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.fml.client.registry.IRenderFactory;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class RenderFriedrichLiechtenstein extends RenderBiped<EntityFriedrichLiechtenstein>
|
||||
{
|
||||
public static final Factory FACTORY = new Factory();
|
||||
private static final ResourceLocation FRIEDRICH_TEXTURE = new ResourceLocation("spackenmobs:textures/entities/friedrich.png");
|
||||
|
||||
public RenderFriedrichLiechtenstein(RenderManager renderManagerIn)
|
||||
{
|
||||
super(renderManagerIn, new ModelBiped(), 0.25F);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ResourceLocation getEntityTexture(EntityFriedrichLiechtenstein entity)
|
||||
{
|
||||
return FRIEDRICH_TEXTURE;
|
||||
}
|
||||
|
||||
private static class Factory implements IRenderFactory<EntityFriedrichLiechtenstein>
|
||||
{
|
||||
@Override
|
||||
public Render<? super EntityFriedrichLiechtenstein> createRenderFor(RenderManager manager)
|
||||
{
|
||||
return new RenderFriedrichLiechtenstein(manager);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
entity.apored.name=ApoRed
|
||||
entity.bakamitai_creeper.name=Baka Mitai-Creeper
|
||||
entity.drachenlord.name=Drachenlord
|
||||
entity.friedrich.name=Friedrich Liechtenstein
|
||||
entity.holzstammhuhn.name=Holzstammhuhn
|
||||
entity.islamist.name=Islamist
|
||||
entity.jens.name=Jens
|
||||
|
@ -9,8 +10,10 @@ entity.mr_bean.name=Mr. Bean
|
|||
entity.schalker.name=Schalker
|
||||
entity.smava_creeper.name=Smava-Creeper
|
||||
entity.wolfmzte.name=WolfMZTE
|
||||
item.spackenmobs.ram.name=RAM
|
||||
item.spackenmobs.ram_on_a_stick.name=RAM-Rute
|
||||
item.spackenmobs.surstroemming.name=Surströmming
|
||||
itemGroup.spackenmobs.tabSpackenmobs=Spackenmobs
|
||||
item.ram.name=RAM
|
||||
item.ram_on_a_stick.name=RAM-Rute
|
||||
item.surstroemming.name=Surströmming
|
||||
item.ahoj_brause.name=Ahoj-Brause
|
||||
item.ahoj_brause_drink.name=Ahoj-Brause Brause
|
||||
itemGroup.tabSpackenmobs=Spackenmobs
|
||||
spackenmobs.config.title=Spackenmobs-Einstellungen
|
|
@ -1,6 +1,7 @@
|
|||
entity.apored.name=ApoRed
|
||||
entity.bakamitai_creeper.name=Baka Mitai Creeper
|
||||
entity.drachenlord.name=Drachenlord
|
||||
entity.friedrich.name=Friedrich Liechtenstein
|
||||
entity.holzstammhuhn.name=Holzstammhuhn
|
||||
entity.islamist.name=Islamist
|
||||
entity.jens.name=Jens
|
||||
|
@ -9,8 +10,10 @@ entity.mr_bean.name=Mr. Bean
|
|||
entity.schalker.name=Schalker
|
||||
entity.smava_creeper.name=Smava Creeper
|
||||
entity.wolfmzte.name=WolfMZTE
|
||||
item.spackenmobs.ram.name=RAM
|
||||
item.spackenmobs.ram_on_a_stick.name=RAM on a Stick
|
||||
item.spackenmobs.surstroemming.name=Surströmming
|
||||
itemGroup.spackenmobs.tabSpackenmobs=Spackenmobs
|
||||
item.ram.name=RAM
|
||||
item.ram_on_a_stick.name=RAM on a Stick
|
||||
item.surstroemming.name=Surströmming
|
||||
item.ahoj_brause.name=Ahoj-Brause
|
||||
item.ahoj_brause_drink.name=Ahoj-Brause Soda
|
||||
itemGroup.tabSpackenmobs=Spackenmobs
|
||||
spackenmobs.config.title=Spackenmobs settings
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"pools": [
|
||||
{
|
||||
"name": "friedrich",
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "item",
|
||||
"name": "spackenmobs:ahoj_brause",
|
||||
"weight": 1,
|
||||
"functions": [
|
||||
{
|
||||
"function": "set_count",
|
||||
"count": {
|
||||
"min": 1,
|
||||
"max": 3
|
||||
}
|
||||
},
|
||||
{
|
||||
"function": "looting_enchant",
|
||||
"count": {
|
||||
"min": 0,
|
||||
"max": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "spackenmobs:items/ahoj_brause"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "spackenmobs:items/ahoj_brause_drink"
|
||||
}
|
||||
}
|
|
@ -906,5 +906,44 @@
|
|||
"name": "spackenmobs:bakamitai_creeper/blow"
|
||||
}
|
||||
]
|
||||
},
|
||||
"entities.friedrich.ambient": {
|
||||
"sounds": [
|
||||
{
|
||||
"name": "spackenmobs:friedrich/say1"
|
||||
},
|
||||
{
|
||||
"name": "spackenmobs:friedrich/say2"
|
||||
},
|
||||
{
|
||||
"name": "spackenmobs:friedrich/say3"
|
||||
},
|
||||
{
|
||||
"name": "spackenmobs:friedrich/say4"
|
||||
},
|
||||
{
|
||||
"name": "spackenmobs:friedrich/say5"
|
||||
},
|
||||
{
|
||||
"name": "spackenmobs:friedrich/say6"
|
||||
},
|
||||
{
|
||||
"name": "spackenmobs:friedrich/say7"
|
||||
}
|
||||
]
|
||||
},
|
||||
"entities.friedrich.death": {
|
||||
"sounds": [
|
||||
{
|
||||
"name": "spackenmobs:friedrich/death"
|
||||
}
|
||||
]
|
||||
},
|
||||
"entities.friedrich.hurt": {
|
||||
"sounds": [
|
||||
{
|
||||
"name": "spackenmobs:friedrich/hurt"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/death.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/death.ogg
Normal file
Binary file not shown.
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/hurt.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/hurt.ogg
Normal file
Binary file not shown.
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say1.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say1.ogg
Normal file
Binary file not shown.
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say2.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say2.ogg
Normal file
Binary file not shown.
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say3.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say3.ogg
Normal file
Binary file not shown.
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say4.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say4.ogg
Normal file
Binary file not shown.
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say5.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say5.ogg
Normal file
Binary file not shown.
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say6.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say6.ogg
Normal file
Binary file not shown.
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say7.ogg
Normal file
BIN
src/main/resources/assets/spackenmobs/sounds/friedrich/say7.ogg
Normal file
Binary file not shown.
Binary file not shown.
After Width: | Height: | Size: 18 KiB |
Binary file not shown.
After Width: | Height: | Size: 42 KiB |
Binary file not shown.
After Width: | Height: | Size: 35 KiB |
Loading…
Reference in a new issue