Advertisement
Guest User

Compacted Sand --> Compacted Bottles v2

a guest
Apr 20th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.30 KB | None | 0 0
  1. //#####JEZZA'S BIG OL' COMPACTED SAND TO COMPACTED BOTTLES CONVERTER BOT#####
  2.  
  3. //- You must have DOUBLE chests for Compacted Sand, Compacted Bottles, and Charcoal in reach.
  4. //- You must have a compactor and basic smelter in reach.
  5. //- Have a good supply of charcoal in the chest and crates in the compactor.
  6. //- Have an empty inventory with a stick in the hotbar.
  7.  
  8. #ping = 200
  9.  
  10. do(1)
  11.  
  12. //Select empty slot for punching
  13.  
  14. slot(5)
  15. wait(%#ping%ms)
  16.  
  17. //Promt the user to hit the target, and store pitch/yaw values.
  18.  
  19. log(Punch the Compacted Sand chest!)
  20.  
  21. do
  22. until(%LMOUSE% = true)
  23.  
  24. log(Hit!)
  25. playsound(block.note.snare);
  26. #csandy = %YAW% + 180
  27. #csandp = %PITCH%
  28. wait(500ms)
  29.  
  30. log(Punch the Charcoal chest!)
  31.  
  32. do
  33. until(%LMOUSE% = true)
  34.  
  35. log(Hit!)
  36. playsound(block.note.snare);
  37. #charcoaly = %YAW% + 180
  38. #charcoalp = %PITCH%
  39. wait(500ms)
  40.  
  41. log(Punch the Compactor chest!)
  42.  
  43. do
  44. until(%LMOUSE% = true)
  45.  
  46. log(Hit!)
  47. playsound(block.note.snare);
  48. #compchesty = %YAW% + 180
  49. #compchestp = %PITCH%
  50. wait(500ms)
  51.  
  52. log(Punch the Compactor crafting bench!)
  53.  
  54. do
  55. until(%LMOUSE% = true)
  56.  
  57. log(Hit!)
  58. playsound(block.note.snare);
  59. #compcrafty = %YAW% + 180
  60. #compcraftp = %PITCH%
  61. wait(500ms)
  62.  
  63. log(Punch the Compactor furnace!)
  64.  
  65. do
  66. until(%LMOUSE% = true)
  67.  
  68. log(Hit!)
  69. playsound(block.note.snare);
  70. #compfurny = %YAW% + 180
  71. #compfurnp = %PITCH%
  72. wait(500ms)
  73.  
  74. log(Punch the Basic Smelter chest!)
  75.  
  76. do
  77. until(%LMOUSE% = true)
  78.  
  79. log(Hit!)
  80. playsound(block.note.snare);
  81. #smeltchesty = %YAW% + 180
  82. #smeltchestp = %PITCH%
  83. wait(500ms)
  84.  
  85. log(Punch the Basic Smelter crafting bench!)
  86.  
  87. do
  88. until(%LMOUSE% = true)
  89.  
  90. log(Hit!)
  91. playsound(block.note.snare);
  92. #smeltcrafty = %YAW% + 180
  93. #smeltcraftp = %PITCH%
  94. wait(500ms)
  95.  
  96. log(Punch the Basic Smelter furnace!)
  97.  
  98. do
  99. until(%LMOUSE% = true)
  100.  
  101. log(Hit!)
  102. playsound(block.note.snare);
  103. #smeltfurny = %YAW% + 180
  104. #smeltfurnp = %PITCH%
  105. wait(500ms)
  106.  
  107. log(Punch the Compacted Bottles chest!)
  108.  
  109. do
  110. until(%LMOUSE% = true)
  111.  
  112. log(Hit!)
  113. playsound(block.note.snare);
  114. #cbottlesy = %YAW% + 180
  115. #cbottlesp = %PITCH%
  116. wait(500ms)
  117.  
  118. //###END OF PLAYER INPUT PHASE###
  119.  
  120. loop
  121.  
  122. do
  123.  
  124. //#CHARCOAL CHEST#
  125.  
  126. wait(500ms)
  127. log(Looking at Charcoal chest!)
  128. wait(%#ping%ms)
  129. look(%#charcoaly%,%#charcoalp%)
  130. wait(%#ping%ms)
  131. key(use)
  132. wait(%#ping%ms)
  133.  
  134. //Take 4 stacks of charcoal.
  135.  
  136. #slot = 0
  137. #islot = 54
  138. #count = 0
  139.  
  140. wait(%#ping%ms)
  141. getslotitem(%#slot%,&id,#amt)
  142. wait(%#ping%ms)
  143.  
  144. do
  145. getslotitem(%#slot%,&id,#amt)
  146. wait(20ms)
  147.  
  148. if(%#slot% = 54)
  149. wait(%#ping%ms)
  150. gui()
  151. wait(%#ping%ms)
  152. log(Ran out of Charcoal. Closing script.)
  153. wait(%#ping%ms)
  154. stop
  155. endif
  156.  
  157. wait(20ms)
  158.  
  159. if(%&id% = "coal")
  160. if(%#amt% = 64)
  161. wait(%#ping%ms)
  162. slotclick(%#slot%)
  163. wait(%#ping%ms)
  164. slotclick(%#islot%)
  165. wait(%#ping%ms)
  166. inc(#islot)
  167. inc(#count)
  168. wait(%#ping%ms)
  169. getslotitem(%#slot%,&id,#amt)
  170. endif
  171. endif
  172. inc(#slot)
  173. until(%#count% = 4)
  174.  
  175. wait(%#ping%ms)
  176. gui()
  177.  
  178. //#COMPACTOR FURNACE#
  179.  
  180. wait(500ms)
  181. log(Looking at Compactor furnace!)
  182. wait(%#ping%ms)
  183. look(%#compfurny%,%#compfurnp%)
  184. wait(%#ping%ms)
  185. key(use)
  186. wait(%#ping%ms)
  187.  
  188. //Fill Furnace
  189.  
  190. #slot = 0
  191. #islot = 3
  192. #count = 0
  193. wait(%#ping%ms)
  194.  
  195. do
  196. getslotitem(%#islot%,&id,#amt)
  197. wait(20ms)
  198. if(%#islot% = 39)
  199. wait(%#ping%ms)
  200. gui()
  201. wait(%#ping%ms)
  202. log(Ran out of Charcoal. Closing script.)
  203. wait(%#ping%ms)
  204. stop
  205. endif
  206. wait(20ms)
  207. if(%&id% = "coal")
  208. if(%#amt% = 64)
  209. wait(%#ping%ms)
  210. slotclick(%#islot%)
  211. wait(%#ping%ms)
  212. slotclick(%#slot%)
  213. wait(%#ping%ms)
  214. slotclick(%#islot%)
  215. wait(%#ping%ms)
  216. inc(#slot)
  217. inc(#count)
  218. wait(%#ping%ms)
  219. endif
  220. endif
  221. inc(#islot)
  222. until(%#count% = 2)
  223.  
  224. wait(%#ping%ms)
  225. gui()
  226.  
  227. //#BASIC SMELTER FURNACE#
  228.  
  229. wait(500ms)
  230. log(Looking at Basic Smelter furnace!)
  231. wait(%#ping%ms)
  232. look(%#smeltfurny%,%#smeltfurnp%)
  233. wait(%#ping%ms)
  234. key(use)
  235. wait(%#ping%ms)
  236.  
  237. //Fill Furnace
  238.  
  239. #slot = 0
  240. #islot = 3
  241. #count = 0
  242. wait(%#ping%ms)
  243.  
  244. do
  245. getslotitem(%#islot%,&id,#amt)
  246. wait(20ms)
  247. if(%#islot% = 39)
  248. wait(%#ping%ms)
  249. gui()
  250. wait(%#ping%ms)
  251. log(Ran out of Charcoal. Closing script.)
  252. wait(%#ping%ms)
  253. stop
  254. endif
  255. wait(20ms)
  256. if(%&id% = "coal")
  257. if(%#amt% = 64)
  258. wait(%#ping%ms)
  259. slotclick(%#islot%)
  260. wait(%#ping%ms)
  261. slotclick(%#slot%)
  262. wait(%#ping%ms)
  263. slotclick(%#islot%)
  264. wait(%#ping%ms)
  265. inc(#slot)
  266. inc(#count)
  267. wait(%#ping%ms)
  268. endif
  269. endif
  270. inc(#islot)
  271. until(%#count% = 2)
  272.  
  273. wait(%#ping%ms)
  274. gui()
  275.  
  276. //#CHARCOAL CHEST 2#
  277.  
  278. wait(500ms)
  279. log(Looking at Charcoal chest!)
  280. wait(%#ping%ms)
  281. look(%#charcoaly%,%#charcoalp%)
  282. wait(%#ping%ms)
  283. key(use)
  284. wait(%#ping%ms)
  285.  
  286. //Put back leftover charcoal.
  287.  
  288. #islot = 54
  289. wait(%#ping%ms)
  290.  
  291. do
  292. getslotitem(%#islot%,&id,#amt)
  293. wait(20ms)
  294. if(%&id% = "coal")
  295. wait(%#ping%ms)
  296. slotclick(%#islot%,l,true)
  297. wait(%#ping%ms)
  298. endif
  299. inc(#islot)
  300. wait(20ms)
  301. until(%#islot% = 90)
  302.  
  303. wait(%#ping%ms)
  304. gui()
  305.  
  306. //#COMPACTED SAND#
  307.  
  308. wait(500ms)
  309. log(Looking at Compacted Sand!)
  310. wait(%#ping%ms)
  311. look(%#csandy%,%#csandp%)
  312. wait(%#ping%ms)
  313. key(use)
  314. wait(%#ping%ms)
  315.  
  316. //Finds sand and drops 16 into inventory.
  317.  
  318. #slot = 0
  319.  
  320. getslotitem(%#slot%,&id,#amt)
  321. wait(%#ping%ms)
  322.  
  323. do
  324. do
  325. inc(#slot)
  326. wait(20ms)
  327. getslotitem(%#slot%,&id,#amt)
  328. if(%#slot% > 53)
  329. log(Ran out of Compacted Sand.)
  330. wait(%#ping%ms)
  331. gui()
  332. log(Ending Script.)
  333. stop
  334. endif
  335. while(%&id% != "sand")
  336. while(%#amt% < 16)
  337.  
  338. do
  339. do(1)
  340. slotclick(%#slot%)
  341. wait(%#ping%ms)
  342. loop
  343. do(16)
  344. slotclick(54,r)
  345. wait(%#ping%ms)
  346. loop
  347. do(1)
  348. slotclick(%#slot%)
  349. wait(%#ping%ms)
  350. loop
  351. break
  352. while(%#amt% > 15)
  353.  
  354. endif
  355.  
  356. gui()
  357.  
  358. //#COMPACTOR CHEST#
  359.  
  360. wait(500ms)
  361. log(Looking at Compactor chest!)
  362. wait(%#ping%ms)
  363. look(%#compchesty%,%#compchestp%)
  364. wait(%#ping%ms)
  365. key(use)
  366. wait(%#ping%ms)
  367.  
  368. //Drop 16 Compacted Sand into chest.
  369.  
  370. do(1)
  371. slotclick(54)
  372. wait(%#ping%ms)
  373. slotclick(0)
  374. wait(%#ping%ms)
  375. loop
  376.  
  377. gui()
  378.  
  379. //#COMPACTOR CRAFTING BENCH#
  380.  
  381. wait(500ms)
  382. log(Looking at Compactor crafting bench!)
  383. wait(%#ping%ms)
  384. look(%#compcrafty%,%#compcraftp%)
  385. wait(%#ping%ms)
  386.  
  387. //Make sure the recipe is on decompacting.
  388.  
  389. pick(stick)
  390. wait(%#ping%ms)
  391. key(attack)
  392. wait(%#ping%ms)
  393. wait(%#ping%ms)
  394. slotclick(1)
  395. wait(%#ping%ms)
  396. wait(%#ping%ms)
  397. gui()
  398.  
  399. //#COMPACTOR FURNACE#
  400.  
  401. wait(500ms)
  402. log(Looking at Compactor furnace!)
  403. wait(%#ping%ms)
  404. look(%#compfurny%,%#compfurnp%)
  405. wait(%#ping%ms)
  406.  
  407. //Turns on the compactor.
  408.  
  409. pick(stick)
  410. wait(%#ping%ms)
  411. key(attack)
  412.  
  413. //#WAIT FOR SAND TO DECOMPACT#
  414.  
  415. wait(32)
  416.  
  417. //#COMPACTOR CHEST#
  418.  
  419. wait(500ms)
  420. log(Looking at Compactor chest!)
  421. wait(%#ping%ms)
  422. look(%#compchesty%,%#compchestp%)
  423. wait(%#ping%ms)
  424. key(use)
  425. wait(%#ping%ms)
  426.  
  427. //Pick up 16 stacks of sand from Compactor chest.
  428.  
  429. #slot = 0
  430.  
  431. getslotitem(%#slot%,&id,#amt)
  432.  
  433. do
  434. getslotitem(%#slot%,&id,#amt)
  435. wait(20ms)
  436. if(%&id% = "sand")
  437. slotclick(%#slot%,l,true)
  438. wait(%#ping%ms)
  439. endif
  440. inc(#slot)
  441. while(%#slot% < 54)
  442.  
  443. gui()
  444.  
  445. //#BASIC SMELTER CHEST#
  446.  
  447. wait(500ms)
  448. log(Looking at Basic Smelter chest!)
  449. wait(%#ping%ms)
  450. look(%#smeltchesty%,%#smeltchestp%)
  451. wait(%#ping%ms)
  452. key(use)
  453. wait(%#ping%ms)
  454.  
  455. //Put sand into chest.
  456.  
  457. #islot = 54
  458. wait(%#ping%ms)
  459.  
  460. do
  461. getslotitem(%#islot%,&id,#amt)
  462. if(%#islot% = 90)
  463. wait(%#ping%ms)
  464. break
  465. endif
  466. if(%&id% = "sand")
  467. wait(%#ping%ms)
  468. slotclick(%#islot%,l,true)
  469. endif
  470. inc(#islot)
  471. loop
  472.  
  473. wait(%#ping%ms)
  474. gui()
  475.  
  476. //#COMPACTOR CRAFTING BENCH#
  477.  
  478. wait(500ms)
  479. log(Looking at Compactor crafting bench!)
  480. wait(%#ping%ms)
  481. look(%#smeltcrafty%,%#smeltcraftp%)
  482. wait(%#ping%ms)
  483.  
  484. //Make sure the recipe is on smelt glass.
  485.  
  486. pick(stick)
  487. wait(%#ping%ms)
  488. key(attack)
  489. wait(%#ping%ms)
  490. wait(%#ping%ms)
  491. slotclick(1)
  492. wait(%#ping%ms)
  493. wait(%#ping%ms)
  494. gui()
  495.  
  496. //#COMPACTOR FURNACE#
  497.  
  498. wait(500ms)
  499. log(Looking at Compactor furnace!)
  500. wait(%#ping%ms)
  501. look(%#smeltfurny%,%#smeltfurnp%)
  502. wait(%#ping%ms)
  503.  
  504. //Turns on the compactor.
  505.  
  506. pick(stick)
  507. wait(%#ping%ms)
  508. key(attack)
  509.  
  510. //#WAIT FOR SAND TO SMELT#
  511. wait(128)
  512.  
  513. //#BASIC SMELTER CHEST#
  514.  
  515. wait(500ms)
  516. log(Looking at Basic Smelter chest!)
  517. wait(%#ping%ms)
  518. look(%#smeltchesty%,%#smeltchestp%)
  519. wait(%#ping%ms)
  520. key(use)
  521. wait(%#ping%ms)
  522.  
  523. //Take glass from chest.
  524.  
  525. #slot = 0
  526. wait(%#ping%ms)
  527.  
  528. do
  529. getslotitem(%#slot%,&id,#amt)
  530. if(%#slot% = 54)
  531. wait(%#ping%ms)
  532. break
  533. endif
  534. if(%&id% = "glass")
  535. wait(%#ping%ms)
  536. slotclick(%#slot%,l,true)
  537. endif
  538. inc(#slot)
  539. loop
  540.  
  541. wait(%#ping%ms)
  542. gui()
  543.  
  544. //#CRAFT BOTTLES#
  545.  
  546. handle_inventory_flooding = false
  547.  
  548. throw_bottles_out = false
  549.  
  550. wait(500ms)
  551. log(Looking at crafting bench!)
  552. wait(%#ping%ms)
  553. look(%#smeltcrafty%,%#smeltcraftp%)
  554. wait(%#ping%ms)
  555.  
  556. key(use)
  557. wait(%#ping%ms)
  558. #run_count = 0
  559.  
  560. do
  561. inc(#run_count)
  562. #inv_start = 10
  563. #inv_stop = 45
  564.  
  565. // Search for 3 stacks of Glass and count empty slots
  566. unset(#item_slot_ids[])
  567. #item_stacks_found = 0
  568. for(#i,%#inv_start%,%#inv_stop%)
  569. if(#item_stacks_found = 3)
  570. break
  571. endif
  572.  
  573. getslotitem(%#i%,&id,#amt)
  574. if(&id = "glass")
  575. if(#amt = 64)
  576. put(#item_slot_ids[],%#i%)
  577. inc(#item_stacks_found)
  578. endif
  579. endif
  580. next
  581.  
  582. if(#item_stacks_found < 3)
  583. if(#run_count = 1)
  584. log("&7[Bottle Crafter] &cError: &7You need at least 3 stacks of Glass in your inventory.")
  585. wait(%#ping%ms)
  586. stop
  587. else
  588. dec(#run_count)
  589. #stack_count = %#run_count% * 3
  590. log("&7[Bottle Crafter] Crafted &f%#stack_count% &7stacks of Bottles.")
  591. endif
  592. gui()
  593. break
  594. endif
  595.  
  596. slotclick(%#item_slot_ids[0]%)
  597. slotclick(4,l,false)
  598. slotclick(%#item_slot_ids[1]%)
  599. slotclick(6,l,false)
  600. slotclick(%#item_slot_ids[2]%)
  601. slotclick(8,l,false)
  602.  
  603. if(handle_inventory_flooding == true)
  604. wait(%#ping%ms)
  605. slotclick(0,l,false)
  606.  
  607. wait(%#ping%ms)
  608. slotclick(%#item_slot_ids[0]%,l,false)
  609. slotclick(-999)
  610. wait(%#ping%ms)
  611. slotclick(%#item_slot_ids[0]%,r,false)
  612. wait(%#ping%ms)
  613. slotclick(%#item_slot_ids[1]%,l,false)
  614. slotclick(-999)
  615. wait(%#ping%ms)
  616. slotclick(%#item_slot_ids[1]%,r,false)
  617. wait(%#ping%ms)
  618. slotclick(%#item_slot_ids[2]%,l,false)
  619. slotclick(-999)
  620. endif
  621.  
  622. wait(%#ping%ms)
  623. slotclick(0,l,true)
  624. wait(%#ping%ms)
  625. wait(%#ping%ms)
  626.  
  627. if(throw_bottles_out == true)
  628. foreach(#item_slot_ids[],#item_slot_id,#i)
  629. slotclick(%#item_slot_id%,l,false)
  630. slotclick(-999)
  631. next
  632. endif
  633. while(true)
  634.  
  635. //#COMPACTOR CHEST#
  636.  
  637. wait(500ms)
  638. log(Looking at Compactor chest!)
  639. wait(%#ping%ms)
  640. look(%#compchesty%,%#compchestp%)
  641. wait(%#ping%ms)
  642. key(use)
  643. wait(%#ping%ms)
  644.  
  645. //Put bottles into chest.
  646.  
  647. #islot = 54
  648. wait(%#ping%ms)
  649.  
  650. do
  651. getslotitem(%#islot%,&id,#amt)
  652. if(%#islot% = 90)
  653. wait(%#ping%ms)
  654. break
  655. endif
  656. if(%&id% = "glass_bottle")
  657. wait(%#ping%ms)
  658. slotclick(%#islot%,l,true)
  659. endif
  660. inc(#islot)
  661. loop
  662.  
  663. wait(%#ping%ms)
  664. gui()
  665.  
  666. //#COMPACTOR CRAFTING BENCH#
  667.  
  668. wait(500ms)
  669. log(Looking at Compactor crafting bench!)
  670. wait(%#ping%ms)
  671. look(%#compcrafty%,%#compcraftp%)
  672. wait(%#ping%ms)
  673.  
  674. //Make sure the recipe is on compacting.
  675.  
  676. pick(stick)
  677. wait(%#ping%ms)
  678. key(attack)
  679. wait(%#ping%ms)
  680. wait(%#ping%ms)
  681. slotclick(0)
  682. wait(%#ping%ms)
  683. wait(%#ping%ms)
  684. gui()
  685.  
  686. //#COMPACTOR FURNACE#
  687.  
  688. wait(500ms)
  689. log(Looking at Compactor furnace!)
  690. wait(%#ping%ms)
  691. look(%#compfurny%,%#compfurnp%)
  692. wait(%#ping%ms)
  693.  
  694. //Turns on the compactor.
  695.  
  696. pick(stick)
  697. wait(%#ping%ms)
  698. key(attack)
  699.  
  700. //#WAIT FOR BOTTLES TO COMPACT#
  701.  
  702. wait(64)
  703.  
  704. //#COMPACTOR CHEST#
  705.  
  706. wait(500ms)
  707. log(Looking at Basic Smelter chest!)
  708. wait(%#ping%ms)
  709. look(%#compchesty%,%#compchestp%)
  710. wait(%#ping%ms)
  711. key(use)
  712. wait(%#ping%ms)
  713.  
  714. //Take bottles from chest.
  715.  
  716. #slot = 0
  717. wait(%#ping%ms)
  718.  
  719. do
  720. getslotitem(%#slot%,&id,#amt)
  721. if(%#slot% = 54)
  722. wait(%#ping%ms)
  723. break
  724. endif
  725. if(%&id% = "glass_bottle")
  726. wait(%#ping%ms)
  727. slotclick(%#slot%,l,true)
  728. endif
  729. inc(#slot)
  730. loop
  731.  
  732. wait(%#ping%ms)
  733. gui()
  734.  
  735. //#COMPACTED BOTTLES#
  736.  
  737. wait(500ms)
  738. log(Looking at Compacted Bottles Chest!)
  739. wait(%#ping%ms)
  740. look(%#cbottlesy%,%#cbottlesp%)
  741. wait(%#ping%ms)
  742. key(use)
  743.  
  744. //Put bottles into chest.
  745.  
  746. #islot = 54
  747. wait(%#ping%ms)
  748.  
  749. do
  750. getslotitem(%#islot%,&id,#amt)
  751. if(%#islot% = 90)
  752. wait(%#ping%ms)
  753. break
  754. endif
  755. if(%&id% = "glass_bottle")
  756. wait(%#ping%ms)
  757. slotclick(%#islot%,l,true)
  758. endif
  759. inc(#islot)
  760. loop
  761.  
  762. wait(%#ping%ms)
  763. gui()
  764.  
  765. loop
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement