Esempio n. 1
0
 public ClosedBoltWeapon.FireSelectorMode GetClosedBoltMode()
 {
     ClosedBoltWeapon.FireSelectorMode mode = new ClosedBoltWeapon.FireSelectorMode();
     mode.SelectorPosition = SelectorPosition;
     mode.ModeType         = (ClosedBoltWeapon.FireSelectorModeType)Enum.Parse(typeof(ClosedBoltWeapon.FireSelectorModeType), ModeType.ToString());
     mode.BurstAmount      = BurstAmount;
     return(mode);
 }
        public static void PostAwake(ClosedBoltWeapon __instance)
        {
            if (__instance.FireSelector_Modes.Length == 0)
            {
                return;
            }
            if (__instance.FireSelector_Modes.Any(t => t.ModeType == ClosedBoltWeapon.FireSelectorModeType.FullAuto))
            {
                return;
            }

            var modes     = new List <ClosedBoltWeapon.FireSelectorMode>(__instance.FireSelector_Modes);
            var full_auto = new ClosedBoltWeapon.FireSelectorMode
            {
                ModeType         = ClosedBoltWeapon.FireSelectorModeType.FullAuto,
                SelectorPosition = __instance.FireSelector_Modes[__instance.FireSelector_Modes.Length - 1]
                                   .SelectorPosition
            };

            modes.Add(full_auto);
            __instance.FireSelector_Modes = modes.ToArray();
        }
Esempio n. 3
0
        private void AddFullAutoToClosedBolt(ClosedBoltWeapon gun)
        {
            ClosedBoltWeapon.FireSelectorMode fullAuto = new ClosedBoltWeapon.FireSelectorMode();
            fullAuto.ModeType         = ClosedBoltWeapon.FireSelectorModeType.FullAuto;
            fullAuto.SelectorPosition = 0;

            if (gun.FireSelector_Modes == null || gun.FireSelector_Modes.Length == 0)
            {
                //Debug.Log("Gun did not have fire selector, adding full");

                ClosedBoltWeapon.FireSelectorMode single = new ClosedBoltWeapon.FireSelectorMode();
                single.ModeType         = ClosedBoltWeapon.FireSelectorModeType.Single;
                single.SelectorPosition = 0;

                gun.FireSelector_Modes = new ClosedBoltWeapon.FireSelectorMode[] { single, fullAuto };
            }
            else
            {
                //Debug.Log("Gun had fire selector, adding full");
                List <ClosedBoltWeapon.FireSelectorMode> modes = new List <ClosedBoltWeapon.FireSelectorMode>(gun.FireSelector_Modes);
                modes.Add(fullAuto);
                gun.FireSelector_Modes = modes.ToArray();
            }
        }
Esempio n. 4
0
 public FireSelectorMode(ClosedBoltWeapon.FireSelectorMode mode)
 {
     SelectorPosition = mode.SelectorPosition;
     ModeType         = (FireSelectorModeType)Enum.Parse(typeof(FireSelectorModeType), mode.ModeType.ToString());
     BurstAmount      = mode.BurstAmount;
 }