SHOW:
|
|
- or go back to the newest paste.
1 | os.loadAPI('usr/mobController/Prison.lua') | |
2 | os.loadAPI('usr/getPeripheral.lua') | |
3 | textScale=0.5 | |
4 | screen = term.current() | |
5 | chest = getPeripheral.findByName('copper') | |
6 | function p2Update(panel) | |
7 | t= term.current() | |
8 | term.redirect(panel) | |
9 | term.clear() | |
10 | term.setCursorPos(1,1) | |
11 | print(' Mobs ') | |
12 | for k, v in pairs(prisons) do | |
13 | if string.find(v.meta.displayName, 'blizz') then | |
14 | displayName = 'Blizz' | |
15 | else | |
16 | displayName = v.meta.displayName:gsub('Mob Imprisonment Tool ', '') | |
17 | displayName = displayName:gsub('[()]', '') | |
18 | end | |
19 | print(displayName) | |
20 | end | |
21 | p2x, p2y = term.getSize() | |
22 | term.setCursorPos(p2x/2-3, p2y-#hdr) | |
23 | print('reset') | |
24 | - | --{panel=panel4, background = colors.orange, textColor = colors.white} |
24 | + | |
25 | end | |
26 | ||
27 | function p2touch(periph, x,y) | |
28 | t = term.current() | |
29 | term.redirect(panel3) | |
30 | prison = prisons[y-(#hdr+1)] | |
31 | if not prison then | |
32 | print('No prison selected') | |
33 | else | |
34 | - | term.setCursorPos(3,3) |
34 | + | term.clear() |
35 | - | print('hello') |
35 | + | term.setCursorPos(1,1) |
36 | Prison.pullPrison(chest) | |
37 | scs, put_prison = Prison.putPrison(chest, prison) | |
38 | if scs then | |
39 | print(prison.meta.displayName) | |
40 | print(prison.slot) | |
41 | end | |
42 | end | |
43 | term.redirect(t) | |
44 | end | |
45 | ||
46 | ||
47 | hdr={ | |
48 | [[ _____ _ __ __ ]], | |
49 | [[/ ___( ) / _|/ _|]], | |
50 | [[\ `--.|/ _ __ _ _| |_| |_ ]], | |
51 | [[ `--. \ | '_ \| | | | _| _|]], | |
52 | [[/\__/ / | | | | |_| | | | | ]], | |
53 | [[\____/ |_| |_|\__,_|_| |_| ]], | |
54 | } | |
55 | --------initialize windows--------- | |
56 | --wrap monitor | |
57 | mon = peripheral.wrap('top') | |
58 | mon.setTextScale(textScale) | |
59 | - | term.redirect(panel2) |
59 | + | |
60 | --define windows based on monitor size | |
61 | monX, monY = mon.getSize() | |
62 | panel1 = window.create(mon, 1, 1, monX, #hdr) | |
63 | panel2 = window.create(mon, 1, #hdr+1, monX*0.3333, monY) | |
64 | panel3 = window.create(mon, monX*0.3333+1, #hdr+1, monX, monY) | |
65 | ||
66 | panels={panel1, panel2, panel3} | |
67 | ||
68 | --define css properties for each window | |
69 | panel_props = { | |
70 | {panel=panel1, background = colors.lightGray, textColor=colors.blue}, | |
71 | {panel=panel2, background = colors.blue, textColor=colors.white}, | |
72 | {panel=panel3, background = colors.gray, textColor=colors.white}, | |
73 | } | |
74 | ||
75 | --draw windows | |
76 | term.redirect(panel1) | |
77 | term.setBackgroundColor(panel_props[1].background) | |
78 | - | panel3.write(event, periph, x, y,'\n') |
78 | + | |
79 | term.clear() | |
80 | for k,v in pairs(hdr) do | |
81 | - | t = term.current() |
81 | + | |
82 | - | term.redirect(panel3) |
82 | + | |
83 | - | prison = prisons[y-(#hdr+1)] |
83 | + | |
84 | - | if not prison then |
84 | + | |
85 | - | print('No prison selected') |
85 | + | |
86 | - | else |
86 | + | |
87 | - | term.clear() |
87 | + | |
88 | - | term.setCursorPos(1,1) |
88 | + | |
89 | - | |
89 | + | |
90 | - | print(prison.meta.displayName) |
90 | + | |
91 | - | print(prison.slot) |
91 | + | |
92 | - | end |
92 | + | |
93 | - | term.redirect(t) |
93 | + | |
94 | end | |
95 | mon.setCursorPos(1,1) | |
96 | ||
97 | ||
98 | ----------MAIN LOOP---------- | |
99 | while true do | |
100 | scs, prisons = Prison.getPrisons() | |
101 | if not scs then | |
102 | scs, prisons = Prison.readChest(chest) | |
103 | end | |
104 | t = term.current() | |
105 | p2Update(panel2) | |
106 | ||
107 | event, periph, x, y = os.pullEvent('monitor_touch') | |
108 | if event then | |
109 | if x<monX*0.33 and y>#hdr+1 and y<=#hdr+1+#prisons then | |
110 | p2touch(chest, x,y) | |
111 | elseif x<monX*0.33 and y==monY then | |
112 | Prison.resetPrisons(chest) | |
113 | end | |
114 | elseif event == 'key' then | |
115 | if periph == keys.q then | |
116 | term.redirect(screen) | |
117 | print('quitting') | |
118 | break | |
119 | end | |
120 | end | |
121 | end |