milo: sounds
This commit is contained in:
@@ -8,8 +8,11 @@ local Util = require('util')
|
||||
local colors = _G.colors
|
||||
local context = Milo:getContext()
|
||||
local displayMode = Milo:getState('displayMode') or 0
|
||||
local peripheral = _G.peripheral
|
||||
local string = _G.string
|
||||
|
||||
local speaker = peripheral.find('speaker')
|
||||
|
||||
local displayModes = {
|
||||
[0] = { text = 'A', help = 'Showing all items' },
|
||||
[1] = { text = 'I', help = 'Showing inventory items' },
|
||||
@@ -127,6 +130,12 @@ local listingPage = UI.Page {
|
||||
},
|
||||
}
|
||||
|
||||
local function playSound(sound)
|
||||
if speaker then
|
||||
speaker.playSound('minecraft:' .. sound)
|
||||
end
|
||||
end
|
||||
|
||||
function listingPage.statusBar:draw()
|
||||
return UI.Window.draw(self)
|
||||
end
|
||||
@@ -160,6 +169,7 @@ function listingPage:eventHandler(event)
|
||||
elseif event.type == 'eject' or event.type == 'grid_select' then
|
||||
local item = self.grid:getSelected()
|
||||
if item then
|
||||
playSound('ui.button.click')
|
||||
item.count = Milo:craftAndEject(item, 1)
|
||||
self.grid:draw()
|
||||
end
|
||||
@@ -167,6 +177,7 @@ function listingPage:eventHandler(event)
|
||||
elseif event.type == 'eject_stack' then
|
||||
local item = self.grid:getSelected()
|
||||
if item then
|
||||
playSound('ui.button.click')
|
||||
item.count = Milo:craftAndEject(item, itemDB:getMaxCount(item))
|
||||
self.grid:draw()
|
||||
end
|
||||
@@ -174,6 +185,7 @@ function listingPage:eventHandler(event)
|
||||
elseif event.type == 'eject_all' then
|
||||
local item = self.grid:getSelected()
|
||||
if item then
|
||||
playSound('ui.button.click')
|
||||
local updated = Milo:getItem(Milo:listItems(), item)
|
||||
if updated then
|
||||
Milo:craftAndEject(item, updated.count)
|
||||
@@ -184,6 +196,7 @@ function listingPage:eventHandler(event)
|
||||
local item = self.grid:getSelected()
|
||||
local count = tonumber(self.statusBar.amount.value)
|
||||
if item and count then
|
||||
playSound('ui.button.click')
|
||||
self.statusBar.amount:reset()
|
||||
self:setFocus(self.statusBar.filter)
|
||||
Milo:craftAndEject(item, count)
|
||||
|
||||
Reference in New Issue
Block a user