diff options
Diffstat (limited to 'nodes/currency.lua')
-rw-r--r-- | nodes/currency.lua | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/nodes/currency.lua b/nodes/currency.lua new file mode 100644 index 0000000..081f7a3 --- /dev/null +++ b/nodes/currency.lua @@ -0,0 +1,55 @@ +local node = ThreadNode:extend('node.currency', { + threadFile = 'nodes/currency_thread.lua', + threadChannel = 'currency', + + updateInterval = 10, + state = { + values = {}, + changes = {}, + }, +}) + +local inspect = require('vendor.inspect') + +local textFont = love.graphics.newFont('fonts/Lato-Light.ttf', 90) +local headFont = love.graphics.newFont('fonts/Lato-Regular.ttf', 90) +local smallFont = love.graphics.newFont('fonts/Lato-Light.ttf', 30) + +function node:render() + love.graphics.setColor( 0, 0, 0 ) + love.graphics.rectangle("fill", 0, 0, love.graphics.getWidth(), love.graphics.getHeight()) + + if self.state.values and self.state.values[2] then + local pad = 20 + love.graphics.setColor( 255, 255, 255 ) + love.graphics.setFont(headFont) + love.graphics.printf("BTCPLN", 0, 180, love.graphics.getWidth()/2, 'right') + love.graphics.printf("TRYIDR", 0, 350, love.graphics.getWidth()/2, 'right') + love.graphics.setFont(textFont) + + love.graphics.setColor( 0, 255, 0 ) + love.graphics.printf(self.state.values[1], love.graphics.getWidth()/2 + 2*pad, 180, love.graphics.getWidth()/2 - 2*pad, 'left') + love.graphics.printf(self.state.values[2], love.graphics.getWidth()/2 + 2*pad, 350, love.graphics.getWidth()/2 - 2*pad, 'left') + else + love.graphics.setColor( 255, 255, 255, 80 ) + + love.graphics.setFont(smallFont) + love.graphics.printf("Loading currency...", 0, love.graphics.getHeight() - 200, love.graphics.getWidth(), 'center') + end +end + +function node:onUpdate(v) + for n in ipairs(v.values) do + if self.state.values[n] then + if self.state.values[n] ~= v.values[n] then + self.state.changes[n] = self.state.values[n] > v.values[n] + end + else + self.state.changes[n] = true + end + end + + self.state.values = v.values +end + +return node |