Zireael |
Отправлено: 26 Мая, 2020 - 15:07:39
|
Эксперт
Покинул форум
Сообщений всего: 4461
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: Потому что сразу возник вопрос где взять эту библиотеку
Это стандартная dll.
Цитата: К тому же стоит ли усложнять код дополнительной библиотекой
Это не усложняет код, а позволяет использовать функции, которых в кибор нет.
Цитата: Ну а про то что не поверх игры окно есть соображения?
Без понятия, коряво оно работает, это вопрос к Kibor почему пропадает стиль поверх всех окон. Я просто в таймере меняю стиль, тогда оно всегда будет поверх всех окон.
code (Отобразить)CODE:#define WS_VISIBLE 268435456
#define WS_CHILD 1073741824
#define HWND_TOPMOST -1
#define SWP_NOMOVE 2
#define SWP_NOSIZE 1
external(INT, "wsprintf", "wsprintfA", "User32.dll" );
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll");
external(INT, "SetWindowText", "SetWindowTextA", "User32.dll");
external(INT, "SetWindowPos", "SetWindowPos", "User32.dll");
int t1, t2;
int static1, static2, static3;
int h_dialog;
int pause_=66; // 66 секунд
createdialog(0);
showdialog(0, "Диалог", 400, 300, 250, 120, 1, 1);
SetWindowText(static2, "Нужный текст");
SetWindowText(static3, "Ещё текст");
t1=gettime()/1000; t2=t1;
enabletimer(0);
loop()sleep(10);
function getmessage(0, WM_CREATE)
{
h_dialog = gethwnd(0);
static1=CreateWindow(0, "STATIC", "", WS_CHILD | WS_VISIBLE, 10, 10, 200, 20, gethwnd(0), 0, 0, 0);
static2=CreateWindow(0, "STATIC", "", WS_CHILD | WS_VISIBLE, 10, 35, 200, 20, gethwnd(0), 0, 0, 0);
static3=CreateWindow(0, "STATIC", "", WS_CHILD | WS_VISIBLE, 10, 60, 200, 20, gethwnd(0), 0, 0, 0);
}
function toNormalTime(int Seconds)
{
char c[1024];
int Min=Seconds/60, Sec=Seconds-Min*60;
wsprintf(address(#c[0]), "%02d:%02d", Min, Sec);
return format(#c[0]);
}
CREATE_TIMER(0, 100)
{
SetWindowPos(h_dialog, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
if(pause_>-1)
{
SetWindowText(static1, toNormalTime(pause_));
t1=gettime()/1000;
if(t1!=t2){t1=gettime()/1000; t2=t1; pause_--;}
}
} |
|
|
10970 |
Отправлено: 26 Мая, 2020 - 15:45:03
|
Специалист
Покинул форум
Сообщений всего: 245
Дата рег-ции: Июнь 2019
Откуда: Россия
Репутация: 0
|
Kibor пишет: Zireael пишет: Без понятия, коряво оно работает, это вопрос к Kibor почему пропадает стиль поверх всех окон
Так может игра просто периодически устанавливает такой стиль? А Кибор в момент создания окна только.
Тут есть варианты. КОгда игра запущена в фиксированном размере окна игры (без рамки) То меню находится сверху. А если игра запущена в ОКНЕ, то окно скрипта поверх не накладывается...
Как обойти?)))
(Добавление)
Пасяб, буду разбираться. Хотя наврядли на данном этапе получится. (про ДЛЛ)(Отредактировано автором: 26 Мая, 2020 - 15:46:33) |
|
|
10970 |
Отправлено: 27 Мая, 2020 - 01:38:34
|
Специалист
Покинул форум
Сообщений всего: 245
Дата рег-ции: Июнь 2019
Откуда: Россия
Репутация: 0
|
PHP:external(INT, "wsprintf", "wsprintfA", "User32.dll" );
pause_(rand(10000,30000));
function pause_(int i)
{
int gt=gettime();
looptime(i)
{
textout(0,800,30, "Пауза : "+toNormalTime(i+(gt-gettime())), 0); //вместо этого можно изменять текст в немодальном окне
sleep(10);
}
}
function toNormalTime(int dMillisec)
{
char c[1024];
double dSec = dMillisec / 1000;
int iHour=dSec/3600,
iMin=dSec/60-iHour*60,
iSec=dSec-iHour*3600-iMin*60;
wsprintf(address(#c[0]), "%02d:%02d:%02d", iHour, iMin, iSec);
return format(#c[0]);
}
Вот этот код в 8 случаях из 10 вешает кибор намертво. Помогает только кил процесса. |
|
|
10970 |
Отправлено: 27 Мая, 2020 - 02:34:56
|
Специалист
Покинул форум
Сообщений всего: 245
Дата рег-ции: Июнь 2019
Откуда: Россия
Репутация: 0
|
Zireael пишет: Цитата: Вот этот код в 8 случаях из 10 вешает кибор намертво. Помогает только кил процесса.
Код работает. Пк перезагрузите.
у меня 10 компов работают на этом боте. Когда проверяю новую версию, я сначала прогоняю ее на своем компе, а потом на других. В данный момент я хотел проверить только этот блок исключительно. И на всех компах процесс периодически зависает.
Перезагрузка компа исключается категорически. Потому что от этого функция бота перестает быть прибыльной.
Значит придется искать другой вариант(( А вообще мне понравилось такое решение. Жаль что не работает как надо у меня.
(Добавление)
Кстати хотел выразить признательность вам и Кибору.
Единственные люди как я понимаю которые хоть както поддерживают форум. Ибо всем остальным абсолютно насрать на вопросы. Жаль . На форуме по любому много людей которые отлично разбираются в механике работы Кибора. Но отзывчивость у форума абсолютный ноль.
Если бы вы не помогали, даже не знаю что бы делал... |
|
|
10970 |
Отправлено: 27 Мая, 2020 - 12:25:19
|
Специалист
Покинул форум
Сообщений всего: 245
Дата рег-ции: Июнь 2019
Откуда: Россия
Репутация: 0
|
Zireael пишет: Цитата: И на всех компах процесс периодически зависает.
В какой момент? Оставшееся время отображает? Отладчик включите, посмотрите какие строки выполняются.
Зависает либо в момент старта, то есть когда отображается начало отсчета рандомной паузы и сразу замирает. Либо по середине отсчета. Просто перестает считать.
Отладчиком ок, посмотрю. |
|
|
10970 |
Отправлено: 29 Мая, 2020 - 11:45:26
|
Специалист
Покинул форум
Сообщений всего: 245
Дата рег-ции: Июнь 2019
Откуда: Россия
Репутация: 0
|
лучше бы не обновлялся ваш кибор. Или оставался выбор версии.
Позавчера все работало нормально, с вчерашнего дня начало постоянно раз в 8 часов вылетать все нахрен. То памяти не хватает, то картинки перестал находить, то какие то ошибки пишет после 16 часов работы. Бред какойто.
Работает 16 часов потом оут оф мемори и нахер все сливает. Неделю пахал нормально, думал наконец стабильно все будет, а фиг там. Или еще вот такая табла вылазит.. тоже почти на всех (для просмотра ссылки Вам необходимо авторизоваться) (для просмотра ссылки Вам необходимо авторизоваться) (для просмотра ссылки Вам необходимо авторизоваться) (для просмотра ссылки Вам необходимо авторизоваться) Может сутки работать, а под конец вот такая хрень вылезет.
че, изза чего ваще не понимаю. Ушел на старого бота, дальше не интересно становится. Картинки с допуском меньше 50 ваще ни одной не находит. За 4 месяца почти сделал все, и все работало. А щас косяк на косяке.
Спасибо всем, продлевать подписку наверно не буду. Помощи на этом "форуме" тоже хер от кого дождешься, когда она нужна. По сути один Zireael и иногда Кибор. Программа заявлена как НЕ ТРЕБУЮЩАЯ знаний програмирования, но не уточняется что без этого знания можно только демонстрашку запилить типа как рекламные видосы. Ни хрена боле менее серьезного тут не сделать. А если и сделать, то со знанием кода. И не заходя на форум.
Буду пользовать старого бота. |
|
|
|