Example #1
0
        public static FirestoreLevel FromLevel(Level level)
        {
            FirestoreLevel firestoreLevel = new FirestoreLevel
            {
                Id                  = level.id,
                Name                = level.name,
                AuthorId            = level.authorId,
                AuthorName          = level.authorName,
                ObjectPositions     = new FirestoreVector2Int[level.objectPositions.Count],
                PelletCount         = level.pelletCount,
                TopLeftPosition     = FirestoreVector2Int.FromVector2Int(level.topLeftPosition),
                TopRightPosition    = FirestoreVector2Int.FromVector2Int(level.topRightPosition),
                BottomLeftPosition  = FirestoreVector2Int.FromVector2Int(level.bottomLeftPosition),
                BottomRightPosition = FirestoreVector2Int.FromVector2Int(level.bottomRightPosition),
                GhostDoorPosition   = FirestoreVector2Int.FromVector2Int(level.ghostDoorPosition),
                GhostHouse          = FirestoreVector2Int.FromVector2Int(level.ghostHousePosition),
                PacManPosition      = FirestoreVector2Int.FromVector2Int(level.pacManPosition)
            };

            firestoreLevel.ObjectTypes = new LevelObjectType[firestoreLevel.ObjectPositions.Length];
            for (int i = 0; i < firestoreLevel.ObjectPositions.Length; i++)
            {
                firestoreLevel.ObjectPositions[i] = FirestoreVector2Int.FromVector2Int(level.objectPositions[i]);
                firestoreLevel.ObjectTypes[i]     = level.objectTypes[i];
            }

            return(firestoreLevel);
        }