В общем в окне все включается и настраивается.
Все настройки окна берутся из текстового файла
Кликер B&S v0.1 (Отобразить)
CODE:
int pos_size_edit0[14][4], pos_size_check0[23][4], flag_check0[23], pos_size_combo0[1][4], strok_combo0[1], flag_combo0[1], pos_size_button0[1][4], flag_button0[1], t[14], t1[14], kod[16], kodi[17], galki[23][4], edit[23][4], tim, n, n1, n2, zona[16], koordinati[16], x[1], y[1];
string text_edit0[14], text_check0[23], text_combo0[1][8], text_button0[1], text[23], kombo[1][8];
int flag_combo=-1;
int f=0;
int sozdat=0;
//настройки которые считываются из текстового файла
if (fopen ("настройки окна", "r")!=0)//открываем настройки
{
for(n=0; n<14; n++){for(n1=0; n1<4; n1++){fread(edit[n][n1]);}}//параметры полей эдит
for(n=0; n<23; n++){for(n1=0; n1<4; n1++){fread(galki[n][n1]);}}//параметры галок
for(n=0; n<23; n++){freadline(text[n]);}//тескт галок
for(n=0; n<1; n++){for(n1=0; n1<8; n1++){freadline(kombo[n][n1]);}}//комбо списки класы персонажей
for(n=0; n<17; n++){fread(kodi[n]);}//коды клавишь
for(n=0; n<16; n++){fread(koordinati[n]);}//координаты поиска изображений X Y начало, X Y конец
fclose();//закрываем файл
}
//настройки полей эдит..... считывается из текстового файла
for(n=0; n<14; n++){text_edit0[n]="0";for(n1=0; n1<4; n1++){pos_size_edit0[n][n1]=edit[n][n1];}}
//настройки галок и текст..... считывается из текстового файла
for(n=0; n<23; n++){flag_check0[n]=0;text_check0[n]=text[n];for(n1=0; n1<4; n1++){pos_size_check0[n][n1]=galki[n][n1];}}
//комбо список... класы персонажей..... считывается из текстового файла
for(n=0; n<1; n++){for(n1=0; n1<8; n1++){text_combo0[n][n1]=kombo[n][n1];}}
//расположение списка комбо
pos_size_combo0[0][0]=150; pos_size_combo0[0][1]=200; pos_size_combo0[0][2]=140; pos_size_combo0[0][3]=140;
strok_combo0[0]=8;//количество строк
flag_combo0[0]=0;
//расположение кнопки сохранить
pos_size_button0[0][0]=300; pos_size_button0[0][1]=200; pos_size_button0[0][2]=80; pos_size_button0[0][3]=20;
text_button0[0]="Сохранить";
//создание окна
createdialog(0, EDIT, #pos_size_edit0[0][0], #text_edit0[0] | CHECK, #pos_size_check0[0][0], #text_check0[0], #flag_check0[0] | COMBO, #pos_size_combo0[0][0], #text_combo0[0][0], #strok_combo0[0], #flag_combo0[0] | BUTTON, #pos_size_button0[0][0], #text_button0[0], #flag_button0[0]);
//название окна, положение и размеры, поверх окон
showdialog(0, "B&S Кликер", 1400, 400, 400, 550, 1, 0);
//настройки антиантикликера
options ("antianticlicker", 2, 1, 0, 0, 5, 0, 0);
//коды кнопок..... считывается из текстового файла
for(n=0; n<17; n++){kod[n]=kodi[n];}
//количество и максимальные размеры изображений
int Image_[25][200][100];
//загрузка изображений
for(n=16; n<25; n++){loadimage (#Image_[n][0][0], "Image_"+format(n)+".bmp");}
//координаты зон поиска изображений..... считывается из текстового файла
for(n=0; n<16; n++){zona[n]=koordinati[n];}
//время
for(n1=0; n1<14; n1++){t1[n1]=gettime();}
//включаем таймер 0
enabletimer(0);
//основной код
loop()
{
//поднять лут и тд
for(n2=16; n2<21; n2++)
{
if (flag_check0[n2]==1)
{
if (findimage(1, #Image_[n2][0][0], 0, #x[0], #y[0], zona[0], zona[1], zona[2], zona[3], 0, 0, 0, 0, 0, 0, 70, 0, -1)==1){key(kod[11]);pause(70);}
}
}
//Квесты ищем изображение над кнопкой выйти
if (flag_check0[21]==1)
{
keyf: if (findimage(1, #Image_[21][0][0], 0, #x[0], #y[0], zona[8], zona[9], zona[10], zona[11], 5, 5, 5, 5, 5, 15, 70, 0, -1)==1)
{
key(kod[11]);//кнопка F
if (findimage(1, #Image_[22][0][0], 0, #x[0], #y[0], zona[12], zona[13], zona[14], zona[15], 5, 5, 5, 5, 5, 5, 70, 0, -1)==1)
{//ищем изображение кнопки Y
pause(50);
key(kod[14]);//кнопка Y
pause(50);
}
else {pause(200); goto keyf;}//не нашли возвращаемся к нажатию кнопки F
}
}
//Атака ищет изображения рамки ХП мобов и босов
if (flag_check0[22]==1)
{
if (findimage(1, #Image_[23][0][0], 0, #x[0], #y[0], zona[4], zona[5], zona[6], zona[7], 0, 0, 0, 0, 0, 0, 80, 0, -1)==1 || findimage(1, #Image_[24][0][0], 0, #x[0], #y[0], zona[4], zona[5], zona[6], zona[7], 0, 0, 0, 0, 0, 0, 80, 0, -1)==1)
{
if (f==0)
{
for(n1=0; n1<14; n1++){t1[n1]=gettime();}
f=1;
}
}
else f=0;
sleep(50);
}
}
//таймер
CREATE_TIMER(0, 50)//Номер таймера, выполнение таймера через мсек.
{
//чек галок и паузы в поле едит
if (f==1)
{
tim=gettime();
for(n=0; n<14; n++)
{
if (flag_check0[n]==1)
{
if (tim-t1[n]>=formatsn(text_edit0[n])){key(kod[n]);t1[n]=tim;}
}
}
}
//антиантикликер
antianticlicker(flag_check0[15]);
//Проверка кнопки Капс пауза скрипта
if(flag_check0[14]==1)
{
if (getkeystate(kod[16])==1)
{
ha:if (getkeystate(kod[16])==1){sleep(10); textout(0, 100, 120, "Остановлен", 2); goto ha;}
{
sa: if (getkeystate(kod[16])==1)
{
ha1:if (getkeystate(kod[16])==1){sleep(10); f=0; textout(0, 100, 120, "Запущен", 2); goto ha1;}
goto ex;
}
sleep(10);
goto sa;
}
}
ex:;
}
//считывание пауз из списка файлов
for(n1=0; n1<8; n1++) //перебираем список
{
if (flag_combo0[0]==n1)
{
if (flag_combo!=flag_combo0[0])//если флаг не равен прежнему выбору то выполнять
{
flag_combo=flag_combo0[0];
if (fopen (text_combo0[0][n1], "r")!=0)//открываем выбранный файл
{
for(n=0; n<14; n++){fread(text_edit0[n]);fread(flag_check0[n]);}//считываем поля эдит и галки
fclose();//закрываем файл
}
//если не нашли открываемый файл
else {sozdat=1; goto soz;}//переходим на его создание с обнулением галок
}
}
}
//кнопка сохранить если нажата то выполнять сохранение
if (flag_button0[0]==1)
{
soz: for(n1=0; n1<8; n1++) //перебираем какой пункт активен
{
if (flag_combo0[0]==n1)
{
if (fopen (text_combo0[0][n1], "w")!=0) //открываем для записи файл
{
for (n=0; n<14; n++)
{
if (sozdat==1)//если создать = 1 то выполняем обнуление полей и галок
{
text_edit0[n]="0";//обнуление поля
flag_check0[n]=0;//обнуление галки
}
fwrite(text_edit0[n]);//поле ввода
fwrite(ENDL);//переход строки
fwrite(flag_check0[n]);//записываем галки
fwrite(ENDL);//переход строки
}
fclose();//закрываем открытый файл
sozdat=0;//создать =0, отключаем обнуление
}
}
}
flag_button0[0]=0; //отпускаем кнопку
}
//
}
string text_edit0[14], text_check0[23], text_combo0[1][8], text_button0[1], text[23], kombo[1][8];
int flag_combo=-1;
int f=0;
int sozdat=0;
//настройки которые считываются из текстового файла
if (fopen ("настройки окна", "r")!=0)//открываем настройки
{
for(n=0; n<14; n++){for(n1=0; n1<4; n1++){fread(edit[n][n1]);}}//параметры полей эдит
for(n=0; n<23; n++){for(n1=0; n1<4; n1++){fread(galki[n][n1]);}}//параметры галок
for(n=0; n<23; n++){freadline(text[n]);}//тескт галок
for(n=0; n<1; n++){for(n1=0; n1<8; n1++){freadline(kombo[n][n1]);}}//комбо списки класы персонажей
for(n=0; n<17; n++){fread(kodi[n]);}//коды клавишь
for(n=0; n<16; n++){fread(koordinati[n]);}//координаты поиска изображений X Y начало, X Y конец
fclose();//закрываем файл
}
//настройки полей эдит..... считывается из текстового файла
for(n=0; n<14; n++){text_edit0[n]="0";for(n1=0; n1<4; n1++){pos_size_edit0[n][n1]=edit[n][n1];}}
//настройки галок и текст..... считывается из текстового файла
for(n=0; n<23; n++){flag_check0[n]=0;text_check0[n]=text[n];for(n1=0; n1<4; n1++){pos_size_check0[n][n1]=galki[n][n1];}}
//комбо список... класы персонажей..... считывается из текстового файла
for(n=0; n<1; n++){for(n1=0; n1<8; n1++){text_combo0[n][n1]=kombo[n][n1];}}
//расположение списка комбо
pos_size_combo0[0][0]=150; pos_size_combo0[0][1]=200; pos_size_combo0[0][2]=140; pos_size_combo0[0][3]=140;
strok_combo0[0]=8;//количество строк
flag_combo0[0]=0;
//расположение кнопки сохранить
pos_size_button0[0][0]=300; pos_size_button0[0][1]=200; pos_size_button0[0][2]=80; pos_size_button0[0][3]=20;
text_button0[0]="Сохранить";
//создание окна
createdialog(0, EDIT, #pos_size_edit0[0][0], #text_edit0[0] | CHECK, #pos_size_check0[0][0], #text_check0[0], #flag_check0[0] | COMBO, #pos_size_combo0[0][0], #text_combo0[0][0], #strok_combo0[0], #flag_combo0[0] | BUTTON, #pos_size_button0[0][0], #text_button0[0], #flag_button0[0]);
//название окна, положение и размеры, поверх окон
showdialog(0, "B&S Кликер", 1400, 400, 400, 550, 1, 0);
//настройки антиантикликера
options ("antianticlicker", 2, 1, 0, 0, 5, 0, 0);
//коды кнопок..... считывается из текстового файла
for(n=0; n<17; n++){kod[n]=kodi[n];}
//количество и максимальные размеры изображений
int Image_[25][200][100];
//загрузка изображений
for(n=16; n<25; n++){loadimage (#Image_[n][0][0], "Image_"+format(n)+".bmp");}
//координаты зон поиска изображений..... считывается из текстового файла
for(n=0; n<16; n++){zona[n]=koordinati[n];}
//время
for(n1=0; n1<14; n1++){t1[n1]=gettime();}
//включаем таймер 0
enabletimer(0);
//основной код
loop()
{
//поднять лут и тд
for(n2=16; n2<21; n2++)
{
if (flag_check0[n2]==1)
{
if (findimage(1, #Image_[n2][0][0], 0, #x[0], #y[0], zona[0], zona[1], zona[2], zona[3], 0, 0, 0, 0, 0, 0, 70, 0, -1)==1){key(kod[11]);pause(70);}
}
}
//Квесты ищем изображение над кнопкой выйти
if (flag_check0[21]==1)
{
keyf: if (findimage(1, #Image_[21][0][0], 0, #x[0], #y[0], zona[8], zona[9], zona[10], zona[11], 5, 5, 5, 5, 5, 15, 70, 0, -1)==1)
{
key(kod[11]);//кнопка F
if (findimage(1, #Image_[22][0][0], 0, #x[0], #y[0], zona[12], zona[13], zona[14], zona[15], 5, 5, 5, 5, 5, 5, 70, 0, -1)==1)
{//ищем изображение кнопки Y
pause(50);
key(kod[14]);//кнопка Y
pause(50);
}
else {pause(200); goto keyf;}//не нашли возвращаемся к нажатию кнопки F
}
}
//Атака ищет изображения рамки ХП мобов и босов
if (flag_check0[22]==1)
{
if (findimage(1, #Image_[23][0][0], 0, #x[0], #y[0], zona[4], zona[5], zona[6], zona[7], 0, 0, 0, 0, 0, 0, 80, 0, -1)==1 || findimage(1, #Image_[24][0][0], 0, #x[0], #y[0], zona[4], zona[5], zona[6], zona[7], 0, 0, 0, 0, 0, 0, 80, 0, -1)==1)
{
if (f==0)
{
for(n1=0; n1<14; n1++){t1[n1]=gettime();}
f=1;
}
}
else f=0;
sleep(50);
}
}
//таймер
CREATE_TIMER(0, 50)//Номер таймера, выполнение таймера через мсек.
{
//чек галок и паузы в поле едит
if (f==1)
{
tim=gettime();
for(n=0; n<14; n++)
{
if (flag_check0[n]==1)
{
if (tim-t1[n]>=formatsn(text_edit0[n])){key(kod[n]);t1[n]=tim;}
}
}
}
//антиантикликер
antianticlicker(flag_check0[15]);
//Проверка кнопки Капс пауза скрипта
if(flag_check0[14]==1)
{
if (getkeystate(kod[16])==1)
{
ha:if (getkeystate(kod[16])==1){sleep(10); textout(0, 100, 120, "Остановлен", 2); goto ha;}
{
sa: if (getkeystate(kod[16])==1)
{
ha1:if (getkeystate(kod[16])==1){sleep(10); f=0; textout(0, 100, 120, "Запущен", 2); goto ha1;}
goto ex;
}
sleep(10);
goto sa;
}
}
ex:;
}
//считывание пауз из списка файлов
for(n1=0; n1<8; n1++) //перебираем список
{
if (flag_combo0[0]==n1)
{
if (flag_combo!=flag_combo0[0])//если флаг не равен прежнему выбору то выполнять
{
flag_combo=flag_combo0[0];
if (fopen (text_combo0[0][n1], "r")!=0)//открываем выбранный файл
{
for(n=0; n<14; n++){fread(text_edit0[n]);fread(flag_check0[n]);}//считываем поля эдит и галки
fclose();//закрываем файл
}
//если не нашли открываемый файл
else {sozdat=1; goto soz;}//переходим на его создание с обнулением галок
}
}
}
//кнопка сохранить если нажата то выполнять сохранение
if (flag_button0[0]==1)
{
soz: for(n1=0; n1<8; n1++) //перебираем какой пункт активен
{
if (flag_combo0[0]==n1)
{
if (fopen (text_combo0[0][n1], "w")!=0) //открываем для записи файл
{
for (n=0; n<14; n++)
{
if (sozdat==1)//если создать = 1 то выполняем обнуление полей и галок
{
text_edit0[n]="0";//обнуление поля
flag_check0[n]=0;//обнуление галки
}
fwrite(text_edit0[n]);//поле ввода
fwrite(ENDL);//переход строки
fwrite(flag_check0[n]);//записываем галки
fwrite(ENDL);//переход строки
}
fclose();//закрываем открытый файл
sozdat=0;//создать =0, отключаем обнуление
}
}
}
flag_button0[0]=0; //отпускаем кнопку
}
//
}
изображения файл настройки и скомпиленый exe
вроди ничего не упустил.