Sooo much stuff! Compost, Food and all sorts!

This commit is contained in:
Ellpeck 2015-02-09 17:25:05 +01:00
parent 6905c3c8f9
commit c9f5d731ed
73 changed files with 1333 additions and 373 deletions

View file

@ -17,16 +17,16 @@ buildscript {
apply plugin: 'forge'
version = "1.7.10-0.0.1"
version = "1.8-0.0.1"
group = "ellpeck.someprettyrandomstuff"
archivesBaseName = "SomePrettyRandomStuff"
minecraft {
version = "1.7.10-10.13.2.1277"
version = "1.8-11.14.0.1295-1.8"
runDir = "idea"
}
dependencies {
dependencies{
}

View file

@ -1,53 +1,68 @@
package ellpeck.someprettyrandomstuff;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import ellpeck.someprettyrandomstuff.achievement.AchievementEvent;
import ellpeck.someprettyrandomstuff.achievement.InitAchievements;
import ellpeck.someprettyrandomstuff.blocks.InitBlocks;
import ellpeck.someprettyrandomstuff.config.ConfigurationHandler;
import ellpeck.someprettyrandomstuff.crafting.InitCrafting;
import ellpeck.someprettyrandomstuff.event.UpdateEvent;
import ellpeck.someprettyrandomstuff.gen.OreGen;
import ellpeck.someprettyrandomstuff.inventory.GuiHandler;
import ellpeck.someprettyrandomstuff.items.InitItems;
import ellpeck.someprettyrandomstuff.proxy.IProxy;
import ellpeck.someprettyrandomstuff.tile.TileEntityBase;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
@Mod(modid = Util.MOD_ID, name = Util.NAME, version = Util.VERSION)
public class SPTS{
public class SPRS{
@Instance(Util.MOD_ID)
public static SPTS instance;
@Mod.Instance(Util.MOD_ID)
public static SPRS instance;
@SidedProxy(clientSide = "ellpeck.someprettyrandomstuff.proxy.ClientProxy", serverSide = "ellpeck.someprettyrandomstuff.proxy.ServerProxy")
public static IProxy proxy;
@SuppressWarnings("unused")
@EventHandler()
@Mod.EventHandler()
public void preInit(FMLPreInitializationEvent event){
Util.logInfo(Util.isClientSide() ? "You're on a Client, eh?" : "You're on a Server, eh?");
Util.logInfo("Starting PreInitialization Phase...");
ConfigurationHandler.init(event.getSuggestedConfigurationFile());
InitBlocks.init();
InitItems.init();
proxy.preInit();
Util.logInfo("PreInitialization Finished.");
}
@SuppressWarnings("unused")
@EventHandler()
@Mod.EventHandler()
public void init(FMLInitializationEvent event){
Util.logInfo("Starting Initialization Phase...");
InitAchievements.init();
InitCrafting.init();
GuiHandler.init();
OreGen.init();
TileEntityBase.init();
UpdateEvent.init();
AchievementEvent.init();
proxy.init();
Util.logInfo("Initialization Finished.");
}
@SuppressWarnings("unused")
@EventHandler()
@Mod.EventHandler()
public void postInit(FMLPostInitializationEvent event){
Util.logInfo("Starting PostInitialization Phase...");
proxy.postInit();
Util.logInfo("PostInitialization Finished.");
}
}

View file

@ -0,0 +1,77 @@
package ellpeck.someprettyrandomstuff.achievement;
import ellpeck.someprettyrandomstuff.blocks.InitBlocks;
import ellpeck.someprettyrandomstuff.items.InitItems;
import ellpeck.someprettyrandomstuff.items.metalists.TheFoods;
import ellpeck.someprettyrandomstuff.items.metalists.TheMiscItems;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.item.Item;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.PlayerEvent;
public class AchievementEvent{
public static class SmeltEvent{
@SubscribeEvent
public void onSmeltedEvent(PlayerEvent.ItemSmeltedEvent event){
if(event.smelting.getItem() == InitItems.itemFoods && event.smelting.getItemDamage() == TheFoods.BAGUETTE.ordinal()){
event.player.addStat(InitAchievements.achievementSmeltBaguette, 1);
}
}
}
public static class CraftEvent{
@SubscribeEvent
public void onCraftedEvent(PlayerEvent.ItemCraftedEvent event){
if(event.crafting.getItem() == InitItems.itemMisc && event.crafting.getItemDamage() == TheMiscItems.DOUGH.ordinal()){
event.player.addStat(InitAchievements.achievementCraftDough, 1);
}
if(event.crafting.getItem() == InitItems.itemMisc && event.crafting.getItemDamage() == TheMiscItems.MASHED_FOOD.ordinal()){
event.player.addStat(InitAchievements.achievementCraftMashedFood, 1);
}
if(event.crafting.getItem() == InitItems.itemFoods && event.crafting.getItemDamage() == TheFoods.SUBMARINE_SANDWICH.ordinal()){
event.player.addStat(InitAchievements.achievementCraftSubSandwich, 1);
}
if(event.crafting.getItem() == InitItems.itemMisc && event.crafting.getItemDamage() == TheMiscItems.PAPER_CONE.ordinal()){
event.player.addStat(InitAchievements.achievementCraftPaperCone, 1);
}
if(event.crafting.getItem() == InitItems.itemFoods && event.crafting.getItemDamage() == TheFoods.FRENCH_FRY.ordinal()){
event.player.addStat(InitAchievements.achievementCraftFrenchFry, 1);
}
if(event.crafting.getItem() == InitItems.itemFoods && event.crafting.getItemDamage() == TheFoods.FRENCH_FRIES.ordinal()){
event.player.addStat(InitAchievements.achievementCraftFrenchFries, 1);
}
if(event.crafting.getItem() == InitItems.itemFoods && event.crafting.getItemDamage() == TheFoods.FISH_N_CHIPS.ordinal()){
event.player.addStat(InitAchievements.achievementCraftFishNChips, 1);
}
if(event.crafting.getItem()== Item.getItemFromBlock(InitBlocks.blockCompost)){
event.player.addStat(InitAchievements.achievementCraftCompost, 1);
}
}
}
public static class PickupEvent{
@SubscribeEvent
public void onItemPickupEvent(PlayerEvent.ItemPickupEvent event){
}
}
public static class LoginEvent{
@SubscribeEvent
public void onPlayerLoggingInEvent(PlayerEvent.PlayerLoggedInEvent event){
}
}
public static void init(){
Util.logInfo("Initializing Events...");
FMLCommonHandler.instance().bus().register(new AchievementEvent.SmeltEvent());
FMLCommonHandler.instance().bus().register(new AchievementEvent.CraftEvent());
FMLCommonHandler.instance().bus().register(new AchievementEvent.PickupEvent());
FMLCommonHandler.instance().bus().register(new AchievementEvent.LoginEvent());
}
}

View file

@ -0,0 +1,14 @@
package ellpeck.someprettyrandomstuff.achievement;
import net.minecraft.item.ItemStack;
import net.minecraft.stats.Achievement;
public class AchievementSPRS extends Achievement{
public AchievementSPRS(String name, int x, int y, ItemStack displayStack, Achievement hasToHaveBefore){
super("achievement." + name, name, x, y, displayStack, hasToHaveBefore);
InitAchievements.achievementList.add(this);
if(hasToHaveBefore == null) this.func_180789_a();
this.func_180788_c();
}
}

View file

@ -0,0 +1,54 @@
package ellpeck.someprettyrandomstuff.achievement;
import ellpeck.someprettyrandomstuff.blocks.InitBlocks;
import ellpeck.someprettyrandomstuff.items.InitItems;
import ellpeck.someprettyrandomstuff.items.metalists.TheFoods;
import ellpeck.someprettyrandomstuff.items.metalists.TheMiscItems;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.item.ItemStack;
import net.minecraft.stats.Achievement;
import net.minecraft.util.StatCollector;
import net.minecraftforge.common.AchievementPage;
import java.util.ArrayList;
public class InitAchievements{
public static AchievementPage theAchievementPage;
public static ArrayList<Achievement> achievementList = new ArrayList<Achievement>();
public static Achievement achievementCraftDough;
public static Achievement achievementSmeltBaguette;
public static Achievement achievementCraftSubSandwich;
public static Achievement achievementCraftMashedFood;
public static Achievement achievementCraftCompost;
public static Achievement achievementCraftFertilizer;
public static Achievement achievementCraftPaperCone;
public static Achievement achievementCraftFrenchFry;
public static Achievement achievementCraftFrenchFries;
public static Achievement achievementCraftFishNChips;
public static void init(){
Util.logInfo("Initializing Achievements...");
achievementCraftDough = new AchievementSPRS("craftDough", 0, -3, new ItemStack(InitItems.itemMisc, 1, TheMiscItems.DOUGH.ordinal()), null);
achievementSmeltBaguette = new AchievementSPRS("smeltBaguette", 2, -3, new ItemStack(InitItems.itemFoods, 1, TheFoods.BAGUETTE.ordinal()), achievementCraftDough);
achievementCraftSubSandwich = new AchievementSPRS("craftSubSandwich", 4, -3, new ItemStack(InitItems.itemFoods, 1, TheFoods.SUBMARINE_SANDWICH.ordinal()), achievementSmeltBaguette);
achievementCraftMashedFood = new AchievementSPRS("craftMashedFood", 0, 0 , new ItemStack(InitItems.itemMisc, 1, TheMiscItems.MASHED_FOOD.ordinal()), null);
achievementCraftCompost = new AchievementSPRS("craftCompost", 2, 0, new ItemStack(InitBlocks.blockCompost), achievementCraftMashedFood);
achievementCraftFertilizer = new AchievementSPRS("craftFertilizer", 4, 0, new ItemStack(InitItems.itemFertilizer), achievementCraftCompost);
achievementCraftPaperCone = new AchievementSPRS("craftPaperCone", 0, 3, new ItemStack(InitItems.itemMisc, 1, TheMiscItems.PAPER_CONE.ordinal()), null);
achievementCraftFrenchFry = new AchievementSPRS("craftFrenchFry", 2, 3, new ItemStack(InitItems.itemFoods, 1, TheFoods.FRENCH_FRY.ordinal()), achievementCraftPaperCone);
achievementCraftFrenchFries = new AchievementSPRS("craftFrenchFries", 4, 4, new ItemStack(InitItems.itemFoods, 1, TheFoods.FRENCH_FRIES.ordinal()), achievementCraftFrenchFry);
achievementCraftFishNChips = new AchievementSPRS("craftFishNChips", 4, 2, new ItemStack(InitItems.itemFoods, 1, TheFoods.FISH_N_CHIPS.ordinal()), achievementCraftFrenchFry);
theAchievementPage = new AchievementPage(StatCollector.translateToLocal("achievement.page." + Util.MOD_ID), achievementList.toArray(new Achievement[achievementList.size()]));
AchievementPage.registerAchievementPage(theAchievementPage);
}
}

View file

@ -0,0 +1,87 @@
package ellpeck.someprettyrandomstuff.blocks;
import ellpeck.someprettyrandomstuff.achievement.InitAchievements;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.items.ItemFertilizer;
import ellpeck.someprettyrandomstuff.items.ItemMisc;
import ellpeck.someprettyrandomstuff.items.metalists.TheMiscItems;
import ellpeck.someprettyrandomstuff.tile.TileEntityCompost;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.BlockPos;
import net.minecraft.util.EnumFacing;
import net.minecraft.world.World;
import java.util.List;
public class BlockCompost extends BlockContainerBase{
public BlockCompost(){
super(Material.wood);
this.setCreativeTab(CreativeTab.instance);
this.setUnlocalizedName("blockCompost");
this.setHarvestLevel("axe", 0);
this.setHardness(1.0F);
this.setStepSound(soundTypeWood);
}
public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ){
if(!world.isRemote){
ItemStack stackPlayer = player.getCurrentEquippedItem();
TileEntityCompost tile = (TileEntityCompost)world.getTileEntity(pos);
//Add items to be composted
if(stackPlayer != null && stackPlayer.getItem() instanceof ItemMisc && stackPlayer.getMetadata() == TheMiscItems.MASHED_FOOD.ordinal() && (tile.slots[0] == null || (!(tile.slots[0].getItem() instanceof ItemFertilizer) && tile.slots[0].stackSize < tile.amountNeededToConvert))){
if(tile.slots[0] == null) tile.slots[0] = new ItemStack(stackPlayer.getItem(), 1, TheMiscItems.MASHED_FOOD.ordinal());
else tile.slots[0].stackSize++;
if(!player.capabilities.isCreativeMode) player.inventory.getCurrentItem().stackSize--;
}
//Add Fertilizer to player's inventory
else if(stackPlayer == null && tile.slots[0] != null && tile.slots[0].getItem() instanceof ItemFertilizer){
player.inventory.setInventorySlotContents(player.inventory.currentItem, tile.slots[0].copy());
player.addStat(InitAchievements.achievementCraftFertilizer, 1);
tile.slots[0] = null;
}
}
return true;
}
public void addCollisionBoxesToList(World world, BlockPos pos, IBlockState state, AxisAlignedBB mask, List list, Entity collidingEntity){
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.3125F, 1.0F);
super.addCollisionBoxesToList(world, pos, state, mask, list, collidingEntity);
float f = 0.125F;
this.setBlockBounds(0.0F, 0.0F, 0.0F, f, 1.0F, 1.0F);
super.addCollisionBoxesToList(world, pos, state, mask, list, collidingEntity);
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, f);
super.addCollisionBoxesToList(world, pos, state, mask, list, collidingEntity);
this.setBlockBounds(1.0F - f, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
super.addCollisionBoxesToList(world, pos, state, mask, list, collidingEntity);
this.setBlockBounds(0.0F, 0.0F, 1.0F - f, 1.0F, 1.0F, 1.0F);
super.addCollisionBoxesToList(world, pos, state, mask, list, collidingEntity);
this.setBlockBoundsForItemRender();
}
public void setBlockBoundsForItemRender(){
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
}
public boolean isOpaqueCube(){
return false;
}
public boolean isFullCube(){
return false;
}
public int getRenderType(){
return 3;
}
public TileEntity createNewTileEntity(World world, int meta){
return new TileEntityCompost();
}
}

View file

@ -1,24 +1,24 @@
package ellpeck.someprettyrandomstuff.blocks;
import ellpeck.someprettyrandomstuff.tile.TileEntityInventoryBase;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;
import java.util.Random;
public abstract class BlockContainerBase extends BlockContainer{
public BlockContainerBase(Material mat) {
public BlockContainerBase(Material mat){
super(mat);
}
public TileEntityInventoryBase dropInventory(World world, int x, int y, int z) {
TileEntityInventoryBase tileEntity = (TileEntityInventoryBase) world.getTileEntity(x, y, z);
public TileEntityInventoryBase dropInventory(World world, BlockPos blockPos){
TileEntityInventoryBase tileEntity = (TileEntityInventoryBase) world.getTileEntity(blockPos);
for (int i = 0; i < tileEntity.getSizeInventory(); i++){
ItemStack itemStack = tileEntity.getStackInSlot(i);
if (itemStack != null && itemStack.stackSize > 0) {
@ -26,7 +26,7 @@ public abstract class BlockContainerBase extends BlockContainer{
float dX = rand.nextFloat() * 0.8F + 0.1F;
float dY = rand.nextFloat() * 0.8F + 0.1F;
float dZ = rand.nextFloat() * 0.8F + 0.1F;
EntityItem entityItem = new EntityItem(world, x + dX, y + dY, z + dZ, itemStack.copy());
EntityItem entityItem = new EntityItem(world, blockPos.getX() + dX, blockPos.getY() + dY, blockPos.getZ() + dZ, itemStack.copy());
if (itemStack.hasTagCompound())
entityItem.getEntityItem().setTagCompound((NBTTagCompound) itemStack.getTagCompound().copy());
float factor = 0.05F;
@ -39,9 +39,4 @@ public abstract class BlockContainerBase extends BlockContainer{
}
return tileEntity;
}
public void breakBlock(World world, int x, int y, int z, Block block, int meta){
if(world.getTileEntity(x, y, z) instanceof TileEntityInventoryBase) this.dropInventory(world, x, y, z);
super.breakBlock(world, x, y, z, block, meta);
}
}

View file

@ -1,12 +1,12 @@
package ellpeck.someprettyrandomstuff.blocks;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;

View file

@ -1,8 +1,19 @@
package ellpeck.someprettyrandomstuff.blocks;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.block.Block;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class InitBlocks{
public static Block blockCompost;
public static void init(){
Util.logInfo("Initializing Blocks...");
blockCompost = new BlockCompost();
GameRegistry.registerBlock(blockCompost, DefaultItemBlock.class, blockCompost.getUnlocalizedName().substring(5));
}

View file

@ -1,11 +0,0 @@
package ellpeck.someprettyrandomstuff.blocks.models;
import net.minecraft.client.model.ModelBase;
public class ModelBaseSPTS extends ModelBase{
public void render(float f){
}
}

View file

@ -1,33 +0,0 @@
package ellpeck.someprettyrandomstuff.blocks.renderer;
import ellpeck.someprettyrandomstuff.blocks.models.ModelBaseSPTS;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
public class BlockBaseRenderer extends TileEntitySpecialRenderer{
private final ResourceLocation resLoc;
private ModelBaseSPTS model;
public BlockBaseRenderer(ModelBaseSPTS model, ResourceLocation resLoc){
this.resLoc = resLoc;
this.model = model;
}
public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float f){
GL11.glPushMatrix();
GL11.glTranslatef((float)x+0.5F, (float)y+1.5F, (float)z+0.5F);
if(tile.getBlockMetadata() == 2 || tile.getBlockMetadata() == 3) GL11.glRotatef(180, 1F, 0F, 1F);
else if(tile.getBlockMetadata() == 4 || tile.getBlockMetadata() == 5) GL11.glRotatef(180, 1F, 0F, 0F);
else GL11.glRotatef(180, 0F, 0F, 0F);
this.bindTexture(resLoc);
GL11.glPushMatrix();
this.model.render(0.0625F);
GL11.glPopMatrix();
GL11.glPopMatrix();
}
}

View file

@ -1,74 +0,0 @@
package ellpeck.someprettyrandomstuff.blocks.renderer;
import ellpeck.someprettyrandomstuff.blocks.models.ModelBaseSPTS;
import net.minecraft.client.Minecraft;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import org.lwjgl.opengl.GL11;
public class ItemBaseRenderer implements IItemRenderer{
private final ModelBaseSPTS model;
private final ResourceLocation resLoc;
public ItemBaseRenderer(ModelBaseSPTS model, ResourceLocation resLoc){
this.model = model;
this.resLoc = resLoc;
}
public boolean handleRenderType(ItemStack item, ItemRenderType type){
return true;
}
public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) {
return true;
}
public void renderItem(ItemRenderType type, ItemStack item, Object... data){
switch(type){
case INVENTORY:{
GL11.glPushMatrix();
GL11.glTranslatef(0.5F, 0.5F, 0.5F);
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
GL11.glTranslatef(-0.4F, -1.27F, 0.5F);
Minecraft.getMinecraft().renderEngine.bindTexture(resLoc);
model.render(0.0625F);
GL11.glPopMatrix();
break;
}
case EQUIPPED:{
GL11.glPushMatrix();
GL11.glTranslatef(0.5F, 0.5F, 0.5F);
GL11.glRotatef(180F, -2.3F, 0.0F, 1.0F);
GL11.glTranslatef(0.1F, -0.8F, 0.68F);
Minecraft.getMinecraft().renderEngine.bindTexture(resLoc);
model.render(0.0625F);
GL11.glPopMatrix();
break;
}
case EQUIPPED_FIRST_PERSON:{
GL11.glPushMatrix();
GL11.glRotatef(180, 1F, -0F, 0.5F);
GL11.glTranslatef(0.3F, -1.7F, -0.3F);
Minecraft.getMinecraft().renderEngine.bindTexture(resLoc);
model.render(0.0625F);
GL11.glPopMatrix();
break;
}
default:{
GL11.glPushMatrix();
GL11.glTranslatef(0.0F, 0.5F, 0.0F);
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
GL11.glTranslatef(0.0F, -1.27F, 0.0F);
Minecraft.getMinecraft().renderEngine.bindTexture(resLoc);
model.render(0.0625F);
GL11.glPopMatrix();
break;
}
}
}
}

View file

@ -1,10 +0,0 @@
package ellpeck.someprettyrandomstuff.blocks.renderer;
public class RenderRegistry{
public static void init(){
//ClientRegistry.bindTileEntitySpecialRenderer(TileEntityPowerRelay.class, new PowerRelayRenderer(new ModelPowerRelay(), powerRelayResLoc));
//MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(InitBlocks.blockPowerRelay), new ItemBaseRenderer(new ModelPowerRelay(), powerRelayResLoc));
}
}

View file

@ -0,0 +1,30 @@
package ellpeck.someprettyrandomstuff.config;
import ellpeck.someprettyrandomstuff.items.metalists.TheFoods;
import ellpeck.someprettyrandomstuff.items.metalists.TheMiscItems;
import net.minecraftforge.common.config.Configuration;
public class ConfigValues{
public static boolean[] enabledFoodRecipes = new boolean[TheFoods.values().length];
public static boolean[] enabledMiscRecipes = new boolean[TheMiscItems.values().length];
public static boolean enableCompostRecipe;
public static int tileEntityCompostAmountNeededToConvert;
public static int tileEntityCompostConversionTimeNeeded;
public static void defineConfigValues(Configuration config){
for(int i = 0; i < enabledFoodRecipes.length; i++){
enabledFoodRecipes[i] = config.getBoolean("isItemFood" + TheFoods.values()[i].name + "CraftingRecipeEnabled", ConfigurationHandler.CATEGORY_FOOD_CRAFTING, true, "If the Crafting Recipe for " + TheFoods.values()[i].name + " is Enabled");
}
for(int i = 0; i < enabledMiscRecipes.length; i++){
enabledMiscRecipes[i] = config.getBoolean("isItemMisc" + TheMiscItems.values()[i].name + "CraftingRecipeEnabled", ConfigurationHandler.CATEGORY_MISC_CRAFTING, true, "If the Crafting Recipe for " + TheMiscItems.values()[i].name + " is Enabled");
}
enableCompostRecipe = config.getBoolean("isCompostCraftingRecipeEnabled", ConfigurationHandler.CATEGORY_BLOCKS_CRAFTING, true, "If the Crafting Recipe for the Compost is Enabled");
tileEntityCompostAmountNeededToConvert = config.getInt("tileEntityCompostAmountNeededToConvert", ConfigurationHandler.CATEGORY_COMPOST_VALUES, 10, 1, 64, "How many items are needed in the Compost to convert to Fertilizer");
tileEntityCompostConversionTimeNeeded = config.getInt("tileEntityCompostConversionTimeNeeded", ConfigurationHandler.CATEGORY_COMPOST_VALUES, 1000, 30, 10000, "How long the Compost needs to convert to Fertilizer");
}
}

View file

@ -0,0 +1,34 @@
package ellpeck.someprettyrandomstuff.config;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraftforge.common.config.Configuration;
import java.io.File;
public class ConfigurationHandler{
public static final String CATEGORY_FOOD_CRAFTING = "food crafting";
public static final String CATEGORY_MISC_CRAFTING = "misc crafting";
public static final String CATEGORY_COMPOST_VALUES = "compost values";
public static final String CATEGORY_BLOCKS_CRAFTING = "block crafting";
public static Configuration config;
public static void init(File configFile){
Util.logInfo("Grabbing Configurations...");
Configuration config = new Configuration(configFile);
try{
config.load();
ConfigValues.defineConfigValues(config);
}
catch(Exception e){
e.printStackTrace();
}
finally{
config.save();
}
}
}

View file

@ -1,51 +1,106 @@
package ellpeck.someprettyrandomstuff.crafting;
import cpw.mods.fml.common.registry.GameRegistry;
import ellpeck.someprettyrandomstuff.blocks.InitBlocks;
import ellpeck.someprettyrandomstuff.config.ConfigValues;
import ellpeck.someprettyrandomstuff.items.InitItems;
import ellpeck.someprettyrandomstuff.items.metalists.TheFoods;
import ellpeck.someprettyrandomstuff.items.metalists.TheMiscItems;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class InitCrafting {
public static void init(){
Util.logInfo("Initializing Crafting Recipes...");
GameRegistry.addSmelting(new ItemStack(InitItems.itemMisc, 1,
TheMiscItems.DOUGH.ordinal()), new ItemStack(InitItems.itemFoods, 1, TheFoods.BAGUETTE.ordinal()), 1F);
if(ConfigValues.enabledFoodRecipes[TheFoods.BAGUETTE.ordinal()])
GameRegistry.addSmelting(new ItemStack(InitItems.itemMisc, 1,
TheMiscItems.DOUGH.ordinal()), new ItemStack(InitItems.itemFoods, 1, TheFoods.BAGUETTE.ordinal()), 1F);
GameRegistry.addShapelessRecipe(new ItemStack(InitItems.itemMisc, 2, TheMiscItems.DOUGH.ordinal()),
new ItemStack(Items.wheat), new ItemStack(Items.wheat));
if(ConfigValues.enabledMiscRecipes[TheMiscItems.DOUGH.ordinal()])
GameRegistry.addShapelessRecipe(new ItemStack(InitItems.itemMisc, 2, TheMiscItems.DOUGH.ordinal()),
new ItemStack(Items.wheat), new ItemStack(Items.wheat));
if(ConfigValues.enabledFoodRecipes[TheFoods.PIZZA.ordinal()])
GameRegistry.addRecipe(new ItemStack(InitItems.itemFoods, 1, TheFoods.PIZZA.ordinal()),
"HHH", "MCF", " D ",
'D', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.DOUGH.ordinal()),
'M', new ItemStack(Blocks.brown_mushroom),
'C', new ItemStack(Items.carrot),
'F', new ItemStack(Items.fish),
'F', new ItemStack(Items.fish, 1, Util.WILDCARD),
'H', new ItemStack(InitItems.itemFoods, 1, TheFoods.CHEESE.ordinal()));
if(ConfigValues.enabledFoodRecipes[TheFoods.HAMBURGER.ordinal()])
GameRegistry.addRecipe(new ItemStack(InitItems.itemFoods, 1, TheFoods.HAMBURGER.ordinal()),
" T ", "CBS", " T ",
'T', new ItemStack(InitItems.itemFoods, 1, TheFoods.TOAST.ordinal()),
'C', new ItemStack(InitItems.itemFoods, 1, TheFoods.CHEESE.ordinal()),
'S', new ItemStack(Blocks.leaves),
'S', new ItemStack(Blocks.leaves, 1, Util.WILDCARD),
'B', new ItemStack(Items.cooked_beef));
if(ConfigValues.enabledFoodRecipes[TheFoods.BIG_COOKIE.ordinal()])
GameRegistry.addRecipe(new ItemStack(InitItems.itemFoods, 1, TheFoods.BIG_COOKIE.ordinal()),
"DCD", "CDC", "DCD",
'D', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.DOUGH.ordinal()),
'C', new ItemStack(Items.dye, 1, 3));
if(ConfigValues.enabledFoodRecipes[TheFoods.SUBMARINE_SANDWICH.ordinal()])
GameRegistry.addRecipe(new ItemStack(InitItems.itemFoods, 1, TheFoods.SUBMARINE_SANDWICH.ordinal()),
"PCP", "FBS", "PCP",
'P', new ItemStack(Items.paper),
'C', new ItemStack(InitItems.itemFoods, 1, TheFoods.CHEESE.ordinal()),
'F', new ItemStack(Items.fish),
'F', new ItemStack(Items.fish, 1, Util.WILDCARD),
'B', new ItemStack(InitItems.itemFoods, 1, TheFoods.BAGUETTE.ordinal()),
'S', new ItemStack(Blocks.leaves));
'S', new ItemStack(Blocks.leaves, 1, Util.WILDCARD));
if(ConfigValues.enabledMiscRecipes[TheMiscItems.PAPER_CONE.ordinal()])
GameRegistry.addRecipe(new ItemStack(InitItems.itemMisc, 1, TheMiscItems.PAPER_CONE.ordinal()),
"P P", " P ",
'P', new ItemStack(Items.paper));
Items.iron_sword.setContainerItem(Items.iron_sword);
if(ConfigValues.enabledFoodRecipes[TheFoods.FRENCH_FRY.ordinal()])
GameRegistry.addShapelessRecipe(new ItemStack(InitItems.itemFoods, 1, TheFoods.FRENCH_FRY.ordinal()),
new ItemStack(Items.baked_potato),
new ItemStack(Items.iron_sword, 1, Util.WILDCARD));
Items.iron_sword.setContainerItem(null);
if(ConfigValues.enabledFoodRecipes[TheFoods.FRENCH_FRIES.ordinal()])
GameRegistry.addRecipe(new ItemStack(InitItems.itemFoods, 1, TheFoods.FRENCH_FRIES.ordinal()),
"FFF", " P ",
'P', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.PAPER_CONE.ordinal()),
'F', new ItemStack(InitItems.itemFoods, 1, TheFoods.FRENCH_FRY.ordinal()));
if(ConfigValues.enabledFoodRecipes[TheFoods.FISH_N_CHIPS.ordinal()])
GameRegistry.addRecipe(new ItemStack(InitItems.itemFoods, 1, TheFoods.FISH_N_CHIPS.ordinal()),
"FIF", " P ",
'I', new ItemStack(Items.cooked_fish, 1, Util.WILDCARD),
'P', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.PAPER_CONE.ordinal()),
'F', new ItemStack(InitItems.itemFoods, 1, TheFoods.FRENCH_FRY.ordinal()));
if(ConfigValues.enableCompostRecipe)
GameRegistry.addRecipe(new ItemStack(InitBlocks.blockCompost),
"W W", "WFW", "WWW",
'W', new ItemStack(Blocks.planks, 1, Util.WILDCARD),
'F', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.MASHED_FOOD.ordinal()));
if(ConfigValues.enabledMiscRecipes[TheMiscItems.MASHED_FOOD.ordinal()])
initMashedFoodRecipes();
}
public static void initMashedFoodRecipes(){
for(Object nextIterator : Item.itemRegistry){
if(nextIterator instanceof ItemFood){
ItemStack ingredient = new ItemStack((Item)nextIterator, 1, Util.WILDCARD);
GameRegistry.addShapelessRecipe(new ItemStack(InitItems.itemMisc, 4, TheMiscItems.MASHED_FOOD.ordinal()), ingredient, ingredient, ingredient, ingredient);
}
}
}
}

View file

@ -20,6 +20,6 @@ public class CreativeTab extends CreativeTabs{
}
public ItemStack getIconItemStack(){
return new ItemStack(this.getTabIconItem(), 1, TheFoods.CHOCOLATE.ordinal());
return new ItemStack(this.getTabIconItem(), 1, TheFoods.SUBMARINE_SANDWICH.ordinal());
}
}

View file

@ -1,17 +0,0 @@
package ellpeck.someprettyrandomstuff.event;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.LivingEvent.LivingUpdateEvent;
public class UpdateEvent{
@SubscribeEvent
public void onLivingUpdateEvent(LivingUpdateEvent event){
}
public static void init(){
MinecraftForge.EVENT_BUS.register(new UpdateEvent());
}
}

View file

@ -1,18 +1,20 @@
package ellpeck.someprettyrandomstuff.gen;
import cpw.mods.fml.common.IWorldGenerator;
import cpw.mods.fml.common.registry.GameRegistry;
import net.minecraft.block.Block;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.block.state.IBlockState;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;
import net.minecraft.world.chunk.IChunkProvider;
import net.minecraft.world.gen.feature.WorldGenMinable;
import net.minecraftforge.fml.common.IWorldGenerator;
import net.minecraftforge.fml.common.registry.GameRegistry;
import java.util.Random;
public class OreGen implements IWorldGenerator {
public class OreGen implements IWorldGenerator{
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider){
switch (world.provider.dimensionId){
switch (world.provider.getDimensionId()){
case -1:
generateNether(world, random, chunkX*16, chunkZ*16);
case 0:
@ -36,17 +38,18 @@ public class OreGen implements IWorldGenerator {
}
public void addOreSpawn(Block block, int meta, Block blockIn, World world, Random random, int blockXPos, int blockZPos, int maxVeinSize, int chancesToSpawn, int minY, int maxY){
public void addOreSpawn(IBlockState state, World world, Random random, int blockXPos, int blockZPos, int maxVeinSize, int chancesToSpawn, int minY, int maxY){
int yDiff = maxY - minY;
for(int i = 0; i < chancesToSpawn; i++){
int posX = blockXPos + random.nextInt(16);
int posY = minY + random.nextInt(yDiff);
int posZ = blockZPos + random.nextInt(16);
(new WorldGenMinable(block, meta, maxVeinSize, blockIn)).generate(world, random, posX, posY, posZ);
(new WorldGenMinable(state, maxVeinSize)).generate(world, random, new BlockPos(posX, posY, posZ));
}
}
public static void init(){
Util.logInfo("Registering World Generator...");
GameRegistry.registerWorldGenerator(new OreGen(), 0);
}
}

View file

@ -1,16 +1,18 @@
package ellpeck.someprettyrandomstuff.inventory;
import cpw.mods.fml.common.network.IGuiHandler;
import cpw.mods.fml.common.network.NetworkRegistry;
import ellpeck.someprettyrandomstuff.SPTS;
import ellpeck.someprettyrandomstuff.SPRS;
import ellpeck.someprettyrandomstuff.tile.TileEntityBase;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.fml.common.network.IGuiHandler;
import net.minecraftforge.fml.common.network.NetworkRegistry;
public class GuiHandler implements IGuiHandler {
public class GuiHandler implements IGuiHandler{
public Object getServerGuiElement(int id, EntityPlayer entityPlayer, World world, int x, int y, int z) {
TileEntityBase tile = (TileEntityBase)world.getTileEntity(x, y, z);
TileEntityBase tile = (TileEntityBase)world.getTileEntity(new BlockPos(x, y, z));
switch (id) {
default:
return null;
@ -18,7 +20,7 @@ public class GuiHandler implements IGuiHandler {
}
public Object getClientGuiElement(int id, EntityPlayer entityPlayer, World world, int x, int y, int z) {
TileEntityBase tile = (TileEntityBase)world.getTileEntity(x, y, z);
TileEntityBase tile = (TileEntityBase)world.getTileEntity(new BlockPos(x, y, z));
switch (id) {
default:
return null;
@ -26,6 +28,7 @@ public class GuiHandler implements IGuiHandler {
}
public static void init(){
NetworkRegistry.INSTANCE.registerGuiHandler(SPTS.instance, new GuiHandler());
Util.logInfo("Initializing GuiHandler...");
NetworkRegistry.INSTANCE.registerGuiHandler(SPRS.instance, new GuiHandler());
}
}

View file

@ -1,15 +1,18 @@
package ellpeck.someprettyrandomstuff.items;
import cpw.mods.fml.common.registry.GameRegistry;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.item.Item;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class InitItems{
public static Item itemFertilizer;
public static Item itemMisc;
public static Item itemFoods;
public static Item itemKnife;
public static void init(){
Util.logInfo("Initializing Items...");
itemFertilizer = new ItemFertilizer();
GameRegistry.registerItem(itemFertilizer, itemFertilizer.getUnlocalizedName().substring(5));
@ -19,5 +22,8 @@ public class InitItems{
itemFoods = new ItemFoods();
GameRegistry.registerItem(itemFoods, itemFoods.getUnlocalizedName().substring(5));
itemKnife = new ItemKnife();
GameRegistry.registerItem(itemKnife, itemKnife.getUnlocalizedName().substring(5));
}
}

View file

@ -1,15 +1,16 @@
package ellpeck.someprettyrandomstuff.items;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemDye;
import net.minecraft.item.ItemStack;
import net.minecraft.util.BlockPos;
import net.minecraft.util.EnumFacing;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
@ -20,12 +21,12 @@ public class ItemFertilizer extends Item{
this.setCreativeTab(CreativeTab.instance);
}
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int par7, float par8, float par9, float par10) {
if(ItemDye.applyBonemeal(stack, world, x, y, z, player)){
if(!world.isRemote) world.playAuxSFX(2005, x, y, z, 0);
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, BlockPos blockPos, EnumFacing side, float hitX, float hitY, float hitZ) {
if(ItemDye.applyBonemeal(stack, world, blockPos, player)){
if(!world.isRemote) world.playAuxSFX(2005, blockPos, 0);
return true;
}
return super.onItemUse(stack, player, world, x, y, z, par7, par8, par9, par10);
return super.onItemUse(stack, player, world, blockPos, side, hitX, hitY, hitZ);
}
@SuppressWarnings("unchecked")
@ -33,9 +34,4 @@ public class ItemFertilizer extends Item{
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean isHeld) {
list.add(Util.addStandardInformation(this));
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
this.itemIcon = iconReg.registerIcon(Util.MOD_ID + ":" + this.getUnlocalizedName().substring(5));
}
}

View file

@ -1,11 +1,8 @@
package ellpeck.someprettyrandomstuff.items;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.items.metalists.TheFoods;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
@ -13,52 +10,47 @@ import net.minecraft.item.EnumAction;
import net.minecraft.item.Item;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
public class ItemFoods extends ItemFood{
private final TheFoods[] allFoods = TheFoods.values();
public static final TheFoods[] allFoods = TheFoods.values();
public ItemFoods(){
super(0, 0.0F, false);
this.setUnlocalizedName("itemFood");
this.setHasSubtypes(true);
this.setMaxDamage(0);
this.setCreativeTab(CreativeTab.instance);
this.setAlwaysEdible();
TheFoods.setReturnItems();
}
public int func_150905_g(ItemStack stack){
public int getHealAmount(ItemStack stack){
return allFoods[stack.getItemDamage()].healAmount;
}
public float func_150906_h(ItemStack stack){
public float getSaturationModifier(ItemStack stack){
return allFoods[stack.getItemDamage()].saturation;
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
for(TheFoods theFood : allFoods){
theFood.theIcon = iconReg.registerIcon(Util.MOD_ID + ":" + this.getUnlocalizedName().substring(5) + theFood.name);
}
}
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamage(int par1){
return allFoods[par1].theIcon;
}
public EnumAction getItemUseAction(ItemStack stack){
return allFoods[stack.getItemDamage()].getsDrunken ? EnumAction.drink : EnumAction.eat;
return allFoods[stack.getItemDamage()].getsDrunken ? EnumAction.DRINK : EnumAction.EAT;
}
public int getMaxItemUseDuration(ItemStack stack){
return allFoods[stack.getItemDamage()].useDuration;
}
public int getMetadata(int damage){
return damage;
}
@SuppressWarnings("all")
@SideOnly(Side.CLIENT)
public void getSubItems(Item item, CreativeTabs tab, List list){
@ -71,14 +63,14 @@ public class ItemFoods extends ItemFood{
return this.getUnlocalizedName() + allFoods[stack.getItemDamage()].name;
}
public ItemStack onEaten(ItemStack stack, World world, EntityPlayer player){
ItemStack stackToReturn = super.onEaten(stack, world, player);
public ItemStack onItemUseFinish(ItemStack stack, World world, EntityPlayer player){
ItemStack stackToReturn = super.onItemUseFinish(stack, world, player);
ItemStack returnItem = allFoods[stack.getItemDamage()].returnItem;
if (returnItem != null){
if(!player.inventory.addItemStackToInventory(returnItem.copy())){
if(!world.isRemote){
EntityItem entityItem = new EntityItem(player.worldObj, player.posX, player.posY, player.posZ, returnItem.copy());
entityItem.delayBeforeCanPickup = 0;
entityItem.setPickupDelay(0);
player.worldObj.spawnEntityInWorld(entityItem);
}
}

View file

@ -0,0 +1,11 @@
package ellpeck.someprettyrandomstuff.items;
import ellpeck.someprettyrandomstuff.items.tools.ItemSwordSPTS;
public class ItemKnife extends ItemSwordSPTS{
public ItemKnife(){
super(ToolMaterial.STONE, "itemKnife");
this.setContainerItem(this);
}
}

View file

@ -1,23 +1,21 @@
package ellpeck.someprettyrandomstuff.items;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.items.metalists.TheMiscItems;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.util.StatCollector;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
public class ItemMisc extends Item{
private final TheMiscItems[] allMiscItems = TheMiscItems.values();
public static final TheMiscItems[] allMiscItems = TheMiscItems.values();
public ItemMisc(){
this.setUnlocalizedName("itemMisc");
@ -25,22 +23,14 @@ public class ItemMisc extends Item{
this.setCreativeTab(CreativeTab.instance);
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
for(TheMiscItems theMisc : allMiscItems){
theMisc.theIcon = iconReg.registerIcon(Util.MOD_ID + ":" + this.getUnlocalizedName().substring(5) + theMisc.name);
}
}
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamage(int par1){
return allMiscItems[par1].theIcon;
public int getMetadata(int damage){
return damage;
}
@SuppressWarnings("all")
@SideOnly(Side.CLIENT)
public void getSubItems(Item item, CreativeTabs tab, List list){
for (int j = 0; j < allMiscItems.length; j++){
for(int j = 0; j < allMiscItems.length; j++){
list.add(new ItemStack(this, 1, j));
}
}

View file

@ -1,46 +1,53 @@
package ellpeck.someprettyrandomstuff.items.metalists;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.items.InitItems;
import ellpeck.someprettyrandomstuff.util.IItemEnum;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
public enum TheFoods{
public enum TheFoods implements IItemEnum{
CHEESE("Cheese", 1, 0.1F, false, 3, null),
PUMPKIN_STEW("PumpkinStew", 10, 0.4F, true, 30, new ItemStack(Items.bowl)),
CARROT_JUICE("CarrotJuice", 6, 0.2F, true, 20, new ItemStack(Items.glass_bottle)),
FISH_N_CHIPS("FishNChips", 20, 1F, false, 40, new ItemStack(InitItems.itemMisc, 1, TheMiscItems.PAPER_CONE.ordinal())),
FRENCH_FRIES("FrenchFries", 16, 0.7F, false, 32, new ItemStack(InitItems.itemMisc, 1, TheMiscItems.PAPER_CONE.ordinal())),
FRENCH_FRY("FrenchFry", 1, 0.01F, false, 3, null),
SPAGHETTI("Spaghetti", 18, 0.8F, false, 38, new ItemStack(Items.bowl)),
NOODLE("Noodle", 1, 0.01F, false, 3, null),
CHOCOLATE_CAKE("ChocolateCake", 16, 0.45F, false, 45, null),
CHOCOLATE("Chocolate", 5, 0.05F, false, 15, null),
TOAST("Toast", 7, 0.4F, false, 25, null),
SUBMARINE_SANDWICH("SubmarineSandwich", 10, 0.7F, false, 40, null),
BIG_COOKIE("BigCookie", 6, 0.1F, false, 20, null),
HAMBURGER("Hamburger", 14, 0.9F, false, 40, null),
PIZZA("Pizza", 20, 1F, false, 45, null),
BAGUETTE("Baguette", 7, 0.2F, false, 25, null);
CHEESE("Cheese", 1, 0.1F, false, 3),
PUMPKIN_STEW("PumpkinStew", 10, 0.4F, true, 30),
CARROT_JUICE("CarrotJuice", 6, 0.2F, true, 20),
FISH_N_CHIPS("FishNChips", 20, 1F, false, 40),
FRENCH_FRIES("FrenchFries", 16, 0.7F, false, 32),
FRENCH_FRY("FrenchFry", 1, 0.01F, false, 3),
SPAGHETTI("Spaghetti", 18, 0.8F, false, 38),
NOODLE("Noodle", 1, 0.01F, false, 3),
CHOCOLATE_CAKE("ChocolateCake", 16, 0.45F, false, 45),
CHOCOLATE("Chocolate", 5, 0.05F, false, 15),
TOAST("Toast", 7, 0.4F, false, 25),
SUBMARINE_SANDWICH("SubmarineSandwich", 10, 0.7F, false, 40),
BIG_COOKIE("BigCookie", 6, 0.1F, false, 20),
HAMBURGER("Hamburger", 14, 0.9F, false, 40),
PIZZA("Pizza", 20, 1F, false, 45),
BAGUETTE("Baguette", 7, 0.2F, false, 25);
public static void setReturnItems(){
SPAGHETTI.returnItem = new ItemStack(Items.bowl);
PUMPKIN_STEW.returnItem = new ItemStack(Items.bowl);
CARROT_JUICE.returnItem = new ItemStack(Items.glass_bottle);
FRENCH_FRIES.returnItem = new ItemStack(InitItems.itemMisc, 1, TheMiscItems.PAPER_CONE.ordinal());
FISH_N_CHIPS.returnItem = new ItemStack(InitItems.itemMisc, 1, TheMiscItems.PAPER_CONE.ordinal());
}
public final String name;
public final int healAmount;
public final float saturation;
public final boolean getsDrunken;
public final int useDuration;
public final ItemStack returnItem;
@SideOnly(Side.CLIENT)
public IIcon theIcon;
public ItemStack returnItem;
private TheFoods(String name, int healAmount, float saturation, boolean getsDrunken, int useDuration, ItemStack returnItem){
private TheFoods(String name, int healAmount, float saturation, boolean getsDrunken, int useDuration){
this.name = name;
this.getsDrunken = getsDrunken;
this.healAmount = healAmount;
this.saturation = saturation;
this.useDuration = useDuration;
this.returnItem = returnItem;
}
public String getName(){
return this.name;
}
}

View file

@ -1,10 +1,8 @@
package ellpeck.someprettyrandomstuff.items.metalists;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.util.IIcon;
import ellpeck.someprettyrandomstuff.util.IItemEnum;
public enum TheMiscItems{
public enum TheMiscItems implements IItemEnum{
PAPER_CONE("PaperCone"),
MASHED_FOOD("MashedFood"),
@ -12,13 +10,17 @@ public enum TheMiscItems{
REFINED_REDSTONE("RefinedRedstone"),
COMPRESSED_IRON("CompressedIron"),
STEEL("Steel"),
KNIFE_BLADE("KnifeBlade"),
KNIFE_HANDLE("KnifeHandle"),
DOUGH("Dough");
public final String name;
@SideOnly(Side.CLIENT)
public IIcon theIcon;
private TheMiscItems(String name){
this.name = name;
}
public String getName(){
return this.name;
}
}

View file

@ -1,13 +1,12 @@
package ellpeck.someprettyrandomstuff.items.tools;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemAxe;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
@ -24,9 +23,4 @@ public class ItemAxeSPTS extends ItemAxe{
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean isHeld) {
Util.addStandardInformation(this);
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
this.itemIcon = iconReg.registerIcon(Util.MOD_ID + ":" + this.getUnlocalizedName().substring(5));
}
}

View file

@ -1,13 +1,12 @@
package ellpeck.someprettyrandomstuff.items.tools;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemHoe;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
@ -24,9 +23,4 @@ public class ItemHoeSPTS extends ItemHoe{
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean isHeld){
Util.addStandardInformation(this);
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
this.itemIcon = iconReg.registerIcon(Util.MOD_ID + ":" + this.getUnlocalizedName().substring(5));
}
}

View file

@ -1,13 +1,12 @@
package ellpeck.someprettyrandomstuff.items.tools;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemPickaxe;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
@ -24,9 +23,4 @@ public class ItemPickaxeSPTS extends ItemPickaxe{
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean isHeld) {
Util.addStandardInformation(this);
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
this.itemIcon = iconReg.registerIcon(Util.MOD_ID + ":" + this.getUnlocalizedName().substring(5));
}
}

View file

@ -1,13 +1,12 @@
package ellpeck.someprettyrandomstuff.items.tools;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemSpade;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
@ -24,9 +23,4 @@ public class ItemShovelSPTS extends ItemSpade{
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean isHeld) {
Util.addStandardInformation(this);
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
this.itemIcon = iconReg.registerIcon(Util.MOD_ID + ":" + this.getUnlocalizedName().substring(5));
}
}

View file

@ -1,13 +1,12 @@
package ellpeck.someprettyrandomstuff.items.tools;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.someprettyrandomstuff.creative.CreativeTab;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemSword;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
@ -21,12 +20,7 @@ public class ItemSwordSPTS extends ItemSword{
@SuppressWarnings("unchecked")
@SideOnly(Side.CLIENT)
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean isHeld) {
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean isHeld){
Util.addStandardInformation(this);
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
this.itemIcon = iconReg.registerIcon(Util.MOD_ID + ":" + this.getUnlocalizedName().substring(5));
}
}

View file

@ -1,20 +1,31 @@
package ellpeck.someprettyrandomstuff.proxy;
import ellpeck.someprettyrandomstuff.blocks.renderer.RenderRegistry;
import ellpeck.someprettyrandomstuff.blocks.InitBlocks;
import ellpeck.someprettyrandomstuff.items.InitItems;
import ellpeck.someprettyrandomstuff.items.ItemFoods;
import ellpeck.someprettyrandomstuff.items.ItemMisc;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.item.Item;
@SuppressWarnings("unused")
public class ClientProxy implements IProxy{
public void preInit(){
Util.logInfo("PreInitializing Textures...");
Util.preInitIcons(InitItems.itemMisc, ItemMisc.allMiscItems);
Util.preInitIcons(InitItems.itemFoods, ItemFoods.allFoods);
}
public void init(){
RenderRegistry.init();
Util.logInfo("Initializing Textures...");
Util.initIcons(InitItems.itemMisc, ItemMisc.allMiscItems);
Util.initIcons(InitItems.itemFoods, ItemFoods.allFoods);
Util.initIcons(InitItems.itemFertilizer);
Util.initIcons(Item.getItemFromBlock(InitBlocks.blockCompost));
}
public void postInit(){
Util.logInfo("PostInitializing Textures...");
}
}

View file

@ -1,16 +1,19 @@
package ellpeck.someprettyrandomstuff.proxy;
import ellpeck.someprettyrandomstuff.util.Util;
@SuppressWarnings("unused")
public class ServerProxy implements IProxy{
public void preInit() {
public void preInit(){
Util.logInfo("PreInitializing ServerProxy...");
}
public void init() {
public void init(){
Util.logInfo("Initializing ServerProxy...");
}
public void postInit() {
public void postInit(){
Util.logInfo("PostInitializing ServerProxy...");
}
}

View file

@ -1,25 +1,28 @@
package ellpeck.someprettyrandomstuff.tile;
import ellpeck.someprettyrandomstuff.util.Util;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.NetworkManager;
import net.minecraft.network.Packet;
import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class TileEntityBase extends TileEntity{
public abstract class TileEntityBase extends TileEntity{
public Packet getDescriptionPacket(){
NBTTagCompound compound = new NBTTagCompound();
this.writeToNBT(compound);
return new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, this.getBlockMetadata(), compound);
return new S35PacketUpdateTileEntity(this.getPos(), this.getBlockMetadata(), compound);
}
public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity packet){
super.onDataPacket(net, packet);
this.readFromNBT(packet.func_148857_g());
this.readFromNBT(packet.getNbtCompound());
}
public static void init(){
Util.logInfo("Registering TileEntities...");
GameRegistry.registerTileEntity(TileEntityCompost.class, Util.MOD_ID + ":tileEntityCompost");
}
}

View file

@ -0,0 +1,80 @@
package ellpeck.someprettyrandomstuff.tile;
import ellpeck.someprettyrandomstuff.config.ConfigValues;
import ellpeck.someprettyrandomstuff.items.InitItems;
import ellpeck.someprettyrandomstuff.items.ItemFertilizer;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.gui.IUpdatePlayerListBox;
import net.minecraft.util.IChatComponent;
public class TileEntityCompost extends TileEntityInventoryBase implements IUpdatePlayerListBox{
public final int amountNeededToConvert = ConfigValues.tileEntityCompostAmountNeededToConvert;
public final int conversionTimeNeeded = ConfigValues.tileEntityCompostConversionTimeNeeded;
public int conversionTime;
public TileEntityCompost(){
this.slots = new ItemStack[1];
}
public void update(){
if(!worldObj.isRemote){
if(this.slots[0] != null && !(this.slots[0].getItem() instanceof ItemFertilizer) && this.slots[0].stackSize >= this.amountNeededToConvert){
this.conversionTime++;
if(this.conversionTime >= this.conversionTimeNeeded){
this.slots[0] = new ItemStack(InitItems.itemFertilizer, this.amountNeededToConvert);
this.conversionTime = 0;
}
}
}
}
public void writeToNBT(NBTTagCompound compound){
super.writeToNBT(compound);
compound.setInteger("ConversionTime", this.conversionTime);
}
public void readFromNBT(NBTTagCompound compound){
super.readFromNBT(compound);
this.conversionTime = compound.getInteger("ConversionTime");
}
public void openInventory(EntityPlayer player){
}
public void closeInventory(EntityPlayer player){
}
public int getField(int id){
return 0;
}
public void setField(int id, int value){
}
public int getFieldCount(){
return 0;
}
public void clear(){
}
public String getName(){
return null;
}
public boolean hasCustomName(){
return false;
}
public IChatComponent getDisplayName(){
return null;
}
}

View file

@ -1,12 +1,12 @@
package ellpeck.someprettyrandomstuff.tile;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.ISidedInventory;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
public abstract class TileEntityInventoryBase extends TileEntityBase implements ISidedInventory{
public abstract class TileEntityInventoryBase extends TileEntityBase implements IInventory{
public ItemStack slots[];
@ -36,36 +36,12 @@ public abstract class TileEntityInventoryBase extends TileEntityBase implements
}
}
public int[] getAccessibleSlotsFromSide(int side) {
return new int[0];
}
public boolean canInsertItem(int par1, ItemStack stack, int par3) {
return false;
}
public boolean canExtractItem(int par1, ItemStack stack, int par3) {
return false;
}
public boolean hasCustomInventoryName() {
return false;
}
public int getInventoryStackLimit() {
return 64;
}
public boolean isUseableByPlayer(EntityPlayer player) {
return worldObj.getTileEntity(xCoord, yCoord, zCoord) == this && player.getDistanceSq(xCoord + 0.5D, yCoord + 0.5D, zCoord + 0.5D) <= 64;
}
public void openInventory() {
}
public void closeInventory() {
return worldObj.getTileEntity(this.getPos()) == this && player.getDistanceSq(this.getPos().getX() + 0.5D, this.getPos().getY() + 0.5D, this.getPos().getZ() + 0.5D) <= 64;
}
public boolean isItemValidForSlot(int i, ItemStack stack) {

View file

@ -0,0 +1,7 @@
package ellpeck.someprettyrandomstuff.util;
public interface IItemEnum{
public abstract String getName();
}

View file

@ -1,26 +1,38 @@
package ellpeck.someprettyrandomstuff.util;
import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.model.ModelBakery;
import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraft.util.StatCollector;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.oredict.OreDictionary;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.lwjgl.input.Keyboard;
@SuppressWarnings("unused")
public class Util{
public static final String MOD_ID = "someprettyrandomstuff";
public static final String NAME = "SomePrettyRandomStuff";
public static final String VERSION = "1.7.10-0.0.1";
public static final String MOD_ID = "SomePrettyRandomStuff";
public static final String NAME = "Some Pretty Random Stuff";
public static final String VERSION = "1.8-0.0.1";
public static final Logger SPRS_LOGGER = LogManager.getLogger(MOD_ID);
public static final int WILDCARD = OreDictionary.WILDCARD_VALUE;
public static boolean isShiftPressed(){
return Keyboard.isKeyDown(Keyboard.KEY_LSHIFT) || Keyboard.isKeyDown(Keyboard.KEY_RSHIFT);
}
@SuppressWarnings("unused")
public static boolean isControlPressed(){
return Keyboard.isKeyDown(Keyboard.KEY_LCONTROL) || Keyboard.isKeyDown(Keyboard.KEY_RCONTROL);
}
public static String shiftForInfo() {
public static String shiftForInfo(){
return (char)167+"2" + (char)167+"o" + StatCollector.translateToLocal("tooltip.shiftForInfo.desc");
}
@ -28,4 +40,30 @@ public class Util{
if(isShiftPressed()) return StatCollector.translateToLocal("tooltip." + item.getUnlocalizedName().substring(5) + ".desc");
else return shiftForInfo();
}
public static void preInitIcons(Item item, IItemEnum[] theArray){
String[] bakeryArray = new String[theArray.length];
for (int j = 0; j < theArray.length; j++){
bakeryArray[j] = Util.MOD_ID + ":" + item.getUnlocalizedName().substring(5) + theArray[j].getName();
}
ModelBakery.addVariantName(item, bakeryArray);
}
public static void initIcons(Item item, IItemEnum[] theArray){
for(int j = 0; j < theArray.length; j++){
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, j, new ModelResourceLocation(Util.MOD_ID + ":" + item.getUnlocalizedName().substring(5) + theArray[j].getName(), "inventory"));
}
}
public static void initIcons(Item item){
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(Util.MOD_ID + ":" + item.getUnlocalizedName().substring(5), "inventory"));
}
public static void logInfo(String text){
SPRS_LOGGER.log(Level.INFO, text);
}
public static boolean isClientSide(){
return FMLCommonHandler.instance().getEffectiveSide() == Side.CLIENT;
}
}

View file

@ -0,0 +1,5 @@
{
"variants": {
"normal": { "model": "someprettyrandomstuff:blockCompost" }
}
}

View file

@ -1,4 +1,7 @@
itemGroup.someprettytechystuff=SomePrettyTechyStuff
itemGroup.SomePrettyRandomStuff=SomePrettyRandomStuff
achievement.page.SomePrettyRandomStuff=SomePrettyRandomStuff
tile.blockCompost.name=Compost
item.itemMiscMashedFood.name=Mashed Food
item.itemMiscRefinedIron.name=Refined Iron
@ -30,6 +33,8 @@ tooltip.shiftForInfo.desc=Press Shift for Info
tooltip.hunger.desc=Fills
tooltip.saturation.desc=Saturation
tooltip.blockCompost.desc=Used to make Fertilizer with Mashed Food
tooltip.itemMiscMashedFood.desc=Used to make Fertilizer
tooltip.itemMiscRefinedIron.desc=Iron, but better
tooltip.itemMiscRefinedRedstone.desc=Redstone, but better
@ -55,3 +60,24 @@ tooltip.itemFoodFishNChips.desc=It's Fish. It's Chips. Or French Fries. Whatevs.
tooltip.itemFoodCarrotJuice.desc=Carrots, but pressed!
tooltip.itemFoodPumpkinStew.desc=Like Mushroom Stew or Rabbit Stew, but pumpykinny.
tooltip.itemFoodCheese.desc=Cheese.
achievement.smeltBaguette=Better than Bread!
achievement.smeltBaguette.desc=Bake a Baguette
achievement.craftDough=Knead, knead!
achievement.craftDough.desc=Craft some Dough
achievement.craftCompost=Throw it all in!
achievement.craftCompost.desc=Craft a Compost
achievement.craftFertilizer=Better than Bone Meal!
achievement.craftFertilizer.desc=Make Fertilizer
achievement.craftSubSandwich=Metro, Underground, Tube, Nom!
achievement.craftSubSandwich.desc=Craft a Submarine Sandwich
achievement.craftPaperCone=Witch's hat!
achievement.craftPaperCone.desc=Craft a Paper Cone
achievement.craftFrenchFry=Just the single one...
achievement.craftFrenchFry.desc=Craft a French Fry
achievement.craftFrenchFries=French Fires?
achievement.craftFrenchFries.desc=Craft French Fries
achievement.craftFishNChips=It's Fish! It's Chips!
achievement.craftFishNChips.desc=Craft Fish 'N' Chips
achievement.craftMashedFood=Munch munch munch!
achievement.craftMashedFood.desc=Craft Mashed Food

View file

@ -0,0 +1,154 @@
{
"textures": {
"particle": "someprettyrandomstuff:blocks/blockCompostInside",
"top": "someprettyrandomstuff:blocks/blockCompostTop",
"bottom": "someprettyrandomstuff:blocks/blockCompostBottom",
"side": "someprettyrandomstuff:blocks/blockCompostSide",
"inside": "someprettyrandomstuff:blocks/blockCompostInside"
},
"elements": [
{ "from": [ 0, 3, 0 ],
"to": [ 2, 16, 16 ],
"faces": {
"down": { "uv": [ 0, 0, 2, 16 ], "texture": "#inside", "cullface": "down" },
"up": { "uv": [ 0, 0, 2, 16 ], "texture": "#top", "cullface": "up" },
"north": { "uv": [ 2, 0, 0, 13 ], "texture": "#side", "cullface": "north" },
"south": { "uv": [ 0, 0, 2, 13 ], "texture": "#side", "cullface": "south" },
"west": { "uv": [ 0, 0, 16, 13 ], "texture": "#side", "cullface": "west" },
"east": { "uv": [ 0, 0, 16, 13 ], "texture": "#side" }
}
},
{ "from": [ 2, 3, 2 ],
"to": [ 14, 4, 14 ],
"faces": {
"down": { "uv": [ 2, 2, 14, 14 ], "texture": "#inside", "cullface": "down" },
"up": { "uv": [ 2, 2, 14, 14 ], "texture": "#inside", "cullface": "up" },
"north": { "uv": [ 2, 0, 0, 13 ], "texture": "#side", "cullface": "north" },
"south": { "uv": [ 0, 0, 2, 13 ], "texture": "#side", "cullface": "south" },
"west": { "uv": [ 0, 0, 16, 13 ], "texture": "#side", "cullface": "west" },
"east": { "uv": [ 0, 0, 16, 13 ], "texture": "#side", "cullface": "east" }
}
},
{ "from": [ 14, 3, 0 ],
"to": [ 16, 16, 16 ],
"faces": {
"down": { "uv": [ 14, 0, 16, 16 ], "texture": "#inside", "cullface": "down" },
"up": { "uv": [ 14, 0, 16, 16 ], "texture": "#top", "cullface": "up" },
"north": { "uv": [ 16, 0, 14, 13 ], "texture": "#side", "cullface": "north" },
"south": { "uv": [ 14, 0, 16, 13 ], "texture": "#side", "cullface": "south" },
"west": { "uv": [ 0, 0, 16, 13 ], "texture": "#side" },
"east": { "uv": [ 0, 0, 16, 13 ], "texture": "#side", "cullface": "east" }
}
},
{ "from": [ 2, 3, 0 ],
"to": [ 14, 16, 2 ],
"faces": {
"down": { "uv": [ 2, 0, 14, 2 ], "texture": "#inside", "cullface": "down" },
"up": { "uv": [ 2, 0, 14, 2 ], "texture": "#top", "cullface": "up" },
"north": { "uv": [ 2, 0, 14, 13 ], "texture": "#side", "cullface": "north" },
"south": { "uv": [ 2, 0, 14, 13 ], "texture": "#side" },
"west": { "uv": [ 0, 0, 2, 13 ], "texture": "#side", "cullface": "west" },
"east": { "uv": [ 0, 0, 2, 13 ], "texture": "#side", "cullface": "east" }
}
},
{ "from": [ 2, 3, 14 ],
"to": [ 14, 16, 16 ],
"faces": {
"down": { "uv": [ 2, 14, 14, 16 ], "texture": "#inside", "cullface": "down" },
"up": { "uv": [ 2, 14, 14, 16 ], "texture": "#top", "cullface": "up" },
"north": { "uv": [ 2, 0, 14, 13 ], "texture": "#side" },
"south": { "uv": [ 2, 0, 14, 13 ], "texture": "#side", "cullface": "south" },
"west": { "uv": [ 14, 0, 16, 13 ], "texture": "#side", "cullface": "west" },
"east": { "uv": [ 14, 0, 16, 13 ], "texture": "#side", "cullface": "east" }
}
},
{ "from": [ 0, 0, 0 ],
"to": [ 4, 3, 2 ],
"faces": {
"down": { "uv": [ 0, 0, 4, 2 ], "texture": "#bottom", "cullface": "down" },
"up": { "uv": [ 0, 0, 2, 16 ], "texture": "#top", "cullface": "up" },
"north": { "uv": [ 4, 13, 0, 16 ], "texture": "#side", "cullface": "north" },
"south": { "uv": [ 0, 13, 4, 16 ], "texture": "#side", "cullface": "south" },
"west": { "uv": [ 0, 13, 2, 16 ], "texture": "#side", "cullface": "west" },
"east": { "uv": [ 0, 13, 2, 16 ], "texture": "#side", "cullface": "east" }
}
},
{ "from": [ 0, 0, 2 ],
"to": [ 2, 3, 4 ],
"faces": {
"down": { "uv": [ 0, 2, 2, 4 ], "texture": "#bottom", "cullface": "down" },
"up": { "uv": [ 0, 0, 2, 16 ], "texture": "#top", "cullface": "up" },
"north": { "uv": [ 2, 13, 0, 16 ], "texture": "#side", "cullface": "north" },
"south": { "uv": [ 0, 13, 2, 16 ], "texture": "#side", "cullface": "south" },
"west": { "uv": [ 2, 13, 4, 16 ], "texture": "#side", "cullface": "west" },
"east": { "uv": [ 2, 13, 4, 16 ], "texture": "#side", "cullface": "east" }
}
},
{ "from": [ 12, 0, 0 ],
"to": [ 16, 3, 2 ],
"faces": {
"down": { "uv": [ 12, 0, 16, 2 ], "texture": "#bottom", "cullface": "down" },
"up": { "uv": [ 0, 0, 2, 16 ], "texture": "#top", "cullface": "up" },
"north": { "uv": [ 16, 13, 12, 16 ], "texture": "#side", "cullface": "north" },
"south": { "uv": [ 12, 13, 16, 16 ], "texture": "#side", "cullface": "south" },
"west": { "uv": [ 0, 13, 2, 16 ], "texture": "#side", "cullface": "west" },
"east": { "uv": [ 0, 13, 2, 16 ], "texture": "#side", "cullface": "east" }
}
},
{ "from": [ 14, 0, 2 ],
"to": [ 16, 3, 4 ],
"faces": {
"down": { "uv": [ 14, 2, 16, 4 ], "texture": "#bottom" },
"up": { "uv": [ 0, 0, 2, 16 ], "texture": "#top" },
"north": { "uv": [ 16, 13, 14, 16 ], "texture": "#side" },
"south": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" },
"west": { "uv": [ 4, 13, 2, 16 ], "texture": "#side" },
"east": { "uv": [ 4, 13, 2, 16 ], "texture": "#side" }
}
},
{ "from": [ 0, 0, 14 ],
"to": [ 4, 3, 16 ],
"faces": {
"down": { "uv": [ 14, 0, 16, 4 ], "texture": "#bottom" },
"up": { "uv": [ 14, 0, 16, 16 ], "texture": "#top" },
"north": { "uv": [ 4, 13, 0, 16 ], "texture": "#side" },
"south": { "uv": [ 0, 13, 4, 16 ], "texture": "#side" },
"west": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" },
"east": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" }
}
},
{ "from": [ 0, 0, 12 ],
"to": [ 2, 3, 14 ],
"faces": {
"down": { "uv": [ 12, 0, 14, 4 ], "texture": "#bottom" },
"up": { "uv": [ 14, 0, 16, 16 ], "texture": "#top" },
"north": { "uv": [ 2, 13, 0, 16 ], "texture": "#side" },
"south": { "uv": [ 0, 13, 2, 16 ], "texture": "#side" },
"west": { "uv": [ 12, 13, 14, 16 ], "texture": "#side" },
"east": { "uv": [ 12, 13, 14, 16 ], "texture": "#side" }
}
},
{ "from": [ 12, 0, 14 ],
"to": [ 16, 3, 16 ],
"faces": {
"down": { "uv": [ 14, 12, 16, 16 ], "texture": "#bottom" },
"up": { "uv": [ 14, 0, 16, 16 ], "texture": "#top" },
"north": { "uv": [ 16, 13, 12, 16 ], "texture": "#side" },
"south": { "uv": [ 12, 13, 16, 16 ], "texture": "#side" },
"west": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" },
"east": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" }
}
},
{ "from": [ 14, 0, 12 ],
"to": [ 16, 3, 14 ],
"faces": {
"down": { "uv": [ 14, 12, 16, 14 ], "texture": "#bottom" },
"up": { "uv": [ 14, 0, 16, 16 ], "texture": "#top" },
"north": { "uv": [ 16, 13, 14, 16 ], "texture": "#side" },
"south": { "uv": [ 14, 13, 16, 16 ], "texture": "#side" },
"west": { "uv": [ 14, 13, 12, 16 ], "texture": "#side" },
"east": { "uv": [ 14, 13, 12, 16 ], "texture": "#side" }
}
}
]
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/blockCompost"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFertilizer"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodBaguette"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodBigCookie"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodCarrotJuice"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodCheese"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodChocolate"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodChocolateCake"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodFishNChips"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodFrenchFries"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodFrenchFry"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodHamburger"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodNoodle"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodPizza"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodPumpkinStew"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodSpaghetti"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodSubmarineSandwich"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemFoodToast"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemMiscCompressedIron"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemMiscDough"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemMiscMashedFood"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemMiscPaperCone"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemMiscRefinedIron"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemMiscRefinedRedstone"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

View file

@ -0,0 +1,18 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "someprettyrandomstuff:items/itemMiscSteel"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 347 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B