Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local Tank = peripheral.wrap("top")
- local bridge = peripheral.wrap("left")
- local Data = {}
- Data["Rs"] = 0
- local Width = 50
- function Initialisation()
- bridge.clear()
- Title = bridge.addText(0,210," ",0xFFFFFF)
- Title.setScale(1.15)
- bridge.addGradientBox(15,221,Width+2,22,0x000000,1,0x101010,0.75,2)
- Barre = bridge.addGradientBox(16,222,0,20,0xFF3300,0.5,0xCCCC33,0.75,2)
- Pourcent = bridge.addText(0,230," ",0xFFFFFF)
- Pourcent.setScale(0.5)
- Debit = bridge.addText(0,245," ",0xFFFFFF)
- Debit.setScale(0.75)
- end
- function FillData()
- for k, v in pairs(Tank.getTankInfo("top")[1]) do
- Data[k] = v
- end
- end
- function Split(str,pat)
- local t = {}
- local fpat = "(.-)" .. pat
- local last_end = 1
- local s, e, cap = str:find(fpat, 1)
- while s do
- if s ~= 1 or cap ~= "" then
- table.insert(t,cap)
- end
- last_end = e+1
- s, e, cap = str:find(fpat, last_end)
- end
- if last_end <= #str then
- cap = str:sub(last_end)
- table.insert(t, cap)
- end
- return t
- end
- function Middle(len)
- local x = ((Width-len)/2)+30
- return x
- end
- function Affichage()
- Title.setText(Data["rawName"].." Tank")
- Title.setX(Middle(bridge.getStringWidth(Title.getText())))
- Barre.setWidth((Data["amount"]/Data["capacity"])*Width)
- Pourcent.setText(math.floor(Data["amount"]/Data["capacity"]*100).." %")
- Pourcent.setX(Middle(bridge.getStringWidth(Pourcent.getText())))
- Debit.setText("Debit "..(Data["amount"]-Data["Rs"])/1000)
- Debit.setX(Middle(bridge.getStringWidth(Debit.getText())))
- Data["Rs"] = Data["amount"]
- end
- --*************************
- --******Main Programm******
- --*************************
- Initialisation()
- while true do
- FillData()
- Affichage()
- sleep(5)
- end
Advertisement
Add Comment
Please, Sign In to add comment