protected override void Init(MyObjectBuilder_DefinitionBase builder)
        {
            var ob = (MyObjectBuilder_MrzItemSizeConstraint)builder;

            _equality = ob.Equality;
            _size     = ob.Size;

            // we assume all blocks that go into inventory will be small blocks.
            _blockSize = MyCubeGridDefinitions.GetCubeSize(MyCubeSize.Small);
        }
Пример #2
0
        public void Init()
        {
            PositionComp.LocalAABB = new BoundingBox(new Vector3(-SlimBlock.CubeGrid.GridSize / 2), new Vector3(SlimBlock.CubeGrid.GridSize / 2));
            Components.Add <MyUseObjectsComponentBase>(new MyUseObjectsComponent());

            Matrix localMatrix;
            string currModel;

            if (BlockDefinition.CubeDefinition != null)
            {
                //Ensure we have always only one distinct orientation use
                SlimBlock.Orientation = MyCubeGridDefinitions.GetTopologyUniqueOrientation(BlockDefinition.CubeDefinition.CubeTopology, Orientation);
            }

            CalcLocalMatrix(out localMatrix, out currModel);

            if (!string.IsNullOrEmpty(currModel))
            {
                Init(null, currModel, null, null, null);

                OnModelChange();
            }

            Render.EnableColorMaskHsv = true;

            // Can't skip
            Render.SkipIfTooSmall = false;

            CheckConnectionAllowed = false;

            WorldMatrix = localMatrix;
            Save        = false;

            UseObjectsComponent.LoadDetectorsFromModel();

            SlimBlock.ComponentStack.IsFunctionalChanged += ComponentStack_IsFunctionalChanged;
        }