Advertisement
Guest User

Untitled

a guest
Sep 15th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.35 KB | None | 0 0
  1. ;
  2. ; AutoHotkey Version: 1.x
  3. ; Language: English
  4. ; Platform: Win9x/NT
  5. ; Author: A.N.Other <myemail@nowhere.com>
  6. ;
  7. ; Script Function:
  8. ; Template script (you can customize this template by editing "ShellNew\Template.ahk" in your Windows folder)
  9. ;
  10.  
  11. #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
  12. SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
  13. SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
  14.  
  15. LWin::
  16. sleep 1000
  17. ; -------------- Variablen-Definition ----------------------
  18.  
  19. ; --- Inventar-Beutel, der die Karten hat. Start- und Endpunkt der Ziehbewegung
  20. bag_top_positionx := 708
  21. bag_top_positiony := 183
  22. top_right_cornerx := 1817
  23. top_right_cornery := 20
  24.  
  25. ; --- Inventar sortieren. Position BEVOR das Inventar verschoben wurde. Und Bestätigungsbutton.
  26. ; --- Sollte das Inventar immer gleich aussehen UND Platz für 11 Items im ersten Beutel sein,
  27. ; --- ist es nicht notwendig, zu sortieren. Dann kann bag_sort_needed auf false bleiben. Andernfalls muss man es auf true umstellen.
  28.  
  29. bag_sort_needed := true
  30. bag_sort_positionx := 680
  31. bag_sort_positiony := 219
  32. bag_sort_confirmx := 903
  33. bag_sort_confirmy := 601
  34.  
  35. ; --- Die Positionen der Karten im Beutel, wenn der Beutel auf seiner End-Position angekommen ist
  36. maps_position1x := 1735
  37. maps_position1y := 86
  38. maps_position2x := 1768
  39. maps_position2y := 86
  40. maps_position3x := 1804
  41. maps_position3y := 86
  42. maps_position4x := 1842
  43. maps_position4y := 86
  44. maps_position5x := 1879
  45. maps_position5y := 86
  46. maps_position6x := 1733
  47. maps_position6y := 124
  48. maps_position7x := 1768
  49. maps_position7y := 124
  50. maps_position8x := 1804
  51. maps_position8y := 124
  52. maps_position9x := 1842
  53. maps_position9y := 124
  54. maps_position10x := 1879
  55. maps_position10y := 124
  56. maps_position11x := 1733
  57. maps_position11y := 158
  58.  
  59. ; --- Der Shortcut, damit sich der Postkasten öffnet
  60. post_shortcut := "ö"
  61.  
  62. ; --- Der Briefkasten muss auch an die Seite gezogen werden. Start und Endpunkt des Ziehens
  63. post_top_positionx := 514
  64. post_top_positiony := 128
  65. post_end_positionx := 1475
  66. post_end_positiony := 20
  67.  
  68. ; --- Die Stelle, um einen erhaltenen Brief zu öffnen (durch Doppelklick)
  69. post_firstletter_positionx := 1458
  70. post_firstletter_positiony := 160
  71.  
  72. ; --- einen leeren Brief muss man löschen
  73. post_delete_positionx := 1322
  74. post_delete_positiony := 730
  75. post_delete_confirm_positionx := 899
  76. post_delete_confirm_positiony := 602
  77.  
  78. ; --- einen neuen brief erstellen
  79. post_create_positionx := 1330
  80. post_create_positiony := 259
  81.  
  82. ; --- Ein Brief, der geöffnet wurde, muss auch verschoben werden.
  83. letter_top_positionx := 544
  84. letter_top_positiony := 130
  85. letter_end_positionx := 1433
  86. letter_end_positiony := 307
  87.  
  88. ; --- Ein neu erstellter Brief muss auch verschoben werden.
  89. new_letter_top_positionx := 557
  90. new_letter_top_positiony := 162
  91. new_letter_end_positionx := 1421
  92. new_letter_end_positiony := 308
  93.  
  94. ; --- Adress-Zeile eines neu erstellten Briefs
  95. address_positionx := 1282
  96. address_positiony := 338
  97.  
  98. ; --- Buttons für Gegenstand entnehmen und Geld entnehmen (bei verschobenem Brief-Fenster)
  99. retrieve_item_positionx := 1265
  100. retrieve_item_positiony := 680
  101. retrieve_money_positionx := 1570
  102. retrieve_money_positiony := 680
  103.  
  104. ; --- Brief send, wenn alles eingegeben ist
  105. send_positionx := 1345
  106. send_positiony := 735
  107.  
  108. ; --- man kann auch gold, silber und kupfer verschicken.
  109. money_value1_positionx := 1496
  110. money_value1_positiony := 564
  111. money_value2_positionx := 1547
  112. money_value2_positiony := 564
  113. money_value3_positionx := 1599
  114. money_value3_positiony := 564
  115.  
  116. ; --- die plätze, auf den man die karten schieben soll (im neu eröffneten Brief)
  117. item_position1x := 1426
  118. item_position1y := 448
  119. item_position2x := 1426
  120. item_position2y := 448
  121. item_position3x := 1426
  122. item_position3y := 448
  123. item_position4x := 1426
  124. item_position4y := 448
  125. item_position5x := 1426
  126. item_position5y := 448
  127. item_position6x := 1426
  128. item_position6y := 448
  129. item_position7x := 1426
  130. item_position7y := 448
  131. item_position8x := 1426
  132. item_position8y := 448
  133. item_position9x := 1426
  134. item_position9y := 448
  135. item_position10x := 1426
  136. item_position10y := 448
  137.  
  138. ; --- sofort abmelden button
  139. instant_logout_positionx := 1020
  140. instant_logout_positiony := 601
  141.  
  142. ; --- neuen char erstellen
  143. create_positionx := 295
  144. create_positiony := 846
  145.  
  146. ; --- char löschen button und namensfeld (wo man hinklicken muss, damit der cursor blinkt)
  147. delete_positionx := 299
  148. delete_positiony := 900
  149. delete_name_filedx := 970
  150. delete_name_filedy := 560
  151.  
  152. ; --- mittelerde betreten
  153. enter_positionx := 1546
  154. enter_positiony := 852
  155.  
  156. ; --- ich hab hier nen zwerg angeklickt. wer ne andere rasse will, hier gehören die koordinaten rein
  157. race_positionx := 314
  158. race_positiony := 265
  159.  
  160. ; --- der weiter-button, wenn man klasse und rasse gewählt hat
  161. race_confirm_positionx := 1229
  162. race_confirm_positiony := 1028
  163.  
  164. ; --- wenn man einen char erstellen will, der keinen namen hat, kommt ne meldung. die muss man bestätigen
  165. char_noname_positionx := 956
  166. char_noname_positiony := 618
  167.  
  168. ; --- namensfeld (wo man hinklicken muss, damit der cursor blinkt), um den char zu erstellen
  169. char_name_positionx := 974
  170. char_name_positiony := 224
  171.  
  172. ; --- der geld wert, den der char zur verfügung hat.
  173. ; --- ist hier weniger eingetragen, als der char per post erhält, wir die differenz beim ersten mal weiterschicken
  174. ; --- nicht mitgeschickt und mit dem char gelöscht
  175. ; --- ist hier mehr eingetragen, als der char per post erhält, kann folgendes passieren:
  176. ; --- der char hat irgendwann nicht mehr genügend kohle, um beide briefe zu versenden, bricht aber nicht ab, weil hier drin steht,
  177. ; --- dass er noch kohle zur verfügung hätte. also AUF GAR KEINEN FALL mehr einstellen, als man hinschickt.
  178. ; --- value1 = gold, value2 = silber, value3 = bronze
  179. money_value1 := 5
  180. money_value2 := 0
  181. money_value3 := 0
  182.  
  183. ; --- der erste char, der die karten erhält und wo man hinklicken muss, um ihn auszuwählen
  184. chara_positionx := 291
  185. chara_positiony := 350
  186. chara_name := "abarg"
  187.  
  188. ; --- und der zweite char
  189. charb_positionx := 303
  190. charb_positiony := 434
  191. charb_name := "aberg"
  192.  
  193. ; ------------- Ende Variablen-Definition -----------------------
  194.  
  195. timer_pause := 10000
  196. timer := 700
  197. timer_login := 15000
  198. timer_logout := 12000
  199. timer_switch := 5000
  200. timer_delete := 5000
  201. loop_timer := 2
  202.  
  203. char_switch := 1
  204.  
  205.  
  206. ; --- bitte nur an diesem einen loop schrauben. idealerweise auf ne gerade zahl stellen
  207. Loop 250
  208. {
  209. if (char_switch == 0)
  210. {
  211. char_switch := 1
  212. }
  213. else
  214. {
  215. char_switch := 0
  216. }
  217.  
  218. if ((money_value1 == 0) AND (money_value2 < 3))
  219. {
  220. break
  221. }
  222.  
  223. Loop %loop_timer%
  224. {
  225. Click %enter_positionx%, %enter_positiony%
  226. sleep %timer%
  227. }
  228. sleep %timer_login%
  229.  
  230. send i
  231. sleep %timer%
  232. if bag_sort_needed
  233. {
  234. Loop %loop_timer%
  235. {
  236. Click %bag_sort_positionx%, %bag_sort_positiony%
  237. sleep %timer%
  238. }
  239. Loop %loop_timer%
  240. {
  241. Click %bag_sort_confirmx%, %bag_sort_confirmy%
  242. sleep %timer%
  243. }
  244. }
  245. Loop %loop_timer%
  246. {
  247. drag(bag_top_positionx, bag_top_positiony, top_right_cornerx, top_right_cornery)
  248. sleep %timer%
  249. }
  250.  
  251. Send %post_shortcut%
  252. sleep %timer%
  253.  
  254. Loop %loop_timer%
  255. {
  256. drag(post_top_positionx, post_top_positiony, post_end_positionx, post_end_positiony)
  257. sleep %timer%
  258. }
  259.  
  260.  
  261. Loop 2
  262. {
  263. Loop %loop_timer%
  264. {
  265. Click %post_firstletter_positionx%, %post_firstletter_positiony%
  266. sleep 10
  267. Click %post_firstletter_positionx%, %post_firstletter_positiony%
  268. sleep %timer%
  269. }
  270.  
  271. Loop %loop_timer%
  272. {
  273. drag(letter_top_positionx, letter_top_positiony, letter_end_positionx, letter_end_positiony)
  274. sleep %timer%
  275. }
  276.  
  277. Loop %loop_timer%
  278. {
  279. Click %enter_positionx%, %enter_positiony%
  280. sleep %timer%
  281. }
  282.  
  283. Loop %loop_timer%
  284. {
  285. Click %retrieve_money_positionx%, %retrieve_money_positiony%
  286. sleep 1000
  287. Click %retrieve_item_positionx%, %retrieve_item_positiony%
  288. sleep 2000
  289. }
  290.  
  291. Loop %loop_timer%
  292. {
  293. Click %post_delete_positionx%, %post_delete_positiony%
  294. sleep %timer%
  295. }
  296.  
  297. Loop %loop_timer%
  298. {
  299. Click %post_delete_confirm_positionx%, %post_delete_confirm_positiony%
  300. sleep %timer%
  301. }
  302. }
  303.  
  304. Loop %loop_timer%
  305. {
  306. Click %post_create_positionx%, %post_create_positiony%
  307. sleep %timer%
  308. }
  309.  
  310. Loop %loop_timer%
  311. {
  312. drag(new_letter_top_positionx, new_letter_top_positiony, new_letter_end_positionx, new_letter_end_positiony)
  313. sleep %timer%
  314. }
  315.  
  316. Loop %loop_timer%
  317. {
  318. Click %address_positionx%, %address_positiony%
  319. sleep %timer%
  320. }
  321.  
  322. input_cleaner()
  323. sleep %timer%
  324.  
  325. if (char_switch == 0)
  326. {
  327. send %charb_name%
  328. }
  329. else
  330. {
  331. send %chara_name%
  332. }
  333.  
  334. sleep %timer%
  335. money_reduction(money_value1, money_value2, money_value3)
  336. sleep %timer%
  337.  
  338. Loop 3
  339. {
  340. temp := % money_value%A_Index%_positionx
  341. temp2 := % money_value%A_Index%_positiony
  342. Click %temp%, %temp2%
  343. sleep %timer%
  344. Send % money_value%A_Index%
  345. sleep %timer%
  346. }
  347.  
  348. Loop %loop_timer%
  349. {
  350. Click %enter_positionx%, %enter_positiony%
  351. sleep %timer%
  352. }
  353. sleep 1000
  354.  
  355. drag(maps_position1x, maps_position1y, item_position1x, item_position1y)
  356. sleep %timer%
  357. drag(maps_position1x, maps_position1y, item_position1x, item_position1y)
  358. sleep %timer%
  359.  
  360. Loop 10
  361. {
  362. drag(maps_position%A_Index%x, maps_position%A_Index%y, item_position%A_Index%x, item_position%A_Index%y)
  363. sleep %timer%
  364. }
  365.  
  366.  
  367. Loop %loop_timer%
  368. {
  369. Click %send_positionx%, %send_positiony%
  370. sleep %timer%
  371. }
  372.  
  373. Loop %loop_timer%
  374. {
  375. Click %post_create_positionx%, %post_create_positiony%
  376. sleep %timer%
  377. }
  378.  
  379. Loop %loop_timer%
  380. {
  381. drag(new_letter_top_positionx, new_letter_top_positiony, new_letter_end_positionx, new_letter_end_positiony)
  382. sleep %timer%
  383. }
  384.  
  385. Loop %loop_timer%
  386. {
  387. Click %address_positionx%, %address_positiony%
  388. sleep %timer%
  389. }
  390.  
  391. input_cleaner()
  392. sleep %timer%
  393.  
  394. if (char_switch == 0)
  395. {
  396. send %charb_name%
  397. }
  398. else
  399. {
  400. send %chara_name%
  401. }
  402. sleep %timer%
  403.  
  404. Loop %loop_timer%
  405. {
  406. drag(maps_position11x, maps_position11y, item_position1x, item_position1y)
  407. sleep %timer%
  408. }
  409.  
  410. Loop %loop_timer%
  411.  
  412. sleep 1000
  413.  
  414. {
  415. Click %send_positionx%, %send_positiony%
  416. sleep %timer%
  417. }
  418.  
  419. sleep 2000
  420.  
  421. Loop %loop_timer%
  422.  
  423. {
  424. Send +{ESC}
  425. }
  426. sleep 4000
  427. sleep %timer%
  428. Loop %loop_timer%
  429. {
  430. Click %instant_logout_positionx%, %instant_logout_positiony%
  431. sleep %timer%
  432. }
  433.  
  434. sleep %timer_logout%
  435.  
  436. Loop %loop_timer%
  437. {
  438. Click %delete_positionx%, %delete_positiony%
  439. sleep %timer%
  440. }
  441.  
  442. sleep 1000
  443.  
  444. Loop %loop_timer%
  445. {
  446. Click %delete_name_fieldx%, %delete_name_fieldy%
  447. sleep %timer%
  448. }
  449.  
  450. input_cleaner()
  451. sleep %timer%
  452.  
  453. if (char_switch == 0)
  454. {
  455. send %chara_name%
  456. }
  457. else
  458. {
  459. send %charb_name%
  460. }
  461.  
  462. sleep %timer%
  463. send {Enter}
  464. sleep %timer_delete%
  465.  
  466. Loop %loop_timer%
  467. {
  468. Click %create_positionx%, %create_positiony%
  469. sleep %timer%
  470. }
  471. sleep %timer_delete%
  472.  
  473. Loop %loop_timer%
  474. {
  475. Click %race_positionx%, %race_positiony%
  476. sleep %timer%
  477. }
  478. sleep %timer_delete%
  479.  
  480. Loop %loop_timer%
  481. {
  482. Click %race_confirm_positionx%, %race_confirm_positiony%
  483. sleep %timer%
  484. }
  485.  
  486. Loop %loop_timer%
  487. {
  488. Click %char_noname_positionx%, %char_noname_positiony%
  489. sleep %timer%
  490. }
  491.  
  492. Loop %loop_timer%
  493. {
  494. Click %char_name_positionx%, %char_name_positiony%
  495. sleep %timer%
  496. }
  497.  
  498. if (char_switch == 0)
  499. {
  500. send %chara_name%
  501. }
  502. else
  503. {
  504. send %charb_name%
  505. }
  506. sleep %timer%
  507.  
  508. Loop %loop_timer%
  509. {
  510. Click %race_confirm_positionx%, %race_confirm_positiony%
  511. sleep %timer%
  512. }
  513. sleep %timer_delete%
  514.  
  515. Loop %loop_timer%
  516. {
  517. if (char_switch == 0)
  518. {
  519. Click %charb_positionx%, %charb_positiony%
  520. }
  521. else
  522. {
  523. Click %chara_positionx%, %chara_positiony%
  524. }
  525. }
  526. sleep %timer_switch%
  527.  
  528. Random, timer_pause, 100, 2000
  529. sleep %timer_pause%
  530. }
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541. money_reduction(ByRef gold, ByRef silver, ByRef copper)
  542. {
  543. temp := copper - 31
  544.  
  545. if (temp < 0){
  546. copper := temp + 100
  547. temp := silver - 4
  548. }
  549. else{
  550. copper := temp
  551. temp := silver - 3
  552. }
  553.  
  554. if (temp < 0){
  555. silver := temp + 1000
  556. gold := gold - 1
  557. }
  558. else{
  559. silver := temp
  560. }
  561. }
  562.  
  563. input_cleaner()
  564. {
  565. Send "aa"
  566. sleep %timer%
  567. Send {BS}{BS}{BS}{BS}{BS}
  568. }
  569.  
  570. drag(x1, y1, x2, y2)
  571. {
  572. MouseMove, x1, y1
  573. sleep 150
  574. Click down
  575. sleep 150
  576. MouseMove, x2, y2
  577. sleep 100
  578. Click up
  579. sleep 100
  580. }
  581. RControl::
  582. ExitApp
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement