当前位置: 首页>>代码示例>>Java>>正文


Java IFarmHousing类代码示例

本文整理汇总了Java中forestry.api.farming.IFarmHousing的典型用法代码示例。如果您正苦于以下问题:Java IFarmHousing类的具体用法?Java IFarmHousing怎么用?Java IFarmHousing使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


IFarmHousing类属于forestry.api.farming包,在下文中一共展示了IFarmHousing类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: maintainCrops

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
protected boolean maintainCrops(World world, IFarmHousing farmHousing, BlockPos pos, FarmDirection direction, int extent) {
	for (int i = 0; i < extent; i++) {
		BlockPos position = translateWithOffset(pos, direction, i);
		IBlockState state = world.getBlockState(position);
		if (!world.isAirBlock(position) && !BlockUtil.isReplaceableBlock(state, world, position)) {
			continue;
		}

		IBlockState groundState = world.getBlockState(position.down());
		if (isAcceptedGround(groundState)) {
			return trySetCrop(world, farmHousing, position);
		}
	}

	return false;
}
 
开发者ID:KillBait,项目名称:PrimordialCrops,代码行数:18,代码来源:PrimordialFarmLogicCrop.java

示例2: onInsertion

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
public void onInsertion(int slot, TileEntity tile) {
	if(!isCircuitable(tile))
		return;
	
	FarmLogic logic = null;
	try {
		logic = logicClass.getConstructor(new Class[] { IFarmHousing.class }).newInstance(new Object[] { (IFarmHousing)tile });
	} catch (Exception ex) {
		throw new RuntimeException("Failed to instantiate logic of class " + logicClass.getName()  + ": " + ex.getMessage());
	}
	
	if(logic != null) {
		if(isManual)
			logic.setManual(isManual);
		((IFarmHousing)tile).setFarmLogic(ForgeDirection.values()[slot + 2], logic);
	}
}
 
开发者ID:ForestryMC,项目名称:ForestryLegacy,代码行数:19,代码来源:CircuitFarmLogic.java

示例3: doWork

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
public void doWork() {
	
	if(activationDelay > 0) {
		activationDelay--;
		return;
	}

	// Hard limit to 4 cycles / second.
	if (worldObj.getWorldTime() % 5 * 10 != 0)
		return;

	ITileStructure central = getCentralTE();
	if(!(central instanceof IFarmHousing))
		return;
	
	if(((IFarmHousing)central).doWork()) {
		powerProvider.useEnergy(MIN_ACTIVATION_ENERGY, MIN_ACTIVATION_ENERGY, true);
		previousDelays = 0;
	} else {
		// If the central TE doesn't have work, we add to the activation delay to throttle the CPU usage.
		activationDelay = 10*previousDelays < 120 ? 10*previousDelays : 120;
		previousDelays++; // First delay is free!
	}
}
 
开发者ID:ForestryMC,项目名称:ForestryLegacy,代码行数:26,代码来源:TileGearbox.java

示例4: getCircuitable

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Nullable
private IFarmHousing getCircuitable(Object tile) {
	if (!isCircuitable(tile)) {
		return null;
	}
	return (IFarmHousing) tile;
}
 
开发者ID:KillBait,项目名称:PrimordialCrops,代码行数:8,代码来源:PrimordialCircuit.java

示例5: onRemoval

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
public void onRemoval(int slot, Object tile) {
	IFarmHousing farmHousing = getCircuitable(tile);
	if (farmHousing == null) {
		return;
	}

	farmHousing.resetFarmLogic(FarmDirection.values()[slot]);
}
 
开发者ID:KillBait,项目名称:PrimordialCrops,代码行数:10,代码来源:PrimordialCircuit.java

示例6: onInsertion

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
@SuppressWarnings("rawtypes")
public void onInsertion(int slot, Object tile) {
	IFarmHousing housing = getCircuitable(tile);
	if (housing == null)
		return;

	logic.setManual(false);
	housing.setFarmLogic(FarmDirection.values()[slot], logic);
}
 
开发者ID:TeamDmfMM,项目名称:Extra-Food,代码行数:11,代码来源:Circuit.java

示例7: onRemoval

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
public void onRemoval(int slot, Object tile) {
	if (!isCircuitable(tile))
		return;
	
	((IFarmHousing) tile).resetFarmLogic(FarmDirection.values()[slot]);
	
}
 
开发者ID:TeamDmfMM,项目名称:Extra-Food,代码行数:9,代码来源:Circuit.java

示例8: onRemoval

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
public void onRemoval(int slot, TileEntity tile) {
	if(!isCircuitable(tile))
		return;
	
	((IFarmHousing)tile).resetFarmLogic(ForgeDirection.values()[slot + 2]);
}
 
开发者ID:ForestryMC,项目名称:ForestryLegacy,代码行数:8,代码来源:CircuitFarmLogic.java

示例9: FarmLogicCrops

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
public FarmLogicCrops(IFarmHousing housing, IFarmable[] seeds) {
	super(housing,
			new ItemStack[] { new ItemStack(Block.dirt) },
			new ItemStack[] { new ItemStack(Block.tilledField) },
			new ItemStack[] { new ItemStack(Block.dirt), new ItemStack(Block.grass) });
	
	this.seeds = seeds;
}
 
开发者ID:ForestryMC,项目名称:ForestryLegacy,代码行数:9,代码来源:FarmLogicCrops.java

示例10: FarmLogicHomogenous

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
public FarmLogicHomogenous(IFarmHousing housing, ItemStack[] resource, ItemStack[] ground, ItemStack[] waste, IFarmable[] germlings) {
	super(housing);
	this.resource = resource;
	this.ground = ground;
	this.waste = waste;
	this.germlings = germlings;
}
 
开发者ID:ForestryMC,项目名称:ForestryLegacy,代码行数:8,代码来源:FarmLogicHomogenous.java

示例11: FarmLogicArboreal

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
public FarmLogicArboreal(IFarmHousing housing) {
	super(housing,
			new ItemStack[] { new ItemStack(Block.dirt) },
			new ItemStack[] { new ItemStack(ForestryBlock.soil.blockID, 1, 0), new ItemStack(ForestryBlock.soil.blockID, 1, -1) },
			new ItemStack[] { new ItemStack(Block.sand) },
			Farmables.farmables.get("farmArboreal").toArray(new IFarmable[0])
	);
}
 
开发者ID:ForestryMC,项目名称:ForestryLegacy,代码行数:9,代码来源:FarmLogicArboreal.java

示例12: FarmLogicInfernal

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
public FarmLogicInfernal(IFarmHousing housing) {
	super(housing,
			new ItemStack[] { new ItemStack(Block.slowSand) },
			new ItemStack[] { new ItemStack(Block.slowSand) },
			new ItemStack[0],
			Farmables.farmables.get("farmInfernal").toArray(new IFarmable[0]));
}
 
开发者ID:ForestryMC,项目名称:ForestryLegacy,代码行数:8,代码来源:FarmLogicInfernal.java

示例13: FarmLogicRubber

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
public FarmLogicRubber(IFarmHousing housing) {
	super(housing);
	if(PluginIC2.rubberwood == null || PluginIC2.resin == null) {
		Proxies.log.warning("Failed to init a farm logic %s since IC2 was not found", getClass().getName());
		inActive = true;
	}
}
 
开发者ID:ForestryMC,项目名称:ForestryLegacy,代码行数:8,代码来源:FarmLogicRubber.java

示例14: getFarmLogic

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
protected IFarmLogic getFarmLogic(IFarmHousing housing) throws Throwable{
    ArrayList<IFarmable> origList = (ArrayList<IFarmable>)Farmables.farmables.get("farmVegetables");
    ArrayList<IFarmable> backup = new ArrayList<IFarmable>(origList);
    origList.clear();
    origList.add(new FarmablePlastic(getBlock()));
    IFarmLogic logic = getLogicClass("FarmLogicVegetable").getConstructor(IFarmHousing.class).newInstance(housing);
    origList.clear();
    origList.addAll(backup);
    return logic;
}
 
开发者ID:MineMaarten,项目名称:PneumaticCraft,代码行数:12,代码来源:FarmLogicPlasticNormal.java

示例15: collect

import forestry.api.farming.IFarmHousing; //导入依赖的package包/类
@Override
public Collection<ItemStack> collect(World world, IFarmHousing farmHousing) {
	return null;
}
 
开发者ID:KillBait,项目名称:PrimordialCrops,代码行数:5,代码来源:PrimordialFarmLogic.java


注:本文中的forestry.api.farming.IFarmHousing类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。