本文整理汇总了C#中MyCubeBlock.OnRegisteredToGridSystems方法的典型用法代码示例。如果您正苦于以下问题:C# MyCubeBlock.OnRegisteredToGridSystems方法的具体用法?C# MyCubeBlock.OnRegisteredToGridSystems怎么用?C# MyCubeBlock.OnRegisteredToGridSystems使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MyCubeBlock
的用法示例。
在下文中一共展示了MyCubeBlock.OnRegisteredToGridSystems方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RegisterInSystems
public virtual void RegisterInSystems(MyCubeBlock block)
{
if (ResourceDistributor != null)
{
var powerProducer = block.Components.Get<MyResourceSourceComponent>();
if (powerProducer != null)
ResourceDistributor.AddSource(powerProducer);
var powerConsumer = block.Components.Get<MyResourceSinkComponent>();
if (powerConsumer != null)
ResourceDistributor.AddSink(powerConsumer);
var socketOwner = block as IMyRechargeSocketOwner;
if (socketOwner != null)
socketOwner.RechargeSocket.ResourceDistributor = ResourceDistributor;
}
if (WeaponSystem != null)
{
var weapon = block as IMyGunObject<MyDeviceBase>;
if (weapon != null)
WeaponSystem.Register(weapon);
}
if (TerminalSystem != null)
{
var functionalBlock = block as MyTerminalBlock;
if (functionalBlock != null)
TerminalSystem.Add(functionalBlock);
}
// CH: We probably don't need to register controller blocks here. Block that's being added to a grid should not have a controller set
var controllableBlock = block as MyShipController;
Debug.Assert(controllableBlock == null || controllableBlock.ControllerInfo.Controller == null, "Controller of added block is not null. Call Cestmir");
/*if (ControlSystem != null)
{
var controllableBlock = block as MyShipController;
if (controllableBlock != null && controllableBlock.ControllerInfo.Controller != null)
ControlSystem.AddControllerBlock(controllableBlock);
}*/
var inventoryBlock = (block != null && block.HasInventory) ? block : null;
if (inventoryBlock != null)
ConveyorSystem.Add(inventoryBlock);
var conveyorBlock = block as IMyConveyorEndpointBlock;
if (conveyorBlock != null)
{
conveyorBlock.InitializeConveyorEndpoint();
ConveyorSystem.AddConveyorBlock(conveyorBlock);
}
var segmentBlock = block as IMyConveyorSegmentBlock;
if (segmentBlock != null)
{
segmentBlock.InitializeConveyorSegment();
ConveyorSystem.AddSegmentBlock(segmentBlock);
}
var reflectorLight = block as MyReflectorLight;
if (reflectorLight != null)
ReflectorLightSystem.Register(reflectorLight);
if (MyFakes.ENABLE_WHEEL_CONTROLS_IN_COCKPIT)
{
var wheel = block as MyMotorSuspension;
if (wheel != null)
WheelSystem.Register(wheel);
}
var landingGear = block as IMyLandingGear;
if (landingGear != null)
LandingSystem.Register(landingGear);
var gyro = block as MyGyro;
if (gyro != null)
GyroSystem.Register(gyro);
var camera = block as MyCameraBlock;
if (camera != null)
CameraSystem.Register(camera);
block.OnRegisteredToGridSystems();
}