public override void Init(MyObjectBuilder_CubeBlock objectBuilder, MyCubeGrid cubeGrid)
        {
            var builder = (MyObjectBuilder_GravityGeneratorSphere)objectBuilder;

            m_radius = builder.Radius;
            m_gravityAcceleration = builder.GravityAcceleration;

            base.Init(objectBuilder, cubeGrid);

            SyncObject = new MySyncGravityGeneratorSphere(this);

            m_defaultVolume = (float)(Math.Pow(DEFAULT_RADIUS, BlockDefinition.ConsumptionPower) * Math.PI * 0.75);

            PowerReceiver = new MyPowerReceiver(
                MyConsumerGroupEnum.Utility,
                false,
                CalculateRequiredPowerInputForRadius(BlockDefinition.MaxRadius),
                this.CalculateRequiredPowerInput);
            if (CubeGrid.CreatePhysics)
            {
                PowerReceiver.IsPoweredChanged     += Receiver_IsPoweredChanged;
                PowerReceiver.RequiredInputChanged += Receiver_RequiredInputChanged;
                PowerReceiver.Update();
                AddDebugRenderComponent(new Components.MyDebugRenderComponentDrawPowerReciever(PowerReceiver, this));
                AddDebugRenderComponent(new Components.MyDebugRenderComponentGravityGeneratorSphere(this));
            }
        }
Пример #2
0
        public override void Init(MyObjectBuilder_CubeBlock objectBuilder, MyCubeGrid cubeGrid)
        {
            var builder = (MyObjectBuilder_GravityGeneratorSphere)objectBuilder;

            m_radius = builder.Radius;
            m_gravityAcceleration = builder.GravityAcceleration;

            base.Init(objectBuilder, cubeGrid);

            SyncObject = new MySyncGravityGeneratorSphere(this);

            m_defaultVolume = (float)(Math.Pow(DEFAULT_RADIUS, BlockDefinition.ConsumptionPower) * Math.PI * 0.75);

            if (CubeGrid.CreatePhysics)
            {
                AddDebugRenderComponent(new Components.MyDebugRenderComponentGravityGeneratorSphere(this));
            }
        }