Example #1
0
        /// <summary>
        /// Inits weapon and mount to this slot
        /// </summary>
        /// <param name="weapon">Weapon</param>
        /// <param name="objectBuilder">Weapon's objectbuilder</param>
        /// <param name="parentShip">Parent ship</param>
        public void InitAndMount(MySmallShipGunBase weapon, MyMwcObjectBuilder_SmallShip_Weapon objectBuilder, MySmallShip parentShip)
        {
            Debug.Assert(WeaponSubObject != null);
            weapon.Init(null, parentShip, GetPosition(), GetForwardVector(), GetUpVector(), objectBuilder);
            float?yOffset = GetOffsetFromWeaponSubObject(SUB_OBJECT_Y_OFFSET_KEY);

            if (yOffset != null)
            {
                weapon.YOffset = yOffset.Value;
            }

            float?zOffset = GetOffsetFromWeaponSubObject(SUB_OBJECT_Z_OFFSET_KEY);

            if (zOffset != null)
            {
                weapon.ZOffset = zOffset.Value;
            }
            Mount(weapon);
        }
Example #2
0
        /// <summary>
        /// Inits weapon and mount to this slot
        /// </summary>
        /// <param name="weapon">Weapon</param>
        /// <param name="objectBuilder">Weapon's objectbuilder</param>
        /// <param name="parentShip">Parent ship</param>
        public void InitAndMount(MySmallShipGunBase weapon, MyMwcObjectBuilder_SmallShip_Weapon objectBuilder, MySmallShip parentShip)
        {
            Debug.Assert(WeaponSubObject != null);
            weapon.Init(null, parentShip, GetPosition(), GetForwardVector(), GetUpVector(), objectBuilder);
            float? yOffset = GetOffsetFromWeaponSubObject(SUB_OBJECT_Y_OFFSET_KEY);
            if (yOffset != null)
            {
                weapon.YOffset = yOffset.Value;
            }

            float? zOffset = GetOffsetFromWeaponSubObject(SUB_OBJECT_Z_OFFSET_KEY);
            if (zOffset != null)
            {
                weapon.ZOffset = zOffset.Value;
            }
            Mount(weapon);
        }