boris_fps

IC10 Code: Crafting Quantity Module

Jan 9th, 2026 (edited)
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.28 KB | Gaming | 0 0
  1. #Hashes
  2. define LEDDisplay2 HASH("ModularDeviceLEDdisplay2")
  3. define Keypad HASH("ModularDeviceNumpad")
  4. define Switch HASH("ModularDeviceSwitch")
  5. define FlipSwitch HASH("ModularDeviceFlipSwitch")
  6. define DiodeSlide2 HASH("ModularDeviceSliderDiode2")
  7. define NoText STR(" ")
  8. define StackText STR("1Stack")
  9. define PurgeText STR("PURGE")
  10. define CraftText STR("CRAFT")
  11. #IO
  12. alias fabricator d0
  13. alias stacker d1
  14. define displayProgress HASH("Progress")
  15. define displayAmount HASH("Amount")
  16. define inputPower HASH("Powerswitch")
  17. define inputAmount HASH("SelectAmount")
  18. define inputStack HASH("SelectStack")
  19. alias stackSize r4
  20. alias producedSize r5
  21. alias productionMode r6
  22. #Code
  23. reset:
  24. s fabricator Activate 0
  25. ls r0 stacker 2 Quantity
  26. breqz r0 4
  27. move r0 500
  28. s stacker Setting r0
  29. jal exportStacker
  30. s fabricator ClearMemory 1
  31. sbn DiodeSlide2 displayProgress Color Color.Yellow
  32. sbn DiodeSlide2 displayProgress Setting 1
  33. yield
  34. sbn DiodeSlide2 displayProgress Setting 0
  35. yield
  36. sbn DiodeSlide2 displayProgress Setting 1
  37. yield
  38. sbn DiodeSlide2 displayProgress Setting 0
  39. sbn DiodeSlide2 displayProgress Color Color.Green
  40. idle:
  41. lbn r0 Switch inputPower On 1
  42. breq r0 1 2
  43. j setAllOff
  44. jal setAllOn
  45. lbn productionMode FlipSwitch inputStack On 1
  46. brnez productionMode 7
  47. lbn stackSize Keypad inputAmount Setting 1
  48. brgtz stackSize 3
  49. move stackSize 10
  50. sbn Keypad inputAmount Setting 10
  51. sbn LEDDisplay2 displayAmount Mode 0
  52. sbn LEDDisplay2 displayAmount Setting stackSize
  53. breqz productionMode 4
  54. sbn LEDDisplay2 displayAmount Mode 10
  55. sbn LEDDisplay2 displayAmount Setting StackText
  56. move stackSize 500
  57. s stacker Setting stackSize
  58. l r0 fabricator Activate
  59. bnez r0 production
  60. l r0 fabricator Open
  61. bnez r0 emptyInventory
  62. j idle
  63. production:
  64. l r0 fabricator Activate
  65. beqz r0 reset
  66. sbn LEDDisplay2 displayAmount Mode 10
  67. sbn LEDDisplay2 displayAmount Setting CraftText
  68. l producedSize fabricator ExportCount
  69. brnez productionMode 2
  70. div r0 producedSize stackSize
  71. breqz productionMode 4
  72. ls stackSize stacker 2 MaxQuantity
  73. brnez stackSize 2
  74. move stackSize 500
  75. div r0 producedSize stackSize
  76. brne stackSize 1 2
  77. l r0 fabricator CompletionRatio
  78. sbn DiodeSlide2 displayProgress Setting r0
  79. beq producedSize stackSize reset
  80. j production
  81. emptyInventory:
  82. sbn LEDDisplay2 displayAmount Mode 10
  83. sbn LEDDisplay2 displayAmount Setting PurgeText
  84. sbn DiodeSlide2 displayProgress Color Color.Red
  85. sbn DiodeSlide2 displayProgress Setting 1
  86. l r0 fabricator Open
  87. beqz r0 reset
  88. move r0 500
  89. s stacker Setting r0
  90. ls r0 stacker 2 Quantity
  91. breqz r0 2
  92. jal exportStacker
  93. j emptyInventory
  94. exportStacker:
  95. yield
  96. s stacker Activate 1
  97. yield
  98. s stacker Activate 0
  99. j ra
  100. setAllOn:
  101. sbn Switch inputPower Color Color.Green
  102. s stacker On 1
  103. sbn Keypad inputAmount Color Color.Green
  104. sbn Keypad inputAmount On 1
  105. sbn DiodeSlide2 displayProgress On 1
  106. l r0 fabricator On
  107. beq r0 1 ra
  108. s fabricator On 1
  109. move r0 0
  110. brge r0 1 5
  111. add r0 r0 0.2
  112. sbn DiodeSlide2 displayProgress Setting r0
  113. yield
  114. jr -4
  115. yield
  116. sbn DiodeSlide2 displayProgress Setting 0
  117. j ra
  118. setAllOff:
  119. sbn Switch inputPower Color Color.Red
  120. s fabricator On 0
  121. s stacker On 0
  122. sbn Keypad inputAmount Color Color.Black
  123. sbn Keypad inputAmount On 0
  124. sbn DiodeSlide2 displayProgress On 0
  125. sbn LEDDisplay2 displayAmount Mode 10
  126. sbn LEDDisplay2 displayAmount Setting NoText
  127. j reset
Tags: Stationeers
Advertisement
Add Comment
Please, Sign In to add comment