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

Программное движение мышки в окне игры Rust!

27.08.2016, 03:09. Просмотров 633. Ответов 11
Метки нет (Все метки)

Создаю программу, которая будет при нажатии на левую копку мыши программно опускать курсор в низ, проблема в том что,
при заходе в игру в меню, и в инвентаре все работает, но стоит взять в руки оружие или другой любой предмет, или же вообще пусто, но главное что не в меню и не в инвентаре, как перестает происходить это движение...
Вот код передвижения мышки -
Delphi
1
2
3
4
var x, y: integer;
x := Mouse.CursorPos.X;
y := Mouse.CursorPos.Y;
Mouse.CursorPos := Point(x, y+Pixels);
Претензий к коду нет, потому что в игре Minecraft всё работает успешно.
Мне кажется что в момент игры окно игры "RUST" не активно, и из за этого движение мышки в самой игре не происходит,
Пробовал с PostMessage и с другими не помогает, что предложите?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.08.2016, 03:09
Ответы с готовыми решениями:

Движение мышки
Как сделать плавное движение мышкой (так как человек ведет) а не рывками....

Движение мышки
Как такое реализовать Если мышка движется в право то форма красная если в лево...

Движение мышки = Музыка
Здравствуйте. Подскажите пожалуйста как сделать так что бы когда программа...

Как отследить движение курсора мышки над объектом?
В нашем проекте есть видео объект, который содержит в себе трехмерную модель...

Движение курсора в чужом окне
Доброго времени, подскажите, вот есть хендл окна, как организовать перемещение...

11
cfbogd
botsik
259 / 259 / 140
Регистрация: 05.06.2016
Сообщений: 1,247
Записей в блоге: 1
27.08.2016, 09:09 2
DOKERcom, а в какой процедуре исполняется код?
0
DOKERcom
0 / 0 / 0
Регистрация: 04.05.2016
Сообщений: 34
27.08.2016, 13:37  [ТС] 3
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
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
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, CoolTrayIcon, StdCtrls;
 
type
  TForm1 = class(TForm)
    img1: TImage;
    img2: TImage;
    img3: TImage;
    img4: TImage;
    img5: TImage;
    cltrycn1: TCoolTrayIcon;
    img6: TImage;
    img7: TImage;
    img8: TImage;
    img9: TImage;
    edt1: TEdit;
    cbb1: TComboBox;
    edt2: TEdit;
    tmr1: TTimer;
    cbb2: TComboBox;
    tmr2: TTimer;
    procedure img1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure img2MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure img1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure img3MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure img4MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure img3MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure img5MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure cltrycn1Click(Sender: TObject);
    procedure img5MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure img6MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure img8MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure img7MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure img9MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure cbb1Change(Sender: TObject);
    procedure tmr1Timer(Sender: TObject);
    procedure tmr2Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
  Pixels:Integer;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.img1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
perform(WM_SysCommand,$F012,0);
end;
 
procedure TForm1.img2MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img2.Visible:=False;
img3.Visible:=True;
end;
 
procedure TForm1.img1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img2.Visible:=True;
img3.Visible:=False;
img4.Visible:=True;
img5.Visible:=False;
img6.Visible:=True;
img7.Visible:=False;
img9.Visible:=False;
img8.Visible:=true;
end;
 
procedure TForm1.img3MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
Form1.close;
end;
 
procedure TForm1.img4MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img4.Visible:=False;
img5.Visible:=True;
end;
 
procedure TForm1.img3MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img4.Visible:=True;
img5.Visible:=False;
end;
 
procedure TForm1.img5MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img2.Visible:=True;
img3.Visible:=False;
end;
 
procedure TForm1.cltrycn1Click(Sender: TObject);
begin
    cltrycn1.IconVisible:=False;
    Form1.Visible:=True;
    Application.ShowMainForm := True;
    ShowWindow(Handle,SW_SHOW); // ÏîêГ*çûâГ*ГҐГ¬ ïðîãðГ*ììó
    ShowWindow(Application.Handle,SW_SHOW);
end;
 
procedure TForm1.img5MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
cltrycn1.IconVisible:=True;
    Form1.Visible:=False;
    Application.ShowMainForm := False;
    ShowWindow(Handle,SW_HIDE); // ñêðûâГ*ГҐГ¬ ïðîãðГ*ììó
    ShowWindow(Application.Handle,SW_HIDE);
end;
 
procedure TForm1.img6MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img6.Visible:=False;
img7.Visible:=true;
end;
 
procedure TForm1.img8MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img8.Visible:=False;
img9.Visible:=true;
end;
 
procedure TForm1.img7MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img9.Visible:=False;
img8.Visible:=true;
end;
 
procedure TForm1.img9MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
img6.Visible:=True;
img7.Visible:=False;
end;
 
procedure TForm1.cbb1Change(Sender: TObject);
begin
if cbb1.ItemIndex=0 then
begin
edt1.Text:='130';
end;
end;
 
procedure TForm1.tmr1Timer(Sender: TObject);
begin
if edt1.Text = '' then
else
begin
tmr2.Interval:=strtoint(edt1.Text);
end;
if edt2.Text = '' then
else
begin
Pixels:=strtoint(edt2.text);
end;
if (GetKeyState(VK_LBUTTON) AND 128) = 128 then
begin
tmr2.Enabled:=True;
end
else
begin
tmr2.Enabled:=False;
end;
end;
procedure TForm1.tmr2Timer(Sender: TObject);
var
  x, y: integer;
begin
//if FindWindow(nil,'Rust')<> 0 then
//begin
//ShowMessage('Yes');
//Close;
//end;
x := Mouse.CursorPos.X;
y := Mouse.CursorPos.Y;
Mouse.CursorPos := Point(x, y+Pixels);
end;
 
end.
0
cfbogd
botsik
259 / 259 / 140
Регистрация: 05.06.2016
Сообщений: 1,247
Записей в блоге: 1
27.08.2016, 13:54 4
Цитата Сообщение от DOKERcom Посмотреть сообщение
if edt1.Text = '' then else
не понял что это
Цитата Сообщение от DOKERcom Посмотреть сообщение
begin tmr2.Enabled:=True; end
можно и без скобок begin end;

Не по теме:

если честно, не пойму смысла программы, если вы объясните для чего она, я думаю что я и другие пользователи смогут вам предоставить более полезную информацию и код :)

0
AllFree
Заблокирован
27.08.2016, 13:56 5
Попробуйте переписать на AutoIt. Там есть почти всё для разработки автокликеров и ботов.
Очень простой язык.
0
DOKERcom
0 / 0 / 0
Регистрация: 04.05.2016
Сообщений: 34
27.08.2016, 15:00  [ТС] 6
ну а по делфи7 нельзя?

Добавлено через 3 минуты
Программа будет гасить отдачу оружия, при нажатии на левую кнопку мыши...
0
AllFree
Заблокирован
27.08.2016, 15:52 7
Можно, просто на делфи сложнее. Я бы помог, но не на чем проверить. Нет игры под рукой.
0
DevAlone
324 / 276 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
Завершенные тесты: 4
27.08.2016, 15:56 8
Гуглите "хуки windows" или перехват мыши. На delphi не знаю, но на C++ должно получиться.
0
cfbogd
botsik
259 / 259 / 140
Регистрация: 05.06.2016
Сообщений: 1,247
Записей в блоге: 1
27.08.2016, 15:56 9
Цитата Сообщение от DOKERcom Посмотреть сообщение
Программа будет гасить отдачу оружия, при нажатии на левую кнопку мыши...

Не по теме:

программе, извините за выражение, просто пофиг что там на экране, она будет выполнять код, который вы написали. Прога не знает что такое оружие, отдача и все такое.

0
AllFree
Заблокирован
27.08.2016, 15:59 10
Цитата Сообщение от DevAlone Посмотреть сообщение
Гуглите "хуки windows" или перехват мыши. На delphi не знаю, но на C++ должно получиться.
С++ вызывает какие-то другие API? Что за бред?
0
DevAlone
324 / 276 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
Завершенные тесты: 4
27.08.2016, 16:23 11
Цитата Сообщение от AllFree Посмотреть сообщение
С++ вызывает какие-то другие API? Что за бред?
Не кодил на дельфи, поэтому не скажу, что он вызывает, а C++ работает с WinAPI
0
DOKERcom
0 / 0 / 0
Регистрация: 04.05.2016
Сообщений: 34
09.07.2017, 22:32  [ТС] 12
Да ладно!
0
09.07.2017, 22:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2017, 22:32

Самый бюджетный ПК для игры в RUST
Всем привет, пытаюсь собрать самый дешевый ПК конкретно под одну единственную...

[Rust] Обсуждение возможностей и предстоящей роли языка Rust
Psilon, чем он тебя так привлек? И почему именно &quot;убийца плюсов&quot;? Если...

[Rust] Как привязывать WinAPI-функции к коду на Rust?
Может кто-нить дать код, КАК привязывать вин апишные функции к растовскому коду...


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

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

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