Advertisement
Guest User

Untitled

a guest
Nov 18th, 2017
402
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 25.00 KB | None | 0 0
  1. ; Nazwa: Drwal_Menu_v-2.1.txt
  2. ; Autor: Janusz [Fris]
  3. ;============ OPIS ==================
  4. ; UWAGA !!
  5. ; W przypadku innych wersji systemu niz Windows XP
  6. ; trzeba uruchamiac EasyUO jako administrator
  7. ;
  8. ; Skrypt Testowany na systemach Windows XP SP3 oraz Windows 7 SP1
  9. ;
  10. ; -------------------------------------------
  11. ; Skrypt dziala z wieloma juczniakami ale najlepiej mic max 3 bo przy wiekszej liczbie
  12. ; juczniaki nie potrafia podejsc do postaci i klody laduja w plecaku postaci.
  13. ; Skrypt rabie dowolne wybrane rodzaje drzew, sam uzywa komendy .pojemnik na pierwszej znalezionej juce
  14. ; jesli juka zostanie zapelniona ustawi pojemnik na kolejnej
  15. ; Przycisk Magazyn przezuca klody po kolei z kazdej juki do magazynu i wypisuje kwity jesli klod
  16. ; jest conajmniej 2010 sztuk wiec trzeba miec przy sobie troche zlota np. 3000
  17. ;--------------------------------------------
  18. set %ID_Plecaka_Na_Kwity ;ID Plecaka na kwity ohii w magazynie
  19. ;set %klody_na_raz 200 ;tu wpisz po ile klod na raz ma przezucac z juczniaka do magazynu, sprawdzic to mozna poprzez podniesienie jakiejs ilosci i sprawdzenie czy nie przekracza ona maksymalnego udzwigu wypisanego w ingo postaci
  20. set %Skrzynia_Magazyn_X ( 623 + #CLILEFT )
  21. set %Skrzynia_Magazyn_Y ( 348 + #CLITOP )
  22. set %PlecakJuczniaka_X ( 73 + #CLILEFT )
  23. set %PlecakJuczniaka_Y ( 87 + #CLITOP )
  24. set %ZamknijPlecakJuczniaka_X %PlecakJuczniaka_X + 100
  25. set %ZamknijPlecakJuczniaka_Y %PlecakJuczniaka_Y + 100
  26. set %click_X_Przerwij 188
  27. set %click_Y_Przerwij 168
  28. set %Max_waga #maxweight - 50
  29. set %Max_odleglosc 20
  30. set #lpc 2000
  31. menu clear
  32. menu window color btnface
  33. menu window size 220 240
  34. menu window title Drwal 2.1
  35. menu font size 8
  36. ;=================== odleglosc ================
  37. menu font size 9
  38. menu font bgcolor btnface
  39. menu text mtomk 10 115 Max Oldeglosc:
  40. menu edit mekopanie 120 112 30 %Max_odleglosc ; numer drzewa
  41. ;=================== przyciski =================
  42. menu font color black
  43. menu font style b
  44. menu button mbwszystko 10 140 115 20 Zaznacz wszystko
  45. menu button mbnic 135 140 75 20 Odznacz
  46.  
  47. menu button mbstart 10 165 60 24 Start
  48. menu button mbstop 75 165 60 24 Stop
  49. menu button mbMagazyn 140 165 70 24 Magazyn
  50. ;=================== klody ======================
  51. menu font style
  52. menu font size 8
  53. menu check mcDrzewo 20 27 90 15 #false drzewo
  54. menu check mcCedr 20 47 90 15 #false cedr
  55. menu check mcDab 20 67 90 15 #false dab
  56. menu check mcOrzech 20 87 90 15 #false orzech
  57. ;------------------------------------------------------
  58. menu check mcWierzba 110 27 90 15 #false wierzba
  59. menu check mcCyprys 110 47 90 15 #false cyprys
  60. menu check mcCis 110 67 90 15 #false cis
  61. menu check mcOhii 110 87 90 15 #false o'hii
  62. ;=================== info o rudach ==================
  63. menu shape msopis_rud 8 5 205 17 3 7 1 blue 2 blue
  64. menu text mtopis_rudy 12 7 Zaznacz drzewa do szukania:
  65. menu shape msrudy 8 20 205 85 3 7 1 black 2 black
  66. menu font size 9
  67. menu text mtTytulStatus 13 193 Zajete miejsce w juce
  68. menu shape msStatusTitle 10 193 200 15 3 7 1 blue 2 green
  69. menu shape msStatus 10 207 200 30 3 7 1 green 2 green
  70.  
  71. menu show
  72. ;menu hideEUO
  73. ;====================================================
  74. set #lpc 10
  75. set #menubutton n/a
  76. ;=================== petla ===========================
  77. repeat
  78. if #menubutton = CLOSED ;wcisnieto przycisk X
  79. {
  80. menu hide
  81. set #menubutton N/A
  82. halt
  83. }
  84. if #menubutton = mbMagazyn ;wcisnieto przycisk X
  85. {
  86. set #menubutton N/A
  87. gosub domagazynu
  88. }
  89. if #menubutton = mbstart
  90. {
  91. set %TuWcisnietoStart_X #charposx
  92. set %TuWcisnietoStart_Y #charposy
  93. set %JakisKontener #backpackid
  94. set #menubutton n/a
  95. menu delete mbstart
  96. menu font bgcolor btnface
  97. gosub menucheck
  98.  
  99. gosub Wskaz_juczniaka
  100. gosub WycelujWJuke 1
  101. if #RESULT = WycelujWjuke
  102. gosub WycelujWJuke 1
  103.  
  104. move %TuWcisnietoStart_X %TuWcisnietoStart_Y 0 20s
  105. gosub SkanujTeren
  106. gosub MainLoop
  107. }
  108. if #menubutton = mbwszystko
  109. {
  110. gosub wszystko mcDrzewo mcCedr mcDab mcOrzech mcWierzba mcCyprys mcCis mcOhii
  111. set #menubutton n/a
  112. }
  113. if #menubutton = mbnic
  114. {
  115. gosub nic mcDrzewo mcCedr mcDab mcOrzech mcWierzba mcCyprys mcCis mcOhii
  116. set #menubutton n/a
  117. }
  118. until #false
  119. ;================= pola wyboru =======================
  120. sub menucheck
  121. set #lpc 200
  122. menu get mcDrzewo
  123. if #menures = #true
  124. {
  125. set %mc1 drzewo
  126. set %JestCoWywalac 1
  127. }
  128.  
  129. menu get mcCedr
  130. if #menures = #true
  131. {
  132. set %mc2 cedr
  133. set %JestCoWywalac 1
  134. }
  135.  
  136. menu get mcDab
  137. if #menures = #true
  138. {
  139. set %mc3 dab
  140. set %JestCoWywalac 1
  141. }
  142.  
  143. menu get mcOrzech
  144. if #menures = #true
  145. {
  146. set %mc4 orzech
  147. set %JestCoWywalac 1
  148. }
  149.  
  150. menu get mcWierzba
  151. if #menures = #true
  152. {
  153. set %mc5 wierzba
  154. set %JestCoWywalac 1
  155. }
  156.  
  157. menu get mcCyprys
  158. if #menures = #true
  159. {
  160. set %mc6 cyprys
  161. set %JestCoWywalac 1
  162. }
  163.  
  164. menu get mcCis
  165. if #menures = #true
  166. {
  167. set %mc7 cis
  168. set %JestCoWywalac 1
  169. }
  170.  
  171. menu get mcOhii
  172. if #menures = #true
  173. {
  174. set %mc8 o'hii
  175. set %JestCoWywalac 1
  176. }
  177.  
  178. menu get mekopanie
  179. set %Max_odleglosc #menures
  180.  
  181. set #lpc 10
  182. return
  183. ;--------------------------------------------------------------
  184. sub SkanujTeren
  185. set #lpc 4000
  186. event sysmessage Szukam drzew...
  187. tile Init
  188. set %x_poczatek #charposx - %Max_odleglosc
  189. set %y_poczatek #charposy - %Max_odleglosc
  190. set %x_koniec #charposx + %Max_odleglosc
  191. set %y_koniec #charposy + %Max_odleglosc
  192. set %licznik 0
  193. for %x %x_poczatek %x_koniec
  194. {
  195. for %y %y_poczatek %y_koniec
  196. {
  197. tile Cnt %x %y
  198. for %i 1 #tilecnt
  199. {
  200. tile Get %x %y %i
  201. if ( %mc1 in #tilename && Impassable in #tileflags ) || ( %mc2 in #tilename && Impassable in #tileflags ) || ( %mc3 in #tilename && Impassable in #tileflags ) || ( %mc4 in #tilename && Impassable in #tileflags ) || ( %mc5 in #tilename && Impassable in #tileflags ) || ( %mc6 in #tilename && Impassable in #tileflags ) || ( %mc7 in #tilename && Impassable in #tileflags ) || ( %mc8 in #tilename && Impassable in #tileflags )
  202. { ;ustawia tablice poletak z warzywami
  203. set %licznik %licznik + 1
  204. set %_x . %licznik %x ;tworzenie tablicy
  205. set %_y . %licznik %y ;tworzenie tablicy
  206. set %_z . %licznik #tilez ;tworzenie tablicy
  207. set %_tt . %licznik #tiletype
  208. break
  209. }
  210. }
  211. }
  212. }
  213. set #lpc 10
  214. return
  215. ;----------------------------------------------------------------
  216. sub MainLoop
  217. set #lpc 10
  218. event sysmessage Znaleziono %licznik drzew.
  219. for %j 1 %licznik
  220. {
  221. gosub Podejdz_do_drzewa %_x . %j %_y . %j %_z . %j
  222. gosub Scinaj_drzewo %_x . %j %_y . %j %_z . %j %_tt . %j %j
  223. if #RESULT = PetlaPrzyciskow
  224. {
  225. break
  226. }
  227. }
  228. event sysmessage KONIEC RABANIA.
  229. gosub ZerujTablice
  230. gosub Rysuj_przycisk_start
  231. return
  232. ;--------------------------------------------------
  233. sub Podejdz_do_drzewa
  234. set %krzaczek_x %1
  235. set %krzaczek_y %2
  236. set %krzaczek_z %3
  237. set #lpc 200
  238. move %krzaczek_x %krzaczek_y 1 5s
  239. gosub CzyJestemNaPozycji
  240. if #RESULT <> NaMiejscu
  241. {
  242. set %czas #scnt2 + 20
  243. event pathfind %krzaczek_x %krzaczek_y %krzaczek_z
  244. repeat
  245. if %czas < #scnt2
  246. {
  247. gosub CzyJestemNaPozycji
  248. if #RESULT = NaMiejscu
  249. {
  250. set #lpc 10
  251. return
  252. }
  253. else
  254. {
  255. set %czas #scnt2 + 20
  256. event pathfind %krzaczek_x %krzaczek_y %krzaczek_z
  257. }
  258. }
  259. scanjournal 1
  260. if _*sapie* in #journal || _*trzeszczy* in #journal
  261. {
  262. wait 2s
  263. event macro 1 0 odpocznijcie
  264. wait 8s
  265. event macro 1 0 Za mna
  266. }
  267. if Can't_get_there in #journal || stoisz_za_daleko in #journal || _That_is_too in #journal
  268. {
  269. gosub CzyJestemNaPozycji
  270. if #RESULT = NaMiejscu
  271. {
  272. set #lpc 10
  273. return
  274. }
  275. else
  276. {
  277. move %krzaczek_x %krzaczek_y 1 5s
  278. }
  279. }
  280.  
  281. until #false
  282. }
  283. set #lpc 10
  284. return
  285. ;--------------------------------------------------
  286. sub CzyJestemNaPozycji
  287. if %krzaczek_x > #CHARPOSX && %krzaczek_y = #CHARPOSY ;drzewo na wschod
  288. {
  289. set %Cel_x %krzaczek_x - 1
  290. set %Cel_y %krzaczek_y
  291. if %Cel_x = #CHARPOSX && %Cel_y = #CHARPOSY
  292. {
  293. return NaMiejscu
  294. }
  295. }
  296. if %krzaczek_x > #CHARPOSX && %krzaczek_y < #CHARPOSY ;drzewo na polnocny wschod
  297. {
  298. set %Cel_x %krzaczek_x - 1
  299. set %Cel_y %krzaczek_y + 1
  300. if %Cel_x = #CHARPOSX && %Cel_y = #CHARPOSY
  301. {
  302. return NaMiejscu
  303. }
  304. }
  305. if %krzaczek_x > #CHARPOSX && %krzaczek_y > #CHARPOSY ;drzewo na poludniowy wschod
  306. {
  307. set %Cel_x %krzaczek_x - 1
  308. set %Cel_y %krzaczek_y - 1
  309. if %Cel_x = #CHARPOSX && %Cel_y = #CHARPOSY
  310. {
  311. return NaMiejscu
  312. }
  313. }
  314. if %krzaczek_x = #CHARPOSX && %krzaczek_y > #CHARPOSY ;drzewo poludnie
  315. {
  316. set %Cel_x %krzaczek_x
  317. set %Cel_y %krzaczek_y - 1
  318. if %Cel_x = #CHARPOSX && %Cel_y = #CHARPOSY
  319. {
  320. return NaMiejscu
  321. }
  322. }
  323. if %krzaczek_x < #CHARPOSX && %krzaczek_y > #CHARPOSY ;drzewo poludniowy zachod
  324. {
  325. set %Cel_x %krzaczek_x + 1
  326. set %Cel_y %krzaczek_y - 1
  327. if %Cel_x = #CHARPOSX && %Cel_y = #CHARPOSY
  328. {
  329. return NaMiejscu
  330. }
  331. }
  332. if %krzaczek_x < #CHARPOSX && %krzaczek_y = #CHARPOSY ;drzewo na zachod
  333. {
  334. set %Cel_x %krzaczek_x + 1
  335. set %Cel_y %krzaczek_y
  336. if %Cel_x = #CHARPOSX && %Cel_y = #CHARPOSY
  337. {
  338. return NaMiejscu
  339. }
  340. }
  341. if %krzaczek_x < #CHARPOSX && %krzaczek_y < #CHARPOSY ;drzewo na zachodni polnoc
  342. {
  343. set %Cel_x %krzaczek_x + 1
  344. set %Cel_y %krzaczek_y + 1
  345. if %Cel_x = #CHARPOSX && %Cel_y = #CHARPOSY
  346. {
  347. return NaMiejscu
  348. }
  349. }
  350. if %krzaczek_x = #CHARPOSX && %krzaczek_y < #CHARPOSY ;drzewo na polnoc
  351. {
  352. set %Cel_x %krzaczek_x
  353. set %Cel_y %krzaczek_y + 1
  354. if %Cel_x = #CHARPOSX && %Cel_y = #CHARPOSY
  355. {
  356. return NaMiejscu
  357. }
  358. }
  359. return
  360. ;--------------------------------------------------
  361. sub Wskaz_juczniaka
  362. ;pause
  363. event macro 1 0 Podejdzcie tu
  364. event sysmessage Szukam juczniakow.
  365. wait 1s
  366. finditem wn_bo_yab G_2 ;szuka juczniakow na ziemi
  367. wait 2
  368. if #findkind <> -1
  369. {
  370. for #findindex 1 #findcnt
  371. {
  372. ;finditem wn_bo_yab G_2
  373. set %Id_juczniaka . #findindex #findid
  374. ignoreitem #findid
  375. }
  376. set %Cnt_juczniak #findcnt
  377. ignoreitem reset
  378. }
  379. event sysmessage Ilosc juk: %Cnt_juczniak
  380. return
  381. ;----------------------------------------------------------
  382. sub UstawPojemnik
  383. event macro 1 0 .pojemnik
  384. repeat
  385. until #contsize = 250_180
  386. click 128 225 mc
  387. event macro 22
  388. wait 2
  389. if #targcurs = 1
  390. {
  391. event macro 22
  392. }
  393. set %Timer #scnt2 + 20
  394. repeat
  395. if %Timer < #scnt2
  396. {
  397. key Esc
  398. return GoToUstawPojemnik
  399. }
  400. until #targcurs = 0
  401. return
  402. ;--------------------------------------------------------
  403. sub WycelujWJuke
  404. set #lpc 10
  405. set %KtoraJuka %1
  406. finditem %Id_juczniaka . %KtoraJuka G_2
  407. wait 2
  408. if #findkind = -1
  409. {
  410. event macro 1 0 Podejdzcie tu
  411. wait 3s
  412. return WycelujWjuke
  413. }
  414. set #LTARGETID #findid
  415. set #LTARGETX #findx
  416. set #LTARGETY #findy
  417. set #LTARGETZ #findz
  418. set #LTARGETKIND 1
  419. gosub UstawPojemnik
  420. set %OstatniaJukaNr %KtoraJuka
  421. return
  422. ;--------------------------------------------------
  423. sub UzyjNarzedzia
  424. ignoreitem reset
  425. finditem fsf C_ , #charid
  426. wait 2
  427. if #findkind = -1
  428. {
  429. finditem fsf C_ , #backpackid
  430. wait 2
  431. if #findkind <> -1
  432. {
  433. set #lobjectid #findid
  434. event macro 17
  435. return ToporWplecaku
  436. }
  437. else
  438. {
  439. return NieMaTopora
  440. }
  441. }
  442. set #lobjectid #findid
  443. event macro 17 0
  444. wait 2
  445. if #targcurs = 0
  446. {
  447. set #lobjectid #findid
  448. event macro 17 0
  449. }
  450. set %TimeCelownik #scnt2 + 20
  451. repeat
  452. if %TimeCelownik < #scnt2
  453. {
  454. set %TimeCelownik #scnt2 + 20
  455. set #lobjectid #findid
  456. event macro 17 0
  457. }
  458. until #targcurs = 1
  459. return
  460. ;--------------------------------------------------
  461. sub Scinaj_drzewo
  462. set %iteracja %5
  463. if #RESULT = NieMaTopora
  464. {
  465. menu hide
  466. set #sysmsgcol 1080
  467. event sysmessage Nie znaleziono Topora.
  468. halt
  469. }
  470. if #RESULT = ToporWplecaku
  471. {
  472. gosub UzyjNarzedzia
  473. }
  474. ; sprawdza czy juczniaki sa blisko postaci
  475. for %k 1 %Cnt_juczniak
  476. {
  477. finditem %Id_juczniaka . %k G_2
  478. wait 2
  479. if #findkind = -1
  480. {
  481. for %n 1 3
  482. {
  483. event macro 1 0 podejdzcie
  484. wait 2s
  485. scanjournal 1
  486. if _*sapie* in #journal || _*trzeszczy* in #journal
  487. {
  488. event macro 1 0 odpocznijcie
  489. wait 8s
  490. event macro 1 0 za mna
  491. event macro 1 0 podejdzcie
  492. wait 2s
  493. }
  494. finditem %Id_juczniaka . %k G_2
  495. wait 2
  496. if #findkind <> -1
  497. {
  498. break
  499. }
  500. if #findkind = -1 && %n = 3
  501. {
  502. event sysmessage Nie widze juczniaka.
  503. return PetlaPrzyciskow
  504. }
  505. if #findkind = -1 && %n < 3
  506. {
  507. event macro 1 0 podejdzcie
  508. wait 2s
  509. }
  510. }
  511. }
  512. }
  513. event sysmessage Drzewo nr. %iteracja
  514. gosub UzyjNarzedzia
  515. set #LTARGETX %_x . %iteracja
  516. set #LTARGETY %_y . %iteracja
  517. set #ltargetz %_z . %iteracja
  518. set #ltargettile %_tt . %iteracja
  519. set #ltargetkind 3
  520. set #sysmsgcol 75
  521. event macro 22
  522. set #lpc 1000
  523. repeat
  524. if *STOP = 1
  525. {
  526. click 187 165
  527. wait 6s
  528. set *WAIT 0
  529. repeat
  530. until *STOP = 0
  531. break
  532. }
  533. if Jesiania_nie_zetniesz_tego_drzewa. in #journal
  534. {
  535. display ok JEST JESIEN I NIE DA SIE SCINAC OHII
  536. gosub Rysuj_przycisk_start
  537. return PetlaPrzyciskow
  538. }
  539. if #menubutton = mbstop ;wcisnieto przycisk X
  540. {
  541. set %psx 188
  542. set %psy 165
  543. click %psx %psy
  544. set #menubutton N/A
  545. gosub Rysuj_przycisk_start
  546. return PetlaPrzyciskow
  547. }
  548. scanjournal 1
  549. if Nie_masz_juz_miejsca_w_plecaku. in #journal
  550. {
  551. gosub ZapelnienieJuki
  552. if %Cnt_juczniak = 1
  553. {
  554. event sysmessage Juczniak pelny. Koniec scinania.
  555. gosub Rysuj_przycisk_start
  556. return PetlaPrzyciskow
  557. }
  558. set %NrJuki %OstatniaJukaNr + 1
  559. if %NrJuki > %Cnt_juczniak
  560. {
  561. set #sysmsgcol 1080
  562. event sysmessage Wszystkie juki zapelnione.
  563. return PetlaPrzyciskow
  564. }
  565. gosub WycelujWJuke %NrJuki
  566. break
  567. }
  568. if #weight > %Max_waga
  569. {
  570. click 187 165
  571. event sysmessage Za duzo wazysz. Skrypt zatrzymany.
  572. gosub Rysuj_przycisk_start
  573. return PetlaPrzyciskow
  574. }
  575. until To_drzewo_wyglada_juz_na_wystarczajaco_obciete. in #journal
  576. set #lpc 10
  577. gosub ZapelnienieJuki
  578. return
  579. ;--------------------------------------------------
  580. sub ZapelnienieJuki
  581. set %JakisGump #contid
  582. set %ToCzyjasJuka 0
  583. finditem %Id_juczniaka1 G_2
  584. if #findkind = -1
  585. {
  586. return
  587. }
  588. set #lobjectid %Id_juczniaka1
  589. event macro 17
  590. set %CasPlecJuki #scnt2 + 10
  591. set %CzyjasJuka #scnt2 + 50
  592. repeat
  593. if %CasPlecJuki < #scnt2
  594. {
  595. set #lobjectid %Id_juczniaka1
  596. event macro 17
  597. set %CasPlecJuki #scnt2 + 10
  598. }
  599. if %CzyjasJuka < #scnt2
  600. {
  601. set %ToCzyjasJuka 1
  602. break
  603. }
  604. until %JakisGump notin #contid
  605. wait 5
  606. set %waga 0
  607. finditem zlk C_ , #contid
  608. if #findkind <> -1
  609. {
  610. for #findindex 1 #findcnt
  611. {
  612. if #findtype = zlk
  613. {
  614. set %waga ( %waga + #findstack )
  615. }
  616. }
  617. event sysmessage waga %waga
  618. menu font style bold
  619. menu text mtStatus 15 213 %waga z 2000
  620. }
  621.  
  622. return
  623. ;--------------------------------------------------
  624. sub domagazynu ;otwiera magazyn
  625. finditem pof C
  626. wait 2
  627. if #findstack < 30
  628. {
  629. event sysmessage Masz za malo zlota na wypisywanie kwitow
  630. event macro 1 0 Stop!!
  631. return
  632. }
  633. repeat
  634. finditem * G_5 ;szuka wszystkiego
  635. wait 2
  636. event Property #findid
  637. ignoreitem #findid
  638. until Magazynier in #property
  639. ignoreitem reset
  640. move #findx #findy 1 30s
  641. event macro 1 0 Podejdzcie.
  642. wait 5
  643.  
  644. set #NEXTCPOSX %Skrzynia_Magazyn_X
  645. set #NEXTCPOSY %Skrzynia_Magazyn_Y
  646. event macro 1 0 Magazynier otworz skrzynie
  647. repeat
  648. wait 5
  649. until #CONTSIZE = 180_240
  650. set %SkrzyniaMagazyn #CONTID
  651. wait 3
  652. contpos %Skrzynia_Magazyn_X %Skrzynia_Magazyn_Y
  653. if N/A in %Id_juczniaka1
  654. {
  655. gosub Wskaz_juczniaka
  656. }
  657. set %JakisGump #contid
  658. set %ToCzyjasJuka 0
  659. for %m 1 %Cnt_juczniak
  660. {
  661. finditem %Id_juczniaka . %m G_2
  662. wait 2
  663. if #findkind = -1
  664. {
  665. event sysmessage Nie widze juczniaka.
  666. return
  667. }
  668. set #lobjectid %Id_juczniaka . %m
  669. event macro 17
  670. set %CasPlecJuki #scnt2 + 10
  671. set %CzyjasJuka #scnt2 + 50
  672. repeat
  673. if %CasPlecJuki < #scnt2
  674. {
  675. set #lobjectid %Id_juczniaka . %m
  676. event macro 17
  677. set %CasPlecJuki #scnt2 + 10
  678. }
  679. if %CzyjasJuka < #scnt2
  680. {
  681. set %ToCzyjasJuka 1
  682. break
  683. }
  684. until %JakisGump notin #contid
  685. if %ToCzyjasJuka = 1
  686. {
  687. set %ToCzyjasJuka 0
  688. continue
  689. }
  690. set %PlecakJuczniaka #contid
  691. contpos %PlecakJuczniaka_X %PlecakJuczniaka_Y
  692. event sysmessage Przeliczam klody w juczniaku
  693. gosub PrzeliczSztaby juka
  694. wait 3
  695. event sysmessage Przeliczam klody w magazynie
  696. gosub PrzeliczSztaby magazyn
  697. set #lpc 100
  698. for %a 1 8
  699. {
  700. set %SztabyNazwaJuka %RudaNazwaJuka_ . %a
  701. set %SztabyIloscJuka %RudaIloscJuka_ . %a
  702. set %SztabyNazwaMagazyn %RudaNazwaMagazyn_ . %a
  703. set %SztabyIloscMagazyn %RudaIloscMagazyn_ . %a
  704. if %SztabyNazwaJuka = %SztabyNazwaMagazyn
  705. {
  706. set %SumaSztab ( %SztabyIloscJuka + %SztabyIloscMagazyn )
  707. ;event sysmessage SumaSztab %SumaSztab
  708. if %SumaSztab > 2000
  709. {
  710. set %DoUzupelnienia ( 2010 - %SztabyIloscMagazyn )
  711. event sysmessage Uzupelniam klody do 2000 sztuk.
  712. gosub PrzeniesPrzedmiot %RudaIdJuka_ . %a %DoUzupelnienia %SkrzyniaMagazyn
  713. ;wait 1s
  714. event sysmessage Wypisuje kwit.
  715. gosub Sztaby_do_kwitow
  716. }
  717. scanjournal 1
  718. if _too_heavy in #journal
  719. {
  720. finditem zlk C_ , #backpackid
  721. wait 2
  722. for #findindex 1 #findcnt
  723. {
  724. gosub PrzeniesPrzedmiot #findid #findstack %PlecakJuczniaka
  725. }
  726. }
  727. }
  728. }
  729. ignoreitem reset
  730. event sysmessage Przenosze reszte sztab do magazynu.
  731. finditem zlk C_ , %PlecakJuczniaka
  732. wait 2
  733. for #findindex 1 #findcnt
  734. {
  735. gosub PrzeniesPrzedmiot #findid #findstack %SkrzyniaMagazyn
  736. scanjournal 1
  737. if _too_heavy in #journal
  738. {
  739. finditem zlk C_ , #backpackid
  740. wait 2
  741. for #findindex 1 #findcnt
  742. {
  743. gosub PrzeniesPrzedmiot #findid #findstack %PlecakJuczniaka
  744. }
  745. event sysmessage Magazyn pelny.
  746. gosub Sztaby_do_kwitow
  747. }
  748. }
  749. finditem EAG_RZF C_ , %PlecakJuczniaka
  750. wait 2
  751. for #findindex 1 #findcnt
  752. {
  753. gosub PrzeniesPrzedmiot #findid #findstack #backpackid
  754. }
  755. click %ZamknijPlecakJuczniaka_X %ZamknijPlecakJuczniaka_Y r
  756. wait 3
  757. set %JakisGump #contid
  758. }
  759. gosub Sztaby_do_kwitow
  760. gosub PrzenoszenieKwitow
  761. event sysmessage Klody przezucone.
  762. return
  763. ;--------------------------------------------------------
  764. sub Sztaby_do_kwitow
  765. ;--- tworzenie wiazki 2000 sztab
  766. finditem ZLK C_ , %SkrzyniaMagazyn
  767. wait 2
  768. set %StartX_kupki 0
  769. set %StartY_kupki 150
  770. set %X_kupki %StartX_kupki + 10
  771. set %Y_kupki 150
  772. for #findindex 1 #findcnt
  773. {
  774. if #findstack > 2000
  775. {
  776. set %Wielokrotnosc2k ( #findstack / 2000 )
  777. event sysmessage Kupek po 2k: %Wielokrotnosc2k
  778. set %ID_starej_kupki #findid
  779. for %c 1 %Wielokrotnosc2k
  780. {
  781. set %X_kupki %X_kupki + 20
  782. ;event sysmessage Pozycja sztabek: %X_kupki %Y_kupki
  783. exevent drag #findid 2000
  784. wait 5
  785. if dwj in #findtype
  786. exevent dropc %SkrzyniaMagazyn 200 150
  787. else
  788. exevent dropc %SkrzyniaMagazyn %X_kupki %Y_kupki
  789. wait 5
  790. finditem enk_dwj C_ , %SkrzyniaMagazyn
  791. wait 2
  792. }
  793. }
  794. ;ignoreitem #findid
  795. }
  796. ;---- wypisywanie kwitu
  797. wait 5
  798. ;pause
  799. ignoreitem reset
  800. finditem ZLK C_ , %SkrzyniaMagazyn
  801. wait 2
  802. for #findindex 1 #findcnt
  803. {
  804. if #findstack = 2000
  805. {
  806. event macro 1 0 wypisz kwit
  807. set %CzasKwitu #scnt2 + 30
  808. repeat
  809. if %CzasKwitu < #scnt2
  810. {
  811. event macro 1 0 wypisz kwit
  812. set %CzasKwitu #scnt2 + 30
  813. }
  814. until #targcurs = 1
  815. set #ltargetid #findid
  816. set #ltargetx #findx
  817. set #ltargety #findy
  818. set #ltargetkind 1
  819. event macro 22
  820. wait 15
  821. event macro 1 0 tak
  822. wait 1s
  823. ignoreitem #findid
  824. continue
  825. }
  826. }
  827. return
  828. ;---------------------------------------------
  829. sub PrzenoszenieKwitow
  830. ;---- przenoszenie kwitu
  831. finditem %ID_Plecaka_Na_Kwity C_ , %SkrzyniaMagazyn
  832. wait 2
  833. if #findkind = -1
  834. {
  835. set %ID_Plecaka_Na_Kwity %SkrzyniaMagazyn
  836. }
  837. else
  838. {
  839. set #lobjectid %ID_Plecaka_Na_Kwity
  840. event macro 17
  841. }
  842. finditem TVH C_ , #backpackid
  843. wait 2
  844. for #findindex 1 #findcnt
  845. {
  846. exevent drag #findid 1
  847. wait 5
  848. exevent dropc %ID_Plecaka_Na_Kwity
  849. wait 5
  850. continue
  851. }
  852. return
  853. ;---------------------------------------------
  854. sub PrzeliczSztaby
  855. set #lpc 2000
  856. set %NazwyRud_1 klody
  857. set %NazwyRud_2 cedr
  858. set %NazwyRud_3 dab
  859. set %NazwyRud_4 orzech
  860. set %NazwyRud_5 wierzba
  861. set %NazwyRud_6 cyprys
  862. set %NazwyRud_7 cis
  863. set %NazwyRud_8 o'hii
  864. if juka in %1
  865. {
  866. finditem zlk C_ , %PlecakJuczniaka
  867. wait 2
  868. }
  869. if magazyn in %1
  870. {
  871. finditem zlk C_ , %SkrzyniaMagazyn
  872. wait 2
  873. }
  874. for #findindex 1 #findcnt
  875. {
  876. event Property #findid
  877. wait 2
  878. for %i 1 8
  879. {
  880. set %RudaRodzaj %NazwyRud_ . %i
  881. if %RudaRodzaj in #property
  882. {
  883. if juka in %1
  884. {
  885. set %RudaNazwaJuka_ . %i %RudaRodzaj
  886. set %RudaIloscJuka_ . %i #findstack
  887. set %RudaIdJuka_ . %i #findid
  888. ;event sysmessage N: %RudaNazwaJuka_ . %i Cnt: %RudaIloscJuka_ . %i
  889. }
  890. if magazyn in %1
  891. {
  892. set %RudaNazwaMagazyn_ . %i %RudaRodzaj
  893. set %RudaIloscMagazyn_ . %i #findstack
  894. ;event sysmessage N: %RudaNazwaMagazyn_ . %i Cnt: %RudaIloscMagazyn_ . %i
  895. }
  896. }
  897. }
  898. }
  899. set #lpc 10
  900. return
  901. ;---------------------------------------------
  902. sub PrzeniesPrzedmiot ;( ID przedmiotu, ilosc, gdzie przezucic )
  903. exevent drag %1 %2
  904. wait 5
  905. exevent dropc %3
  906. wait 5
  907. return
  908. ;--------------------------------------------------
  909. sub Rysuj_przycisk_start
  910. set #menubutton N/A
  911. menu font color black
  912. menu font style b
  913. menu font bgcolor btnface
  914. menu button mbstart 10 165 60 24 Start
  915. return
  916. ;--------------------------------------------------
  917. sub ZerujTablice
  918. set #lpc 4000
  919. for %j 1 %licznik
  920. {
  921. set %_x . %j
  922. set %_y . %j
  923. set %_z . %j
  924. set %_tt . %j
  925. }
  926. set #lpc 10
  927. return
  928. ;-----------------------------------------------
  929. sub wszystko
  930. #lpc 100
  931. for %i 1 %0
  932. {
  933. menu Set % . %i #true
  934. }
  935. return
  936. ;-----------------------------------------------
  937. sub nic
  938. #lpc 100
  939. for %i 1 %0
  940. {
  941. menu Set % . %i #false
  942. }
  943. return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement