Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Apatche
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 6
1

Добавить уровни в игру "Память"

18.10.2012, 20:53. Просмотров 888. Ответов 9
Метки нет (Все метки)

Привет! У меня возникла проблема с добавлением уровней в игру. Каким образом ето можно осуществить!?
Игра "Памьять" нужно искать среди чётного количества закрытых картинок две одинаковые.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.10.2012, 20:53
Ответы с готовыми решениями:

Добавить кнопку "Стоп", которая будет останавливать процесс построения "ковра"
Здравствуйте! Есть вот такая задача: Procedure...

В "Compiler Options > Paths" добавить путь к "Other Unit Files" в Embarcadero
собственно сабж, чет совсем разобраться немогу(

Если фамилия заканчивается на "ков", то добавить к фамилии окончание "ва"
Если фамилия заканчивается на ков, то добавить к фамилии окончание ва. ...

В каждом слове текста замените "а" на букву "е", если "а" стоит на четном месте, и заменить букву "б" на сочетание "ак",
В каждом слове текста замените "а" на букву "е", если "а" стоит на четном...

Из слов "Работа", "крест", "тон" составить фразу "Кто не работает, тот не ест" и определить ее длину
Из слова "Работа","крест","тон" составить фразу:"Кто не работает, тот не ест" и...

9
angstrom
2470 / 1846 / 242
Регистрация: 14.09.2012
Сообщений: 5,981
Записей в блоге: 2
18.10.2012, 21:38 2
Какие в этой игре могут быть уровни? Разве что увеличивать количество несовпадающих картинок, так что на максимальной сложности будет только по одной паре одинаковых.
1
Одиночка
3933 / 1858 / 337
Регистрация: 16.03.2012
Сообщений: 3,869
18.10.2012, 22:05 3
А можно не по две картинки, а по три, четыре и больше выбирать на следующих уровнях. Правда в случае 3-х уже нужно будет не закрывать 2 одинаковых. Но это детали.
1
HanDi
892 / 339 / 65
Регистрация: 11.02.2012
Сообщений: 1,502
18.10.2012, 22:19 4
Я помню раньше решал такую проблему, кроме как добавления времени на каждый уровень что-то было туго).

Тут еще все зависит от того, как у тебя она составлена. Исходя из кода уже будет ясно, что и как можно добавить.
1
Apatche
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 6
19.10.2012, 20:35  [ТС] 5
Delphi
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
procedure TForm1.FormCreate(Sender: TObject);
var
  np: integer;
begin
  Pictures := TBitmap.Create;
  Pictures.LoadFromFile('pictures.bmp');
 
  HK := Pictures.Height-1; 
  WK := HK;               
 
  np:= Round(Pictures.Width / WK);
  if np <= 15
    then H := 4
    else H :=5;
  W := Round(np*2/H);
 
  Form1.ClientHeight := H * HK;
  Form1.ClientWidth := W * WK;
 
 
  Form1.Timer1.Enabled := False;
  Form1.Timer1.Interval := 200;
 
  n := 0;
  NewGame;
end;
 
 
 
procedure TForm1.FormPaint(Sender: TObject);
begin
    ShowPole;
end;
 
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  col_: integer;   
  row_: integer;   
 
begin
  col_ := Trunc(X/WK) + 1;
  row_ := Trunc(Y/HK) + 1;
 
 
  if Pole[col_,row_] > 200 then
  exit;
 
  if count = 0 then
  begin
    count := 1;
    open1.col := col_;
    open1.row := row_;
    Pole[open1.col,open1.row] := Pole[open1.col,open1.row] + 100;
    Kletka(open1.col,open1.row);
    exit;
  end;
 
  if count = 1 then begin
    open2.col := col_;
    open2.row := row_;
 
    if (open1.col = open2.col) and (open1.row = open2.row)
       then exit
 
    else begin
      count := 2; 
      Pole[open2.col,open2.row] :=
           Pole[open2.col,open2.row] + 100;
      Kletka(open2.col,open2.row);
      if Pole[open1.col,open1.row] = Pole[open2.col,open2.row] then
    
        begin
          n := n+1;
          Form1.Timer1.Enabled := True;
         
         
        end;
    end;
    exit;
  end;
 
  if count = 2 then
  begin
 
    Pole[open1.col,open1.row] := Pole[open1.col,open1.row] - 100;
    Pole[open2.col,open2.row] := Pole[open2.col,open2.row] - 100;
    Kletka(open1.col,open1.row);
    Kletka(open2.col,open2.row);
 
    open1.col := col_;
    open1.row := row_;
    count := 1;  
 
    Pole[open1.col,open1.row] := Pole[open1.col,open1.row] + 100;
    Kletka(open1.col,open1.row);
  end;
end;
 
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  // Гў Г¬Г*Г±Г±ГЁГўГҐ Pole êëåòêè ïîìå÷Г*ГѕГІГ±Гї ГЄГ*ГЄ ñîâïГ*ГўГёГЁГҐ
  Pole[open1.col,open1.row] := Pole[open1.col,open1.row] + 100;
  Pole[open2.col,open2.row] := Pole[open2.col,open2.row] + 100;
  count := 0;
 
  Kletka(open2.col,open2.row);
  Kletka(open1.col,open1.row);
 
  Form1.Timer1.Enabled := False;
 
  if n = Trunc(W*H/2)
  then
  begin
    Form1.Canvas.Font.Name := 'Times New Roman';
    Form1.Canvas.Font.Size := 36;
    Form1.Canvas.Font.Color := clBlack;
    Form1.Canvas.TextOut(70,160,'Game Over!');
    Form1.Canvas.Font.Size := 10;
  end;
end;
 
 
procedure TForm1.N1Click(Sender: TObject);
begin
    Canvas.Rectangle(0,0,ClientWidth,ClientHeight);
    NewGame;
end;
 
end.
Добавлено через 1 минуту
Вот текст программы. Напишите как добавить уровни в эту игру.

Добавлено через 2 минуты
Можете еще подсказать как по-другому можно написать эту игру!? Как то через кнопки...чтобы все было красочно так
0
angstrom
2470 / 1846 / 242
Регистрация: 14.09.2012
Сообщений: 5,981
Записей в блоге: 2
19.10.2012, 21:45 6
Цитата Сообщение от Apatche Посмотреть сообщение
...чтобы все было красочно так
Можно так.
Возможно антивирусник будет "орать" на dll-ки, но это из-за их упаковки. Ничего криминального в них нет.
Захочешь, и исходный код скину.
1
Вложения
Тип файла: rar pairs2.rar (736.4 Кб, 34 просмотров)
Apatche
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 6
20.10.2012, 17:33  [ТС] 7
Оо..ето как раз то что мн надо)...Брось исходник пожалуйста...
0
angstrom
2470 / 1846 / 242
Регистрация: 14.09.2012
Сообщений: 5,981
Записей в блоге: 2
20.10.2012, 21:57 8
Смотри, сам напросился.
1
Вложения
Тип файла: rar pair.rar (578.6 Кб, 37 просмотров)
angstrom
2470 / 1846 / 242
Регистрация: 14.09.2012
Сообщений: 5,981
Записей в блоге: 2
20.10.2012, 22:17 9
Не все картинки вложил. Добавь в папку Image.
1
Вложения
Тип файла: rar image.rar (379.7 Кб, 18 просмотров)
Apatche
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 6
22.10.2012, 17:24  [ТС] 10
Спасибо большое.... Буду пробовать написать себе такую же))))Ты очень помог...
0
22.10.2012, 17:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2012, 17:24

На форме располагаются компоненты: редактор Edit; линейка ScrollBar; радионабор с опциями "Цветы", "Деревья", "Рыбы", "Звери"
Доброго времени суток, 2 курс 2 семестр, пришли, препод раздал задачи, сказал...

Добавить кнопки "Свернуть", "Закрыть"
Здраствуйте. Требуется добавить кнопки &quot;Закрыть&quot; и &quot;Свернуть&quot; с нестандартной...

Задание: "Является ли последовательность строго монотонной". Добавить ответ "последовательность не монотонна"
Но мне надо ещё что бы еще выводилось &quot;последовательность не монотонна&quot;....


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru