Littma
2011-07-17 11:42:54
The script (it's for a flash game) I'm also using Scar Divi 3.22
My intentions for this script would be the FireProc procedure going through then using the DivinityProc procedure once returning to the FireProc, then once the second FireProc command is executed a second time to move to SphereProc and so forth. My issue is it will do the first FireProc just fine, then it will do the DivinityProc just fine as well, goes back to FireProc and it repeats FireProc an infinite amount of times apposed from going to Sphereproc/Teflonproc/etc.
What am I doing wrong here? I'm not sure what it is but I was wondering if somebody could tell me. Thanks in advance. (Sorry for making 2 threads, though it was for 2 separate questions)
I've also tried making a FireProc1, FireProc2, and FireProc3 to see if that might make a difference if it's an interference but that didn't help either. Any assistance please?
program Test;
var i, x, y, accept, fire, bandage, divi, tefl, spher : Integer;
procedure LoadBitmaps; [COLOR="Red"][B]//All the bitmaps for the procedures.[/B][/COLOR]
begin
accept := BitmapFromString(49, 10, 'beNrNkeFKAlEQhZ/KCCMUQw' +
'xhHySWTWQzn8VyN1d7mEzXtbfpT9EHB4bp3vX/DofhzJlv7oImyVW' +
'v1zVdd69u+v1YP9+/69XaxvQhZSQMcvzxoyakw+jQC8AO/XmAIf/1' +
'26iKl0KYxizN8PW+JqfjScjlCcUzEiqJX5PXSevK13AwCARWvpb0W' +
'fbIKE+PMRSH9f4ELPGCzrX1Ph5Nd6OR16bYnD4bDB2vhMMAQ4QCgt' +
'ALQOde/lutL4//V3No/DlJVVaYfJ4HJCFwHML7ROd0FDyi1Tiq+8n' +
'EtMifYLZvW0me3IwBeAE6bA5neduaPBbo0mrq6nz8QvH4vFhi9Lt5' +
'YFe92+8JQxL8RwBipm11aZV0rf4AiCeBcg==');
fire := BitmapFromString(13, 7, 'beNoNzU8oQwEcwPHvZo1s5s3wj' +
'NnB/HtiU8oSJSInRZHLbs5ODi6KUm6ztMOmN8ommyUbipFwpHal5G' +
'AuQo7KhX7e/fPta2XbyW4FOZXfkO9vuuajjxsolHHsRnbmJDYWtqM' +
'72ADdwuskstj25OHWxJWLCw1Ja5IP5v3oNhJmMs1c9yKrnaUg9+W8' +
'+KwHtUhYlctWyXXHFeJmnkfsR4ZJDct8XbGKz4CaNSHLlaJXy8lAV' +
'CVm53HUqAblbFw2m96GKHWQha+ZellxyGkw0UhM4TxgmJ7vBbfs+Y' +
'38J+TO2HiYQNb87yGloJFUOGxBoh6JeNPtyJKzNEWqgaJhIl0SDuy' +
'rbFlIuoy7VzL9d7Os/wMNXWmN');
bandage := BitmapFromString(17, 9, 'beNoBywE0/p5kpIBXsoxep4' +
'FTn3xNu5tr07SB3b6H47+G37h616xw265y4LF25bN5365x26hs4q5' +
'w4apswKJ7uJdtu5pwtJdqrpFkoIBQrYxWyaRp2a9w4bV216pw1Kdt' +
'2qty361z2aZq3alr3qdpuZx3vqJ6vKJ6u6F3up5ywqJ0vZlkpn1Dt' +
'YlKz6Fh5bh+3K921aZu3atz3Khv2qZq3qVps5p2r5ZyrpdytJt1uq' +
'B2s5NntI9d3rV79MaIv45Ry55l4rR+2qtz26lx3alw2aVp3qVpspt' +
'3tp97taF8uaJ9rZNruZlt6sWT5buEzZ5j6LZ8ilwmz6Nv2qx21aZu' +
'3Khx2aRr3KNptp15r5h0r5t2s5x3tpt25MOZ+tWk+c+a67yD7L2E5' +
'bmFmGw61adz0KBr1aFq1J9m155ksZZxuaB8tZ55sJdz6s6m89Ko99' +
'Gj06p5/9Sg+MqWzaJy4baGroJQ4bF+16Vu3Kdu3KNptZdur5Nrtpl' +
'06c2l8dOsyah+/9ux98+i+M6h/+Gx/9eq/9mszqFyuIpY1aJuy5Zf' +
'0plfsZBkuplv68qg99as8c+n/9609tKp/920/dmwxp938sqh982i0' +
'qd4xJZkv4xY0Jtk15VpKPo=');
divi := BitmapFromString(19, 8, 'beNodkd1LWnEYx/+zsYsuqkE3hW' +
'ITc2AwX4Ye3YEI0y4iGGOXG0HSRbQ20VHQmgvKrVMnW5qTFW3rzcq' +
'U+VJHz4vneM7v9N1Pb56LB76fD9/n2Ue9g+saWV/b0UTMTp85R3nb' +
'0Adr39zTR+/sjxftgxsuO8cy6ZaElbXyTQ0iQUmAP/i1okEFbkt16' +
'IjFBK/7p20kbhmYd/QtPOuPjw2n3eOZ5aV/korTIiSCmozjIvzM5h' +
'3QBgzjoaPg4gr+UMblSo1Zko6B984nCYd1g2UPzi4hamiqXZ2o4+A' +
'XgqHdawXVtmkCsgJBxeu3eY930zmaGrd8eW5bZxju1ZtDWYdiQjah' +
'AJKOT5+V6PRRoQyJSglIT11sIDTB+by5gDsX8HL+lyuVVhdI60gm7' +
'jUUTrCclIKh/e1j/K1CNCATIkKkzK09sJNHHl92MpJPcXWKpSm5N8' +
'sC+CwWPwoBZjeRVn9XcU+6+zYkKr1t4VsW4dk/Wz9Q66Chm2ovRXX' +
'nFXzPaFMzfP0OgyMvHO6Ij42y4WgHEAz6FhRKWOWRu0IT3V5t6OKD' +
'UWqQ3IkcW8rT2/L/AeoDaG4=');
tefl := BitmapFromString(14, 10, 'beNorb4kpbjhy+9nTP//f/f8f' +
'V9qQUN4UU9YUXdpoHhgrYWSnZOkmrmctZWgnbWRf1DntzX+Qstf//' +
'0cX1UbkVwVklXkm58uaO8uYOcmaOIrpWskYOwDR41//l+45nt3U2z' +
'xrKRDFlzUCDTTyiVCx8xIzsBHVsQQqljSwBZpc1juretLczIZuoL0' +
'F7ZPyWifElje7JeQAzQSqBCoDmiasZQ5UmdnQm982MaW6DehIoIFA' +
'MrK4HuhU/8xSbddAEW0LoDItR7+Q7IrkqnagsrTaDqCy2JJ6oMqoE' +
'hBKrG73SSvySS7wiM/xTsr3TSlMr+tOrmrNqO9KrGgGMoAqgbaH5F' +
'UBEdDBUYV1kQW1QGXBWeUZ9T1AZUBjQeFTXBeSXQa0HagmrKAGqBi' +
'oAGhgeF61a0ymoa2zib0rxPbQnPKowprA7PKgnAqgeiAZllsFUeYQ' +
'nvL/zEwGMADaHp5XCVQPDE+gMqCZwbmVngm5Xol5QZllCQADjqpZ');
spher := BitmapFromString(15, 11, 'beNodzklvEgEAhuGpLUUhTXo' +
'yMdGD/8Bf4EHjwVPTxJsHE6819WRtrNsBbRQ3iNKQitW0JMVaU4o2' +
'YsGC7TSIrAVmWIayw8AMnYFhCXXks/G9P8l70Xv5of/GE3bzIxLr+' +
'GUG50bS3GGdyEeQSYHy9bg4ij+7ohd8AI5V7Czg+fnsVYVxeTJUt6' +
'OydCh+hZhAOo5CBnSgw0chRMAF8eBM2HCu8ng0MnuWdGqrogdpQx0' +
'bOPiGIolCCoUc0uEWG+vngrJeybxWZ18pmVvHN2QPYqtCYU5sv0fP' +
'BtmP+j7y+y0+f1impCotG5VV0+jBLJHSnPTKP7D3rlzW1+UPaCwCu' +
'xDopljkBIaVGJ4L1cwn+LeK0jMiPaPe6a2jtNwv6qS2qf/XCskuS5' +
'G2xAh8jBUooUl1LUTcRIRN6tL04Jb5ShIuVOaRfMEJq52aTSx+l1o' +
'xtBk0khBisA0nrKrMm2O0RuW7OWKxXsvjC/Lz/dxSnV7MtUnQn7s5' +
'ErUoUtvQEa6XxLaW+K0Z8NxXOm6PrK2MZeBH5dPRfzGz0uC2kD0ib' +
'ohxXBq4PqaafDoUeDQUuEvsTg06751ymcczIFGx4M8mGnaAQnQNDr' +
'0En5H43xThmVbszaipiWH3ndPk3IUQa0BzASktamYYxoO6f853aZ0' +
'=');
end;
procedure FireProc; [COLOR="Red"][B]
//Executes an infinite amount of times after the DivinityProc procedure which is my problem.
//As a note, it does not go back to the DivinityProc procedure after executing the second time, it just repeats itself.[/B][/COLOR]
begin
repeat
If (FindBitmap(accept, x, y)) Then
MoveMouseSmooth(x, y);
wait(2 * 500+random(50));
ClickMouse(x, y, True);
Wait(2 * 100+random(50));
If (FindBitmap(fire, x, y)) Then
MoveMouseSmooth(x, y);
HoldMouse(x, y, True);
Wait(2 * 500+random(50));
ReleaseMouse(x, y, True);
Wait(6 * 1500+random(50))
If (FindBitmap(bandage, x, y)) Then
MoveMouseSmooth(x, y);
Wait(2 * 150+random(50));
ClickMouse(x, y, True);
Wait(2 * 2000+random(50));
Inc(i);
until(i = 1); [B][COLOR="Red"]//Will change this value later.[/COLOR][/B]
end;
procedure DivinityProc; [COLOR="Red"][B]//Executes perfectly.[/B][/COLOR]
begin
Wait(2 * 500+random(50));
If (FindBitmap(divi, x, y)) Then
MoveMouseSmooth(x, y);
HoldMouse(x, y, True);
Wait(2 * 1000+random(50));
ReleaseMouse(x, y, True);
Wait(2 * 2500+random(50));
end;
procedure TeflonProc; [COLOR="Red"][B]//Does not execute.[/B][/COLOR]
begin
Wait(2 * 250+random(50));
If (FindBitmap(tefl, x, y)) Then
MoveMouseSmooth(x, y);
HoldMouse(x, y, True);
Wait(2 * 1000+random(50));
ReleaseMouse(x, y, True);
Wait(2 * 1000+random(50));
end;
procedure SphereProc; [COLOR="Red"][B]//Does not execute.[/B][/COLOR]
begin
Wait(2 * 250+random(50));
If (FindBitmap(spher, x, y)) Then
MoveMouseSmooth(x, y);
HoldMouse(x, y, True);
Wait(2 * 1000+random(50))
ReleaseMouse(x, y, True);
Wait(2 * 1000+random(50));
end;
begin
LoadBitmaps;
repeat
FireProc; [COLOR="Red"][B]//Executes fine.[/B][/COLOR]
DivinityProc; [COLOR="Red"][B]//Executes fine.[/B][/COLOR]
FireProc; [COLOR="Red"][B]//Executes but repeats without stopping.[/B][/COLOR]
SphereProc; [COLOR="Red"][B]//Does not execute.[/B][/COLOR]
FireProc; [COLOR="Red"][B]//Does not execute.[/B][/COLOR]
TeflonProc; [COLOR="Red"][B]//Does not execute.[/B][/COLOR]
until(false)
end.My intentions for this script would be the FireProc procedure going through then using the DivinityProc procedure once returning to the FireProc, then once the second FireProc command is executed a second time to move to SphereProc and so forth. My issue is it will do the first FireProc just fine, then it will do the DivinityProc just fine as well, goes back to FireProc and it repeats FireProc an infinite amount of times apposed from going to Sphereproc/Teflonproc/etc.
What am I doing wrong here? I'm not sure what it is but I was wondering if somebody could tell me. Thanks in advance. (Sorry for making 2 threads, though it was for 2 separate questions)
I've also tried making a FireProc1, FireProc2, and FireProc3 to see if that might make a difference if it's an interference but that didn't help either. Any assistance please?