SHOW:
|
|
- or go back to the newest paste.
| 1 | -- MFR Autospawner control panel using AE, for CC 1.63+ (No Bundled cable support). | |
| 2 | -- Outputs Redstone signal in varying strength down bottom of computer. Use a MFR Programmable Rednet Controller to translate RS strength signals into Bundled cable colour channels corresponding to table below: | |
| 3 | -- white/RSS 1: remove safari net | |
| 4 | - | monitor = peripheral.wrap("top")
|
| 4 | + | -- orange/RSS 2: mob 1 Wither skeleton |
| 5 | -- magenta/RSS 3: mob 2 Blaze | |
| 6 | -- lightBlue/RSS 4: mob 3 Enderman | |
| 7 | -- yellow/RSS 5: mob 4 Ghast | |
| 8 | -- lime/RSS 6: mob 5 Slime | |
| 9 | -- pink/RSS 7: mob 6 Blizz | |
| 10 | -- gray/RSS 8: mob 7 | |
| 11 | -- lightgray/RSS 9: mob 8 Villagers | |
| 12 | ||
| 13 | --Details on "physical" build: http://forum.feed-the-beast.com/threads/rhns-continued-adventures-a-build-journal-guide-collection-etc.42664/page-10#post-658213 | |
| 14 | ||
| 15 | ||
| 16 | mouseWidth = 0 | |
| 17 | mouseHeight = 0 | |
| 18 | ||
| 19 | function detectDevice(DeviceName) | |
| 20 | DeviceSide="none" | |
| 21 | for k,v in pairs(redstone.getSides()) do | |
| 22 | if peripheral.getType(v)==DeviceName then | |
| 23 | DeviceSide = v | |
| 24 | break | |
| 25 | end | |
| 26 | end | |
| 27 | return(DeviceSide) | |
| 28 | end | |
| 29 | ||
| 30 | MonitorSide=detectDevice("monitor")
| |
| 31 | ||
| 32 | if MonitorSide~="none" then | |
| 33 | monitor=peripheral.wrap(MonitorSide) | |
| 34 | print ("Monitor on the " .. MonitorSide .. " connected.")
| |
| 35 | else | |
| 36 | print("No monitor found")
| |
| 37 | end | |
| 38 | ||
| 39 | monitor.clear() | |
| 40 | ||
| 41 | ||
| 42 | monitor.setCursorPos(1,1) | |
| 43 | ||
| 44 | w,h=monitor.getSize() | |
| 45 | ||
| 46 | print(w) | |
| 47 | print(h) | |
| 48 | ||
| 49 | -- Draw buttons | |
| 50 | monitor.setBackgroundColour((colours.lime)) | |
| 51 | monitor.setCursorPos(2,2) | |
| 52 | monitor.write(" Wither Skelly ")
| |
| 53 | ||
| 54 | monitor.setBackgroundColour((colours.lime)) | |
| 55 | monitor.setCursorPos(2,4) | |
| 56 | monitor.write(" Blaze ")
| |
| 57 | ||
| 58 | monitor.setBackgroundColour((colours.lime)) | |
| 59 | - | -- white: remove safari net |
| 59 | + | |
| 60 | - | -- orange: mob 1 Wither skeleton |
| 60 | + | |
| 61 | - | -- magenta: mob 2 Blaze |
| 61 | + | |
| 62 | - | -- lightBlue: mob 3 Enderman |
| 62 | + | |
| 63 | - | -- yellow: mob 4 Ghast |
| 63 | + | |
| 64 | - | -- lime: mob 5 Slime |
| 64 | + | |
| 65 | - | -- pink: mob 6 Blizz |
| 65 | + | |
| 66 | - | -- gray: mob 7 |
| 66 | + | |
| 67 | - | -- lightgray: mob 8 Villagers |
| 67 | + | |
| 68 | monitor.write(" Green Slime ")
| |
| 69 | ||
| 70 | monitor.setBackgroundColour((colours.lime)) | |
| 71 | monitor.setCursorPos(2,12) | |
| 72 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 72 | + | |
| 73 | ||
| 74 | - | redstone.setBundledOutput("bottom", colors.orange)
|
| 74 | + | |
| 75 | monitor.setCursorPos(2,14) | |
| 76 | monitor.write(" Mob 7 ")
| |
| 77 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 77 | + | |
| 78 | monitor.setBackgroundColour((colours.lime)) | |
| 79 | - | redstone.setBundledOutput("bottom", colors.magenta)
|
| 79 | + | |
| 80 | monitor.write(" Villagers ")
| |
| 81 | ||
| 82 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 82 | + | |
| 83 | monitor.setCursorPos(2,18) | |
| 84 | - | redstone.setBundledOutput("bottom", colors.lightBlue)
|
| 84 | + | |
| 85 | ||
| 86 | monitor.setBackgroundColour((colours.black)) | |
| 87 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 87 | + | |
| 88 | ||
| 89 | - | redstone.setBundledOutput("bottom", colors.yellow)
|
| 89 | + | |
| 90 | -- Check click function | |
| 91 | ||
| 92 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 92 | + | |
| 93 | -- white/RSS 1: remove safari net | |
| 94 | - | redstone.setBundledOutput("bottom", colors.lime)
|
| 94 | + | -- orange/RSS 2: mob 1 Wither skeleton |
| 95 | -- magenta/RSS 3: mob 2 Blaze | |
| 96 | -- lightBlue/RSS 4: mob 3 Enderman | |
| 97 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 97 | + | -- yellow/RSS 5: mob 4 Ghast |
| 98 | -- lime/RSS 6: mob 5 Slime | |
| 99 | - | redstone.setBundledOutput("bottom", colors.pink)
|
| 99 | + | -- pink/RSS 7: mob 6 Blizz |
| 100 | -- gray/RSS 8: mob 7 | |
| 101 | -- lightgray/RSS 9: mob 8 Villagers | |
| 102 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 102 | + | |
| 103 | ||
| 104 | - | redstone.setBundledOutput("bottom", colors.gray)
|
| 104 | + | |
| 105 | if mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 2 then | |
| 106 | -- button 1 clicked | |
| 107 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 107 | + | redstone.setAnalogOutput("bottom", 1)
|
| 108 | sleep(1) | |
| 109 | - | redstone.setBundledOutput("bottom", colors.lightGray)
|
| 109 | + | redstone.setAnalogOutput("bottom", 2)
|
| 110 | elseif mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 4 then | |
| 111 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 111 | + | |
| 112 | redstone.setAnalogOutput("bottom", 1)
| |
| 113 | sleep(1) | |
| 114 | - | redstone.setBundledOutput("bottom", colors.white)
|
| 114 | + | redstone.setAnalogOutput("bottom", 3)
|
| 115 | elseif mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 6 then | |
| 116 | -- button 3 clicked | |
| 117 | redstone.setAnalogOutput("bottom", 1)
| |
| 118 | sleep(1) | |
| 119 | redstone.setAnalogOutput("bottom", 4)
| |
| 120 | elseif mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 8 then | |
| 121 | -- button 4 clicked | |
| 122 | redstone.setAnalogOutput("bottom", 1)
| |
| 123 | sleep(1) | |
| 124 | redstone.setAnalogOutput("bottom", 5)
| |
| 125 | elseif mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 10 then | |
| 126 | -- button 5 clicked | |
| 127 | redstone.setAnalogOutput("bottom", 1)
| |
| 128 | sleep(1) | |
| 129 | redstone.setAnalogOutput("bottom", 6)
| |
| 130 | elseif mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 12 then | |
| 131 | -- button 6 clicked | |
| 132 | redstone.setAnalogOutput("bottom", 1)
| |
| 133 | sleep(1) | |
| 134 | redstone.setAnalogOutput("bottom", 7)
| |
| 135 | elseif mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 14 then | |
| 136 | -- button 7 clicked | |
| 137 | redstone.setAnalogOutput("bottom", 1)
| |
| 138 | sleep(1) | |
| 139 | redstone.setAnalogOutput("bottom", 8)
| |
| 140 | elseif mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 16 then | |
| 141 | -- button 8 clicked (Villagers, auto stop after sleep period) | |
| 142 | redstone.setAnalogOutput("bottom", 1)
| |
| 143 | sleep(1) | |
| 144 | redstone.setAnalogOutput("bottom", 9)
| |
| 145 | sleep(40) | |
| 146 | redstone.setAnalogOutput("bottom", 1)
| |
| 147 | elseif mouseWidth > 1 and mouseWidth < 18 and mouseHeight == 18 then | |
| 148 | -- button 9 stop clicked | |
| 149 | redstone.setAnalogOutput("bottom", 1)
| |
| 150 | end | |
| 151 | end | |
| 152 | ||
| 153 | ||
| 154 | ||
| 155 | repeat | |
| 156 | ||
| 157 | ||
| 158 | event,p1,p2,p3 = os.pullEvent() | |
| 159 | ||
| 160 | if event=="monitor_touch" then | |
| 161 | ||
| 162 | mouseWidth = p2 -- sets mouseWidth | |
| 163 | mouseHeight = p3 -- and mouseHeight | |
| 164 | checkClickPosition() -- this runs our function | |
| 165 | ||
| 166 | end | |
| 167 | ||
| 168 | ||
| 169 | ||
| 170 | until event=="char" and p1==("x") |