SHOW:
|
|
- or go back to the newest paste.
1 | function putColors() | |
2 | if type == "ender_chest" then | |
3 | chest.setColors(b1,b2,b3) | |
4 | elseif type == "ender_tank" then | |
5 | chest.setColors(b3,b2,b1) | |
6 | end | |
7 | end | |
8 | ||
9 | function takeColors() | |
10 | if type == "ender_chest" then | |
11 | b1,b2,b3 = chest.getColors() | |
12 | elseif type == "ender_tank" then | |
13 | b3,b2,b1 = chest.getColors() | |
14 | end | |
15 | end | |
16 | ||
17 | function monClear() | |
18 | mon.clear() | |
19 | mon.setCursorPos(1,1) | |
20 | end | |
21 | ||
22 | function drawButtons() | |
23 | for i= 1, y do | |
24 | for k=1,x/3+1 do | |
25 | mon.setCursorPos(k,i) | |
26 | mon.setBackgroundColor(b1) | |
27 | mon.write(" ") | |
28 | end | |
29 | end | |
30 | for i=1, y do | |
31 | for k=x/3+1,x/3*2+2 do | |
32 | mon.setCursorPos(k,i) | |
33 | mon.setBackgroundColor(b2) | |
34 | mon.write(" ") | |
35 | end | |
36 | end | |
37 | for i=1, y do | |
38 | for k=x/3*2+2, x+2 do | |
39 | mon.setCursorPos(k,i) | |
40 | mon.setBackgroundColor(b3) | |
41 | mon.write(" ") | |
42 | end | |
43 | end | |
44 | for i=1, y do | |
45 | mon.setBackgroundColor(colors.black) | |
46 | mon.setCursorPos(x/3+1,i) | |
47 | mon.write(" ") | |
48 | end | |
49 | for i=1, y do | |
50 | mon.setBackgroundColor(colors.black) | |
51 | mon.setCursorPos(x/3*2+1,i) | |
52 | mon.write(" ") | |
53 | end | |
54 | end | |
55 | ||
56 | mon = peripheral.wrap("top") | |
57 | x,y = mon.getSize() | |
58 | for a,b in pairs(rs.getSides()) do | |
59 | if peripheral.getType(b) == "ender_chest" or peripheral.getType(b) == "ender_tank" then | |
60 | type = peripheral.getType(b) | |
61 | chest = peripheral.wrap(b) | |
62 | takeColors() | |
63 | drawButtons() | |
64 | break | |
65 | end | |
66 | end | |
67 | ||
68 | while true do | |
69 | event, param1, param2, param3 = os.pullEvent() | |
70 | - | if peripheral.getType(param1) == "ender_chest" or peripheral.getType(param1) == "ender_tank" then |
70 | + | if event == "peripheral" and (peripheral.getType(param1) == "ender_chest" or peripheral.getType(param1) == "ender_tank") then |
71 | chest = peripheral.wrap(param1) | |
72 | type = peripheral.getType(param1) | |
73 | takeColors() | |
74 | mon.setBackgroundColor(colors.black) | |
75 | monClear() | |
76 | drawButtons() | |
77 | elseif event == "peripheral_detach" then | |
78 | monClear() | |
79 | elseif event == "monitor_touch" then | |
80 | if param2 < x/3 then | |
81 | if b1 == 32768 then | |
82 | b1=1 | |
83 | else | |
84 | b1 = b1*2 | |
85 | end | |
86 | elseif param2 > x/3 and param2 < x/3*2 then | |
87 | if b2 == 32768 then | |
88 | b2=1 | |
89 | else | |
90 | b2 = b2*2 | |
91 | end | |
92 | elseif param2 >x/3*2 then | |
93 | if b3 == 32768 then | |
94 | b3=1 | |
95 | else | |
96 | b3 = b3*2 | |
97 | end | |
98 | end | |
99 | putColors() | |
100 | drawButtons() | |
101 | end | |
102 | end |