public override void Init(StringBuilder hudLabelText, MySmallShip parentObject,
                                  Vector3 position, Vector3 forwardVector, Vector3 upVector,
                                  MyMwcObjectBuilder_SmallShip_Weapon objectBuilder)
        {
            m_model = MyModelsEnum.NuclearDrill;

            //We want nuclear drills only in 2.5D
            System.Diagnostics.Debug.Assert(MySession.Is25DSector);


            /*
             * m_movingCueEnum = MySoundCuesEnum.VehToolNuclearDrillLoop3d;
             * m_movingCueReleaseEnum = MySoundCuesEnum.VehToolNuclearDrillRelease3d;
             * m_drillCueEnum = MySoundCuesEnum.VehToolNuclearDrillColliding3d;
             * m_drillOtherCueEnum = MySoundCuesEnum.VehToolNuclearDrillCollidingOther3d;
             * m_drillOtherCueReleaseEnum = MySoundCuesEnum.VehToolNuclearDrillCollidingOtherRelease3d;
             * m_drillCueReleaseEnum = MySoundCuesEnum.VehToolNuclearDrillCollidingRelease3d;
             * m_idleCueEnum = MySoundCuesEnum.VehToolNuclearDrillIdle3d;
             */

            m_movingCueEnum            = MySoundCuesEnum.VehToolSawIdle3d;
            m_movingCueReleaseEnum     = MySoundCuesEnum.VehToolLaserDrillRelease3d;
            m_drillCueEnum             = MySoundCuesEnum.VehToolLaserDrillColliding3d;
            m_drillOtherCueEnum        = MySoundCuesEnum.VehToolLaserDrillColliding3d;
            m_drillOtherCueReleaseEnum = MySoundCuesEnum.VehToolLaserDrillCollidingRelease3d;
            m_drillCueReleaseEnum      = MySoundCuesEnum.VehToolLaserDrillCollidingRelease3d;
            m_idleCueEnum = MySoundCuesEnum.VehToolSawCut3d;

            base.Init(hudLabelText, parentObject, position, forwardVector, upVector, objectBuilder);

            m_minDrillingDuration = MyNuclearDrillDeviceConstants.MIN_DRILLING_DURATION;
            m_range  = MyNuclearDrillDeviceConstants.RANGE;
            m_radius = MyNuclearDrillDeviceConstants.RADIUS;
            m_damage = MyNuclearDrillDeviceConstants.DAMAGE_PER_SECOND;
            m_maxRotatingSpeedDrilling = MyNuclearDrillDeviceConstants.MAX_ROTATING_SPEED_DRILLING;
            m_maxRotatingSpeedIdle     = MyNuclearDrillDeviceConstants.MAX_ROTATING_SPEED_IDLE;

            // drill head:
            Matrix       matrix = Matrix.Identity;
            MyModelDummy dummy;

            if (ModelLod0.Dummies.TryGetValue("head", out dummy))
            {
                matrix = dummy.Matrix;
            }
            else
            {
                Debug.Assert(false, "Dummy 'head' in nuclear drill model is missing.");
            }

            m_drillHead = new MyDrillHead();
            m_drillHead.Init(matrix.Translation, this, MyModelsEnum.NuclearDrillHead);
        }
Example #2
0
        public override void Init(StringBuilder hudLabelText, MySmallShip parentObject,
            Vector3 position, Vector3 forwardVector, Vector3 upVector,
            MyMwcObjectBuilder_SmallShip_Weapon objectBuilder)
        {
            m_model = MyModelsEnum.NuclearDrill;

            //We want nuclear drills only in 2.5D
            System.Diagnostics.Debug.Assert(MySession.Is25DSector);


            /*
            m_movingCueEnum = MySoundCuesEnum.VehToolNuclearDrillLoop3d;
            m_movingCueReleaseEnum = MySoundCuesEnum.VehToolNuclearDrillRelease3d;
            m_drillCueEnum = MySoundCuesEnum.VehToolNuclearDrillColliding3d;
            m_drillOtherCueEnum = MySoundCuesEnum.VehToolNuclearDrillCollidingOther3d;
            m_drillOtherCueReleaseEnum = MySoundCuesEnum.VehToolNuclearDrillCollidingOtherRelease3d;
            m_drillCueReleaseEnum = MySoundCuesEnum.VehToolNuclearDrillCollidingRelease3d;
            m_idleCueEnum = MySoundCuesEnum.VehToolNuclearDrillIdle3d;
              */

            m_movingCueEnum = MySoundCuesEnum.VehToolSawIdle3d;
            m_movingCueReleaseEnum = MySoundCuesEnum.VehToolLaserDrillRelease3d;
            m_drillCueEnum = MySoundCuesEnum.VehToolLaserDrillColliding3d;
            m_drillOtherCueEnum = MySoundCuesEnum.VehToolLaserDrillColliding3d;
            m_drillOtherCueReleaseEnum = MySoundCuesEnum.VehToolLaserDrillCollidingRelease3d;
            m_drillCueReleaseEnum = MySoundCuesEnum.VehToolLaserDrillCollidingRelease3d;
            m_idleCueEnum = MySoundCuesEnum.VehToolSawCut3d;

            base.Init(hudLabelText, parentObject, position, forwardVector, upVector, objectBuilder);

            m_minDrillingDuration = MyNuclearDrillDeviceConstants.MIN_DRILLING_DURATION;
            m_range = MyNuclearDrillDeviceConstants.RANGE;
            m_radius = MyNuclearDrillDeviceConstants.RADIUS;
            m_damage = MyNuclearDrillDeviceConstants.DAMAGE_PER_SECOND;
            m_maxRotatingSpeedDrilling = MyNuclearDrillDeviceConstants.MAX_ROTATING_SPEED_DRILLING;
            m_maxRotatingSpeedIdle = MyNuclearDrillDeviceConstants.MAX_ROTATING_SPEED_IDLE;

            // drill head:
            Matrix matrix = Matrix.Identity;
            MyModelDummy dummy;
            if (ModelLod0.Dummies.TryGetValue("head", out dummy))
                matrix = dummy.Matrix;
            else
                Debug.Assert(false, "Dummy 'head' in nuclear drill model is missing.");

            m_drillHead = new MyDrillHead();
            m_drillHead.Init(matrix.Translation, this, MyModelsEnum.NuclearDrillHead);
        }