Advertisement
Guest User

Compacted Sand --> Compacted Bottles v1

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