ich hab ein altes BM Script gefunden.
Ich weiß, das ist der Phönix BM Bot.
Bei mir geht der leider nicht mehr, vlt bei einem von euch oder es findet sich einer, der den umschreibt und für alle frei zur Verfügung stellt.
Das Script war besser als der Ultimate BM Bot.
Quote:
program New;
var allowreppdistance, bonusdistanz, close, weltkarteoffen, ok_tolerance, weltkarteoffen_tolerance, close_tolerance, stoppwait, xf, yf, standartrang_tolerance, standartrang, farbe, workspaceBMP, lx, ly, logout_tolerance, resolution_x, resolution_y, sk_manuell, logout, asd, Ladezeit_BM, joinBM, ok, xxx, yyy, attack_get_color, insel_braun, insel_tuerkis, insel_blau, distanzcounter, playerkillmodus, monstermodus, glitzimodus, goldmodus, starteBM, verbinde, abbrechen_nulls, angriff_nullstellung, attack_get1_color, angriff_abbrechen_get_color, angriff_abbrechen_get1_color, zumschiff_get_color, zumschiff_get1_color, angriff_abbrechen_get_x, angriff_abbrechen_get_y, angriff_abbrechen_get1_x, angriff_abbrechen_get1_y, attack_get_x, zumschiff_get_x, zumschiff_get_y, zumschiff_get1_x, zumschiff_get1_y, attack_get_y, attack_get1_x, attack_get1_y, constante_get1_x, constante_get1_y, constante_get_x, constante_get_y, zielsicher_x1, zielsicher_y1, zielsicher_x2, zielsicher_y2, hpbalken_npc_jungfrau, hpbalken_npc_jungfrau_tolerance, erster_test, speed, gruener_meinschiffkringel, gruener_meinschiffkringel_tolerance, MM_npc_x, blaueswasser_color_tolerance, blaueswasser_color, calculated_distance, MM_npc_y, zentrieren, seekarte_mitte_x, seekarte_mitte_y, NPC_abstand_zu_meinschiff, i, schiff_reppen_rotorange__HP_tolerance, checkmovewait, schliessen, hpcolor_x, hpcolor_y, hpcolor1, hpcolor2, hpcolor3, hpcolor4, hpcolor5, schliessen_tolerance, quarter, reparierend_tolerance, meinschiff_x, meinschiff_y, posix, posiy, reparierend, reppwait, x1, y1, x2, y2, glitzimap, glitzimapx, glitzimapy, glitzimaptolerance, activatemapwait, schiffe_inaktiv, schiffe_minimap_grafikx, schiffe_minimap_grafiky, schiffemap_tolerance, zumschiff, zumschiffx, zumschiffy, zumschiff_tolerance, chatx, chaty, logoutx1, logouty1, logoutx2, logouty2, hpx1, hpy1, hpx2, hpy2, hpextra, hp1, hp2, hp3, hp4, hp5, hp6, hp7, HP_balkengrafik_tolerance, greenhp, mapreloadwait, neueinloggen_tolerance, neulogin, stoppreppdistance, npcminimap_orange, npcminimap_orange_tolerance, npcminimap_orange_x, npcminimap_orange_y : Integer;
var attack_xx, attack_yy, oldget, oldget1, oldget2, oldget3, oldget4, oldget5, get, get1, get2, get3, get4, get5, attackingtolerance, atttacking, farbe1, farbe2, farbe3, farbe4, gelber_zielkringel_x, gelber_zielkringel_y, gelber_zielkringel, gelber_zielkringel_tolerance, schiffe_inaktiv_x, schiffe_inaktiv_y, attack, attacktolerance, MMx1, MMy1, MMx2, MMy2, BMschriftfarbe, BMschriftfarbe_tolerance, xx, yy, BMsuche_x1, BMsuche_y1, BMsuche_x2, BMsuche_y2, sendkeyswait, meinschiff_tolerance, Player_MMap_rot_tolerance, moveclickwait, randomdelay, mousedelay, NPC_blau_Seekarte_tolerance, NPC_blau_Seekarte, meinschiff, tuerkiswasser_color, tuerkiswasser_color_tolerance, Player_MMap_rot, klickangriffx, klickangriffy, klickrepairleiste_x, klickrepairleiste_y, angriff_abbrechenx, angriff_abbrecheny, skx1, sky1, skx2, sky2 : Integer;
var runter, BM_slot_1, BM_slot_2, BM_slot_3, links, rechts, angrifff, angriff_abbrechen, gegner_durchschalten, kurs_setzen, reparieren, bonuskartenmenue, hoch : string;
procedure Loadvariable;
begin
// when you start the bot -> dont have a target(glowing attack button = error)
// when you start the bot -> dont are in a fight (glowing attack cancel button =error)
// when you start the bot -> dont repair (repair symbol button =error)
NPC_abstand_zu_meinschiff:=4; // set up the range (1 - 4) for drive away when enemeys gets close to your ship
Ladezeit_BM:=13000; // set up the time to wait when the ship starts a bonusmap
starteBM:=1; // set to 1 will start bonusmap auto (1 is needed for sever restart), 0 off
allowreppdistance:=30; // bei "allowreppdistance" abstand an pixeln zu den Npcs auf der minimap starte ich repparieren
// allowreppdistance:= how man pixels should an orange npc on the minimap
// be away from my ship (green pixel) to start repairing
stoppreppdistance:=6; // bei "stoppreppdistanz" abstand an pixeln zu den Npcs auf der minimap beende ich reparieren
//////////////////// set up the keys to take control
//// IMPORTANT TO SET UP zentrieren RIGHT !!!!!!!!!!!!!!!
zentrieren:=32; // set up the key to center map over your shipto SPACE key or switch the number with an VB keycode
// if you need an other keycode -> google VB keycode table
hoch:= 'w'; // up key
runter:= 's'; // down key
links:= 'a'; // left key
rechts:= 'd'; // right key
angrifff:= 'f'; // attack key
reparieren:= 'q'; // repair key
gegner_durchschalten:= 'n'; // switch to next target key
kurs_setzen:= 'v'; // drive key (v-kordi)
BM_slot_1:='8'; // set the number of the slot (bot tries to start this bonusmap first)
BM_slot_2:='9'; // set the number of the slot (bot tries to start this bonusmap second)
BM_slot_3:='0'; // set the number of the slot (bot tries to start this bonusmap third)
/// ACHTUNG wenn hpcolor1 oder zwei gefunden wird fahre ich weit weg zum reparieren
// wenn ihr später reppen wollt die werte für hpcolor 4 und 5 runtersetzen !!!
hpcolor1:=3298; // color of HP bar when i detect a need of repair
hpcolor2:=6092; // color of HP bar when i detect a need of repair
hpcolor3:=7868; // color of HP bar when i detect a need of repair
hpcolor4:=10152; // color of HP bar when i detect a need of repair
hpcolor5:=11422; // color of HP bar when i detect a need of repair
/// WHEN MAP NEEDS TO BE DEFINED MANUALLY
// coordinates (get with SCAR pick Color function):
sk_manuell:=0; // set to 1 to use manual defining the position of big map, 0 is auto
skx2:=828; // set X value of the corner right down at seacard
sky2:=738; // set Y value of the corner right down at seacard
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
//// OPTIONS BELOW ARE ONLY IF THE BOT DOESN'T RUN AND ANYTHING ABOVE IS SET UP RIGHT
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////// TUNING THE SPEED - INDIVIDUALIZE WAITING VARIABLES ////////////////////////////////////////
// WAITING VALUES ARE ALL IN MILISECONDS
randomdelay:=50; // randomize time for each time value
mousedelay:=240; // waiting between action of the mouse
sendkeyswait:=80; // waiting between each keyboard action
mapreloadwait:=25000; // waiting after server restart
activatemapwait:=300; // waiting for activating shipmap on minimap
reppwait:=3000; // waiting after sent key for repair for scan if ship is repairing or not
checkmovewait:=10800; // waiting for detection if your ship(green dot on minimap) has moved or not
stoppwait:=6000;
//////////////////// COLORS SECTION - Modify only when graphical updates or changes are made in the game
//
Player_MMap_rot:= 255; // Color of a Player on the Minimap
tuerkiswasser_color:=2700288;
blaueswasser_color:=4860928;
meinschiff:=65280;
NPC_blau_Seekarte:=12099909;
BMschriftfarbe:=4580849;
gelber_zielkringel:=65535; // color of yellow circle of selected target on map
gruener_meinschiffkringel:=4369969; // color of green circle of myship on map
npcminimap_orange:=39423; // color of npc on minimap
// GRAPHIC SCAN TOLERANCE VALUES - ONLY CHANGE WHEN GRAPHIC DETECTION DOESNT WORK
NPC_blau_Seekarte_tolerance:=25; // tolerance for npc blue
Player_MMap_rot_tolerance:=15; // tolerance for player (red) on minimap
tuerkiswasser_color_tolerance:=20;
blaueswasser_color_tolerance:=20;
meinschiff_tolerance:=5; // tolerance for myship green on minimap
BMschriftfarbe_tolerance:=10; // tolerance for yellow of LEAVE BONUSMAP button
attacktolerance:=40; // tolerance for attack button
schiffemap_tolerance:=40; // tolerance for minimap
gelber_zielkringel_tolerance:=3; // tolerance for target color yellow
gruener_meinschiffkringel_tolerance:=20; // tolerance for green circle arround my ship
attackingtolerance:=45; // tolerance for attacking cancel
npcminimap_orange_tolerance:=30; // tolerance for npc on minimap
HP_balkengrafik_tolerance:=20; // tolerance for HP bar
glitzimaptolerance:=35; // tolerance for minimap
reparierend_tolerance:=44; // tolerance for repairing
schliessen_tolerance:=5; // tolerance for close message
schiff_reppen_rotorange__HP_tolerance:=15; // tolerance for repair colors detection ( check if need repair)
zumschiff_tolerance:=80; // tolerance for center ship button
logout_tolerance:=50; // tolerance for AUTO map detection - make sure the logout button in game is not hidden
standartrang_tolerance:=80;
weltkarteoffen_tolerance:=20;
close_tolerance:=25;
ok_tolerance:=25;
distanzcounter:=1;
end;
Procedure LoadBMP;
begin
SetDesktopAsClient;
loadvariable;
ok := BitmapFromString(17, 8, 'beNpLNM5NJBN9fOoKQWiCWNl4pOBsPOqxqsSjAK' +
'sWTFnybCHDLySHGACVkqmV');
standartrang := BitmapFromString(2, 9, 'beNo7zfDvNAj9OQlETH' +
'9OMf84zvr7JPPnw2x/TjICuRApiBoEAgBsICAC');
abbrechen_nulls := BitmapFromString(13, 9, 'beNodzNtOwkAUhe' +
'HXWZ3u2Z2Wg41GLjCNBNEAnZaKBYOAIomKGBMPBOQcYzLPbDV Zl9+' +
'/fN+83u6frlbjmpn1JoOWskAA2+z7x4WcX3X9ROQ7UGaUzDvV+e DC' +
'fI7eh6mHP2YLy2PHt2QoCw2whtz2wvUwWj10l4+Dj/51AXD+ZRE4J' +
'RVBaajIUrvpvdkvzG5h1l+bybMPZId5oCI4pFwEJwLFILN8Mz 8b87' +
'2dDm7uoigulzMZWEKTp8ExOIFzKbz9uL0bpS/6vF06rCiqKW5JN8u' +
'bECFIw6mTd2LzLK5O60FaKl6wFZNM2W3ZHEI0YWdrSDcg5QL9 o7xW' +
'CADNdpdUG6IFEQvSgkLigLgohGNTg+UZkJDTkW4C0QZFWQLEt qwzH' +
'5ClWBZ+Af/UXvk=');
angriff_nullstellung := BitmapFromString(16, 13, 'beNotUmtv2jAU/' +
'Tu2YyeO41deDoSEEEiB0Y4uKZs0xGg1jZahaR/2qULbqj1+9By0q/' +
'PhWD7n3iP7MvmyGP/d3vx5U/5+/+rX6eOhvYEQAACxx2WcR1llikU' +
'xXU+Wm8l8U8+7l7Y5v1sfVs1+eXVsrz+3K4yxNSDsMZnIcKCj PMmq' +
'ZFhHaTko5z+edptFwwMOIQyV6paLMsssB8ghvmQyDmQktZGhk TrTS' +
'fH1dGS+z6m7GhmrGoT68W6dMGojQUSwF1AmAxFZl4WNuH/bIYTyUJ' +
'63rY2hGP129/q+GhlG7RSIHIe4Lu1dfqA8xqe5bQsv+s7qKcbdaHh' +
'o6t2kTlTsErefY12YEJdauNjhnns7zr/vNtZFCfYJGUqxKsqmmJWm' +
'0DplMqU8wsSzSdqRebgab5vxz227qYb7ppzFijiI+2yQDoZZk aSlS' +
'icyqQI9dJm6r7JMsGmszt1SUm8Wy091NtcMQcg5z7LcmCI249 BU2k' +
'xEOo4osbFzTp+vK0sIQkvNjrlMXIcQzIOAc6F0oqLMvqcIBwS BXs/' +
'c58aAS4UE7WNv6vcX8FL2B7nQSqdCJnsBPgjwqOApQj3n4EGA Lxo8' +
'KbDlPRoPeBBQSgWXnAkMgd0Xg8FR9cSCI3DLQO39P/a7gRBjAeOK/' +
'QMZxJRc');
hpextra := BitmapFromString(40, 5, 'beNrzYJDMGEXDGfGHMHB50B' +
'0BAKB2XYI=');
greenhp := BitmapFromString(41, 6, 'beNoLZGAoZWCoZGAoBJN0Zp' +
'fCRAaEPVC2D1RoD6ztiQwMgQwMoWAUSEc2AG6ja9c=');
hp1 := BitmapFromString(40, 7, 'beNpzZTCMZTBMBJGWiXRlWyIJ0p' +
'McEEtRrKY/eyDiV8KVQcBxAMgBsVQCABihjeE=');
hp2 := BitmapFromString(40, 7, 'beNqzYXCKZXCKhCF6ssFcy1CYIN' +
'3YsQNk9YAEcuyAxa+EDYOE40CQYIYikiA92ABmbpSP');
hp3 := BitmapFromString(1, 7, 'beNqzYAgKZAgKBZNgpGjDoAgALhA' +
'D6g==');
hp4 := BitmapFromString(40, 8, 'beNozYXDSwUAGHChsEJcDiQ1Xg8' +
'Q2YMDOxmWmDke2K0O2Jxj5MtCV7cmQ7DoAJIjhiyRILzYIwRn 0ZA9' +
'Q/GqaMGgaDAQ5IJYCAHskuQU=');
hp5 := BitmapFromString(35, 6, 'beNrTYah2ZKh2Zai2ATNozQaTxX' +
'Rju9KY7QhDtGbTK44MDRgMNRgMdRg0NWjJBgD3souL');
hp6 := BitmapFromString(1, 6, 'beNpTYZhiwdBjgiAtASirBEI=');
hp7 := BitmapFromString(40, 1, 'beNozYZijwzDHAISWmtCRDQCMPy' +
'A7');
reparierend := BitmapFromString(28, 1, 'beNqTEdDUkVDUEVAEkY' +
'oSGhICEhyKIhyaPBxeAhxRHAzVIhItEopzVAznaBjO0TGcoqL ZoqC' +
'YLSJgycGhCEQCQCQgIQACEgqKEgoShgoCmgAjOwyX');
atttacking := BitmapFromString(25, 25, 'beNotlCFoJEkUhku0eK' +
'LEEy2eGDEFI1IQkYKINIxJw4prWLENZ9oOK5bmxNJEhHZHs+J oIpY' +
'hIgwnFmbFwJlAVhzkZE4cjDnIioMxK0asGLFixIq6/3XvzEtRZLq+' +
'fu/9f72ZP1z3h7f1Hy9D/O8p7reH9/Xz6+LhRfn4tvOJ4cSYYRWsx' +
'oghRxwSXpB0VpZW+oQ6Yzri1rq4eYi3XfxrHY+7eNwefit2v+ RPb2' +
'pvfnCMkDtxHjEVZ8kZs2DuU7ck5SyZO6LWcs0u/trG9138tI5fn+P' +
'nP+JNcbytvAWEjCGTcHhVuJeZnDmZkCdwqBPpLSOZfuBg3zKX JPFj' +
'FzfLeL+Kt83+Kt9dhW5ODBSzsc7Py/CqdC8yPmWXmiI1DVCEisChd' +
'qSlUiWabbxbxH8f4j/r3bvieFPsb6vcIhugxF+Ui6ulvyzcmfdCVc' +
'qNpQ4EMm0CGi0t91YWROiGJBQ/NTE+x29Px011/FA+3VQydImsVG+' +
'6+noZzrIM700FDdG2AGJ/oHqWmnjgGBGON1X8tlXU/WK/qVZXhXK0' +
'Ple8qouf62zi69R3kGwUKxnqgmQkleVgCPmwZRbeXkr8e3W47/YbV' +
'No/3rU8ZpWQP83cxFeT0CQQSzpDAw0r0pManUxIWGTi3UnA7nBVxY ' +
'/t7l25u13Ez+vt752ocoYIP7JPGEfqhBscN6AxmD25hXU5uzDz7 jT' +
'z57lDnPnd9eII7e6a/X2/v1893y3dmJUxeGlhAZHGaDkN8iHXJQ7w' +
'zEo4CeEiDy/KcFn5i8Kdh8NmefhzHb/t4lfE/vDpASZHYi4xZUKNd' +
'eAgJXBaMK0roSyRmzp3FrKfyvxllV1WGTxzkccvT/HLNn7fx++Hx9' +
'vl+qppLnPQCgMLDfkk3JqhOYmU0GsonGdOzjN3noV5Ec6LfF6 iscf' +
'77rjpDh+6x7dVNw9lOvpHQKgTqg2BVlspiB2UghVTEXEIKOJm QWMa' +
'JHXYHN4tdtfV4+uim7sFG1yBjqUlVsiAqlnQMTgHH0I+MqDY4 bgCp' +
'17E637itq/L5Zk0MlSU6oWC4o0xrTYcveICZiZiKJoydDUWKytqpA' +
'GdiroqlW7m6pQrnGXMDXQGDlRL1yBbxhDwjFzInUL3wBMHSyK Ghjm' +
'xAwf+TIUsbjTliVmMxhsCKakPiZqUS2skJY87eJGp9PNCTjLD DhND' +
'y0Xh+FqtG3/BGHQVtulJHQil2tHVeEtidGoJCSbV6dDkk8yd5v4sl' +
'2lAlbgRrB8iixZwKdCLe51jY0qAKBlzA28Ra/TFkH6qGskEkmUyy3' +
'BTUCzq0tloCYYmnVpoNfW45sNtBbPFTBjvO6YNGzfRhqhqEy+ zwKn' +
'Xjei9A58nYpg0MFEtLROD6MEBOZUy4eHuQDKiCTv0d5RJcFDt 9EN9' +
'wGceXiWlYU7yKjFrAI1ZYhaBYwcOae14hpAOeotIVW4ENk59p QZQA' +
'hwi+tiA4pWhFexkeaxr5PDU6Zoqyqlzhv5aVU27jS826UgTBP ZLg4' +
'a7ll015IM5ps+IQ4h1PAwkdeAg1LgT/Q/D3tr5qaeprii/J9+moUh' +
'knKs8oiA0Tlg1oVaaDvkAlXJ+keWXeTgfeo7XTdW6Gv8Dup2K qA==' +
'');
// attack = feuerbutton leuchtet
attack := BitmapFromString(16, 20, 'beNolUi1oI0EUHhExomJEx' +
'IiIHYjYgYgdiOhATAcislCRhYoOVJQlIiwVZakoS0xZIkqpKE tFWU' +
'4U1hzkxMFGFFYVYgqtOOi52ogTkSvfvWmGx+6b4fvez/eeJ9tl0q4' +
'reC7gZQV4/m3hxsBcNGPJOpR0iDsHjPYkDwxaO9ewjOEhg9fa4f82' +
'8GA2l4p2hQN3CO1yMQzVJFZjK0dRe23g5x28FLDO4TaCK9rOW OpL0' +
'hGEMu5JNY71NNHHzpDSTjg8J/CngI8Clgru5eelJAeKdDjzlJ6m9r' +
'IMz/NwlpvTzJymMKLwO3aVtJ/wHMOjaC4EIdwF7xt7VcXLOrlZxVd' +
'lgs6ybgMGNwraLWzfXaJfuphJ12OHioHByPa6Sm6b7L7JHjf4 fR8q' +
'GHN4K+FHBk9x+1EVy2yPZ57UE2umib0oMH66XCWL1Z2TKIKHF BZhe' +
'x/D62q1SPYysq4QgVGjSI/j8CyLZnk0u2uO1O7abm/T1dxW87i+Tp' +
'pFQr+Pa8HXwtdyaNRhqI6sHIa7x3S3LvOZFT0nuBrIfB6HI+1 SUCQ' +
'I3ldocqDFt+3e6s1LzXtcdFkydjATyPomVT3mhoWT7XLWcyzh I1F+' +
'ravqNnewgdw+ZOgIzj6XaXlsdI/vsyALE7lcniwvouhIUcT7YveUY' +
'5uc0Wxs6nNbTCPtK4YpsJcOFsfQJGf4x2KyY4P4MJB45QfU9E UyCe' +
'3EhoehxEp8zT2FeOGi6eo8Kk6x9yyfmuo8tAE+U8G5GRkzClE cOYz' +
'kYcR9UxzJ6sRoj9uh3C5iTIfg+kRbn2MZqIMeoZhuChJZo2gz VZK5' +
'PTc9tr2M3JgojX3eTKQ6IFirk64vURwZuFnkA6yX7PFfZ3q/8xihD' +
'Jjt0f0VDYnIkr6ufVJ6pOoTdJqA7v3KI5uBeyn7pPCI7RLWIZ xznK' +
'llxMUnRDNS9wn93hxBScod7Hvx3Mf1guc/k40iPA==');
glitzimap := BitmapFromString(14, 16, 'beNoNjulP2nAAQH+ZW5x' +
'OjcNriegcQycih1wFFFBUVKBYSqGllKMwcHig8yREEXV4IocM ZYho' +
'MrM4TZYl7ojJ/N9G8r695OXVPSFg6DAaWJgad5MSmpJQNpHd0ufEI' +
'LdV6SVUJAItBy2xsB8Zk6/MIEGX1o1Jpr0qv0eOm3kr8zBNKOyImE' +
'SkTos8QA2HfPD2mp+2Kb0Y5HfIbSYOgXBJlH9/e3CWCFn1fNwotBk' +
'EtLXfqOXA2l6XRYrruwN2yGMTUxZR5CP6+Ct3f5Pwk+oyAYeG gAU+' +
'YqDcD9FDU3YZNclzIKKyuilu/7lNP9xl9iMen1VpN/Df2xV+UklMC' +
'uc86vWQIbFJfc1FrvOxv3fZfz/zjz/Ovhd2rk7Cl5nleITcWEIIE3' +
'fWPRAgxKVMqJBYvMxunCfWHm5zv79lSqnw9en66f7M6cFU0N0 foOT' +
'YGNtp5ho1zEJyOX8UvkhvXmW3S8loKRMtpSJbq2RHM2C9AhC/0mkR' +
'eHAhomNpodazRLiQjJ6ndorJ+HkyfpGOtdSAmgrQVAvM+g7aL nWgX' +
'EzfNR+YuPwcLZ18KqZ280fxYmrvy/EW8yVgMYHPJZ/299MEhMOcWa' +
'9mfQm7yEay+6uH0cXjWHljr5TbFbxjIBO9oQ8jpE2IGXrNuq4 grdr' +
'doLKHc6ZhQf1T8KapisYN6b3w+CDXrOeTVqkZ7sFgIWWReHBZ eMGo' +
'lDCqK8CLCsCoAs8BYLdWK8UdAzKmm1ShsNA4ynVhCp9T5bD2N deDx' +
'log5TV7iFE7OtjZXlMJgELcRhEateJtD7tOLXtdLhOoUK1sgs e7bY' +
'jMS+locgxH1JN6CBK164b4PezG9pZn/K4GFdRmmuAQWJ/NLMZRqZc' +
'awVE1YRk06MTDKl4nq4HxH0L14uw=');
schiffe_inaktiv := BitmapFromString(18, 16, 'beNotkulTUlEYx' +
'g+hopCpqbRoCZalF0VAFoktXLuxb/fWZQ3EWDS11HAqs91RURaJRW' +
'OopskclMSMqawPzfR/dVpmng9n3jnP8/7O+55qioDDCPpwpL1Or+Y' +
'GfehkUIPpeHq004YJnXjP2IjCgfEGJKdNmq6pgPaWT2/W9irEHd4b' +
'FsYZqkjQPOZTBbyD1009hJnntkmvm7rdhGBmfMiBdQc9cr9H6 XP3T' +
'fi0gRG1gN0sv8TmsE6OulH7NcmQkukiem/ekPldil/fU7j24qidH/' +
'CIPVa+zcwZVrbo0S4XcRnXyxinqbxOut+DQircwB21S62m7sL 7J1/' +
'2wpDQgXGL289hDiwa1YgdF+1sLdtxGXL+2KD8vMMsthuFTgPf S0iL' +
'718EXLLS7lolCXwtbhzsrl8zCWEgZuzeL6x8ePcYM3DZ7bXqv ou4m' +
'jPuHAhalfnsI79V7rPLfhykDj+99jrU+/k0rRw4Cem30rrbIc5mZi' +
'rIgIM02CySKa8qFNDt5p5Nea7AjrXl4PNOpBKACR/289sWhQQK2yt' +
'GLctpFb7Jzp2ig67247heOEIodl6/yGef7L1dLOUj+9vLhwep0sdX' +
'X4q5z4XNYn79sJQpbC8loreS8UnYC2mrM6sFI4TSjcn99v5qE rAZB' +
'F6bzGYRV5EBJBwfNUFC3CigVQCXVTY1pqUfB22tNauLt5OR2f RqKL' +
'M6uxkJvU3Pp6LTych0KnY/m3waD99NRudymYXoykRuYz6TCK0tT55' +
'tohquimJLd17F5nOJh9n4g2R4OhWdScVC2dTj6BK03IOKh2eg MbI0' +
'+TIS0qI9Jxor4JapZLARX4gvTm9GHyTCs9CSjN5NrM2lYw/TMOevE' +
'QrmQFrKEVBTDZhNNLmo7SgZ0MgAzg2qmgIqywAcXeURAF8HD3 8E/g' +
'tWWlrqW5pqOi/Q+ySsqr+WOiqoIP0RtPy7Ty0DR8sB5IF7ryIBdns' +
'zi8WsoYGmRkov55zyEmLRXB6Us806KWFRWnRi3CCGn1w7zFcN 8NA+' +
'nkKE9CBMxqk6JrOez7vQUFtGry1DWhv7JWzVoEghZek0vQa1U IdyN' +
'cNcPSo0qsRDcm4H48SxctDwG0JHD88=');
zumschiff := BitmapFromString(18, 7, 'beNodjyFow1AQhp' +
'+YeGLiiYgnInpQkYOIPohIICYPauIWWTfKVGSZCjOlTIyoEqZ iYwa' +
'VNYXZmkFkJwqriIiYiKiIiLi+9Pj4OXH/3f1f6d9vlTyh4Iw/MmYQ' +
'jD2YnktboquEJXQUKA85Z6ZgIsDmwUwQ7WjY14c8mWM8VzCV6 AiYC' +
'uWD0SBSBnDhbgF0QPtwPOR9m1Ff0LWi675YL+IQwGbocOWOXg O6kn' +
'EmLB54WH5uaKiJvul/NdKsqMuNvb8U5XuShBD7KpnrONLooLRE9pq' +
'2lyNRTcOO2pyalJrlqF3WnbP2Z1Ouk8QH7WLs62CmlGvAYmte OtFg' +
'rpTj/vut/pyeDsvibYG2AIuB5DiRYEswOpXKMxm58kT+sejaqmsLk' +
'6u7rKqtikMGwsxL5Ug1E+mz7ru6bY7LFx1EEIRSTkxepkOxuw G4jJ' +
'Nq');
neulogin := BitmapFromString(73, 9, 'beNpLNEyONMxONMyOBZHDj' +
'F2caQlkFKeCyeHILk4Fkob0ZH9/7kR7u0Do/3svOBvoX7C9UDayOK' +
'lsPOZ8f+1Fufn42RCfAt0AtAsem8hsGpGQWKOtLZkIv8DiDmx vJsI' +
'NcHFcapDNQdOLLI7VHAgb4VPc6hHhj8MuTHNA4uDkAU8n8FhD E0fO' +
'I3A18LSNRw0x5lBdDWZeg/kdwQaFD1A9ah7BzEdAKbh6NDVw8/GYQ' +
'6oagnZhTfmIEMDIEXARzPyIRwRTF7VEcNoFAFQUGew=');
schliessen := BitmapFromString(1, 9, 'beNpLNM5NxIEAfi0JCg==' +
'');
verbinde := BitmapFromString(52, 8, 'beNpLNM5NHEUDiT4+daWDL' +
'jT1RGrHVEaMxoFyG53DDchG4yKTWGWxSuFST1JQ47IL0zSqM0 h1G5' +
'pnCbqcJAZ6SAIAU/Tl/A==');
ok := BitmapFromString(17, 8, 'beNpLNM5NJBN9fOoKQWiCWNl4pOB' +
'sPOqxqsSjAKsWTFnybCHDLySHGACVkqmV');
insel_braun := BitmapFromString(8, 4, 'beNrTkehpyp7TF9VT6BT' +
'kqVmcalmdadlS6ORkoTilK3tpX5SThYSAiICliWJPpVNLoaWX o+KU' +
'tuSWUicBAQ4BCYGoQEOg4p5SpyBXzaBQSydHTUMDxepMJ6Bio GBLr' +
'qUhABeDHxc=');
insel_tuerkis := BitmapFromString(7, 5, 'beNoBaQCW/2lS//PO/' +
'++99+e199+13sul79+1nI5z//PW9+O1raKMpZ6E3s+t79utrZp7//' +
'fWlIprGCQhQllS59u179utraKE9+/WISghKUE5rbKc9+O179uttaa' +
'Mc4Z7c4Jz1tOt/+u99+O11sulc1BXR3E=');
insel_blau := BitmapFromString(6, 7, 'beNoL1PRKTN46K3lKqmFPrGZLq' +
'Ga2r+axeclTEg2BqAeGzq0qBsr2xBpWB2oCuUBle1dV90RqRn lqOr' +
'katuR6tURqXtvVkuyoKCCjqOnoNKcpCigCVONkougV6NSS6wQ 0H4g' +
'sA6OSC5O3dnkBTZuSalkNAB73MDg=');
logout := BitmapFromString(9, 10, 'beNpjYKAQfH/thVPquRM5usi' +
'TwmsXFD13wmMCCAAAda0XwQ==');
close:= BitmapFromString(38, 14, 'beNp1VAuOxSAIvE7tZhW/7' +
'525p1wBEbDZhjQUKcMAAv3K/QKSPPCdWigfNKaGAnKKelvGLWivP' +
'/V7l++V+hXb8pzK/JwCY0kmmUeMkg0uQ8dqYpIyLbGgCFzgrMjzL' +
'p8JGijmfKMSTcK/hZRBXIgOyCnr0E84JojB612GSyNVyUd09CyoY' +
'9jqqsREQNk99LAyjx7zCEoN0Cc7dyQFmRSs8Xk9mjxFs3D71H kmz' +
'tkYJaxzJiPzFUsRoyBmR1Ck2TQmL6wnxrEoVWMe6cVqLWdkGq QXo' +
'qbBI4FwsWhu1Dv5iwouVWW4s/i7gziuTeMQ3/lvoDH2TWyOuKuqz' +
'vZK0naKOcpU89UIynHFfJd6c9lxgmk6R3CdBW3K6uPiqNfQTG Y7Z' +
'tXyOuYQLdCC+T2kf343V55r6JprP/UqvTdPNbdMloNe5KpvYhryO' +
'HrkN55B3A57HW3nuI1mCbAnoegy0apK8iDLMNml13UvOenL32 3ad' +
'WcVYs3tUB+8Gqaba/0Kwb0i3nVOsq4NaABhqtG6Q/8D0S/H4g==');
weltkarteoffen := BitmapFromString(17, 12, 'beNoBZAKb/VweTEg6IBoZI' +
'RwbMC0fJyURMSsaNS0dNCgZPi0cPy0Sg29Rg25SQS8WOSgSOS wUO' +
'jQPMCsEHRoIHxoRJyQYLSsXNDIcNC4dNi0hQDEnOCYZZ1E8cV tBe' +
'mRMbFZCQjAfOSsZMywPPzkaIBoHKygSLi0SKSkKOzkdNS8cNy 4gO' +
'SoeSTcobFc9XUgqYkwwbVhASjklOy0bPDQdODEYKSQKKCgDLz AEO' +
'DkNNDQPOjUaNS0WMSQPalo+WEUfk4BTjHZMV0MeY1E2NCQOQT YgN' +
'y8YLyoPMTIGMzUDOzwPOTYOPTcYLicKT0MkXlAoZ1YhxLR4wq 52Z' +
'VMgZlYwRzgcMSYQPTQgMCsRPToUOzkONjMNPDkVNjARNi0LZl kxV' +
'EYQlodD3cyB49CHmIZEW0oZals5Oy4ZMyoYJyIKMS0PPTkZOj UaN' +
'S4ULSYJS0IcVksYdGklzcBt5th94dB50sJ0c2QoWkwkSDskOC wbM' +
'CoZNSweOzImOTAmMikbOTEYVkwkVEkOo5ZK5th65NZw4tFu6t qAq' +
'JlVW0weVUUuPjIhLygZOC4nLiQeNSslLyUXRz0fVUwafnYr2M 5w5' +
'dps4tZj7d9t49Vv2Mt4fHAzUUMfQTYdLigXMSgcMykdLyUXOz MZT' +
'0gZXlYRurNW7ORz6d5j7eFh691d6dtl7eB7uq5dYFUaTEIZLS UTK' +
'iEPNy4aLycQRTwYS0MLhn8x2tRt3NVe5dtd7+Nj5NZW7N9l3t Nl4' +
'NZ4iIA1UEgSKyMPKyMJKyEDOzERQzsPXlgXxb5r4tl149ho5t do6' +
'9tp8d9s7Nts5thu5tx6wrlnZR8LwUY=');
end;
procedure sound;
begin
WriteLn(IntToStr(GetSoundDuration('C:\WINDOWS\Medi a\ding.wav')));
PlaySound('C:\WINDOWS\Media\notify.wav');
end;
//function getcolorXY(x,y: integer): integer;
//begin
//workspaceBMP := BitmapFromString(1, 1, 'beNpjYGAAAAADAAE=');
//CopyClientToBitmap(workspaceBMP,x,y,x+2,y+2);
//farbe := FastGetPixel(workspaceBMP,1,1);
//FreeBitmap(workspaceBMP);
//end;
function getcolorXY(x, y: Integer): Integer;
begin
workspaceBMP := BitmapFromString(1, 1, '');
CopyClientToBitmap(workspaceBMP, x, y, x, y);
farbe := FastGetPixel(workspaceBMP, 0, 0);
FreeBitmap(workspaceBMP);
end;
procedure mouse(var x,y:Integer);
begin
MoveMouse(x, y);
wait(mousedelay+random(randomdelay));
ClickMouse(x,y,True);
wait(mousedelay+random(randomdelay));
end;
function MMerror : boolean;
begin
result:=false;
end;
procedure mouseMM(var x,y:Integer);
begin
wait(mousedelay+random(randomdelay));
HoldMouse(x,y,true);
MoveMouseSmooth(x,y);
wait(mousedelay+random(randomdelay));
ReleaseMouse(x,y,true);
wait(mousedelay+random(randomdelay));
end;
Procedure key_bm1;
var s: string;
begin
s:=BM_slot_1;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_bm2;
var s: string;
begin
s:=BM_slot_2;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
procedure key_bm3;
var s: string;
begin
s:=BM_slot_3;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
procedure reloadpage;
begin
wait (mapreloadwait);
SetDesktopAsClient;
end;
function BMsprungcheck:boolean;
begin
result:=false;
writeln('function BMsprungcheck startet');
asd:=0;
repeat
if (FindcolorTolerance(xx,yy,BMschriftfarbe, BMsuche_x1, BMsuche_y1, BMsuche_x2, BMsuche_y2, BMschriftfarbe_tolerance)=true) then begin
writeln('"BMschriftfarbe" erkannt auf Koordinate xx:'+inttostr(xx)+'/ yy:'+inttostr(yy)+' - befinde mich auf BONUSMAP! ');
result:=true;
end;
asd:=asd+1;
if (result=false) then begin
writeln('Bitte BMschriftfarbe überprüfen ');
end;
until (result=true) or (asd>6)
end;
function aufBM:boolean;
begin
result:=false;
writeln('function aufBM startet');
if (FindcolorTolerance(xx,yy,BMschriftfarbe, BMsuche_x1, BMsuche_y1, BMsuche_x2, BMsuche_y2, BMschriftfarbe_tolerance)=true) then begin
writeln('"BMschriftfarbe" erkannt auf Koordinate xx:'+inttostr(xx)+'/ yy:'+inttostr(yy)+' - befinde mich auf BONUSMAP! ');
result:=true;
end;
if(result=false) then begin
writeln('"BMschriftfarbe" nicht erkannt - Sollte das Schiff gerade auf BM sein, dann muss "BMschriftfarbe" neu ausgelesen werden oder die Seekartenposition neu eingestellt werden (skx2, sky2)');
end;
if (Findcolortolerance(xx,yy,Player_MMap_rot, mmx1, mmy1, mmx2, mmy2, Player_MMap_rot_tolerance)=true) then begin
result:=false;
writeln('Minimap: "Player_MMap_rot" (' + inttostr(Player_MMap_rot) + ')roter pixel gefunden mit "Player_MMap_rot_tolerance" ( ' + inttostr(Player_MMap_rot_tolerance) +') Farbabweichung auf Koordinate xx: ' + inttostr(xx) + ' yy: ' + inttostr(yy));
writeln('rote Pixel auf MM sind nur auf normaler Karte möglich - result:=false');
end;
//////////////////////////////////result:=true;///////////////////////////////////
if (result=false) then begin
if (starteBM=1) then begin
joinBM:=1;
end;
end;
end;
function bmsprung:boolean;
begin
result:=false;
writeln('function bmsprung startet');
key_bm1;
wait(2500+random(50));
if(bmsprungcheck=true) then begin
wait(Ladezeit_BM);
result:=true;
end;
if(result=false) then begin
key_bm2;
wait(2500+random(50));
if(bmsprungcheck=true) then begin
wait(Ladezeit_BM);
result:=true;
end;
end;
if(result=false) then begin
key_bm3;
wait(2500+random(50));
if(bmsprungcheck=true) then begin
wait(Ladezeit_BM);
result:=true;
end;
end;
joinBM:=0;
end;
function blubbcheck : boolean;
begin
result:=false;
getcolorXY(zumschiffx, zumschiffy);
get2:= farbe;
getcolorXY(zumschiffx + 3, zumschiffy + 5);
get3:= farbe;
if (SameValue(oldget2, get2)=false) then begin
writeln('Zum schiff nicht auffindbar - starte Tests auf Muschelschrubben');
result:=false;
end;
if (SameValue(oldget3, get3)=false) then begin
writeln('Zum schiff nicht auffindbar - starte Tests auf Muschelschrubben');
result:=false;
end;
if (result=false) then begin
if (FindBitmaptolerance(schiffe_inaktiv, schiffe_minimap_grafikx, schiffe_minimap_grafiky, schiffemap_tolerance)=false) then begin
if (FindBitmaptolerance(glitzimap, glitzimapx, glitzimapy, glitzimaptolerance)=false)then begin
writeln('Minimap wurde nicht gefunden - starte Wiederbelebung');
end;
end;
end;
end;
function getvariable: boolean;
begin
result:=false;
loadvariable;
writeln('function getvariable started - bestimme Konstanten und Variablen');
speed:=GetColorToleranceSpeed;
writeln('GetColorToleranceSpeed :=' + inttostr(speed));
GetClientDimensions(resolution_x, resolution_y);
Writeln('Bildschirmauflösung: '+inttostr(resolution_x)+'x '+inttostr(resolution_y));
resolution_x:=resolution_x - 30; resolution_y:=resolution_y - 30;
if (sk_manuell=0) then begin
if (FindTransparentBitmapTolerance(logout, lx, ly, 0, 1, 1, resolution_x, resolution_y, logout_tolerance)=true) then begin
sound;
result:=true;
writeln('logout gefunden - lx: '+inttostr(lx)+' ly: '+inttostr(ly)+' - definiere seekarte und glitzisuchbox');
skx2:= lx + 60;
sky2:= ly + 615;
skx1:= skx2 - 800;
sky1:= sky2 - 600;
end;
end;
if (sk_manuell=1) then begin
sky1:= sky2 - 599;
skx1:= skx2 - 798;
end;
seekarte_mitte_x:= skx2 - 399;
seekarte_mitte_y:= sky2 - 299;
logoutx1:= skx2 - 68;
logouty1:= sky2 - 619;
logoutx2:= skx2 - 4;
logouty2:= sky2 - 603;
chatx:= skx1;
chaty:= sky1;
BMsuche_x1:= skx2 - 560;
BMsuche_y1:= sky2 - 580;
BMsuche_x2:= skx2 - 300;
BMsuche_y2:= sky2 - 540;
if (FindBitmaptolerance(zumschiff, zumschiffx, zumschiffy, zumschiff_tolerance)=true) then begin
writeln('ZumSchiff gefunden - zumschiffx: '+inttostr(zumschiffx)+'/ zumschiffy:'+inttostr(zumschiffy));
result:=true;
getcolorXY(zumschiffx, zumschiffy);
get2:= farbe;
getcolorXY(zumschiffx + 3, zumschiffy + 5);
get3:=farbe;
zumschiff_get_x:=zumschiffx;
zumschiff_get_y:=zumschiffy;
zumschiff_get1_x:=zumschiffx + 3;
zumschiff_get1_y:=zumschiffy + 5;
getcolorXY(zumschiff_get_x, zumschiff_get_y);
zumschiff_get_color:=farbe;
getcolorXY(zumschiff_get1_x, zumschiff_get1_y);
zumschiff_get1_color:=farbe;
writeln('"zumschiffx"/"zumschiffy" definiere Pixelfarben für schnelle Überprüfung ob die Karte grau ist(schiff ist blubb): get2: '+inttostr(get2)+ ' get3: '+inttostr(get3));
end;
if (result=false) then begin
writeln('ZumSchiff nicht gefunden ! Gehe davon aus das mein Kutter Muscheln schrubbt - terminating script');
sound;
terminatescript;
end;
result:=false;
writeln('suche HP Balken');
if (FindBitmapTolerance(greenhp, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('voller Hp Balken erkannt');
end;
if (result=false) then begin
if (FindBitmapTolerance(hp1, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('Hp1 Balken erkannt');
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(hpextra, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('HpExtra Balken erkannt');
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(hp2, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('Hp2 Balken erkannt');
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(hp3, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('Hp3 Balken erkannt');
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(hp4, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('Hp4 Balken erkannt');
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(hp5, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('Hp5 Balken erkannt');
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(hp6, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('Hp6 Balken erkannt');
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(hp7, xx, yy, HP_balkengrafik_tolerance)=true) then begin
result:=true;
writeln('Hp7 Balken erkannt');
end;
end;
if (result=true) then begin
hpx1:=xx;
hpy1:=yy;
hpx2:=xx + 30;
hpy2:=yy + 5;
writeln('Hp Balken: hpx1: '+inttostr(hpx1)+' hpy1: '+inttostr(hpy1)+ ' hpx2: '+inttostr(hpx2)+ ' hpy2: '+inttostr(hpy2));
end;
if (result=false) then begin
writeln('HP balken nicht gefunden - terminatscript');
sound;
terminatescript;
end;
result:=false;
if (FindBitmaptolerance(schiffe_inaktiv, schiffe_minimap_grafikx, schiffe_minimap_grafiky, schiffemap_tolerance)=true) then begin
writeln('schiffe_inaktiv erkannt auf schiffe_minimap_grafikx:'+inttostr(schiffe_minimap _grafikx)+'/ schiffe_minimap_grafiky:'+inttostr(schiffe_minimap _grafiky));
result:=true;
schiffe_minimap_grafikx:= schiffe_minimap_grafikx + 4;
schiffe_minimap_grafiky:= schiffe_minimap_grafiky + 5;
mouse (schiffe_minimap_grafikx, schiffe_minimap_grafiky);
wait (activatemapwait)
end ;
if (result=false) then begin
writeln('Schiffeminimap nicht gefunden - definiere "schiffe_minimap_grafikx", "schiffe_minimap_grafiky" über "Glitzimap"');
end;
if (FindBitmaptolerance(glitzimap, glitzimapx, glitzimapy, glitzimaptolerance)=True)then begin
mmx1:= glitzimapx - 38;
mmy1:= glitzimapy - 101;
mmx2:= glitzimapx + 50;
mmy2:= glitzimapy - 12;
writeln('"Glitzimap" erkannt auf Koordinate glitzimapx: '+inttostr(glitzimapx)+' / glitzimapy:'+inttostr(glitzimapy));
writeln('Definiere Minimap: über die position von "Glitzimap" grafik: mmx1:= '+ inttostr(mmx1) + ' mmy1:= ' + inttostr(mmy1) + ' mmx2:= '+ inttostr(mmx2) + ' mmy2:='+ inttostr(mmy2));
if(result=false) then begin
schiffe_minimap_grafikx:= glitzimapx + 66;
schiffe_minimap_grafiky:= glitzimapy - 59;
writeln('definiere "schiffe_minimap_grafikx": ' + inttostr(schiffe_minimap_grafikx) + ' "schiffe_minimap_grafiky": ' + inttostr(schiffe_minimap_grafiky) +' über "Glitzimap"');
end;
end;
result:=false;
if (FindBitmaptolerance(abbrechen_nulls, angriff_abbrechenx, angriff_abbrecheny, 20)=true) then begin
result:=true;
constante_get_x:=angriff_abbrechenx;
constante_get_y:=angriff_abbrecheny;
constante_get1_x:=angriff_abbrechenx+6;
constante_get1_y:=angriff_abbrecheny+3;
angriff_abbrechen_get_x:=angriff_abbrechenx;
angriff_abbrechen_get_y:=angriff_abbrecheny;
angriff_abbrechen_get1_x:=angriff_abbrechenx+6;
angriff_abbrechen_get1_y:=angriff_abbrecheny+3;
getcolorXY(angriff_abbrechen_get_x, angriff_abbrechen_get_y);
angriff_abbrechen_get_color:= farbe;
getcolorXY(angriff_abbrechen_get1_x, angriff_abbrechen_get1_y);
angriff_abbrechen_get1_color:= farbe;
writeln('constante: angriff_abbrechenx:= ' + inttostr(angriff_abbrechenx) + ' angriff_abbrecheny:= ' + inttostr(angriff_abbrecheny));
getcolorXY(angriff_abbrechenx, angriff_abbrecheny);
get:= farbe;
getcolorXY(angriff_abbrechenx+6, angriff_abbrecheny+3);
get1:=farbe;
writeln ('definiere farben und punkte für angriff abbrechen nullstellung');
writeln(' get: '+inttostr(get)+ ' get1: '+inttostr(get1));
end;
if(result=false) then begin
writeln('angriff abbrechen nullstand wurde nicht erkannt - suche jetzt attacking grafik');
if (FindBitmaptolerance(atttacking, angriff_abbrechenx, angriff_abbrecheny, attacktolerance)=true) then begin
result:=true;
constante_get_x:=angriff_abbrechenx;
constante_get_y:=angriff_abbrecheny;
constante_get1_x:=angriff_abbrechenx+6;
constante_get1_y:=angriff_abbrecheny+3;
angriff_abbrechen_get_x:=angriff_abbrechenx;
angriff_abbrechen_get_y:=angriff_abbrecheny;
angriff_abbrechen_get1_x:=angriff_abbrechenx+6;
angriff_abbrechen_get1_y:=angriff_abbrecheny+3;
getcolorXY(angriff_abbrechen_get_x, angriff_abbrechen_get_y);
angriff_abbrechen_get_color:= farbe;
getcolorXY(angriff_abbrechen_get1_x, angriff_abbrechen_get1_y);
angriff_abbrechen_get1_color:= farbe;
writeln('constante: angriff_abbrechenx:= ' + inttostr(angriff_abbrechenx) + ' angriff_abbrecheny:= ' + inttostr(angriff_abbrecheny));
get:= angriff_abbrechen_get_color;
get1:=angriff_abbrechen_get1_color;
writeln ('definiere farben und punkte für angriff abbrechen ');
writeln(' get: '+inttostr(get)+ ' get1: '+inttostr(get1));
farbe1:=14282495; // abbrechen leuchtet farbe
farbe2:=12381695; // abbrechen leuchtet farbe
farbe3:=11974119; // abbrechen leuchtet farbe
end;
end;
if (result=false) then begin
writeln('Angriff abbrechen konnte nicht geortet werden - hier läuft was schief...');
//terminate script;
sound;
end;
result:=false;
if (FindBitmaptolerance(angriff_nullstellung, attack_xx, attack_yy, 20)=true) then begin
result:=true;
attack_get_x:=attack_xx;
attack_get_y:=attack_yy;
attack_get1_x:= attack_xx+6;
attack_get1_y:= attack_yy+3;
getcolorXY(attack_get_x, attack_get_y);
attack_get_color:= farbe;
getcolorXY(attack_get1_x, attack_get1_y);
attack_get1_color:= farbe;
writeln('attack_get_x:= ' + inttostr(attack_get_x) + ' attack_get_y:= ' + inttostr(attack_get_y));
writeln('attack_get1_x:= ' + inttostr(attack_get1_x) + ' attack_get1_y:= ' + inttostr(attack_get1_y));
get4:= attack_get_color;
get5:= attack_get1_color;
writeln ('definiere farben und punkte für angriff nullstellung');
writeln(' farbe get4: '+inttostr(get4)+ ' farbe get5: '+inttostr(get5));
end;
if (result=false) then begin
if (FindBitmaptolerance(attack, attack_xx, attack_yy, attacktolerance)=true) then begin
result:=true;
attack_get_x:=attack_xx;
attack_get_y:=attack_yy
attack_get1_x:= attack_xx+6;
attack_get1_y:= attack_yy+3;
getcolorXY(attack_get_x, attack_get_y);
attack_get_color:= farbe;
getcolorXY(attack_get1_x, attack_get1_y);
attack_get1_color:= farbe;
writeln('attack_get_x:= ' + inttostr(attack_get_x) + ' attack_get_y:= ' + inttostr(attack_get_y));
writeln('attack_get1_x:= ' + inttostr(attack_get1_x) + ' attack_get1_y:= ' + inttostr(attack_get1_y));
getcolorXY(attack_get_x, attack_get_y);
get4:= farbe;
getcolorXY(attack_get1_x, attack_get1_y);
get5:= farbe;
writeln ('definiere farben und punkte für angriff nullstellung');
writeln(' farbe get4: '+inttostr(get4)+ ' farbe get5: '+inttostr(get5));
end;
end;
if (result=false) then begin
writeln('attack button konnte nicht geortet werden - hier läuft was schief...');
//terminate script;
sound;
end;
end;
function fastcheck_abbrechen : boolean;
begin
result:=true;
writeln('function fastcheck_abbrechen started');
getcolorXY(angriff_abbrechen_get_x, angriff_abbrechen_get_y);
get:= farbe;
getcolorXY(angriff_abbrechen_get1_x, angriff_abbrechen_get1_y);
get1:= farbe;
if (SameValue(angriff_abbrechen_get_color, get)=true) then begin
writeln('angriff_abbrechen leuchtet nicht - result:=false;');
result:=false;
end;
if (SameValue(angriff_abbrechen_get1_color, get1)=true) then begin
writeln('angriff_abbrechen leuchtet nicht - result:=false;');
result:=false;
end;
if (FindColorCircleTolerance(x1, y1, farbe1, angriff_abbrechen_get_x, angriff_abbrechen_get_y, 10, 3)=true) then begin
result:=true;
writeln('angriff_abbrechen leuchtet - farbe1');
end;
if (FindColorCircleTolerance(x1, y1, farbe2, angriff_abbrechen_get_x, angriff_abbrechen_get_y, 10, 3)=true) then begin
result:=true;
writeln('angriff_abbrechen leuchtet - farbe2');
end;
if (FindColorCircleTolerance(x1, y1, farbe3, angriff_abbrechen_get_x, angriff_abbrechen_get_y, 10, 3)=true) then begin
result:=true;
writeln('angriff_abbrechen leuchtet - farbe3');
end;
if(result=false) then begin
writeln('fastcheck abbrechen - bin nicht am schiessen - result:= false');
end;
if(result=true) then begin
writeln('fastcheck - allright baby, balla balla - result:=true;');
end;
end;
function fastcheck_attack : boolean;
begin
result:=false;
writeln('fastcheck_attack startet');
getcolorXY(attack_get_x, attack_get_y);
get4:= farbe;
getcolorXY(attack_get1_x, attack_get1_y);
get5:= farbe;
if (SameValue(attack_get_color, get4)=false) then begin
writeln('angriff leuchtet');
result:=true;
end;
if (result=false) then begin
if (SameValue(attack_get1_color, get5)=false) then begin
writeln('angriff leuchtet');
result:=true;
end;
end;
if(result=true) then begin
writeln('attack leuchtet - fastcheck attack =true');
end;
end;
Function gamemessages : Boolean;
begin
result:=false;
if (FindBitmapTolerance(neulogin, xx, yy, schliessen_tolerance)=false) then begin
if (FindBitmapTolerance(verbinde, xx, yy, schliessen_tolerance)=false) then begin
if (FindBitmapToleranceIN(schliessen, xx, yy, skx1, sky1 + 40, skx2, sky2, schliessen_tolerance)=True) then begin
result:=true;
writeln('schliessen(xx/yy)'+inttostr(xx)+'/'+inttostr(yy));
xx:=xx+2+random(2); yy:=yy+2+random(2);
mouse(xx,yy);
end;
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(neulogin, xx, yy, schliessen_tolerance)=True) then begin
result:=true; wait(20000);
writeln('wait(20000); neulogin(xx/yy)'+inttostr(xx)+'/'+inttostr(yy));
xx:=xx+2+random(2); yy:=yy+2+random(2);
mouse(xx,yy);
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(ok, xx, yy, ok_tolerance)=True) then begin
result:=true;
writeln('ok(xx/yy)'+inttostr(xx)+'/'+inttostr(yy));
xx:=xx+2+random(2); yy:=yy+2+random(2);
mouse(xx,yy);
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(verbinde, xx, yy, schliessen_tolerance)=True) then begin
result:=true; wait(20000);
writeln('wait(20000); verbinde(xx/yy)'+inttostr(xx)+'/'+inttostr(yy));
xx:=xx+2+random(2); yy:=yy+2+random(2);
mouse(xx,yy);
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(close, xx, yy, close_tolerance)=True) then begin
result:=true;
writeln('close(xx/yy)'+inttostr(xx)+'/'+inttostr(yy));
//mouse(xx,yy);
reloadpage;
wait(mapreloadwait);
end;
end;
if (result=false) then begin
if (FindBitmapTolerance(weltkarteoffen, xx, yy, weltkarteoffen_tolerance)=True) then begin
result:=true;
writeln('weltkarte(xx/yy)'+inttostr(xx)+'/'+inttostr(yy));
xx:=mmx1+45; yy:=mmy1-21;
mouse(xx,yy);
end;
end;
if (result=false) then writeln('keine gamemessage gefunden');
end;
function output:boolean;
begin
result:=false;
//ClearDebug;
// Koordinaten
// skx1, sky1, skx2, sky2, seekarte_mitte_x, seekarte_mitte_y, logoutx1, logouty1, logoutx2, logouty2,
// chatx, chaty, BMsuche_x1, BMsuche_y1, BMsuche_x2, BMsuche_y2,
// zumschiffx, zumschiffy, zumschiff_get_x, zumschiff_get_y, zumschiff_get1_x, zumschiff_get1_y,
// angriff_abbrechenx, angriff_abbrecheny, angriff_abbrechen_get_x, angriff_abbrechen_get_y, angriff_abbrechen_get1_x, angriff_abbrechen_get1_y,
// glitzimapx, glitzimapy, schiffe_minimap_grafikx, schiffe_minimap_grafiky, mmx1, mmy1, mmx2, mmy2,
// attack_xx, attack_yy, attack_get_x, attack_get_y, attack_get1_x, attack_get1_y,
writeln('skx1:='+inttostr(skx1)+';'); writeln('sky1:='+inttostr(sky1)+';');
writeln('skx2:='+inttostr(skx2)+';'); writeln('sky2:='+inttostr(sky2)+';');
writeln('seekarte_mitte_x:='+inttostr(seekarte_mit te_x)+';'); writeln('seekarte_mitte_y:='+inttostr(seekarte_mit te_y)+';');
writeln('logoutx1:='+inttostr(logoutx1)+';'); writeln('logouty1:='+inttostr(logouty1)+';');
writeln('logoutx2:='+inttostr(logoutx2)+';'); writeln('logouty2:='+inttostr(logouty2)+';');
writeln('chatx:='+inttostr(chatx)+';'); writeln('chaty:='+inttostr(chaty)+';');
writeln('BMsuche_x1:='+inttostr(BMsuche_x1)+';'); writeln('BMsuche_y1:='+inttostr(BMsuche_y1)+';');
writeln('BMsuche_x2:='+inttostr(BMsuche_x2)+';'); writeln('BMsuche_y2:='+inttostr(BMsuche_y2)+';');
writeln('zumschiffx:='+inttostr(zumschiffx)+';'); writeln('zumschiffy:='+inttostr(zumschiffy)+';');
writeln('zumschiff_get_x:='+inttostr(zumschiff_get _x)+';'); writeln('zumschiff_get_y:='+inttostr(zumschiff_get _y)+';');
writeln('zumschiff_get1_x:='+inttostr(zumschiff_ge t1_x)+';'); writeln('zumschiff_get1_y:='+inttostr(zumschiff_ge t1_y)+';');
writeln('angriff_abbrechenx:='+inttostr(angriff_ab brechenx)+';'); writeln('angriff_abbrecheny:='+inttostr(angriff_ab brecheny)+';');
writeln('angriff_abbrechen_get_x:='+inttostr(angri ff_abbrechen_get_x)+';'); writeln('angriff_abbrechen_get_y:='+inttostr(angri ff_abbrechen_get_y)+';');
writeln('angriff_abbrechen_get1_x:='+inttostr(angr iff_abbrechen_get1_x)+';'); writeln('angriff_abbrechen_get1_y:='+inttostr(angr iff_abbrechen_get1_y)+';');
writeln('glitzimapx:='+inttostr(glitzimapx)+';'); writeln('glitzimapy:='+inttostr(glitzimapy)+';');
writeln('schiffe_minimap_grafikx:='+inttostr(schif fe_minimap_grafikx)+';'); writeln('schiffe_minimap_grafiky:='+inttostr(schif fe_minimap_grafiky)+';');
writeln('mmx1:='+inttostr(mmx1)+';'); writeln('mmy1:='+inttostr(mmy1)+';');
writeln('mmx2:='+inttostr(mmx2)+';'); writeln('mmy2:='+inttostr(mmy2)+';');
writeln('attack_xx:='+inttostr(attack_xx)+';'); writeln('attack_yy:='+inttostr(attack_yy)+';');
writeln('attack_get_x:='+inttostr(attack_get_x)+'; '); writeln('attack_get_y:='+inttostr(attack_get_y)+'; ');
writeln('attack_get1_x:='+inttostr(attack_get1_x)+ ';'); writeln('attack_get1_y:='+inttostr(attack_get1_y)+ ';');
writeln('hpx1:='+inttostr(hpx1)+';'); writeln('hpy1:='+inttostr(hpy1)+';');
writeln('hpx2:='+inttostr(hpx2)+';'); writeln('hpy2:='+inttostr(hpy2)+';');
writeln('zumschiff_get_color:='+inttostr(zumschiff _get_color)+';'); writeln('zumschiff_get1_color:='+inttostr(zumschif f_get1_color)+';');
writeln('angriff_abbrechen_get_color:='+inttostr(a ngriff_abbrechen_get_color)+';'); writeln('angriff_abbrechen_get1_color:='+inttostr( angriff_abbrechen_get1_color)+';');
writeln('attack_get_color:='+inttostr(attack_get_c olor)+';'); writeln('attack_get1_color:='+inttostr(attack_get1 _color)+';');
end;
function checkmove:boolean;
Begin
result:=false;
Writeln('function checkmove started');
if (Findcolortolerance(xx,yy,meinschiff, mmx1, mmy1, mmx2, mmy2, meinschiff_tolerance)=true)then begin
wait (checkmovewait);
end;
Findcolortolerance(meinschiff_x, meinschiff_y, meinschiff, mmx1, mmy1, mmx2, mmy2, meinschiff_tolerance);
if (meinschiff_x=xx) and (meinschiff_y=yy) then begin
result:=true;Writeln('checkmove result:=true;');
end;
end;
function fastdistance : boolean;
begin
result:=false;
Writeln('function Fastdistance started');
if (Findcolortolerance(xx,yy,meinschiff, mmx1, mmy1, mmx2, mmy2, meinschiff_tolerance)=true) then begin xx:=xx+1; yy:=yy+1;
if (FindColorCircleTolerance(x2, y2, npcminimap_orange, xx, yy, NPC_abstand_zu_meinschiff, npcminimap_orange_tolerance)=true) then begin
result:=true; Writeln('Fastdistance: unterschrittener PixelAbstand erkannt - result:=true;');
calculated_distance:=Distance(xx, yy, x2, y2);
Writeln('Fastdistance: berechneter PixelAbstand - calculated_distance: ' +inttostr(calculated_distance));
bonusdistanz:=0;
end;
end;
if (Findcolortolerance(xx,yy,NPC_blau_Seekarte, skx1,sky1, skx2, sky2, NPC_blau_Seekarte_tolerance)=true) then begin
result:=true; Writeln('Fastdistance: NPC_blau_Seekarte erkannt - result:=true;');
bonusdistanz:=1;
end;
if (result=false) then begin
Writeln('function Fastdistance started');
end;
end;
Procedure key_hoch;
var s: string;
begin
s:=hoch;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_runter;
var s: string;
begin
s:=runter;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
procedure key_links;
var s: string;
begin
s:=links;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_rechts;
var s: string;
begin
s:=rechts;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_angriff;
var s: string;
begin
s:=angrifff;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_angriff_abbrechen;
var s: string;
begin
s:=angriff_abbrechen;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_gegner_durchschalten;
var s: string;
begin
s:=gegner_durchschalten;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_kurs_setzen;
var s: string;
begin
s:=kurs_setzen;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_zum_schiff;
begin
KeyDown(32);
wait(sendkeyswait+random(randomdelay));
KeyUp(32);
wait(sendkeyswait+random(randomdelay)+random(rando mdelay));
end;
Procedure key_reparieren;
var s: string;
begin
s:=reparieren;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
Procedure key_bonuskartenmenue;
var s: string;
begin
s:=bonuskartenmenue;
typekeys(s);
wait(sendkeyswait+random(randomdelay));
end;
function checkstopp:boolean;
begin
result:=false;
key_zum_schiff;
wait(50);
key_links;
wait(120);
if (FindBitmapToleranceIn(standartrang, xf, yf, skx1, sky1, skx2, sky2, standartrang_tolerance)=True) then begin
wait(stoppwait+ random (20));
if (FindBitmapToleranceIn(standartrang, xx, yy, skx1, sky1, skx2, sky2, standartrang_tolerance)=True)then begin
if (xf=xx) and (yf=yy)
then result:=true;
end;
end;
end;
function stopprepp : Boolean;
begin
result:=false;
if (Findcolortolerance(xx,yy,meinschiff, mmx1, mmy1, mmx2, mmy2, meinschiff_tolerance)=true) then begin
if (FindColorCircleTolerance(npcminimap_orange_x, npcminimap_orange_y, npcminimap_orange, xx, yy, stoppreppdistance, npcminimap_orange_tolerance)=true) then begin
result:=true;
writeln('"npcminimap" Feinde auf der Minimap erkannt mit unterschrittenem Abstand "stoppreppdistance": '+inttostr(stoppreppdistance)+' Pixeln - stoppe Reperatur');
end;
end;
end;
procedure reppen;
begin
writeln('starte procedure reppen');
key_reparieren;
wait(reppwait + random(randomdelay));
if (FindBitmapTolerance(reparierend, xx, yy, reparierend_tolerance)=True)then begin
writeln('Status reparierend - starte suche nach Gründen die Reperatur zu stoppen')
repeat
wait (reppwait);
if (stopprepp=true) then begin
key_reparieren;
end;
wait (reppwait);
until (FindBitmapTolerance(reparierend, xx, yy, reparierend_tolerance)=false);
end;
end;
Procedure drive_obenlinks;
begin
xxx:= mmx1 + random(2);
yyy:= mmy1 + random(2);
mouse(xxx,yyy);
key_kurs_setzen;
end;
Procedure drive_untenlinks;
begin
xxx:= mmx1 + 12 + random(2);
yyy:= mmy2 - random(2);
mouse(xxx,yyy);
key_kurs_setzen;
end;
Procedure drive_obenrechts;
begin
xxx:= mmx2 - random(2);
yyy:= mmy1 + random(2);
mouse(xxx,yyy);
key_kurs_setzen;
end;
Procedure drive_untenrechts;
begin
xxx:= mmx2 - random(2);
yyy:= mmy2 -12 - random(2);
mouse(xxx,yyy);
key_kurs_setzen;
end;
Procedure move_hoch;
begin
key_zum_schiff;
key_hoch;
key_hoch;
key_hoch;
key_kurs_setzen;
end;
Procedure move_runter;
begin
key_zum_schiff;
key_runter;
key_runter;
key_runter;
key_kurs_setzen;
end;
Procedure move_links;
begin
key_zum_schiff;
key_links;
key_links;
key_links;
key_kurs_setzen;;
end;
Procedure move_rechts;
begin
key_zum_schiff;
key_rechts;
key_rechts;
key_rechts;
key_kurs_setzen;
end;
procedure getposi;
begin
writeln('function getposi started');
if (Findcolortolerance(xx,yy,meinschiff, mmx1, mmy1, mmx2, mmy2, meinschiff_tolerance)=true)then begin
posix:=xx - mmx1;
posiy:=yy - mmy1;
writeln('posix: ' + inttostr(posix) + ' posiy: ' + inttostr(posiy));
end;
end;
procedure getquarter;
begin
writeln('procedure getquarter started');
getposi;
if (posix<=45) then begin
if (posiy<=45) then begin
quarter:=3;
end;
end;
if (posix>45) then begin
if (posiy<=45) then begin
quarter:=1;
end;
end;
if (posix>45) then begin
if (posiy>45) then begin
quarter:=4;
end;
end;
if (posix<=45) then begin
if (posiy>45) then begin
quarter:=2;
end;
end;
if (posix>=10) then begin
if (posiy<19) then begin
quarter:=3;
end;
end;
if (posix>=79) then begin
if (posiy>=10) then begin
quarter:=1;
end;
end;
if (posix<79) then begin
if (posiy>=75) then begin
quarter:=4;
end;
end;
if (posix<11) then begin
if (posiy<75) then begin
quarter:=2;
end;
end;
writeln('quarter: ' + inttostr(quarter));
end;
function reppdrive : boolean;
var oldquarter:integer;
begin
writeln('function reppdrive started');
result:=false;
getquarter;
if (quarter=1) then begin
drive_obenlinks;
end;
if (quarter=2) then begin
drive_untenrechts;
end;
if (quarter=3) then begin
drive_untenlinks;
end;
if (quarter=4) then begin
drive_obenrechts;
end;
wait(400);
if (checkmove=true) then begin
oldquarter:=quarter;
quarter:=RandomRange(1, 4);
if (quarter=oldquarter) then quarter:=RandomRange(1, 4);
if (quarter=oldquarter) then quarter:=RandomRange(1, 4);
if (quarter<1) then quarter:=4;
if (quarter=1) then begin
drive_obenlinks;
end;
if (quarter=2) then begin
drive_untenrechts;
end;
if (quarter=3) then begin
drive_untenlinks;
end;
if (quarter=4) then begin
drive_obenrechts;
end;
end;
repeat
gamemessages;
wait(reppwait+random(randomdelay));
if (Findcolortolerance(xx,yy,meinschiff, mmx1, mmy1, mmx2, mmy2, meinschiff_tolerance)=true) then begin
if (FindColorCircleTolerance(x2, y2, npcminimap_orange, xx, yy, allowreppdistance, npcminimap_orange_tolerance)=false) then begin
result:=true;
if (Findcolortolerance(hpcolor_x, hpcolor_y, hpcolor1, hpx1, hpy1, hpx2, hpy2, schiff_reppen_rotorange__HP_tolerance)=true) then begin
result:=false; writeln('"hpcolor1" (' + inttostr(hpcolor1) + ') mit "schiff_reppen_rotorange__HP_tolerance": (' + inttostr(schiff_reppen_rotorange__HP_tolerance) + 'im Hp Balken: hpx1: '+inttostr(hpx1)+' hpy1: '+inttostr(hpy1)+ ' hpx2: '+inttostr(hpx2)+ ' hpy2: '+inttostr(hpy2) + ' gefunden - xx: '+inttostr(xx) + ' gefunden - yy: '+inttostr(yy) );
end;
if (Findcolortolerance(xx,yy,hpcolor2, hpx1, hpy1, hpx2, hpy2, schiff_reppen_rotorange__HP_tolerance)=true) then begin
result:=false; writeln('"hpcolor2" (' + inttostr(hpcolor2) + ') mit "schiff_reppen_rotorange__HP_tolerance": (' + inttostr(schiff_reppen_rotorange__HP_tolerance) + 'im Hp Balken: hpx1: '+inttostr(hpx1)+' hpy1: '+inttostr(hpy1)+ ' hpx2: '+inttostr(hpx2)+ ' hpy2: '+inttostr(hpy2) + ' gefunden - xx: '+inttostr(xx) + ' gefunden - yy: '+inttostr(yy) );
end;
if (result=false) then writeln(' REPPDRIVE: FAHRE BIS CHECKMOVE = TRUE - BIN ZIEHMLICH AM ARSCH...');
end;
end;
if (checkmove=true) then result:=true;
until (result=true);
reppen;
end;
Function reppcheck : Boolean;
begin
result:=false;
writeln('function reppcheck started');
gamemessages;
if (Findcolortolerance(hpcolor_x, hpcolor_y, hpcolor1, hpx1, hpy1, hpx2, hpy2, schiff_reppen_rotorange__HP_tolerance)=true) then begin
result:=true; writeln('"hpcolor1" (' + inttostr(hpcolor1) + ') mit "schiff_reppen_rotorange__HP_tolerance": (' + inttostr(schiff_reppen_rotorange__HP_tolerance) + 'im Hp Balken: hpx1: '+inttostr(hpx1)+' hpy1: '+inttostr(hpy1)+ ' hpx2: '+inttostr(hpx2)+ ' hpy2: '+inttostr(hpy2) + ' gefunden - xx: '+inttostr(xx) + ' gefunden - yy: '+inttostr(yy) );
end;
if (result=false) then begin
if (Findcolortolerance(xx,yy,hpcolor2, hpx1, hpy1, hpx2, hpy2, schiff_reppen_rotorange__HP_tolerance)=true) then begin
result:=true; writeln('"hpcolor2" (' + inttostr(hpcolor2) + ') mit "schiff_reppen_rotorange__HP_tolerance": (' + inttostr(schiff_reppen_rotorange__HP_tolerance) + 'im Hp Balken: hpx1: '+inttostr(hpx1)+' hpy1: '+inttostr(hpy1)+ ' hpx2: '+inttostr(hpx2)+ ' hpy2: '+inttostr(hpy2) + ' gefunden - xx: '+inttostr(xx) + ' gefunden - yy: '+inttostr(yy) );
end;
end;
if (result=false) then begin
if (Findcolortolerance(xx,yy,hpcolor3, hpx1, hpy1, hpx2, hpy2, schiff_reppen_rotorange__HP_tolerance)=true) then begin
result:=true; writeln('"hpcolor3" (' + inttostr(hpcolor3) + ') mit "schiff_reppen_rotorange__HP_tolerance": (' + inttostr(schiff_reppen_rotorange__HP_tolerance) + 'im Hp Balken: hpx1: '+inttostr(hpx1)+' hpy1: '+inttostr(hpy1)+ ' hpx2: '+inttostr(hpx2)+ ' hpy2: '+inttostr(hpy2) + ' gefunden - xx: '+inttostr(xx) + ' gefunden - yy: '+inttostr(yy) );
end;
end;
if (result=false) then begin
if (Findcolortolerance(xx,yy,hpcolor4, hpx1, hpy1, hpx2, hpy2, schiff_reppen_rotorange__HP_tolerance)=true) then begin
result:=true; writeln('"hpcolor4" (' + inttostr(hpcolor4) + ') mit "schiff_reppen_rotorange__HP_tolerance": (' + inttostr(schiff_reppen_rotorange__HP_tolerance) + 'im Hp Balken: hpx1: '+inttostr(hpx1)+' hpy1: '+inttostr(hpy1)+ ' hpx2: '+inttostr(hpx2)+ ' hpy2: '+inttostr(hpy2) + ' gefunden - xx: '+inttostr(xx) + ' gefunden - yy: '+inttostr(yy) );
end;
end;
if (result=false) then begin
if (Findcolortolerance(xx,yy,hpcolor5, hpx1, hpy1, hpx2, hpy2, schiff_reppen_rotorange__HP_tolerance)=true) then begin
result:=true; writeln('"hpcolor5" (' + inttostr(hpcolor5) + ') mit "schiff_reppen_rotorange__HP_tolerance": (' + inttostr(schiff_reppen_rotorange__HP_tolerance) + 'im Hp Balken: hpx1: '+inttostr(hpx1)+' hpy1: '+inttostr(hpy1)+ ' hpx2: '+inttostr(hpx2)+ ' hpy2: '+inttostr(hpy2) + ' gefunden - xx: '+inttostr(xx) + ' gefunden - yy: '+inttostr(yy) );
end;
end;
if (result=true) then begin
reppdrive;
end;
end;
function get_close_npc:boolean;
begin
result:=false;
if (Findcolortolerance(xx,yy,meinschiff, mmx1, mmy1, mmx2, mmy2, meinschiff_tolerance)=true) then begin
i:=1; meinschiff_x:=xx+1; meinschiff_y:=yy+1; end;
repeat
i:=i+1;
if (FindColorCircleTolerance(x2, y2, npcminimap_orange, meinschiff_x, meinschiff_y, i, npcminimap_orange_tolerance)=true) then begin
result:=true; MM_npc_x:=x2; MM_npc_y:= y2; end;
until (result=true) or (i>15);
if(result=false) then begin
writeln('meinschiff oder npcorange nicht gefunden @ function get_close_npc');
end;
end;
function angriff : boolean;
begin
writeln('function angriff started');
result:=false;
if (aufBM=true) then begin
key_angriff;
result:=true;
end else writeln (' Angriff konnte nicht ausgeführt werden da BM nicht erkannt wurde !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
end;
function distanz : boolean;
var s: string;
begin
result:=false;
writeln('function distanz gestartet');
if (fastcheck_abbrechen=true) then begin
getquarter;
if (get_close_npc=true) then begin
if (quarter=1) then begin MM_npc_x:=meinschiff_x +1; MM_npc_y:= meinschiff_y - 3;
if (Findcolortolerance(xx,yy,npcminimap_orange, meinschiff_x - 5, meinschiff_y - 15, meinschiff_x + 7, meinschiff_y, npcminimap_orange_tolerance)=true) then begin
MM_npc_x:=xx + 3 -random(3); MM_npc_y:= yy - 3 - bonusdistanz ; result:=true; end; //move_hoch;
end;
if (quarter=2) then begin MM_npc_x:=meinschiff_x - 1; MM_npc_y:= meinschiff_y + 3;
if (Findcolortolerance(xx,yy,npcminimap_orange, meinschiff_x - 5, meinschiff_y, meinschiff_x + 5, meinschiff_y + 15, npcminimap_orange_tolerance)=true) then begin
MM_npc_x:=xx - 3 + random(3); MM_npc_y:= yy + 3 + bonusdistanz; result:=true; end; //move_runter;
end;
if (quarter=3) then begin MM_npc_x:=meinschiff_x - 3; MM_npc_y:= meinschiff_y - 1;
if (Findcolortolerance(xx,yy,npcminimap_orange, meinschiff_x - 15, meinschiff_y - 5, meinschiff_x, meinschiff_y + 5, npcminimap_orange_tolerance)=true) then begin
MM_npc_x:=xx - 3 - bonusdistanz; MM_npc_y:= yy - 3 + random(3); result:=true; end; //move_links;
end;
if (quarter=4) then begin MM_npc_x:=meinschiff_x + 3; MM_npc_y:= meinschiff_y + 1;
if (meinschiff_x<mmx1 + 15) then begin meinschiff_x:= meinschiff_x + 15; end;
if (Findcolortolerance(xx,yy,npcminimap_orange, meinschiff_x , meinschiff_y - 5, meinschiff_x + 15, meinschiff_y + 5, npcminimap_orange_tolerance)=true) then begin
MM_npc_x:=xx + 3 + bonusdistanz; MM_npc_y:= yy + 3 - random(3);
result:=true; end; //move_rechts;
end;
mouseMM(MM_npc_x, MM_npc_y);
key_kurs_setzen;
wait(100);
oldget:=0;
if (checkstopp=true) then begin
repeat
xf:=skx1+30+random(750); yf:= sky1+80+random(500);
movemouse(xf,yf);
wait(50);
mouse(xf,yf);
wait(50);
oldget:=oldget+1;
until (oldget>10) or (checkstopp=false)
end;
end;
end;
end;
function shipMM:boolean;
begin
result:=false;
writeln('function shippMM started');
reppcheck;
if (distanzcounter>1) then begin
getquarter;
distanzcounter:=0;
end;
gamemessages;
if (fastcheck_abbrechen=false) then begin
if (Findcolortolerance(xx,yy,meinschiff, mmx1, mmy1, mmx2, mmy2, meinschiff_tolerance)=true) then begin
i:=2;
writeln('Minimap: "meinschiff" (' + inttostr(meinschiff) + ')gefunden auf Koordinate xx: ' + inttostr(xx) + ' yy: ' + inttostr(yy)+' mit "meinschiff_tolerance" ( ' + inttostr(meinschiff_tolerance) +') Farbabweichung ');
repeat
i:=i+1;
if (FindColorCircleTolerance(x2, y2, npcminimap_orange, xx, yy, i, npcminimap_orange_tolerance)=true) then begin
result:=true; MM_npc_x:=x2; MM_npc_y:= y2;
writeln('Minimap: "npcminimap" (' + inttostr(npcminimap_orange) + ')orange gefunden auf Koordinate MM_npc_x: ' + inttostr(MM_npc_x) + ' MM_npc_y: ' + inttostr(MM_npc_y)+' mit "npcminimap_orange_tolerance" ( ' + inttostr(npcminimap_orange_tolerance) +') Farbabweichung ');
end;
until (result=true) or (i>90);
if (result=true) then begin
if (x2>mmx2) then begin result:=false; end;
if (x2<mmx1) then begin result:=false; end;
if (y2>mmy2) then begin result:=false; end;
if (y2<mmy1) then begin result:=false; end;
end;
if (result=false) then begin
if (Findcolortolerance(xx,yy,npcminimap_orange, mmx1, mmy1, mmx2, mmy2, npcminimap_orange_tolerance)=true) then begin
result:=true; MM_npc_x:=xx; MM_npc_y:=yy;
writeln('Minimap: "npcminimap_orange" (' + inttostr(npcminimap_orange) + ')oranger pixel gefunden mit "npcminimap_orange_tolerance" ( ' + inttostr(npcminimap_orange_tolerance) +') Farbabweichung auf Koordinate xx: ' + inttostr(xx) + ' yy: ' + inttostr(yy));
end;
end;
//////////////////////////////////////////////////////////////////////////////
if (result=true) then begin
mouseMM(MM_npc_x, MM_npc_y);
key_kurs_setzen;
i:=0;
repeat
key_gegner_durchschalten;
if (fastcheck_attack=true) then begin
angriff;
wait(150);
end;
i:=i + 1;
until (fastcheck_abbrechen=true) or (i>3);
end;
end;
end;
if (fastcheck_abbrechen=true) then begin
key_zum_schiff;
if (fastdistance=true) then begin
distanzcounter:= distanzcounter+1;
distanz;
end;
end;
end;
procedure versioncheck;
begin
if GetSCARVersion < 328 then
begin
WriteLn('This script requires SCAR Divi 3.28 or higher, get it here:');
WriteLn('http://www.scar-divi.com/');
//WriteLn(OpenWebPage('http://www.scar-divi.com/'));
sound;
TerminateScript;
end;
end;
begin
versioncheck;
LoadBMP;
getvariable;
output;
repeat
if (joinBM=1) then begin
bmsprung;
end;
if (aufBM=true) then begin
shipMM;
end;
until(false);
end.






