public static void CycleArm(Exosuit exosuit, string slotID)
        {
            IExosuitArmsManager  manager  = ExosuitArmsManager.CreateFromExosuit(exosuit);
            IExosuitArmsStorage  storage  = ExosuitArmsStorage.CreateInstance(Inventory.Get().container);
            IExosuitArmsSwitcher switcher = ExosuitArmsSwitcher.CreateInstance(manager, storage, _armsListFactory, _userMessages);

            switcher.CycleArm(slotID);
        }
 protected ExosuitArmsSwitcher(IExosuitArmsManager exosuitArmsManager,
                               IExosuitArmsStorage armsStorage,
                               IExosuitArmsListFactory armsListFactory,
                               IUserMessages userMessages)
 {
     _exosuitArms     = exosuitArmsManager;
     _armsStorage     = armsStorage;
     _armsListFactory = armsListFactory;
     _userMessages    = userMessages;
 }
 public static ExosuitArmsSwitcher CreateInstance(IExosuitArmsManager exosuitArmsManager,
                                                  IExosuitArmsStorage armsStorage,
                                                  IExosuitArmsListFactory armsListFactory,
                                                  IUserMessages userMessages)
 => new ExosuitArmsSwitcher(exosuitArmsManager, armsStorage, armsListFactory, userMessages);