/*
* Copyright (c) CovertJaguar, 2014 http://railcraft.info
*
* This code is the property of CovertJaguar
* and may only be used with explicit written
* permission unless otherwise specified on the
* license page at http://railcraft.info/wiki/info:license.
*/
package mods.railcraft.common.carts;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import mods.railcraft.common.core.RailcraftConfig;
import mods.railcraft.common.gui.EnumGui;
import mods.railcraft.common.gui.GuiHandler;
import mods.railcraft.common.util.misc.Game;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
/**
*
* @author CovertJaguar <http://www.railcraft.info>
*/
public class EntityCartWork extends CartBase {
public EntityCartWork(World world) {
super(world);
}
public EntityCartWork(World world, double d, double d1, double d2) {
this(world);
setPosition(d, d1 + (double) yOffset, d2);
motionX = 0.0D;
motionY = 0.0D;
motionZ = 0.0D;
prevPosX = d;
prevPosY = d1;
prevPosZ = d2;
}
@Override
public List<ItemStack> getItemsDropped() {
List<ItemStack> items = new ArrayList<ItemStack>();
if (RailcraftConfig.doCartsBreakOnDrop()) {
items.add(new ItemStack(Items.minecart));
items.add(new ItemStack(Blocks.crafting_table));
} else {
items.add(getCartItem());
}
return items;
}
@Override
public boolean doInteract(EntityPlayer entityplayer) {
if (Game.isHost(worldObj)) {
GuiHandler.openGui(EnumGui.CART_WORK, entityplayer, worldObj, this);
}
return true;
}
@Override
public boolean canBeRidden() {
return false;
}
@Override
public Block func_145820_n() {
return Blocks.crafting_table;
}
@Override
public double getDrag() {
return CartConstants.STANDARD_DRAG;
}
}