/// <summary> /// Condition of adding new chain in queue /// </summary> /// <returns>Return true if we can/should add new chain </returns> private bool CheckToAdd() { if (!Chains.Any()) { AddChain(new Chain()); } var lastChain = Chains.Last(); return(lastChain.CurrentLocationHead - lastChain.WholeLenghtOfChain > 0); }