本文整理汇总了C#中IntVec3.GetBeltUndergroundComponents方法的典型用法代码示例。如果您正苦于以下问题:C# IntVec3.GetBeltUndergroundComponents方法的具体用法?C# IntVec3.GetBeltUndergroundComponents怎么用?C# IntVec3.GetBeltUndergroundComponents使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IntVec3
的用法示例。
在下文中一共展示了IntVec3.GetBeltUndergroundComponents方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MoveThingTo
protected override void MoveThingTo([NotNull] Thing thing, IntVec3 beltDest)
{
OnBeginMove(thing, beltDest);
// Slides only output to underground
BeltComponent belt = null;
var belts = beltDest.GetBeltUndergroundComponents();
var lift = belts.Find( b => b.IsLift() && b.outputDirection == this.outputDirection );
var under = belts.Find( tuc => tuc.IsUndercover() );
if( ( lift != null )&&
( ( lift.BeltPhase == Phase.Active )||
( under == null ) ) )
// Use the lift unless it's unpowered and there is an undertaker
belt = lift;
else
belt = under;
// Check if there is a belt, if it is empty, and also check if it is active !
if (belt == null || !belt.ItemContainer.Empty || belt.BeltPhase != Phase.Active)
{
return;
}
ItemContainer.TransferItem(thing, belt.ItemContainer);
// Need to check if it is a receiver or not ...
belt.ThingOrigin = parent.Position;
}