OurGamesForCourse

Форк
0
47 строк · 817.0 Байт
1
namespace PauchiaUkladka;
2

3
public class BlockQueue
4
{
5
    private readonly Block[] blocks = new Block[]
6
    {
7
        new IBlock(),
8
        new JBlock(),
9
        new LBlock(),
10
        new OBlock(),
11
        new SBlock(),
12
        new TBlock(),
13
        new ZBlock()
14
    };
15
    
16
    private readonly Random random = new Random();
17

18
    public Block NextBlock
19
    {
20
        get;
21
        private set;
22
    }
23

24
    public BlockQueue()
25
    {
26
        NextBlock = RandomBlock();
27
    }
28

29
    private Block RandomBlock()
30
    {
31
        return blocks[random.Next(blocks.Length)];
32
    }
33

34
    public Block GetAndUpdate()
35
    {
36
        Block block = NextBlock;
37
        
38
        NextBlock = RandomBlock();
39

40
        while (block.Id == NextBlock.Id)
41
        {
42
            NextBlock = RandomBlock();
43
        }
44

45
        return block;
46
    }
47
}

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.