Здравствуйте, столкнулся с проблемой перехода при "не нашли картинку", т.е. бот ищет картинку в течении 5000 м. сек., кликает по ней ЛКМ как только нашел, при "не нашел картинку" осуществляется поиск другой картинки. Есть поиск изображения, при неправде осуществляется переход на нажатие клавиши F2, который также не работает.
Ни один переход при "неправда" не сработал как надо - сначала при поиске картинки проходит 5000 м.сек., заданное на ожидание изображения, затем висит еще с минуту, затем скрипт продолжает работу так, как будто он нашел картинку...
start_();
start ("D:\Program Files\Games\Fenix-Soft\Twwk\Играть!.bat");
sleep(7000);
q=0;
z=1;
key_(113, 1, 1000, 5000);
key_(13, 1, 1000, 2000);
m_KIB7: if (findimage_(#Image_3_KIB[0][0], 5000, 0, 200, 1, 15, 25, 0, -1, 80, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB11;
else goto m_KIB30;
m_KIB11: if (findimage_(#Image_5_KIB[0][0], 1000, 0, 200, 0, 0, 0, 0, -1, 80, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB36;
else goto m_KIB0;
m_KIB36: key_(113, 1, 1000, 1000);
1. AHACTAC - 19 Февраля, 2017 - 23:47:32 - перейти к сообщению
2. Kibor - 20 Февраля, 2017 - 03:22:25 - перейти к сообщению
Что это за огрызок кода? Мне начать срочно искать ошибку в программе?
Если не будет выложен проект VC, тема будет удалена.
Если не будет выложен проект VC, тема будет удалена.
3. AHACTAC - 21 Февраля, 2017 - 01:14:50 - перейти к сообщению
Прошу прощения, прикрепить проект VC или так же скопировать весь код ?!
Если приложить VC , то как ?!
(Добавление)
int k, x[10], y[10], n, q, i, z;
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[88][33];
int Image_1_KIB[15][15];
int Image_2_KIB[165][15];
int Image_3_KIB[31][27];
int Image_4_KIB[243][14];
int Image_5_KIB[49][11];
int Image_6_KIB[283][21];
int Image_7_KIB[18][14];
int Image_8_KIB[51][17];
int Image_9_KIB[27][43];
int Image_10_KIB[61][14];
start_();
start ("D:\Program Files\Games\Fenix-Soft\Twwk\Играть!.bat");
sleep(7000);
q=0;
z=1;
key_(113, 1, 1000, 5000);
key_(13, 1, 1000, 2000);
m_KIB7: if (findimage_(#Image_3_KIB[0][0], 5000, 0, 200, 1, 15, 25, 0, -1, 80, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB11;
else goto m_KIB30;
m_KIB11: if (findimage_(#Image_5_KIB[0][0], 1000, 0, 200, 0, 0, 0, 0, -1, 80, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB36;
else goto m_KIB0;
m_KIB36: key_(113, 1, 1000, 1000);
loop(3)
{
key_(39, 1, 1000, 1000);
}
m_KIB30: findimage_(#Image_9_KIB[0][0], 5000, 0, 200, 1, 27, 40, 200, -1, 60, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB);
if (findimage_(#Image_5_KIB[0][0], 2000, 0, 200, 0, 0, 0, 0, -1, 0, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB43;
else goto m_KIB0;
m_KIB23: B:; goto m_KIB21;
m_KIB0: if (findimage_(#Image_0_KIB[0][0], 2000, 0, 200, 0, 0, 0, 0, -1, 80, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB8;
else goto m_KIB13;
m_KIB8: findimage_(#Image_4_KIB[0][0], 5000, 0, 200, 1, 120, 7, 200, -1, 60, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB);
m_KIB1: if (findimage_(#Image_1_KIB[0][0], 5000, 0, 0, 0, 0, 0, 0, -1, 60, 90, 10, 0, 0, ex_KIB, ey_KIB, #k, #x[0], #y[0])>0) goto m_KIB2;
else goto m_KIB24;
m_KIB2: n=0;
m_KIB3: mouse_(500, 1, x[n], y[n], 200);
if (findimage_(#Image_2_KIB[0][0], 5000, 0, 200, 1, 80, 8, 200, -1, 60, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB9;
else goto m_KIB16;
m_KIB9: key_(13, 1, 1000, 1000);
mouse_(200, 1, x[n], y[n], 2000);
if (findimage_(#Image_2_KIB[0][0], 5000, 0, 200, 1, 80, 8, 200, -1, 60, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB38;
else goto m_KIB27;
m_KIB38: key_(13, 1, 1000, 1000);
m_KIB26: key_(112, 1, 1000, 1000);
if (findimage_(#Image_8_KIB[0][0], 5000, 0, 200, 1, 25, 15, 200, -1, 60, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB29;
else goto m_KIB20;
m_KIB29: key_(13, 1, 1000, 1000);
m_KIB37: q++;
if (q==2) goto C;
C:;
if (z==1)
{
goto B;
}
else
{
goto D;
} goto exit_KIB;
m_KIB27: key_(112, 1, 1000, 1000); goto m_KIB26;
m_KIB19: M:;
findimage_(#Image_7_KIB[0][0], 5000, 0, 0, 0, 0, 0, 0, -1, 60, 90, -1, 0, 0, ex_KIB, ey_KIB, #k, #x[0], #y[0]); goto m_KIB2;
m_KIB15: n++;
if (n==k)goto F; goto m_KIB3;
m_KIB16: key_(112, 1, 1000, 0); goto m_KIB15;
m_KIB32: if (findimage_(#Image_10_KIB[0][0], 5000, 0, 0, 0, 0, 0, 0, -1, 60, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB42;
else goto m_KIB34;
m_KIB42: loop(z)
{
key_(40, 1, 500, 500);
}
key_(13, 1, 1000, 1000);
z++;
if (z==15) end;
loop(3)
{
key_(37, 1, 1000, 1000);
}
q=0; goto m_KIB7;
m_KIB24: goto M; goto exit_KIB;
m_KIB20: key_(113, 1, 1000, 1000); goto m_KIB37;
m_KIB14: F:; goto m_KIB26;
m_KIB34: key_(13, 1, 1000, 1000); goto m_KIB42;
m_KIB35: key_(40, 1, 500, 500);
key_(40, 1, 500, 500);
key_(40, 1, 500, 500);
key_(13, 1, 1000, 1000); goto m_KIB32;
m_KIB13: findimage_(#Image_6_KIB[0][0], 5000, 0, 200, 1, 140, 10, 200, -1, 60, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB); goto m_KIB1;
m_KIB21: key_(112, 1, 1000, 1000);
key_(39, 1, 1000, 1000); goto m_KIB35;
m_KIB46: D:; goto m_KIB34;
m_KIB43: goto D;
exit_KIB:;
function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}
function key_(int k, int m, int p1, int p2)
{
pause(p1);
if (m==1) key(k);
if (m==2) keydown(k);
if (m==3) keyup(k);
pause(p2);
}
function mouse_(int p1, int m, int xm, int ym, int p2)
{
pause(p1);
if (m==1) mouse(LEFT, xm, ym);
if (m==2) mouse(MIDDLE, xm, ym);
if (m==3) mouse(RIGHT, xm, ym);
if (m==4) mousedown(LEFT, xm, ym);
if (m==5) mousedown(MIDDLE, xm, ym);
if (m==6) mousedown(RIGHT, xm, ym);
if (m==7) mouseup(LEFT, xm, ym);
if (m==8) mouseup(MIDDLE, xm, ym);
if (m==9) mouseup(RIGHT, xm, ym);
if (m==10) mousemove(xm, ym);
pause(p2);
}
function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
int timKIB, sumKIB, xKIB, yKIB;
pause(p1);
sumKIB=0;
if (t!=1) timKIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-timKIB<t){sleep(20); goto a;}
return 0;
e: sumKIB=sum; xKIB=x[0]; yKIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==10){mousemove(xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
return sumKIB;
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Развить кузню.bmp");
loadimage (#Image_1_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Кузница меч.bmp");
loadimage (#Image_2_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Кузнец улучшить (светлая).bmp");
loadimage (#Image_3_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Кузница.bmp");
loadimage (#Image_4_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Юниты.bmp");
loadimage (#Image_5_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Если есть юниты.bmp");
loadimage (#Image_6_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Юниты светлые.bmp");
loadimage (#Image_7_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Школа магии\Магическая палочка.bmp");
loadimage (#Image_8_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Развить кузню темная.bmp");
loadimage (#Image_9_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Школа магии\Школа Магии.bmp");
loadimage (#Image_10_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Меню\Локации\Столица.bmp");
}
Если приложить VC , то как ?!
(Добавление)
int k, x[10], y[10], n, q, i, z;
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[88][33];
int Image_1_KIB[15][15];
int Image_2_KIB[165][15];
int Image_3_KIB[31][27];
int Image_4_KIB[243][14];
int Image_5_KIB[49][11];
int Image_6_KIB[283][21];
int Image_7_KIB[18][14];
int Image_8_KIB[51][17];
int Image_9_KIB[27][43];
int Image_10_KIB[61][14];
start_();
start ("D:\Program Files\Games\Fenix-Soft\Twwk\Играть!.bat");
sleep(7000);
q=0;
z=1;
key_(113, 1, 1000, 5000);
key_(13, 1, 1000, 2000);
m_KIB7: if (findimage_(#Image_3_KIB[0][0], 5000, 0, 200, 1, 15, 25, 0, -1, 80, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB11;
else goto m_KIB30;
m_KIB11: if (findimage_(#Image_5_KIB[0][0], 1000, 0, 200, 0, 0, 0, 0, -1, 80, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB36;
else goto m_KIB0;
m_KIB36: key_(113, 1, 1000, 1000);
loop(3)
{
key_(39, 1, 1000, 1000);
}
m_KIB30: findimage_(#Image_9_KIB[0][0], 5000, 0, 200, 1, 27, 40, 200, -1, 60, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB);
if (findimage_(#Image_5_KIB[0][0], 2000, 0, 200, 0, 0, 0, 0, -1, 0, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB43;
else goto m_KIB0;
m_KIB23: B:; goto m_KIB21;
m_KIB0: if (findimage_(#Image_0_KIB[0][0], 2000, 0, 200, 0, 0, 0, 0, -1, 80, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB8;
else goto m_KIB13;
m_KIB8: findimage_(#Image_4_KIB[0][0], 5000, 0, 200, 1, 120, 7, 200, -1, 60, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB);
m_KIB1: if (findimage_(#Image_1_KIB[0][0], 5000, 0, 0, 0, 0, 0, 0, -1, 60, 90, 10, 0, 0, ex_KIB, ey_KIB, #k, #x[0], #y[0])>0) goto m_KIB2;
else goto m_KIB24;
m_KIB2: n=0;
m_KIB3: mouse_(500, 1, x[n], y[n], 200);
if (findimage_(#Image_2_KIB[0][0], 5000, 0, 200, 1, 80, 8, 200, -1, 60, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB9;
else goto m_KIB16;
m_KIB9: key_(13, 1, 1000, 1000);
mouse_(200, 1, x[n], y[n], 2000);
if (findimage_(#Image_2_KIB[0][0], 5000, 0, 200, 1, 80, 8, 200, -1, 60, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB38;
else goto m_KIB27;
m_KIB38: key_(13, 1, 1000, 1000);
m_KIB26: key_(112, 1, 1000, 1000);
if (findimage_(#Image_8_KIB[0][0], 5000, 0, 200, 1, 25, 15, 200, -1, 60, 90, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB29;
else goto m_KIB20;
m_KIB29: key_(13, 1, 1000, 1000);
m_KIB37: q++;
if (q==2) goto C;
C:;
if (z==1)
{
goto B;
}
else
{
goto D;
} goto exit_KIB;
m_KIB27: key_(112, 1, 1000, 1000); goto m_KIB26;
m_KIB19: M:;
findimage_(#Image_7_KIB[0][0], 5000, 0, 0, 0, 0, 0, 0, -1, 60, 90, -1, 0, 0, ex_KIB, ey_KIB, #k, #x[0], #y[0]); goto m_KIB2;
m_KIB15: n++;
if (n==k)goto F; goto m_KIB3;
m_KIB16: key_(112, 1, 1000, 0); goto m_KIB15;
m_KIB32: if (findimage_(#Image_10_KIB[0][0], 5000, 0, 0, 0, 0, 0, 0, -1, 60, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB42;
else goto m_KIB34;
m_KIB42: loop(z)
{
key_(40, 1, 500, 500);
}
key_(13, 1, 1000, 1000);
z++;
if (z==15) end;
loop(3)
{
key_(37, 1, 1000, 1000);
}
q=0; goto m_KIB7;
m_KIB24: goto M; goto exit_KIB;
m_KIB20: key_(113, 1, 1000, 1000); goto m_KIB37;
m_KIB14: F:; goto m_KIB26;
m_KIB34: key_(13, 1, 1000, 1000); goto m_KIB42;
m_KIB35: key_(40, 1, 500, 500);
key_(40, 1, 500, 500);
key_(40, 1, 500, 500);
key_(13, 1, 1000, 1000); goto m_KIB32;
m_KIB13: findimage_(#Image_6_KIB[0][0], 5000, 0, 200, 1, 140, 10, 200, -1, 60, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB); goto m_KIB1;
m_KIB21: key_(112, 1, 1000, 1000);
key_(39, 1, 1000, 1000); goto m_KIB35;
m_KIB46: D:; goto m_KIB34;
m_KIB43: goto D;
exit_KIB:;
function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}
function key_(int k, int m, int p1, int p2)
{
pause(p1);
if (m==1) key(k);
if (m==2) keydown(k);
if (m==3) keyup(k);
pause(p2);
}
function mouse_(int p1, int m, int xm, int ym, int p2)
{
pause(p1);
if (m==1) mouse(LEFT, xm, ym);
if (m==2) mouse(MIDDLE, xm, ym);
if (m==3) mouse(RIGHT, xm, ym);
if (m==4) mousedown(LEFT, xm, ym);
if (m==5) mousedown(MIDDLE, xm, ym);
if (m==6) mousedown(RIGHT, xm, ym);
if (m==7) mouseup(LEFT, xm, ym);
if (m==8) mouseup(MIDDLE, xm, ym);
if (m==9) mouseup(RIGHT, xm, ym);
if (m==10) mousemove(xm, ym);
pause(p2);
}
function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
int timKIB, sumKIB, xKIB, yKIB;
pause(p1);
sumKIB=0;
if (t!=1) timKIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-timKIB<t){sleep(20); goto a;}
return 0;
e: sumKIB=sum; xKIB=x[0]; yKIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==10){mousemove(xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
return sumKIB;
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Развить кузню.bmp");
loadimage (#Image_1_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Кузница меч.bmp");
loadimage (#Image_2_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Кузнец улучшить (светлая).bmp");
loadimage (#Image_3_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Кузница.bmp");
loadimage (#Image_4_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Юниты.bmp");
loadimage (#Image_5_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Если есть юниты.bmp");
loadimage (#Image_6_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Юниты светлые.bmp");
loadimage (#Image_7_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Школа магии\Магическая палочка.bmp");
loadimage (#Image_8_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Кузня\Развить кузню темная.bmp");
loadimage (#Image_9_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Школа магии\Школа Магии.bmp");
loadimage (#Image_10_KIB[0][0], "C:\Users\Наталья\Desktop\TWWK\Меню\Локации\Столица.bmp");
}
4. AHACTAC - 26 Февраля, 2017 - 07:36:00 - перейти к сообщению
Господин администратор, ну что Вы мне можете сказать по поводу моей проблемки?
Это ошибка программирования или всё ж таки ошибка в программе ?
Это ошибка программирования или всё ж таки ошибка в программе ?
5. Kibor - 26 Февраля, 2017 - 07:50:47 - перейти к сообщению
ничего я не могу сказать.
для начала надо было выложить файл vc
кроме этой программы у меня есть жизнь, и разбираться в каждом сгенерированном коде я не могу.
кроме этого я не знаю задачи поставленной перед скриптом. может вообще это не проблема перехода, а ошибка логики составления.
максимум могу если есть время глянуть на задачу живьем (через скайп) и дать рекомендации.
для начала надо было выложить файл vc
кроме этой программы у меня есть жизнь, и разбираться в каждом сгенерированном коде я не могу.
кроме этого я не знаю задачи поставленной перед скриптом. может вообще это не проблема перехода, а ошибка логики составления.
максимум могу если есть время глянуть на задачу живьем (через скайп) и дать рекомендации.