Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
0 / 0 / 1
Регистрация: 08.05.2012
Сообщений: 89

Игра "Lines"

11.07.2012, 21:08. Показов 3373. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пишу игру,пока в самом начале, подскажите пожалуйста,как запомнить цвет, ну в смысле когда кликаю на шарик и перемещаю его,хочу чтоб новый шарик был того же цвета,что и старый,как это реализовать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.07.2012, 21:08
Ответы с готовыми решениями:

Игра Lines
Ребята помогите пожалуйста с игрой Lines а именно с самой механикой. Прилагаю то что у меня уже есть.

Аналог Memo1.Lines.Add()
Здравствуйте. Нужно заполнить поле textBox построчно неким текстом, причем в каждой новой строке помимо символов типа String должно быть...

Не получается вывести строку TextBox.Lines[0]
Есть метод кторый считывет нажатую кнопку: private void cufru_Click(object sender, EventArgs e)//ввід числа { ...

5
251 / 163 / 14
Регистрация: 10.03.2012
Сообщений: 544
12.07.2012, 00:55
Добавить переменную типа Color, перед перемещением шарика присваивать этой переменной цвет шарика. Где нужно, присваиваете значение переменной цвету нового шарика.
ЗЫ: это в том случае, если цвет не нужно сохранять где-то, чтобы воспользоваться им при следующем запуске программы.
1
0 / 0 / 1
Регистрация: 08.05.2012
Сообщений: 89
12.07.2012, 11:13  [ТС]
a kak prisvoit peremennoi cvet, vot zdes ya zadau cvet:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
Random r = new Random();
            for (int h = 0; h < 4; h++)
            {
 
                int m = r.Next(0, fields);
                int n = r.Next(0, fields);
                int g = r.Next(-5,0);
              
 
 
                if (g == -5)
                {
                    mat[m, n] = 99;
                    int x1 = sizefield * m;
                    int y1 = sizefield * n;
                    ci1 = m;
                    cj1 = n;
                    gr.FillEllipse(Brushes.Blue, x1, y1, sizefield, sizefield);
                    
           
                }
 
                if (g == -4)
                {
                    mat[m, n] = 99;
                    int x1 = sizefield * m;
                    int y1 = sizefield * n;
                    ci2 = m;
                    cj2 = n;
                    gr.FillEllipse(Brushes.Brown, x1, y1, sizefield, sizefield);
 
                }
 
                if (g == -3)
                {
                    mat[m, n] = 99;
                    int x1 = sizefield * m;
                    int y1 = sizefield * n;
                    ci3 = m;
                    cj3 = n;
                    gr.FillEllipse(Brushes.Red, x1, y1, sizefield, sizefield);
 
                }
 
                if (g == -2)
                {
                    mat[m, n] = 99;
                    int x1 = sizefield * m;
                    int y1 = sizefield * n;
                    gr.FillEllipse(Brushes.Green, x1, y1, sizefield, sizefield);
                    ci4 = m;
                    cj4 = n;
                }
 
                if (g == -1)
                {
                    mat[m, n] = 99;
                    int x1 = sizefield * m;
                    int y1 = sizefield * n;
                    gr.FillEllipse(Brushes.Yellow, x1, y1, sizefield, sizefield);
                    ci5 = m;
                    cj5 = n;
                }
 
 
            }
0
251 / 163 / 14
Регистрация: 10.03.2012
Сообщений: 544
12.07.2012, 13:07
В коде должна быть глобально объявлена переменная
C#
1
Brush ellipseBrush = Brushes.Blue;
Приведенный кусок кода (если он создает новый шарик) будет выглядеть так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
Random r = new Random();
for (int h = 0; h < 4; h++)
{
 
    int m = r.Next(0, fields);
    int n = r.Next(0, fields);
    int g = r.Next(-5,0);
    
    if (g == -5)
    {
        mat[m, n] = 99;
        int x1 = sizefield * m;
        int y1 = sizefield * n;
        ci1 = m;
        cj1 = n;
        gr.FillEllipse(Brushes.Blue, x1, y1, sizefield, sizefield);
        ellipseBrush = Brushes.Blue; //сохраняем цвет
    }
 
    else if (g == -4)
    {
        mat[m, n] = 99;
        int x1 = sizefield * m;
        int y1 = sizefield * n;
        ci2 = m;
        cj2 = n;
        gr.FillEllipse(Brushes.Brown, x1, y1, sizefield, sizefield);
        ellipseBrush = Brushes.Brown;
    }
 
    else if (g == -3)
    {
        mat[m, n] = 99;
        int x1 = sizefield * m;
        int y1 = sizefield * n;
        ci3 = m;
        cj3 = n;
        gr.FillEllipse(Brushes.Red, x1, y1, sizefield, sizefield);
        ellipseBrush = Brushes.Red;
    }
 
    else if (g == -2)
    {
        mat[m, n] = 99;
        int x1 = sizefield * m;
        int y1 = sizefield * n;
        ci4 = m;
        cj4 = n;
        gr.FillEllipse(Brushes.Green, x1, y1, sizefield, sizefield);
        ellipseBrush = Brushes.Green;
    }
 
    else if (g == -1)
    {
        mat[m, n] = 99;
        int x1 = sizefield * m;
        int y1 = sizefield * n;
        ci5 = m;
        cj5 = n;
        gr.FillEllipse(Brushes.Yellow, x1, y1, sizefield, sizefield);
        ellipseBrush = Brushes.Yellow;
    }
}
В этом же коде нужно реализовать рисование шарика при его перемещении сохраненным цветом (т.е. если этот же код рисует просто новый шарик, должна производиться проверка того, что шарик рисуется при перемещении, иначе все новые шарики будут рисоваться одним цветом). Это уже зависит от самой игры (есть ли там возможность создавать новые шарики). Заливка окружности сохраненным цветом (на самом деле -- с использованием сохраненной кисти):
C#
1
gr.FillEllipse(ellipseBrush, x1, y1, sizefield, sizefield);
1
0 / 0 / 1
Регистрация: 08.05.2012
Сообщений: 89
12.07.2012, 13:47  [ТС]
shas poprobuyu, spasibo
0
0 / 0 / 1
Регистрация: 08.05.2012
Сообщений: 89
12.07.2012, 15:55  [ТС]
Ni4ego ne vyxodit,daje boolshe skaju on daje ne zapolnyaet matricu i na pol puti zavisaet
Вложения
Тип файла: rar Lines.rar (46.0 Кб, 101 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.07.2012, 15:55
Помогаю со студенческими работами здесь

Почему dataGridView1.Rows.Count, но textbxox1.Lines.Count() ?
Почему в одном случае нужно писать круглые скобки, а в другие не нужно?

Игровое поле для Lines или для шашек
Помогите пожалуйста с реализацией. Объясните, прошу, как мне нарисовать поле квадратов, по которым можно двигать объекты. Я приблизительно...

Оптимальность перебора строк "textBox7.Lines"?
Результатом выполнения кода должна быть строка - 'Категор 1', 'Категор 2', 'Категор 3'. Значения &quot;Категор n&quot; вводятся в...

Добавить строки в список lines
Имеется переменная text типа string, которая состоит из нескольких строк. Необходимо добавить эту переменную в список list. До этого делал...

Увеличить количество строк lines
const string fileName = @&quot;ifolder\monitor.ini&quot;; string lines = File.ReadAllLines(fileName); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru