Пример #1
0
    public List <RoomContainer> CreateMap(ThemeTable data)
    {
        RoomContainer testMap = new RoomContainer(Vector2Int.zero, new List <MapWay>());

        testMap.RoomInstance = Room.CreateRoom(MapName, Vector2Int.zero);
        return(new List <RoomContainer>()
        {
            testMap
        });
    }
Пример #2
0
    public List <RoomContainer> CreateMap(ThemeTable data)
    {
        currentTheme = data;

        SamplingMapList(data._Name);

        roomFactoryProccess = new List <RoomContainer>();
        madeRooms           = new List <RoomContainer>();

        RoomContainer first = new RoomContainer(Vector2Int.zero, new List <MapWay>()
        {
            MapWay.E_TOP
        });

        SetMapInstance(first, data._StartRoomName);

        madeRooms.Add(first);

        Vector2Int firstIndex;

        first.GetWayDestinationIndex(MapWay.E_TOP, out firstIndex);

        roomFactoryProccess.Add(new RoomContainer(firstIndex, new List <MapWay>()
        {
            RoomManager.WayInverseSet[MapWay.E_TOP]
        }));

        RoomContainer current;

        while (roomFactoryProccess.Count != 0)
        {
            current = roomFactoryProccess[0];
            roomFactoryProccess.RemoveAt(0);

            TransitionRoomFactoryProccess(current);
        }

        List <RoomContainer> specificRoomList = new List <RoomContainer>()
        {
            first
        };

        specificRoomList.Add(DeterminantSpecificRoom(specificRoomList, ConvertWayList(currentTheme._BossRoomName), currentTheme._BossRoomName));

        foreach (var roomContainer in madeRooms)
        {
            ChooseMapInstance(roomContainer);
        }

        return(madeRooms);
    }
        DeleteThemeAsync(ThemeTable objThemeTable)
        {
            var ExistingThemeTable =
                _context.ThemeTable
                .Where(x => x.Id == objThemeTable.Id)
                .FirstOrDefault();

            if (ExistingThemeTable != null)
            {
                _context.ThemeTable.Remove(ExistingThemeTable);
                _context.SaveChanges();
            }
            else
            {
                return(Task.FromResult(false));
            }
            return(Task.FromResult(true));
        }
Пример #4
0
    public static ThemeTable Load(string[] parts)
    {
        int        i = 0;
        ThemeTable p = new ThemeTable();

        p._Index              = int.Parse(parts[i++]);
        p._Name               = parts[i++];
        p._StartRoomName      = parts[i++];
        p._BossRoomName       = parts[i++];
        p._MinRoomCount       = int.Parse(parts[i++]);
        p._MaxRoomCount       = int.Parse(parts[i++]);
        p._TotalWayWeight     = int.Parse(parts[i++]);
        p._RewardRoomCount    = int.Parse(parts[i++]);
        p._WayForWeight[0]    = int.Parse(parts[i++]);
        p._WayForWeight[1]    = int.Parse(parts[i++]);
        p._WayForWeight[2]    = int.Parse(parts[i++]);
        p._WayForWeight[3]    = int.Parse(parts[i++]);
        p._RewardRoomNames[0] = parts[i++];

        return(p);
    }
        UpdateThemeAsync(ThemeTable objThemeTable)
        {
            var ExistingThemeTable =
                _context.ThemeTable
                .Where(x => x.Id == objThemeTable.Id)
                .FirstOrDefault();

            if (ExistingThemeTable != null)
            {
                ExistingThemeTable.Date =
                    objThemeTable.Date;
                ExistingThemeTable.ThemeName =
                    objThemeTable.ThemeName;
                ExistingThemeTable.CategoryName =
                    objThemeTable.CategoryName;
                _context.SaveChanges();
            }
            else
            {
                return(Task.FromResult(false));
            }
            return(Task.FromResult(true));
        }
 CreateThemeAsync(ThemeTable objThemeTable)
 {
     _context.ThemeTable.Add(objThemeTable);
     _context.SaveChanges();
     return(Task.FromResult(objThemeTable));
 }
Пример #7
0
 public void SetDefaultStartContext()
 {
     StyleSheet = new StyleSheet();
     ThemeTable = new ThemeTable();
     CurrentSectionFormatting = new SectionFormatting();
     CurrentSectionFormatting.FCSPageInformation = new FCSPageInformation(); 
 }
Пример #8
0
 public static void CreateRogueMap()
 {
     ThemeTable firstTheme = DataManager.GetFirstData<ThemeTable>();
     Instance.AllRoom = new RogueRoomFactory().CreateMap(firstTheme);
 }