Гость
Форумы / C++ [игнор отключен] [закрыт для гостей] / Движение игрока по клику мыши на С++ builder / 10 сообщений из 10, страница 1 из 1
27.10.2021, 14:06
    #40107372
Razuvai
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
Движение игрока по клику мыши на С++ builder???
...
Рейтинг: 0 / 0
27.10.2021, 14:40
    #40107391
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
Razuvai, мы можем добавить движение по клику мышки. Я уверен на 100%. Просто в форуме скорее
всего никто не хочет писать игру с нуля. Так что ты давай кидай что уже есть.
...
Рейтинг: 0 / 0
27.10.2021, 14:49
    #40107400
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
Код: plaintext
1.
2.
3.
4.
5.
void OnClick()
{
  MoveGamerToCPPBuilder();
  return;
};
...
Рейтинг: 0 / 0
03.11.2021, 06:45
    #40108881
Razuvai
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
Код: plaintext
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.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int a,b,c,d,e,f,g,h,z,x,k,l,a1,a2,a3;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
if (f==1) {
a=a+1;
if (a==1) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/2.bmp");
if (a==2) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/3.bmp");
if (a==3) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/4.bmp");
if (a==4) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/5.bmp");
if (a==5) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/6.bmp");
if (a==6) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/7.bmp");
if (a==7) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/8.bmp");
if (a==8) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/9.bmp");
if (a==8) a=0;
}
if (g==1) {
h=h+1;
if (h==1) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/11.bmp");
if (h==2) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/12.bmp");
if (h==3) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/13.bmp");
if (h==4) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/14.bmp");
if (h==5) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/15.bmp");
if (h==6) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/16.bmp");
if (h==7) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/17.bmp");
if (h==8) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/18.bmp");
if (h==8) h=0;
}
if (z==1) {
x=x+1;
if (x==1) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/19.bmp");
if (x==2) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/20.bmp");
if (x==3) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/21.bmp");
if (x==4) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/22.bmp");
if (x==5) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/23.bmp");
if (x==5) {
Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/23.bmp");
TRect r;
if(IntersectRect(r, Image1->BoundsRect, Image3->BoundsRect)) {
Image3->Left=Image3->Left+10;
Timer6->Enabled=true;
}
}
if (x==6) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/23.bmp");
if (x==7) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/1.bmp");
if (x==8) x=0;
if (x==7) z=0;
if (x==7) Timer1->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)

{
if (Key=='D') {
b=1;
f=1;
Timer2->Enabled=true;
Timer1->Enabled=true;
}
if (Key=='W') {
c=1;
f=1;
Timer2->Enabled=true;
Timer1->Enabled=true;
}
if (Key=='A') {
d=1;
g=1;
Timer2->Enabled=true;
Timer1->Enabled=true;
}
if (Key=='S') {
e=1;
f=1;
Timer2->Enabled=true;
Timer1->Enabled=true;
}
if (Key=='F') {
z=1;
Timer1->Enabled=true;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer2Timer(TObject *Sender)
{
if (b==1) Image1->Left=Image1->Left+1;
if (c==1) Image1->Top=Image1->Top-1;
if (d==1) Image1->Left=Image1->Left-1;
if (e==1) Image1->Top=Image1->Top+1;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormKeyUp(TObject *Sender, WORD &Key, TShiftState Shift)
{
if (Key=='D') {
b=0;
f=0;
Timer2->Enabled=false;
Timer1->Enabled=false;
Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/1.bmp");
}
if (Key=='W') {
c=0;
f=0;
Timer2->Enabled=false;
Timer1->Enabled=false;
Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/1.bmp");
}
if (Key=='A') {
d=0;
g=0;
Timer2->Enabled=false;
Timer1->Enabled=false;
Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/10.bmp");
}
if (Key=='S') {
e=0;
f=0;
Timer2->Enabled=false;
Timer1->Enabled=false;
Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/1.bmp");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer3Timer(TObject *Sender)
{
DoubleBuffered=true;
Timer3->Enabled=false;
}
//---------------------------------------------------------------------------


void __fastcall TForm1::Timer4Timer(TObject *Sender)
{
k=rand()%3;
if (k==0) Image3->Left=Image3->Left+3;
if (k==1) Image3->Top=Image3->Top-3;
if (k==2) Image3->Left=Image3->Left-3;
if (k==3) Image3->Top=Image3->Top+3;
l=l+1;
if (l==1) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/11.bmp");
if (l==2) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/12.bmp");
if (l==3) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/13.bmp");
if (l==4) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/14.bmp");
if (l==5) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/15.bmp");
if (l==6) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/16.bmp");
if (l==7) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/17.bmp");
if (l==8) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/18.bmp");
if (l==8) l=0;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Timer5Timer(TObject *Sender)
{
Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/10.bmp");
Timer5->Enabled=false;
Timer4->Enabled=true;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Timer6Timer(TObject *Sender)
{
a1=a1+1;
if (a1==1) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/25.bmp");
if (a1==2) Image3->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/24.bmp");
if (a1==2) Timer6->Enabled=false;
if (a1==2) Timer4->Enabled=false;
if (a1==2) Timer5->Enabled=true;
if (a1==2) a1=0;


}
...
Рейтинг: 0 / 0
03.11.2021, 16:21
    #40109002
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
Сильно много лишнего.

Вот эта колбаса

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
if (a==1) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/2.bmp");
if (a==2) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/3.bmp");
if (a==3) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/4.bmp");
if (a==4) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/5.bmp");
if (a==5) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/6.bmp");
if (a==6) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/7.bmp");
if (a==7) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/8.bmp");
if (a==8) Image1->Picture->LoadFromFile("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/9.bmp");



Может сворачиваться в

Код: plaintext
1.
Image1->Picture->LoadFromFile(CString::format("C:/Users/Razuv/OneDrive/Рабочий стол/1234/Свои проги/z/%d.bmp", (a+1) % 8);



Сделай такой рефакторинг чтоб хоть уменьшить число букв.
...
Рейтинг: 0 / 0
03.11.2021, 17:55
    #40109042
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
А зачем деление по модулю?
Чтобы получить ноль вместо девяти?
...
Рейтинг: 0 / 0
03.11.2021, 18:43
    #40109066
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
Я дал направление. Подправте баг за меня кому не лень.
...
Рейтинг: 0 / 0
04.11.2021, 21:51
    #40109316
Alex_Ustinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
mayton,

направление на уровне "ввести в заблуждение".
для выполнения кода неважно, для удобочитаемости - бардак
и самое главное - что "всем лень"
---------
"свернуть" l=l+1; в ++l; это круче...
...
Рейтинг: 0 / 0
04.11.2021, 23:14
    #40109320
Siemargl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
не пишите фигню.

какая еще загрузка с файла по таймеру....(
...
Рейтинг: 0 / 0
05.11.2021, 00:04
    #40109324
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Движение игрока по клику мыши на С++ builder
Razuvai, игра пока не оптимизирована. До того как добавлять клики мышей - надо сделать так чтоб ресурсы (картинки)
загружались только 1 раз. У тебя щас как-то уж очень не оптимально.

Предпод завернёт тебя обратно.

Давай весь проект сюда. У меня под рукой нет этого компиллятора но думаю что у кого-то из мемберов есть.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Движение игрока по клику мыши на С++ builder / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]