Dantes3000 |
Отправлено: 22 Ноября, 2018 - 06:38:30
|
Эксперт
Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016
Репутация: 58
|
Вчера игрался с "шаг назад, шаг вперед", в итоге удалилось всё, что делал после открытия скрипта, но это ладно...ctrl+z в киборе давно тупит.
А сейчас из почти готового бота я получил сраный огрызок
Спойлер (Отобразить)CODE:int pos_size_button0[1][4];
string text_button0[1];
int flag_button0[1];
pos_size_button0[0][0]=100; pos_size_button0[0][1]=330; pos_size_button0[0][2]=100; pos_size_button0[0][3]=25;
text_button0[0]="Запустить";
int pos_size_static0[9][4];
string text_static0[9];
pos_size_static0[0][0]=8; pos_size_static0[0][1]=18; pos_size_static0[0][2]=100; pos_size_static0[0][3]=170; text_static0[0]="";
pos_size_static0[1][0]=120; pos_size_static0[1][1]=0; pos_size_static0[1][2]=45; pos_size_static0[1][3]=200; text_static0[1]="|"+formatic(13);
pos_size_static0[2][0]=0; pos_size_static0[2][1]=183; pos_size_static0[2][2]=120; pos_size_static0[2][3]=20; text_static0[2]="____________________________";
pos_size_static0[3][0]=45; pos_size_static0[3][1]=2; pos_size_static0[3][2]=30; pos_size_static0[3][3]=20; text_static0[3]="Лог";
pos_size_static0[4][0]=175; pos_size_static0[4][1]=2; pos_size_static0[4][2]=70; pos_size_static0[4][3]=20; text_static0[4]="Статистика";
pos_size_static0[5][0]=130; pos_size_static0[5][1]=17; pos_size_static0[5][2]=280; pos_size_static0[5][3]=35; text_static0[5]="Сред. время улова";
pos_size_static0[6][0]=130; pos_size_static0[6][1]=34; pos_size_static0[6][2]=280; pos_size_static0[6][3]=35; text_static0[6]="Сред. время общее";
pos_size_static0[7][0]=130; pos_size_static0[7][1]=51; pos_size_static0[7][2]=280; pos_size_static0[7][3]=35; text_static0[7]="Всего играем";
pos_size_static0[8][0]=130; pos_size_static0[8][1]=68; pos_size_static0[8][2]=280; pos_size_static0[8][3]=35; text_static0[8]="Всего рыбы";
loop(14)
{
text_static0[1]=text_static0[1]+"|"+formatic(13);
}
//////////
createdialog(0, BUTTON, #pos_size_button0[0][0], #text_button0[0], #flag_button0[0] |
STATIC, #pos_size_static0[0][0], #text_static0[0]); /***********ВНИМАТЕЛЬНО***********/
//////////
showdialog(0, "Ловись рыбка", 1030, 200, 300, 400, 1, 1);
//////////
while(flag_button0[0]<1) sleep(100);
flag_button0[0]=0;
text_button0[0]="Пауза";
/*********************************************************************************/
int stat_time_all_flag=gettime(); //сколько всего играем флаг
int stat_time_all_count=0; //сколько всего играем
int stat_time_all_fish=1; //сколько всего рыбы
int stat_time_all_middle=0; //среднее значение за все время
int stat_last_flag=gettime(); //время за которое словилось последняя
int stat_recently_flag=gettime(); //отсчет за последнее время флаг
int stat_recently_count=1; //сколько словил за последнее время
int stat_recently_middle=0; //среднее значение за последнее время раз
int stat_how_many_times=10; //за сколько последних раз брать статистику
/*********************************************************************************/
int xn=47, yn=128, xk=1006, yk=669;
win w=window ("Трофейная рыбалка 2 на Facebook - Mozilla Firefox", "MozillaWindowClass", -1);
int l=0;
//int sound_klev_col=getcolor(189, 23, w);
int r=20;
int xkid=xn+(xk-xn)/2, ykid=yn+(yk-yn)/2;
int t_pr=0, t_fl=0;
/*********************************************************************************/
enabletimer(0);
enabletimer(1);
st:;
loop()
{
pause(1300); sendmousemove(xkid, ykid-200, w); pause(500);
check_repair();
check_loot();
sendmouse(LEFT, xkid, ykid-200, w); log("Закинул"); pause(300);
if(getcolor(183, 23, w)==6579300) pause(1300); //пауза чтобы звук пропал
log("Жду клев");
looptime(16000)
{
//if(getcolor(100, 600, w)==1184527) {log("Вроде клюнуло"); goto bb1;} //черный квадрат где снасти
if(check_loot()==1) goto st;
if(pop_dostupen()==1) {log("Поправил поплавок"); sendkeydown(37, w); pause(200); sendkeyup(37, w); break;}
if(getcolor(183, 23, w)==6579300) {log("Клюнуло"); goto bb1;}
}
zabrat(); pause(1000);
goto st;
bb1:;
if(podsek()==0) goto st;
wait_loot();
}
function check_lvl()
{
Собрал ехе, запускаю - пишет Нет доступа. Собрал еще раз - нет доступа. Перезапустил кибор, собрал, запустил. Пишет - таймер 0 не создан. 90% скрипта нету. В папке темп за сегодняшний день 3 файла. 2 пустых и 1 с огрызком скрипта. 2 дня работы в жопу.
Где-то еще можно найти код свой?
Сделайте уже нормальное сохранение скриптов. Сделайте автосохранение. |
|
|
Dantes3000 |
Отправлено: 22 Ноября, 2018 - 07:11:53
|
Эксперт
Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016
Репутация: 58
|
Нужно сохранять не при запуске, а сохранять предыдущие 3-5 запусков. Что толку сохранять то, что запустил? Это годится только если кибор крашнет. Это даже сохранением назвать сложно...Это костыль, который так-сяк решает отсутствие нормально анализа кода перед компиляцией и запуском. Да что уж говорить, даже иконки быстрого сохранения нет, что немаловажно.
Я не знаю как кусок кода удалился. Тупо от самого конца и до первой функции. Оставшийся код нормальный.
Я не видел что код не полный. И повторить эту ошибку вряд ли получится. Даже если это не конкретный баг, то тот факт, что код часто удаляется случайно (например если при выделении мышь убрать из рабочего поля - выделение продолжается) уже говорит о том, что надо что-то менять. Про возврат на шаг назад я вообще молчу, боюсь им пользоваться, нажимаешь и оказываешься в рандомном участке кода, теряешься моментально. Можно доклацаться до того, что вообще нельзя будет шаг вперед сделать, а шаг назад - это версия скрипта на момент открытия.
Kibor пишет: Ни разу такого не было.
У меня тоже, я делал всё как обычно.
Собрал ехе, поставил галку запускать вместе с запуском ехе.
Зашел в тотал и запустил, выбило ошибку "нет доступа". Еще заметил что ехе этот занимал около 5 мегабайт. При втором сборе ехе тоже нет доступа, не уверен что размер был такой же, но не +-7мб как обычно.
На третий раз я уже перезашел в кибор, открыл сохраненный тхт, запустил и увидел ошибку таймера. Если бы я попытался собрать такой код в ехе - у меня бы этого не получилось. Значит всё таки что-то произошло без моего участия.
А мне вообще по-хорошему надо тут не писаниной заниматься, а восстанавливать код, пока помню. Всю ночь не спал, азарт был творить... (Отредактировано автором: 22 Ноября, 2018 - 07:17:01) |
|
|
Kibor |
Отправлено: 22 Ноября, 2018 - 10:10:23
|
Эксперт
Просматривает форум
Сообщений всего: 8218
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
Dantes3000 пишет: Что толку сохранять то, что запустил? Это годится только если кибор крашнет. Это даже сохранением назвать сложно...Это костыль, который так-сяк решает отсутствие нормально анализа кода перед компиляцией и запуском. Да что уж говорить, даже иконки быстрого сохранения нет, что немаловажно.
При чем тут костыль. Крах кстати далеко не всегда из за за нарушений синтаксиса. При чем тут анализ кода? Это автосохранение когда это действительно надо, что бы не потерять скрипт. В остальных случаях всегда есть доступ к меню.
Я не знаю как вы код творили что так получилось.
Проблем с отменой не замечено.
Отмена для того что бы отменить несколько неверных действий.
Dantes3000 пишет: У меня тоже, я делал всё как обычно.
Так я не понял? Это систематически, или один раз?
Что требуется от меня?
Будет алгоритм действий ведущих к такому - будет возможность устранять. Пока я не знаю что там было сделано. Может вы тачпад задели и выделили пол скрипта и успешно его заменили символом каким то или еще что то сделали. |
|
|
Dantes3000 |
Отправлено: 22 Ноября, 2018 - 10:50:57
|
Эксперт
Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016
Репутация: 58
|
Kibor пишет: Что требуется от меня?
Да я пожаловаться пришел...
Про выделение как раз и говорю...это не нормально, что чисто случайно можно удалить кучу кода.
Kibor пишет: При чем тут анализ кода?
Если бы кибор не дал мне собрать в ехе этот ломаный код,
я бы не перезапустил программу (тогда бы и возврат действий не стерся),
потом код бы не скомпилировался (и в автосохранении был бы нормальный код, который я запускал без проблем в прошлый раз).
Вообще идеально было бы добавить в меню "Сохранение текущей версии", тогда бы создавался файл название_время_сохранения.тхт
И пусть хоть 100 таких файлов мне папку засрут, я буду уверен, что у меня есть все предыдущие версии которые я захотел сохранить.
Я знаю, что можно нажимать "сохранить как". После многих ситуаций с потерей кода я так и начал чаще создавать резервные копии, но в этот раз потерял бдительность. Остался код суточной свежести. |
|
|
Zireael |
Отправлено: 22 Ноября, 2018 - 11:04:11
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: Проблем с отменой не замечено.
Если не использовать форматирование блоков.
CODE:int A=10;
if(1==1)
{
if(2==2)
{
if(3==3)messagebox(A);
}
}
1. Вставить код.
2. Изменить значение переменной A, допустим, на 20.
3. Нажать кнопку назад.
3. Форматировать блоки.
4. Нажатия кнопки назад не вернут к моменту где A изменили на 20. |
|
|
|