Приветствую всех...Давно не писал новых статей...Что ж,извиняюсь! Не знал, что мне написать в delphi...Ну вот мои изыскания привели меня к игре World of Tanks...Причем тут эта игра спросите вы?.. Все очень просто... Как вы знаете у этой игры есть один изъян, а именно, боты...Одним из них является бот autotank.Одна проблема, этот бот был написан для Windows 7 и,к сожалению,в системе Windows XP он неадекватно работает...У меня возникла проблема, этот бот не запускал танки в бой и приходилось самому нажимать кнопку "В бой"...Я подошел к решению этой проблемы творчески, а именно решил собрать кликер в delphi...
И так для этого нам потребуется 3 компонента Edit с вкладки Standart,3 Timer'а с вкладки System,2 компонента Button ну и конечно, для красоты компонент XP Manifest с вкладки Win32...Далее начинаем писать код для таймеров...
Timer1:
var
p: TPoint;
begin
GetCursorPos(p);
Edit1.Text:= IntToStr(p.X);
Edit2.Text:= IntToStr(p.Y);
end;
Timer2:
begin
if getasynckeystate($11)<>0 then begin
Timer1.Enabled:=False;
Timer2.Enabled:=False;
end;
Timer3:
var
position: TPoint;
begin
if getasynckeystate($20)<>0 then begin
Timer1.Enabled:=True;
Timer2.Enabled:=True;
Timer3.Enabled:=False;
button1.Enabled:=True;
button2.Enabled:=False;
end
else begin
SetCursorPos(StrToInt(Edit1.text),StrToInt(Edit2.text));
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
end;
Во вкладке Enabled переводим его значение в параметр False...
Далее напишем код для двух кнопочек... Первая "Старт" и вторая "Стоп"...
Button1 (Старт):
begin
if Edit3.Text='' then
showmessage('Ошибка')
else begin
Timer3.Interval:=StrToInt(Edit2.Text);
Timer3.Enabled:=True;
button1.Enabled:=False;
button2.Enabled:=True;
end;
Button2 (Стоп):
begin
Timer3.Enabled:=False;
Timer1.Enabled:=True;
Timer2.Enabled:=True;
button2.Enabled:=False;
button1.Enabled:=True;
end;
Ну вот в принципе вот и все...
Исходник с объяснениями можно скачать тут... http://narod.ru/disk/53861215001.cc843549619b479ed2616729408e3644/Кликер.rar.html