Кибор » Кибор - Интегрированная среда разработки ботов » Тестирование Кибор » Новый Визуальный редактор

Страниц (24): В начало « ... 3 4 5 6 [7] 8 9 10 11 ... » В конец
 

61. Kibor - 25 Мая, 2021 - 13:30:02 - перейти к сообщению
konctantin777 , Нужен алгоритм.
Баг есть, но не идентифицирован.
62. konctantin777 - 25 Мая, 2021 - 13:50:52 - перейти к сообщению
Скрипт собранный, ещё на сервер не загрузить с картинками ? (может что не так делаю)
63. Kibor - 25 Мая, 2021 - 16:51:59 - перейти к сообщению
 konctantin777 пишет:
Скрипт собранный, ещё на сервер не загрузить с картинками ? (может что не так делаю)

?
64. konctantin777 - 26 Мая, 2021 - 06:17:33 - перейти к сообщению
В виз редакторе нарисовал. Получил код. Пробую- кибор- загрузить скрипт на сервер. Говорит, что блока "ресурс" нет. Соответственно, если с компа убрать картинки- не рабтает.
65. Kibor - 26 Мая, 2021 - 06:24:19 - перейти к сообщению
Блок ресурсов пока не реализован в новом редакторе.
66. Kibor - 26 Мая, 2021 - 09:01:07 - перейти к сообщению
Добавил прокрутку правой панели.

SELECT
TRANSFER
SEPARATOR
TRUE
FALSE
SEPARATOR

в файле \profile\global.txt
надо удалить
67. Kibor - 26 Мая, 2021 - 18:02:04 - перейти к сообщению
Изменил блок Call

Этот блок для вызова созданных нами функций.
Теперь в нем есть поле для ввода имени переменной, в которую запишется возвращаемое с функции значение.

Если поле пустое будет код:
CODE:
NameFun();


Если ввести имя переменной будет:
CODE:
int Rez;

Rez=NameFun();


Тип переменной выбирается в списке COMBO

Шаблон Call
CODE:
[INTERFACE]
DIALOG, "Вызов функции", 402, 153;
STATIC, "Вызвать функцию", 4, 4, 96, 20;
EDIT, 104, 4, 152, 20, unknown Name;
STATIC, "Параметры", 4, 28, 64, 20;
EDIT, 72, 28, 320, 20, unknown Par;
STATIC, "Записать возврат в переменную", 4, 52, 176, 20;
EDIT_WRITE_RETURN, 184, 52, 100, 20, unknown Var;
COMBO, "int""double""string""char""win", 292, 52, 100, 80, string Type;
STATIC, "Комментарий", 4, 76, 72, 20;
EDIT, 80, 76, 312, 20, unknown Comment;
BUTTON_OK, "Принять", 184, 104, 100, 20;
BUTTON_CANCEL, "Закрыть", 292, 104, 100, 20;
[END]




[APPEARANCE]
COLOR = 205, 108, 35;
SIZE_X = 12;
SIZE_Y =4;
[END]

[INFO]
>>" ">>Name>>[ENDL]>>Par>>[ENDL]>>Comment
[END]

[ASSOC_VAR]
Name=;
Par=;
Var=;
Type="int";
vType=~GET(regexsearch(~Type~,"(?<=\")(.*)+(?=\")")~;
Comment=;
CALL=~Name~(~Par~)~%59~;
[END]


[GLOBAL_VAR]
~vType~ ~Var~;
[END]


[CALL]
CALL
[END]
68. Kibor - 26 Мая, 2021 - 18:59:58 - перейти к сообщению
Кому не хватает блока RESOURCE что бы создавать скрипты которые распаковывают изображения с ресурсов, может пока использовать это:

После блока старт вставить блок кода, в котором прописать

CODE:
RESOURCE
{
"C:\Image_0.bmp";
"C:\Image_1.bmp";
}


C:\Image_0.bmp C:\Image_1.bmp пути к используемым изображениям.
Вместо Блока FindImage использовать FindImage_RES

Он генерирует загрузку изображений так:
CODE:
unpack("C:\Image_0.bmp", tempfolder()+"Image_0.bmp", 1);
loadimage(#Image0[0][0], tempfolder()+"Image_0.bmp");


Получится код такой

CODE:
int Image0[12][10];
int Image1[18][12];

unpack("C:\Image_0.bmp", tempfolder()+"Image_0.bmp", 1);
loadimage(#Image0[0][0], tempfolder()+"Image_0.bmp");
unpack("C:\Image_1.bmp", tempfolder()+"Image_1.bmp", 1);
loadimage(#Image1[0][0], tempfolder()+"Image_1.bmp");

RESOURCE
{
"C:\Image_0.bmp";
"C:\Image_1.bmp";
}
FindImage_RES(0, #Screen[0][0], #W_Kib, W_Kib.leftclient, W_Kib.topclient, #Image0[0][0], 1, #K_Kib, #X_Kib[0], #Y_Kib[0], 0, 0, 1024, 768, 0, 0, -1, 0, 100, 0, 0, "Бездействие", 0, 0, 0);
FindImage_RES(0, #Screen[0][0], #W_Kib, W_Kib.leftclient, W_Kib.topclient, #Image1[0][0], 1, #K_Kib, #X_Kib[0], #Y_Kib[0], 0, 0, 1024, 768, 0, 0, -1, 0, 100, 0, 0, "Бездействие", 0, 0, 0);


Отличие FindImage_RES от FindImage

В раздел [ASSOC_VAR] добавлена переменная
CODE:
File=~GET(regexsearch(~Path~, "(?<=\\)(.*?)", 16))~;

В которой будет имя файла с расширением.

Раздел [GLOBAL_REPEAT_CODE] изменен с
CODE:
[GLOBAL_REPEAT_CODE]
loadimage(#Image~*~[0][0], ~Path~);
[END]

на
CODE:
[GLOBAL_REPEAT_CODE]
unpack(~Path~, tempfolder()+~%34~~File~~%34~, 1);
loadimage (#Image~*~[0][0], tempfolder()+~%34~~File~~%34~);
[END]

(Добавление)
Добавил к шаблонам for loop looptime while

раздел [INFO] для вывода параметров циклов
69. Kibor - 27 Мая, 2021 - 04:05:43 - перейти к сообщению
Обновил программу и шаблоны.
Переименовал раздел [GLOBAL_SINGLE_CODE] в [GLOBAL_SINGLE_CODE_TOP]

Теперь что бы создать код который имеет блок RESOURCE и функции загрузки
CODE:
unpack("C:\Image_0.bmp", tempfolder()+"Image_0.bmp", 1);
loadimage (#Image0[0][0], tempfolder()+"Image_0.bmp");


Надо использовать шаблон FindImage_RES.
Не совместим с шаблоном FindImage
Позже сделаю универсально.

Добавил разделы [REGEXPLACE_CODE] и [GLOBAL_SINGLE_CODE_BOTTOM]

Пояснение ниже.
С их помощью можно генерировать такой код:

 Цитата:
//Переменные

load_images_RES();

//Основнй код и функции

RESOURCE
{
"C:\s.bmp";
"C:\Image_0.bmp";
}

function load_images_RES()
{
unpack("C:\s.bmp", tempfolder()+"s.bmp", 1);
loadimage (#Image1[0][0], tempfolder()+"s.bmp");
unpack("C:\Image_0.bmp", tempfolder()+"Image_0.bmp", 1);
loadimage (#Image0[0][0], tempfolder()+"Image_0.bmp");
}


Принцип состоит в замене с помощью регулярного выражения.

============================================================================================

[REGEXPLACE_CODE] - в этом блоке прописывается регулярные выражения которые будут выполнены в самом конце генерирования кода.
С помощью них можно произвести замену указанных частей кода на свои.

Синтаксис:
 Цитата:
Что менять1 = На что менять1 ;
Что менять2 = На что менять2 ;



Пояснение к синтаксису регулярнго выражения в блоке [REGEXPLACE_CODE]:
CODE:
"RESOURCE" ~%13~~%10~"\{"~%13~~%10~ = "RESOURCE"~%13~~%10~"{"~%13~~%10~~Path~~%59~~%13~~%10~;

Символы
CODE:
=
;
перенос строки
новая строка

если они не в кавычках надо заменять на команды ~%код_символа~

Данное выражение означает заменить
CODE:
RESOURCE
{


на
CODE:
RESOURCE
{
~Path~;


где ~Path~ будет заменено на значение переменной Path.

Пример:
Есть сгенерированный код:
CODE:
RESOURCE
{
}

Если указать в блоке [REGEXPLACE_CODE] регуоярное выражение:
CODE:
[REGEXPLACE_CODE]
"RESOURCE" ~%13~~%10~"\{"~%13~~%10~ = "RESOURCE"~%13~~%10~"{"~%13~~%10~~Path~~%59~~%13~~%10~;
[END]

данный код заменится на
CODE:
RESOURCE
{
"C:\Image_0.bmp";
}

[END][/code]
где "C:\Image_0.bmp" значение переменной Path

Еще пример:
При наличие такого кода:
CODE:

RESOURCE
{
}

function load_images_RES()
{
}


Команды
CODE:
[REGEXPLACE_CODE]
"function load_images_RES\(\)"~%13~~%10~"\{"~%13~~%10~ = "function load_images_RES()"~%13~~%10~"{"~%13~~%10~"unpack("~Path~", tempfolder()+"~%34~~File~~%34~", 1);"~%13~~%10~;
"function load_images_RES\(\)"~%13~~%10~"\{"~%13~~%10~ = "function load_images_RES()"~%13~~%10~"{"~%13~~%10~"loadimage (#Image"~*~"[0][0], tempfolder()+"~%34~~File~~%34~");"~%13~~%10~;
"RESOURCE" ~%13~~%10~"\{"~%13~~%10~ = "RESOURCE"~%13~~%10~"{"~%13~~%10~~Path~~%59~~%13~~%10~;
[END]


сгенерируют такой код:
CODE:
RESOURCE
{
"C:\Image_0.bmp";
}

function load_images_RES()
{
unpack("C:\Image_0.bmp", tempfolder()+"Image_0.bmp", 1);
loadimage (#Image0[0][0], tempfolder()+"Image_0.bmp");
}



Вызов функции load_images_RES()
можно сделать в блоке
CODE:
[GLOBAL_REPEAT_CODE]
load_images_RES();
[END]


============================================================================================

[GLOBAL_SINGLE_CODE_BOTTOM] - в этом блоке прописывается глобальный код, вставляемый один раз в самом низу скрипта.
Использовать для создания независимых блоков кода.
К примеру такой код блока [GLOBAL_SINGLE_CODE_BOTTOM]
CODE:
[GLOBAL_SINGLE_CODE_BOTTOM]
RESOURCE
{
}
[END]

вставит в самом низу код:
CODE:
RESOURCE
{
}

Затем с помощью команд блока [REGEXPLACE_CODE] можно вставлять в этот блок кода свои строчки кода.
Данный код должен быть закончен по своему смыслу выполнения.

============================================================================================
(Добавление)
Что бы изменить проект который создан на FindImage на проект на FindImage_RES
достаточно открыть в блокноте сохранение и заменить
FindImage на FindImage_RES
при загрузке согласиться добавить параметр и пересохранить.
70. Kibor - 28 Мая, 2021 - 00:26:18 - перейти к сообщению
Обновил программу и шаблоны.
Добавил настройки блоков анализа изображения.
Координаты задаются относительно указанной привязки.


Powered by ExBB FM 1.0 Final