本文整理汇总了Java中dan200.computercraft.api.turtle.ITurtleAccess.getPeripheral方法的典型用法代码示例。如果您正苦于以下问题:Java ITurtleAccess.getPeripheral方法的具体用法?Java ITurtleAccess.getPeripheral怎么用?Java ITurtleAccess.getPeripheral使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类dan200.computercraft.api.turtle.ITurtleAccess
的用法示例。
在下文中一共展示了ITurtleAccess.getPeripheral方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: update
import dan200.computercraft.api.turtle.ITurtleAccess; //导入方法依赖的package包/类
@Override
public void update(ITurtleAccess turtle, TurtleSide side)
{
//CRMod.infoLog("chunky.update(): getUpgrade="+turtle.getUpgrade(side));
if(turtle.getWorld().isRemote)//on Client getPeripheral doesn't work (CC1.63pr3)
return;
IPeripheral p = turtle.getPeripheral(side);
if( p instanceof ChunkyPeripheral)
{
((ChunkyPeripheral) p).update();
}
else
{
if(p!=null)
ChunkyPeripherals.logger.error("update called on a turtle without chunky module ( p is "+p.getClass().getName()+")");
else
ChunkyPeripherals.logger.error("update called on a turtle without chunky module ( p is null )");
}
}
示例2: update
import dan200.computercraft.api.turtle.ITurtleAccess; //导入方法依赖的package包/类
@Override
public void update(ITurtleAccess turtle, TurtleSide side)
{
//update the chunky part of the peripheral
super.update(turtle,side);
//do what dan does
if(turtle.getWorld().isRemote)
return;
IPeripheral p = turtle.getPeripheral(side);
if( p!=null && p instanceof WirelessChunkyPeripheral)
{
Object subPeripheral = ((WirelessChunkyPeripheral)p).getSubPeripheral();
if((Boolean) CCReflectionHelper.invokeMethod(subPeripheral, true, "pollChanged"))
{
turtle.getUpgradeNBTData(side).setBoolean("active", (Boolean) CCReflectionHelper.invokeMethod(subPeripheral, true, "isActive"));
turtle.updateUpgradeNBTData(side);
}
}
else
{
if(p!=null)
ChunkyPeripherals.logger.error("update called on a turtle without wireless chunky module ( p is "+p.getClass().getName()+")");
else
ChunkyPeripherals.logger.error("update called on a turtle without wireless chunky module ( p is null )");
}
}
示例3: getPeripheral
import dan200.computercraft.api.turtle.ITurtleAccess; //导入方法依赖的package包/类
public static <T> T getPeripheral(ITurtleAccess turtle, Class<T> clazz) {
for (TurtleSide side : EnumSet.allOf(TurtleSide.class)) {
IPeripheral peripheral = turtle.getPeripheral(side);
if (peripheral != null && clazz.isAssignableFrom(peripheral.getClass()))
return (T)peripheral;
}
return null;
}
示例4: getPeripheralSide
import dan200.computercraft.api.turtle.ITurtleAccess; //导入方法依赖的package包/类
public static TurtleSide getPeripheralSide(ITurtleAccess turtle, Class clazz) {
for (TurtleSide side : EnumSet.allOf(TurtleSide.class)) {
IPeripheral peripheral = turtle.getPeripheral(side);
if (peripheral != null && clazz.isAssignableFrom(peripheral.getClass()))
return side;
}
return null;
}
示例5: update
import dan200.computercraft.api.turtle.ITurtleAccess; //导入方法依赖的package包/类
@Override
public void update(ITurtleAccess turtle, TurtleSide side) {
IPeripheral peripheral = turtle.getPeripheral(side);
if (peripheral instanceof TileEntityNoteBlock) {
((TileEntityNoteBlock) peripheral).updateEntity(true);
}
}
示例6: update
import dan200.computercraft.api.turtle.ITurtleAccess; //导入方法依赖的package包/类
@Override
public void update(ITurtleAccess turtle, TurtleSide side) {
IPeripheral peripheral = turtle.getPeripheral(side);
if (peripheral instanceof ITickingTurtle) ((ITickingTurtle)peripheral).onPeripheralTick();
}