Пример #1
0
 private void updateDatabaseObjectInfo()
 {
     DatabaseObject.NumberBoxes  = ProjectTiles.Count();
     DatabaseObject.NumberCards  = ProjectCards.Count();
     DatabaseObject.NumberTokens = ProjectTokens.Count();
     DatabaseObject.NumberBoards = ProjectBoards.Count();
 }
Пример #2
0
        private bool postParse()
        {
            foreach (var element in projectElements)
            {
                if (!(element is IHasElements elementedElement))
                {
                    continue;
                }
                var elementQueue = elementedElement.PendingElements;
                while (elementQueue.Count > 0)
                {
                    int nextElement = elementQueue.Dequeue();
                    switch (elementedElement.NestedElementType)
                    {
                    case ElementType.Token:
                        if (ProjectTokens.All(b => b.ID != nextElement))
                        {
                            return(false);
                        }
                        elementedElement.Elements.Add(ProjectTokens.First(b => b.ID == nextElement));
                        break;

                    case ElementType.Card:
                        if (ProjectCards.All(b => b.ID != nextElement))
                        {
                            return(false);
                        }
                        elementedElement.Elements.Add(ProjectCards.First(b => b.ID == nextElement));
                        break;

                    case ElementType.Tile:
                        if (ProjectTiles.All(b => b.ID != nextElement))
                        {
                            return(false);
                        }
                        elementedElement.Elements.Add(ProjectTiles.First(b => b.ID == nextElement));
                        break;

                    case ElementType.Board:
                        if (ProjectBoards.All(b => b.ID != nextElement))
                        {
                            return(false);
                        }
                        elementedElement.Elements.Add(ProjectBoards.First(b => b.ID == nextElement));
                        break;
                    }
                }
            }

            return(true);
        }